# pyfasim

* **pyfasim** is a simple Python wrapper package on the automata-lib package (Caleb Evans <caleb@calebevans.me>)
  for simulating standard types of finite automata (determinstic, non-determinstic, pushdown, and Turing).
* WARNING: version 0.01 is just a very early test version!
  * Do not use yet!!
  * Only DFA model is supported
  * Long term pland to add support for NFA, GFA, PDA, and Turing machines later.
* The intention was to make it accessible to first or second year college students
  without Python knowledge or even with no programming experience.
  We assume that tools such as an IPyhton Jupyter notebood can help make it accessible and usable.
* It is intended to serve within the context of an introductory course on computational models,
  to enable students to define and test simple automata examples and do exercises.
* It is meant to be a useful companion for theoretical courses on
  computation models and languages who wish also to engage
  the students with some programming experience and skills.
* It was designed to be used in such a course by the author
  (Hebrew book at http://samyzaf.com/afl.pdf).
* It also provide an opportunity for students to get a taste of how programming looks like
  while learning a theoretical computation course.

