Instructor Use of JFLAP

JFLAP is intended to be used as a supplement to a course, along with a textbook for the course. JFLAP reinforces topics learned in the course.

Courses it has been used in include formal languages and automata theory, compilers, artificial intelligence, and discrete math.

JFLAP allows users to create and operate on automata, grammars, L-systems, and regular expressions; the term structure is used to refer to any single automaton, grammar, L-system, or regular expression. JFLAP offers the following major groups of operations to apply to structures:

JFLAP uses general definitions of its structures to allow it to fit with a range of textbooks. We mention some of these definitions here. Instructors might prefer to require students to use a subset of the JFLAP definition if that fits with their textbook.

Different levels of exercises can be given to students.

Students can submit JFLAP files for grading. See Batch grading in the tutorial on how to grade multiple files more easily.

See the papers on JFLAP that describe many uses of JFLAP.