In this chapter, the authors present MatCos 3.0 software aimed at the primary school. First, the pedagogical-didactic and training bases on which the construction of the software is based will be exposed, albeit briefly. All the buttons on the user interface and all the axiomatic and genetic commands available are presented. The method used is a direct presentation aimed at technical use. Some pedagogical-educational observations will be given. Numerous examples and screenshots will be given. The commands will not be displayed in strictly alphabetical order, but a more logical and consequential line has been preferred. At the end of the chapter, the alphabetical list of all the commands available in the programming environment will be shown.
“I think, I program, I learn” ~F. A. Costabile
Top1. Introduction
MatCos 3.0 is the project’s module (Costabile & Serpe, 2009) aimed at learning mathematics, with computer support, in primary school, students of 6-11 years old. It is based on an inverse pedagogical philosophy compared to the other software designed and created for the intuitive, logical and rational abilities of children of early school age. In fact, software such as Scratch (Lie, Hauge, & Meaney, 2017; Kafai, 2009), (Karloney, 2010), Greenfoot (Kolling, 2010), (Yaroslavski, 2014), Python (Guttag, 2013)are aimed at learning the basic structures of programming, with a mainly visual and general language, and then through these it is possible to search for applications in the other sciences, primarily Mathematics. Instead MatCos 3.0 is aimed at the teaching / learning of mathematics, through a direct and instrumental use of the computer with both general instructions (input / output, variables, if-then-or-else, for etc.) and purely mathematical commands (point, line, circumference, arithmetic operations, statistical diagrams, etc.). It is therefore fully part of mathematical microworlds.
As mentioned in the previous chapter, the objective is twofold:
- 1)
start mathematical thinking in all its components, using algorithms and computation;
- 2)
start programming, in essential basic structures, using mathematical concepts and methods as examples.
Many general considerations made about the Scratch environment, in particular the link with Logo and constructivism, are also valid for the MatCos 3.0 environment, so we avoid repeating them here. In this chapter we will show the available commands, with their technical use, while the didactic approach for students will be dealt with later. Any general programming theory will be avoided, preferring a direct and instrumental use of the controls.
Top2. Axiomatic Commands
When we start the program, the following user interface appears:
The user can start working in two forms:
The correctly executed commands will be inserted in the “Program” box, thus creating a real program that can eventually be re-run. The program, thus, is formed in analogy to a “Lego” construction where “the bricks bind to each other”, in this case the commands, which if correct, join the previous ones in sequential order. The concept of the program arises intuitively and is appreciated in its use, by clicking on Run or Run step by step buttons (to execute one instruction at a time).
More than one instruction may correspond to the same button. In this case a menu will appear for the choice of subcommands.
For example, by clicking on Triangle button, there will appear