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
andDebugger
. - program
- Provides
Program
realization for Turing machine. - state
- Provides
Configuration
and it’s componentTape
realizations which represents Turing machine state.
Traits§
- Symbol
Symbol
provides the ability to use whatever you want (almost) as a symbol of thecrate::TuringMachine
alhabet.- Turing
Machine - Provides ability to execute
crate::state::Configuration
s and translatecrate::state::Tape
s. - With
With
trait provides the ability to concatenate severalcrate::TuringMachine
into one another Turing machine. This trait must be implemented individual for machine types if it needs.