An open API service indexing awesome lists of open source software.

https://github.com/turing-marcos/turing-machine

An improved Turing Machine made in Rust
https://github.com/turing-marcos/turing-machine

cli cli-app gui-application offline-first programming rust turing-machine turing-machine-simulator webapp webassembly

Last synced: 1 day ago
JSON representation

An improved Turing Machine made in Rust

Awesome Lists containing this project

README

          

# Turing Machine 2.0
An improved Turing Machine made in Rust!

The [old one](https://github.com/margual56/TuringMachine) was not great in many ways, so I decided to completely re-write it from scratch!

## Demo:
![demo](https://user-images.githubusercontent.com/30444886/203064166-a36a2693-7c5f-4fb1-a71f-bbc50fa31e09.gif)

## Installation

Option 0: Access the WebAssembly version
I have compiled the program to WASM, and hosted it in https://turing.coldboard.net.

The web version is less efficient and is more limited than the local version. It also can be subject to breakages from time to time.

I designed the application with an "offline-first" approach, so the recommended way to use it is to download it.

Please, if you intend to use the Turing Machine for an extended period of time, consider downloading the latest version and using it that way

Option 1: Download the binary


  • Go to the releases page and download the latest executable file for your operating system.

  • In Linux you will probably need to make it executable (`chmod +x turing-machine-linux`).

Option 2: Compile it yourself


  • Run cargo install --git "https://github.com/margual56/turing-machine-2.0"

  • You also need to add the cargo folder to your path (for example, in UNIX: export PATH=$PATH:$HOME/.cargo/bin)


## Usage
Just run the executable to get a GUI out-of-the-box. If you want to use the CLI, run it through the console with the argument `--cli`!

## Programming it
The favored programming IDE is VScode (or code-OSS), for which I have created a syntax highlighter for the Turing Machine code (`.tm`).

The extension is also Open Source and can be found here: [https://github.com/margual56/vscode-turing-machine](https://github.com/margual56/vscode-turing-machine)

You can install it from your editor's tab or downloading it:
- [VSCode extension](https://marketplace.visualstudio.com/items?itemName=MarcosGutirrezAlonso.turing-machine)
- [Open-vsx (code-OSS) extension](https://open-vsx.org/extension/MarcosGutirrezAlonso/turing-machine)