Crate turing_machine_rs[][src]

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

Provides Instruction and it’s components: Head, Move, State, Tail.

Provides two Turing machines: Classic and Debugger.

Provides Program realization for Turing machine.

Provides Configuration and it’s component Tape realizations which represents Turing machine state.

Traits

Symbol provides the ability to use whatever you want (almost) as a symbol of the crate::TuringMachine alhabet.

Provides ability to execute crate::state::Configurations and translate crate::state::Tapes.

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.