Skip to content
a LindenMASM interpreter in Python 3
Python
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitattributes
.gitignore
LICENSE
LindenMASM.py
README.md
linden-test.lasm

README.md

Syntax

There are only a few keywords available in LindenMASM.

  1. STT - Begins every LindenMASM file.
  2. AXI $ - Sets the axiom (initial state) of the system.
  • $ is a series of commands/variables/constants, ranging from the built-ins plus any user-defined functions.
  1. DEG $ - Sets the degree of which all turns will follow, default is 90.
  2. MOV $ - Sets the move distance of which all position adjustments will follow, default is 10.
  3. INC $ - Sets the number of iterations the generation should go through, default is 0.
  4. SET $ # - Sets a constant $ to a specified command #
  • $ should be a character that is not one of []+-.
  • # will either be a 0 or a 1, where a 0 corresponds to the constant being one that draws forward, and a 1 corresponds to the constant being one that moves fowards.
  1. RPL $ # - On every iteration, variable/constant $ will be replaced with the command/variable/constant string #.
  • $ should be a character that is not one of []+-. It does not need to be SET to be replaced.
  • # is a string of commands/variables/constants that $ should be replaced with.
  1. END - Ends every LindenMASM file.

Each keyword should be placed on a new line. Every file should start with STT and end with END.

Commands

These are the builtin commands you can use in the axiom, or any replacement.

  1. + - Rotates the pointer to the right DEG degrees.
  2. - - Rotates the pointer to the left DEG degrees.
  3. [ - Saves the pointer's coordinates and heading to a list.
  4. ] - Pops the last value of a list and sets the pointer's coordinates and heading to that.

Example

Check out the linden-test.lasm file for an example. It should produce something like this:

Example

You can’t perform that action at this time.