A fast turing machine simulator with graphviz export functionality
git clone https://git.8pit.net/tmsim.git
1tmsim 2===== 3 4A fast turing machine simulator with graphviz export functionality. 5 6Dependencies 7============ 8 9In order to build tmsim run the following command:1011 $ make1213To test if tmsim works as expected you can run the test suite using:1415 $ make test1617Format18======1920The following EBNF describes valid tmsim input:2122 turingmachine = metadata, states;23 metadata = "start:", statename, ";",24 "accept:", statenames, ";";2526 statename = "q", digit, { digit };27 statenames = statename, { ",", statename };2829 states = { state };30 state = statename, "{", [ transitions ], "}";3132 transitions = transition, ";", { transition, ";" };33 transition = symbol, direction, symbol, "=>", statename;3435 symbol = digit | letter | "$";36 direction = ">" | "|" | "<";3738Besides a comment can be added anywhere in the tmsim input file.39Comments begin with the ASCII character '#' and end with a newline.4041Documentation42=============4344The entire code base is documented with comments that can be45parsed by Doxygen. A Doxyfile is not provided but if you are into that46sort of thing you can use Doxygen to generate some source code47documentation.4849License50=======5152This program is free software: you can redistribute it and/or modify it53under the terms of the GNU General Public License as published by the54Free Software Foundation, either version 3 of the License, or (at your55option) any later version.5657This program is distributed in the hope that it will be useful, but58WITHOUT ANY WARRANTY; without even the implied warranty of59MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General60Public License for more details.6162You should have received a copy of the GNU General Public License along63with this program. If not, see <http://www.gnu.org/licenses/>.