JLogo to JSLogo

The Learning by Making program was taught using the JLogo interpreter on provided Linux laptops in previous years. JSLogo, the interpreter used in this web app, has some differences from the legacy system. If you are experienced with the previous versions, this page will help describe some of the differences. If you aren't familiar with the previous versions you don't need to keep reading.

Initializing and other Commands

Because there is no background engine, keywords like init-jlogo do not exist. You may find a number of other elements that are not defined in the new interface. Playback, packet processing and plotting are examples that have this. When transitioning existing projects it's worth looking at the provided templates and these help docs to better understand the current patterns.

Declaring Variables

The keyword let now operates the same way as the keyword make. Correct usage is let "varname "value without brackets.

Strings no longer use vertical pipes in their definitions. To define a string, wrap the text - including spaces - in single quotes: make "string 'this is a string'.


Packets are currently being developed and are not stable. The most up to date methods can be found in the Packet Demo starter project.

Last updated on December 22, 2022