The idea behind Logo MF was born the day I decided to tell my son about his dad's job.
He was still 7 years old and Scratch seemed too complex for him while the scratch version for mobile devices was, on my opinion, too limitating.
There was also a lucky time in which I had the advice of a friend, Maria Montoleone, with great experience in teaching children; Unfortunately, however, everyone's time is limited and it has not been possible to continue this collaboration.

GUI GUI
The appearance may change depending on version and OS.
Logo MF implements established coding concepts for children, allowing them to create a drawing through a sequence of instructions (see Turtle graphics). In practice, you ideally start with a blank sheet of paper with a pen tip in the center. By moving the pen across the sheet, with just a few intuitive commands, you can draw lines, for which you can also decide the thickness and color. Therefore you'll find the essential commands for moving a virtual pen across an equally virtual sheet of paper:
  • Forward - advances the pen in the current direction (initially from left to right)
  • Right - rotates the direction of the next advancement by a given angle to the right
  • Left - rotates the direction of the next advancement by a given angle to the left
Added to these commands you find:
  • Paint - fills the space where the pen is located with the current color
  • Write - writes text where the pen is currently located
and the commands with which you can change the color of the pen or its thickness.

To write a program just drag the commands from the bottom of the GUI, in the desired sequence, and drop them in the yellow box on the left (program). In the program area commands can be dragged and dropped to change the order of execution or dropped into the trash bin to delete them.
Some commands, such as "Forward" or the rotation commands, have an editable value within them with a rather evident meaning.

To the basic commands I then added a form of loop ("LOOP" / "LOOP END") to execute a given number of times the sequence of commands between the beginning and the end.
To generate more complex drawings you can also use the callable procedures ("+" symbol on the top of the program pane) and variables.
Variables are hidden in basic mode and available only in advanced mode which also allows you to use a slightly more complex form of "LOOP" in which the parameter is, optionally, an expression of the type "A=1..5" which indicates, in the specific case, that the instructions contained between "LOOP" and "LOOP END") will be executed 5 times and that at the beginning a variable will be defined, called 'A' which, at each cycle, will take the values 1, 2, 3, 4, 5.
Note that in advanced mode the "Write" command changes its behavior in fact its parameter is evaluated as a mathematical expression in which a sequence of letters is interpreted as the name of a variable (example: 5+3-var is 8 because the variable var, which we assume has never been used before, has its initial value of 0). To write a text we will have to enclose it in double quotes (") moreover you can optionally combine variables and text (example: "the value of var is: " var).

After a program execution you can color the screen by dragging the discs that represent the colors of the pen and drop them on the drawing area; to cancel the coloring just use the context menu that is activated with the right mouse button.

There is also a "Learning" mode that can be accessed from the settings gears (section "Actions") which offers some exercises introducing the various commands gradually.

LogoMF download - version 3.2.3

Any OS (jar) (Java jre or jdk version 17 or higher must be installed) (8379 KB)

Windows installer (no additional installation required) (56439 KB)

Warning: to run the "Any OS - jar" version java jre or jdk version 17 or higher must be installed.
You can download the jdk/jre for free from here: Oracle.com or here you find a very light jre version: Eclipse Temurin jre.

Oddly enough java.com will offer you to download the latest Java 8 build which definitely is not the latest available version of Java. I would much appreciate to be able to say a few words to the nice gentlemen at Oracle ...


To run the application, in the case of the "Any OS - jar" multiplatform version, if the jre/jdk is installed correctly, simply double-click the downloaded file or, from a terminal window, use the command java -jar <name of the downloaded jar complete with path>.

For information requests, comments or reports you can send a message to the following e-mail address: info@usna.it