Crate turing_machine_rs

Source
Expand description

§Turing Machine RS

A library for implementing any Turing machine with minimal limitations for the Rust programming language. It is:

  • Low-cost: Turing Machine RS designed to simulate execution. That’s why it cannot be simple, flexible and zero-cost at the same time.
  • Flexible: Turing Machine RS works with not the specific types nor even copy-only types! Instead, the library supports any struct or object that implements Clone + Debug + Display + Eq + PartialEq trait.

For futher details use cargo doc --open (or online docs) or proceed to the repository on Github.

Modules§

instruction
Provides Instruction and it’s components: Head, Move, State, Tail.
machines
Provides two Turing machines: Classic and Debugger.
program
Provides Program realization for Turing machine.
state
Provides Configuration and it’s component Tape realizations which represents Turing machine state.

Traits§

Symbol
Symbol provides the ability to use whatever you want (almost) as a symbol of the crate::TuringMachine alhabet.
TuringMachine
Provides ability to execute crate::state::Configurations and translate crate::state::Tapes.
With
With trait provides the ability to concatenate several crate::TuringMachine into one another Turing machine. This trait must be implemented individual for machine types if it needs.