JForlan tool - Uppu, Srinivasa Aditya (Kansas State University, 2009)
Forlan is a computer toolset for experimenting with formal languages. Forlan is implemented as a set of Standard ML (a functional programming language) modules. Forlan presently includes a tool named ‘JFA’ (Java Finite Automata Editor) which is a Java GUI tool for creating and editing ‘Finite Automata’ and a tool named ’JTR’ (Java Trees Graphical Editor) which is used for creating and editing ‘Parse Trees’ or ’Regular Expression Trees’. The JForlan tool is an attempt to unify the ‘JFA’ and the ‘JTR’ tools into one single tool so as to make it more robust, efficient and easy to use. Apart from integrating the tools a lot more functionality like creating and editing ‘Regular Expression Finite Automata’ and ’Program Trees’ (special kinds of Forlan trees which are used to represent Programs in Forlan) has been added to the tool which were not present in the ‘JFA’ and the ‘JTR’ tools. As the ‘Automata’ and the ‘Trees’ are closely related concepts it is highly beneficial to combine the tools into one single tool. The JForlan tool can be invoked either from Forlan or can be run as a standalone Application. Due to the integration of the ‘JFA’ and the ‘JTR’ tools the user can now view the regular expression which was entered as a transition label in the ‘Automata’ mode as a tree structure in the ‘Tree’ mode. Another important feature which is added to the tool is that during the creation of the trees the user need not follow the top down approach only (i.e. creating first the root and then adding children to it) but can create the nodes of the tree in any order the user wishes. An important feature of the tool is that after drawing the necessary automaton or tree the user can save it directly as an ‘image’ or a JForlan project or can select the option of saving it in Forlan syntax, which translates the figures drawn into the Forlan code automatically. The main purpose of developing this tool is to provide a user friendly, easy to use tool which would be ideal for students as educational software which would help them to learn and understand the basic concepts of automata and tree structure.
Keywords: Java GUI Tool for drawing Forlan Automata,Trees; Computer Science (0984); Information Science (0723)