NAME
fash - interactive shell for debugging FLAT based PREs and underlying structures
fash
OPTIONS
fash provides an easier commandline interface to one liners available via FLAT::CMD
Usage:
Sending input interactively:
% fash <action> [parameter1 parameter2 ... parameterN]
Sending input via <STDIN>
:
% cat file.dat | fash -b test
Actions:
- somestrings "regular_expression"
-
Outputs strings based on all acyclic paths from start to all final states found in the minimal DFA
- morestrings "regular_expression"
-
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
- dump "regular_expression"
-
Perl dump parse tree of given regex.
- dfa2jflap "regular_expression"
-
Dumps out FA in FLAT input format; useful for visualizing and manipulating FA
- nfa2jflap "regular_expression"
-
Dumps out FA in FLAT input format; useful for visualizing and manipulating FA
- dfa2gv "regular_expression"
-
Dumps out FA in graphviz input format; useful for visualizing FA
- nfa2gv "regular_expression"
-
Dumps out FA in graphviz input format; useful for visualizing FA
- pfa2gv "regular_expression"
-
Dumps out FA in graphviz input format; useful for visualizing FA
- dfa2undgv "regular_expression"
-
Dumps out undirected graph underlying the FA in graphviz input format; useful for visualizing FA
- nfa2undgv "regular_expression"
-
Dumps out undirected graph underlying the FA in graphviz input format; useful for visualizing FA
- pfa2undgv "regular_expression"
-
Dumps out undirected graph underlying the FA in graphviz input format; useful for visualizing FA
- dfa2digraph "regular_expression"
-
Outputs digraph of FA for input into a program that might operate over the underlying graph.
- nfa2digraph "regular_expression"
-
Outputs digraph of FA for input into a program that might operate over the underlying graph.
- pfa2digraph "regular_expression"
-
Outputs digraph of FA for input into a program that might operate over the underlying graph.
- dfa2undirectedgraph "regular_expression"
-
Outputs undirected graph of FA for input into a program that might operate over the underlying graph.
- nfa2undirectedgraph "regular_expression"
-
Outputs undirected graph of FA for input into a program that might operate over the underlying graph.
- pfa2undirectedgraph "regular_expression"
-
Outputs undirected graph of FA for input into a program that might operate over the underlying graph.
- test "regular_expression" "test_string"
-
Given a regular expression, tests the given string(s) for acceptance.
- compare "regular_expression1" "regular_expression2"
-
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.
EXTERNAL PROGRAM SUPPORT
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
http://www.jflap.org/tutorial/-
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.
COPYRIGHT AND LICENSE
Same terms as perl itself.
AUTHOR
OODLER 577 <oodler@cpan.org>
ACKNOWLEDGEMENTS
Same as those of FLAT.