Inspiration

This language is an extension of the Labyrinth programming language.

What it does

Mazerunner is a two dimensional programming language that supports multi-threading. It is an extension of the Labyrinth language. Programs are written as mazes. Control flow decisions are made at maze junctions. New threads can also be spawned at junctions, allowing the program to explore multiple branches of the maze concurrently.

How we built it

We wrote an interpreter in C++. The interpreter schedules threads in a round-robin fashion. Each thread is represented by two stacks and one program pointer. The program pointer has both a position and a direction of travel.

What's next for Mazerunner

More expressive concurrency constructs

Built With

Share this project:

Updates