Skip to content

Visualize Turing machines and deterministic finite automata. 🔵🔁🔴↩️

License

Notifications You must be signed in to change notification settings

Bubbleman532/turing-sandbox

 
 

Repository files navigation

This is a Turing machine visualizer designed for learning through visual thinking and creative exploration.

There are two ways to interact with this editor - the first is through intuitive mouse interaction, and the second involves using less-intuitive code

When encoded, machines are described in a simple YAML-based format. As you code, each save updates the state diagram; this offers the speed and directness of code, combined with the visual intuitiveness of a graphical editor.

Multiple example machines are provided, each one with commentary that touches on concepts like subroutines and inductive definitions / recursion. Many examples include exercises that build on the machines and deepen understanding. To encourage experimentation, the document system provides for quick snapshots and auto-saving to browser local storage.

The author is hugely thankful for the turingmachine.io code base which this is built on top of.

Development Setup

If you want to work on the site itself, here’s how to get started:

Clone the repo and run npm install in the folder. Afterwards, use npm start to host the site locally on a webpack server, by default at localhost:8080.

Dependencies

Thanks go to the authors of the following runtime dependencies:

About

Visualize Turing machines and deterministic finite automata. 🔵🔁🔴↩️

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 78.1%
  • HTML 20.8%
  • Other 1.1%