Enhancing JFLAP with automata construction problems and automated feedback
introduction to automata theory , languages and computation .