Susan Rodger and Thomas Finley, JFLAP - An Interactive Formal Languages and Automata Package, ISBN 0763738344, Jones and Bartlett, 2006. info

JFLAP Activities for Formal Languages and Automata, ISBN-13: 9780763772024, a CD Supplement with JFLAP exercises by Linz and Rodger published Dec. 2008. This CD has JFLAP examples and exercises chapter by chapter to fit with the Linz book.

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,
p.339, 2011.
pdf

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.
pdf

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.
pdf

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,
2007. pdf

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
Interactive
Automata Theory Course with JFLAP 4.0,
Thirty-fifth SIGCSE Technical Symposium on
Computer Science Education, 2004 (p.140-144).
pdf

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.
pdf
(first draft)

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.
html
and ps

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.
pdf

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
Alive,
Twenty-eighth SIGCSE Technical Symposium on
Computer Science Education, p. 15-19, 1997.
pdf

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.
pdf

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)
pdf

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.
(book)

S. Blythe, M. James, and S. H. Rodger,
LLparse and LRparse: Visual and Interactive Tools for
Parsing,
Proceedings of the Twenty-fifth SIGCSE Technical Symposium on
Computer Science Education,
1994, 208-212.(pdf)

E. Luce and S. H. Rodger,
A Visual Programming Environment for Turing Machines,
Proceedings of the IEEE Symposium on Visual Languages,
1993, 231-236.

M. LoSacco and S. H. Rodger,
FLAP: A Tool for Drawing and Simulating Automata,
ED-MEDIA 93, World Conference on Educational Multimedia and
Hypermedia,
1993, 310-317.

- 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.

- 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 experimental studies.

- 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 blind students.

- 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 for nondeterminism.

- 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 temporal logic.

- 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
363-364.

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 using JFLAP.

- 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 implementing visualizations.

- 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,
2002.

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.