Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/techno-coder/tm-compiler
A Turing Machine compiler
https://github.com/techno-coder/tm-compiler
theory-of-computation turing-machine
Last synced: 18 days ago
JSON representation
A Turing Machine compiler
- Host: GitHub
- URL: https://github.com/techno-coder/tm-compiler
- Owner: Techno-coder
- License: mit
- Created: 2022-05-28T11:35:49.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2022-05-28T12:22:00.000Z (over 2 years ago)
- Last Synced: 2024-10-28T16:56:04.423Z (2 months ago)
- Topics: theory-of-computation, turing-machine
- Language: Python
- Homepage:
- Size: 5.86 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# TM-compiler
A Turing Machine compiler.
## What does it do?
This compiler compiles a pseudo-assembly like description of a machine into a list of transitions runnable on a [TM simulator](http://morphett.info/turing/turing.html). In other words, it makes it easier to write Turing Machines.
## Features
- Programmatic generation of Turing Machines
- Persistent bits of "memory" through conditional flags
- State labels and fall-through transitions## How do I use it?
1. Write a description of a machine using the `compile` function (see [palindrome.py](palindrome.py) for an example)
2. Run the script you've written (`python3 palindrome.py`)
3. Paste the output into a TM simulator## Acknowledgements
Written during UNSW's COMP4141 course.