fash - interactive shell for debugging FLAT based PREs and underlying structures
fash
fash provides an easier commandline interface to one liners available via FLAT::CMD
Sending input interactively:
% fash <action> [parameter1 parameter2 ... parameterN]
Sending input via <STDIN>:
<STDIN>
% cat file.dat | fash -b test
Outputs strings based on all acyclic paths from start to all final states found in the minimal DFA
Outputs strings associated with all acyclic paths and backedges detected on an accepting state from
start to all final states found in the minimal DFA
Perl dump parse tree of given regex.
Dumps out FA in FLAT input format; useful for visualizing and manipulating FA
Dumps out FA in graphviz input format; useful for visualizing FA
Dumps out undirected graph underlying the FA in graphviz input format; useful for visualizing FA
Outputs digraph of FA for input into a program that might operate over the underlying graph.
Outputs undirected graph of FA for input into a program that might operate over the underlying graph.
Given a regular expression, tests the given string(s) for acceptance.
Compares 2 regularexpressions.
Notes on 'test' action:
this action may accept STDIN when using the -b flag; the format of the file should be a regular expression in the top line, followed by strings to test for acceptance.
This shell interface to FLAT provides support for two external programs, which opens the door widely for true introspection into the underlying data structures affecting the program's execution.
JFLAP
JFLAP is a package of graphical tools which can be used as an aid in learning the basic concepts of Formal Languages and Automata Theory.
Another useful direct link to JFLAP, is http://www.jflap.org/whatis.html
GraphViz
GraphViz is a very well known package, originally created at AT&T, https://graphviz.org/:
Graphviz is open source graph visualization software. Graph visualization is a way of representing structural information as diagrams of abstract graphs and networks. It has important applications in networking, bioinformatics, software engineering, database and web design, machine learning, and in visual interfaces for other technical domains.
For Perl interfaces to GraphViz, look no further than GraphViz and Tk::GraphViz.
More are listed at https://metacpan.org/search?q=graphviz.
Same terms as perl itself.
OODLER 577 <oodler@cpan.org>
Same as those of FLAT.
To install Sub::Genius, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Sub::Genius
CPAN shell
perl -MCPAN -e shell install Sub::Genius
For more information on module installation, please visit the detailed CPAN module installation guide.