Skip to content
/ Lyte Public

🧰 A Simple Turing Machine Code Interpreter written in Go

License

Notifications You must be signed in to change notification settings

latiif/Lyte

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Lyte

Go Report Card

A Lightweight Turing Machine Code Interpreter written in Go

Simple interpreter (for now) of the language used in the website Online Turing Simulator, currently supports code written for a machine with one tape.

Building

To compile from source, you should have go set up on your machine. Clone the repo, and run go build. This will generate a binary named Lyte. Make it executable (if needed) and run it against your Turing Machine code.

./Lyte decimaltobinary.lyte

Stages of Interpreting

Given the path to your code is valid, Lyte will do do the following.

  • Load up your code, and try to parse it.
  • Inform you if the parsing process was successful.
  • Ask you to provide initial values for the tape.
  • Execute the program.
  • Inform you whether the machine halted on an accepting state.
  • Display a representation of the tape after halting.

Docker Container

You can run Lyte as a container by pulling docker pull latiif/lyte

About

🧰 A Simple Turing Machine Code Interpreter written in Go

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published