- we list papers we have published and others
have published that refer to JFLAP
Susan Rodger and Thomas Finley, JFLAP - An Interactive Formal Languages and
Automata Package, ISBN 0763738344, Jones and Bartlett, 2006.
JFLAP Activities for Formal Languages and Automata, ISBN-13: 9780763772024,
Supplement with JFLAP exercises by Linz and Rodger published
This CD has JFLAP examples and exercises chapter by chapter to fit
with the Linz book.
Papers we have published
Susan Rodger, Henry Qin, and Jonathan Su,
Tips/Techniques: Changes to JFLAP to increase its use in courses,
The 16th Annual Conference on Innovation and Technology in
Computer Science Education (ITiCSE 2011), Darmstadt, Germany,
Susan Rodger, Henry Qin, and Jonathan Su,
Increasing the use of JFLAP in Courses, Sixth Program Visualization
Workshop (PVW 2011), Darmstadt, Germany, p.53-56, 2011.
Susan H. Rodger, Eric Wiebe, Kyung Min Lee, Chris Morgan, Kareem
Omar, and Jonathan Su, Increasing Engagement in Automata Theory with JFLAP,
Fourtieth SIGCSE Technical Symposium on
Computer Science Education, p.403-407, 2009.
Susan H. Rodger, Jinghui Lim, and Stephen Reading,
Increasing Interaction and Support in the Formal Languages and
Automata Theory Course,
The 12th Annual Conference on Innovation and Technology in
Computer Science Education (ITiCSE 2007), p. 58-62,
Susan H. Rodger, Bart Bressler, Thomas Finley, and Stephen Reading,
Turning Automata Theory into a Hands-on Course,
Thirty-seventh SIGCSE Technical Symposium on
Computer Science Education, 2006 (p. 379-383) pdf
Ryan Cavalcante, Thomas Finley and Susan H. Rodger, A Visual and
Automata Theory Course with JFLAP 4.0,
Thirty-fifth SIGCSE Technical Symposium on
Computer Science Education, 2004 (p.140-144).
S. H. Rodger, Using Hands-on Visualizations to Teach Computer Science
from Beginning Courses to Advanced Courses, Second Program Visualization
Workshop, Hornstrup Centert, Denmark, p. 103-112, June 2002.
T. Hung and S. H. Rodger,
Increasing Visualization and Interaction in the Automata Theory Course,
Thirty-first SIGCSE Technical Symposium on
Computer Science Education, p. 6-10, 2000.
E. Gramond and S. H. Rodger,
Using JFLAP to Interact with Theorems in Automata Theory,
Thirtieth SIGCSE Technical Symposium on
Computer Science Education, p. 336-340, 1999.
E. Gramond and S. H. Rodger, JFLAP:
An Aid to Studying Theorems in Automata Theory,
Integrating Technology into Computer Science Education,
Dublin, Ireland, p. 302, 1998.
A. O. Bilska, K. H. Leider, M.
Procopiuc, O. Procopiuc, S. H. Rodger,
J. R. Salemme and E. Tsang,
A Collection of Tools for Making Automata Theory and Formal Languages Come
Twenty-eighth SIGCSE Technical Symposium on
Computer Science Education, p. 15-19, 1997.
M. Procopiuc, O. Procopiuc, and S. Rodger,
Visualization and Interaction in the Computer Science
Formal Languages Course with JFLAP,
1996 Frontiers in Education Conference,
Salt Lake City, Utah, p. 121-125, 1996.
S. H. Rodger, Integrating Hands-On Work into the Formal Languages Course
via Tools and Programming, Workshop on Implementing Automata,
Lecture Notes In Computer Science 1260,
Springer-Verlag, p. 132-148,
1996. (this version is an early draft)
D. Caugherty, and S. H. Rodger, NPDA: A Tool for Visualizing and
Simulating Nondeterministic Pushdown Automata, in Computational
Support for Discrete Mathematics, DIMACS Series in Discrete
Mathematics and Theoretical Computer Science, Vol. 15, N. Dean and G.
E. Shannon (ed.), American Mathematical Society, 1994, 365-377.
S. Blythe, M. James, and S. H. Rodger,
LLparse and LRparse: Visual and Interactive Tools for
Proceedings of the Twenty-fifth SIGCSE Technical Symposium on
Computer Science Education,
E. Luce and S. H. Rodger,
A Visual Programming Environment for Turing Machines,
Proceedings of the IEEE Symposium on Visual Languages,
M. LoSacco and S. H. Rodger,
FLAP: A Tool for Drawing and Simulating Automata,
ED-MEDIA 93, World Conference on Educational Multimedia and
Survey papers with a strong recommendation for using JFLAP
- P. Chakraborty, P.C. Saxena, and C. P. Katti, Fifty years of automata
simulation: a review, ACM Inroads, Volume 2, Issue 4, p. 59-70, December 2011.
Here are quotes from this paper about JFLAP for an automata simulator.
"The effort put
into developing this tool is unparalleled in the field of simulation
of automata. As a result, today it is the most sophisticated tool for
simulating automata. It now covers a large number of topics on
automata and related fields. The tool is also the best documented
among the tools for simulation of automata."
"The tool uses state of the art graphics and is one of the easiest to
use. The tool is undoubtedly the most widely used tool for simulation
of automata developed to date. Thousands of students have
used it at numerous universities in more than a hundred countries."
- C. Shaffer, M. Cooper, A. Alon, M. Akbar, M. Stewart, S. Ponce, and
S. Edwards, Algorithm Visualization: The State of the Field. Transactions
on Computing Education (TOCE), Vol. 10, Issue 3, 22 pages, 2010.
This paper is a survey of algorithm visualization and mentions JFLAP
as one of the major visualization projects.
- J. Bergin, T. Naps, C. Bland, S. Hartley, M. Holliday, P. Lawhead,
J. Lewis, M. McNally, C. Nevison, C. Ng, G. Pothering, and T. Terasvirta,
Java resources for computer science instruction, ITICSE-WGR '98: Working
Group reports of the 3rd annual SIGCSE/SIGCUE ITiCSE conference on
Integrating technology into computer scienc education, p. 14-34, 1998.
JFLAP is described in a paragraph in the section of visualization tools.
Papers others have published using JFLAP -
either modifying JFLAP or
using JFLAP in some way...
- Adithi G. S., Akshay Adiga, Pavithra K., Prajwal P. Vasisht, and Viraj
Kumar, Secure, Offline Feedback to Convey Instructor Intent,
Proceedings of the 2015 IEEE Seventh International Conference on
Technology for Education (T4E '15), 2015, Pages 105-108.
Abstract: One of the core skills that Computer Science undergraduates master is to
create finite automata and regular expressions from natural-language
descriptions of formal languages. It is quite common for such descriptions
to be ambiguous (or appear to be so), particularly when instructors or
students are not fluent in the natural language. Two questions arise: (1)
Can an instructor unambiguously convey the intended description to students
in a secure manner (i.e., without revealing the instructor's own solution)?
(2) Can such a tool operate offline (i.e., without requiring internet
access)? Question (1) on its own can be addressed by permitting students to
upload their attempts to a server, where they can be checked against the
instructor's solution for equivalence. Such feedback cannot be obtained by
students lacking reliable internet connectivity. In this paper, we present
a technique to address both these questions: assuming cryptographically
secure hash functions exist, a student learns only whether her attempt is
equivalent to the instructor's solution (but nothing further), and after
downloading the problem statement, all subsequent computation is performed
on the student's own computer. We have implemented this functionality as an
opensource extension to JFLAP, a popular educational tool in this domain.
- Jody Paul, Using JFLAP to engage students and improve learning of
computer science theory: tutorial presentation, Journal of Computing
Sciences in Colleges, Volume 31, Issue 2, December 2015, pages 145-148.
- Sunita M Dol and Dattatray P. Gandhamal, TPFOSSS: A Modified TPS
Technique to Improve Student's Conceptual Understanding of Compiler
Construction Course, Proceedings of the 2014 IEEE Sixth International
Conference on Technology for Education (T4E '14), pages 245-248.
Abstract: TPFOSSS (Think-Pair Free Open Source Software-Share) is a
cooperative learning activity and modified activity of TPS in which free
open source software e.g. Parsing Simulator for Compiler Construction or
JFLAP simulator for Theory of Computation etc. Can be used in TPS
activity. Providing "think time" in TFOSSPS improves quality of student
responses. This activity develops skills of sharing information, improves
the interaction, listening, asking questions, summarizing others' ideas
etc. In this paper, we present how TPFOSSS works, advantages of TPFOSSS
over TPS and experimental results. The experiment carried out is two group
- Vinay Shekhar, Akshata Prabhu, Kavitha Puranik, Lakshmi Antin and Viraj
Kumar, JFLAP Extensions for Instructors and Students, Proceedings fo the
2014 IEEE Sixth International Conference on Technology for Education
(T4E'14), December 2014, pages 140-143.
Abstract: JFLAP is a popular open-source software tool used in Formal Languages and
Automata courses. In this paper, we present two kinds of enhancements to
JFLAP's capabilities with regards to finite automata: (1) we provide
instructors with the ability to understand difficulties faced by students
on an individual and collective basis by tracking student progress as they
solve automata construction problems, and (2) we offer students a simple
and intuitive means to specify correctness of their automata constructions,
and a mechanism to easily test their automata against such correctness
specifications. We believe that these extensions enhance the value of JFLAP
as a resource for both instructors and students.
- Jack Alanen, Software tools for learning: tips, tricks, and traps,
Journal of Computing Sciences in Colleges, Volume 29, Issue 4, April
2014, page 201.
- P. Crescenzi, L. Rossi and G. Apollaro,
Making Turing Machines Accessible to Blind Students, Forty-third Symposium
SIGCSE Technical Symposium on
Computer Science Education, p. 167-172, 2012.
Decribes how they modified JFLAP software to be accessible to
- K. Aldrawiesh, F. Siewe, and H. Zedan. An Observation Model to Detect Security Violoations in Web Services
Environment. ISWSA '11: Proceedings of the 2011 International Conference
on Intelligent Semantic Web-Services and Applications, 6 pages, 2011.
The paper is about a model for detecting security violations for web
services. They use JFLAP to define a model and test it, and then code the
model using Java.
- N. Neff, Problem-directed discrete structures course. SIGCSE
'10, Proceedings of the 41st ACM technical symposium on computer
science education, pages 148-151, 2010.
This paper describes a revised course on discrete structures. They
mention that their course uses lab experiences with JFLAP.
- G. J. Bex, W. Gelade, F. Nevin and S. Vansummeren. Learning
Deterministic Regular Expressions for the Inference of Schemas from
XML Data, Transactions on the Web (TWEB), Vol. 4, Issue 4, 32 pages, 2010.
In talking about translating k-OAs into k-OREs, they show an SOA in which
a classical state elimination algorithm returns a complicated expression,
by showing the resulting regular expression generated from JFLAP.
- G. J. Bex, F. Neven, T. Schwentick, S. Vansummeren,
Inference of concise regular expressions and DTDs,
Transactions on Database Systems (TODS), Vol. 35, Issue 2, 47 pages, 2010.
In talking about translating from SOA to SORE, they show the resulting
regular expression generated using JFLAP of the classical state elimination
algorithm applied to an SOA example.
- Galina Jiraskova and Tomas Masopust, Complexity in Union-Free Regular
Lecture Notes in Computer Science 6224, DLT 2010, pages 255-266.
From the author:
We used JFLAP (see p.261) to verify
that the automaton we reference in another paper(Thm3, p.320)
does not provide 256 reachable states for n=8, as claimed in the paper.
- N. Pillay, Learning Difficulties Experienced by Students in a Course
on Formal Languages and Automata Theory, inroads SIGCSE Bulletin, Vol. 41,
No. 6, p. 48-52, 2009.
This paper mentions a study in which JFLAP was made available for students
to use to learn the material. However, the use of JFLAP was not compulsory,
so it was not clear how much if any students used it.
- M. Armoni and M. Ben-Ari, The Concept of nondeterminism: its
development and implications for teaching. ACM SIGCSE Bulletin, Vol. 41,
Issue 2, , pages 141-160, June 2009.
This paper talks about nondeterminism and has a section on how to use JFLAP
- Z. Dodds, R. Libeskind-Hadas, C. Alvarado, and G. Kuenning,
Evaluating a breadth-first cs 1 for scientists, SIGCSE '08:
Proceedings of the 39th SIGCSE technical symposium on computer
science education, pages 266-270, 2008.
This paper is about a new course CS for Scientists. They mention one
of the software tools they use in the course is JFLAP.
- J. Jarvis and J. M. Lucas, Incorporating Transformations
into JFLAP for Enhanced Understanding of Automata.
ACM SIGSCE Bulletin, Volume 40, Issue 1, p. 14-18, March 2008.
Jarvis (AMD) and Lucas (SUNY, College at Brockport) modified JFLAP using a
plug-in system that allows transformation to and from any automata.
The goal was to assist in instructing students about topics such as
the Church-Turing thesis and the theory of undecidability. The modified
version of JFLAP was implemented in coursework at SUNY Brockport College.
- J. Jarvis and J. M. Lucas, Understanding the Universal Turing Machine:
an implementation in JFLAP. Journal of Computing Sciences in Colleges,
Vol. 23, Issue 5, May 2008, pages 180-1888.
Abstract: We describe the implementation of a Universal Turing Machine for
the JFLAP platform. JFLAP is most successful and widely used tool for
visualizing and simulating automata such as finite state machines, pushdown
automata, and Turing Machines. By executing our Universal Turing Machine in
JFLAP, students get a direct and interactive experience of how this Turing
Machine is capable of emulating other Turing Machines.
- Y. K. Tsay, T. F. Chen, M. H. Tsai, W. C. Chan, C. J. Luo.
Goal Extended: Towards a Research Tool for Omega Automata and Temporal Logic.
In Proceedings of the 14th International Conference on Tools and Algorithms
for the Construction and Analysis of Systems (TACAS 2008), LNCS 4963,
346--350, March/April, 2008.
GOAL uses and modifies JFLAP source code as software for researching Omega automata and
- M. Ben-Ari, Teaching concurrency and nondeterminism with spin.
ITICSE '07, Proceedings of the 12th anual SIGCSE conference on
Innovation and technology in computer science education, pages
This paper talks about teaching nondeterminism using the tool spin and
VN and mentions that the input to VN is an NDFA created by JFLAP.
- Y. K. Tsay, Y. F. Chen, M. H. Tsai, K. N. Wu, W. C. Chan. GOAL:
A Graphical Tool for Manipulating Buchi Automata and Temporal Formulae.
In Proceedings of the 13th International Conference on Tools and Algorithms
for the Construction and Analysis of Systems (TACAS 2007), LNCS 4424,
466--471, March/April, 2007.
Goal used the automata and graph modules from JFLAP.
- A. Merceron and K. Yacef, Web-Based Learning Tools:
Storing Usage Data Makes a Difference. Proceeding of
the Sixth IASTED International Conference Web-Based
Education - Volume 2, p. 104-109. Chamonix, France 2007.
Merceron and Yacef conducted analysis on the usage of JFLAP and Logic-ITA
(A web-based tutoring system for logical formal proofs) and student feedback.
JFLAP's usage as an extra resource in coursework at the University of
Applied Science in Berlin was investigated using student surveys. The study
verified JFLAP's benefits for students and found that the students who
tried the tool praised its utility.
- A. J. Rocker, C. M. Yauch, S. Yenduri, L.A. Perkins, and F. Zand,
Paper-Based Dichotomous Key to Computer Based Application For Biological
Identification. Journal of Computing Sciences in Colleges, Volume 22,
Issue 5, p. 30-38, May 2007.
Researchers at the University of Southern Mississippi used JFLAP to design
deterministic finite automata as alternatives to traditonally used,
paper-based dichotomous keys for biological identification in taxonomy.
- Y. Gan, M. Chechik, S. Nejati, J. Bennett, B. O'Farrell, and
J. Waterhouse, Runtime monitoring of web service conversations,
CASCON '07 Proceedings of the 2007 conference of the center for advanced
studies on Collaborative research, pages 42-57, 2007.
In their research they generate NFAs, store them in XML format and display them
- C. Allison, Practical Computation Theory. Journal of Computing
in Colleges - Papers of the Fourteenth Annual CCSC Midwestern Conference
and Papers of the Sixteenth Annual CCSC Rocky Mountain Conference, Vol. 23,
Issue 1, pages 141-146, October 2007.
He has an example of a Mealy machine created with JFLAP in his paper.
- Y. K. Tsay, Y. F. Chen, and K. N. Wu. Tool Support for
Learning Buchi Automata and Linear Temporal Logic. Formal Methods
in the Teaching Lab, Examples, Cases, Assignments, and Projects
Enhancing Formal Methods Education. A Workshop at the Formal
Methods 2006 Symposium, August 2006.
Tsay, Chen, and Wu created GOAL (Graphical interactive tool for
Omega-Automata and temporal Logic) to help instruct students on
Buchi automata and linear temporal logic with the usage and help of JFLAP code.
- G. J. Bex, F. Neven, T. Schwentick and K. Tuyls, Inference of
concise DTDs from XML data. VLDB '06: Proceedings of the 32nd international
conference on Very Large Data Bases, pages 115-126, 2006.
In the section on Inferring SOREs: iDTD,
they have an automaton and use JFLAP to convert the automaton to a regular
expression and show the resulting regular expression.
- A. R. M. Verma, A Visual and Interactive Automata
Theory Course Emphasizing Breadth of Automata. Annual Joint
Conference Integrating Technology into Computer Science Education,
Proceedings of the 10th annual SIGCSE conference on Innovation and
technology in computer science education, p. 325-329. Caparica, Portugal 2005.
Verma describes a revision in a Theory of Computing course
program at the University of Houston that uses a modified version
of JFLAP as a basis for more visualized teaching of automata theory.
Student evaluations for the course responded positvely to the changes
and some students were inspired by the changes to pursue further work
on the course and materials.
- J. Angel Velazquez-Iturbide, A programming languages course for
freshmen, ITiCSE '05: Proceedings of the 10th annual SIGCSE
conference on Innovation and technology in computer science
education, pages 271-275, 2005.
This paper describes a programming languages course for first year
college students. One of the tools they use in the laboratory component
of the course is JFLAP.
- A. L. Salmela and J. Tarhio. ACE: Automated Compiler Exercises.
Kolin Kolistelut - Koli Calling 2004, Proceedings of the Fourth Finnish/Baltic
Sea Conference on Computer Science Education. Koli, Finland 2004.
Salmela and Tarhio at the Helsinki University of Techonology have used
JFLAP as a foundation for their Automated Compiler Exercises to be used
in coursework. Their automation of assignments using JFLAP code is designed
to increase interactivity by making constructive feedback immediate and
- C. Chesnevar, M. Gonzalez, and A Maguitman, Didactic strategies for
promoting significant learning in formal languages and automata theory.
ITiCSE '04, Proceedings of the 9th annual SIGCSE conference on Innovation
and Technology in computer science education, pages 7-11, 2004.
They examined the learning environment of the formal languages and
automata class. As part of that they used several tools including JFLAP.
- C. I. Chesnevar, M. L. Cobo, and W. Yurcik, Using
Theoretical Computer Simulators for Formal Languages and
Automata Theory. ACM SIGCSE Bulletin, Volume 35, Issue 2,
p. 33-37. New York, NY 2003.
Chesnevar, Cobo, and Yurcik's paper describes testing of several
software tools used for teaching formal languages and automata theory
at the Universidad Nacional del Sur, Argentina. The useful capability
of JFLAP for students to integrate automata theory with the associated
grammars was noted. The paper illustrated the efficacy of using multiple
simulators on the same topics to enhance student understanding.
- T. Greening and J. Kay, Undergraduate research experience in computer
science education. ITiCSE '02, Proceedings of the 7th annual conference on
Innovation and technology in computer science education, pages 151-155,
This paper is about computer science research experiences for
undergraduates and mentions a research project a student did
in the evaluation of JFLAP with the student designing tutorial
activities, running the tutorials and evaluating the learning
outcomes with or without JFLAP.
- L. A. Sanchis, Computer Laboratories For The Theory of
Computing Course. Journal of Computing Sciences In Colleges,
Volume 16, Issue 4, p. 262-269, 2001.
Sanchis uses JFLAP for a variety of laboratory activities, which
are described in the article. Many of JFLAP's featured automata
are utilized interactively in the labs. JFLAP is a popularly chosen
option among students for constructing finite automata that recognizes tokens appearing in C++.
If you know of other papers that mention JFLAP, please send us the link
at jflap "at" cs.duke.edu. A short description of how the paper uses JFLAP
would also be appreciated.