Home

Awesome

ton-lang

ton-lang is a visual programming language whose interpreter is implemented as a cellular automaton, meaning that each cell is transformed at every frame depending on its direct neighbors.

Evaluating programs as cellular automata gives some interesting features such as partial evaluation. On the other hand some features can be hard to implement — at least the way I've approached the problem — e.g. I'm still trying to figure out how to implement recursion.

Installing

Run the following command to install the editor/interpreter

$ python3.8 setup.py install --user

Make sure that the site-packages directory is in your path.

Dependencies:

Usage

CLI

Editor

Cells

Cells are divided in three main categories:

Additionally, programs can be separated in modules with "chips", which are basically sub-programs.

Eventually I'd like to implement quotes (as in e.g. lisp) which would make processors behave as values temporarily (and therefore movable through wires)

Controls

Examples