The following module was proposed for inclusion in the Module List:
modid: Parse::FSM
DSLIP: bdpOp
description: Deterministic top-down parser based on a FSM
userid: PSCUST (Paulo Custodio)
chapterid: 11 (String_Lang_Text_Proc)
communities:
similar:
Parse::RecDescent Parse::Eyapp
rationale:
Spin-off of the deterministic top-down parser based on a
pre-computed finite state machine that was developped for the
CPU::Z80::Assembler module.
Uses a different approach to lexing than Parse::RecDescent - input
is read incrementally one line at a time and the tokens are pairs of
[type, value], similar to the usage in Parse::Eyapp.
Does not do back-tracking - the parser is quicker and the assembly
language is deterministic; each token determines the sentence that
can be recognized from that point in the input.
The provided lexer uses Perl 5.10 regexp features to match the next
token in one big regexp - quicker than the usual Perl loop checking
for each token type. It can be easily sub-classed to recognize a
different set of tokens.
The lexer supports recursive file includes and keeps track of the
current file name and line number.
enteredby: PSCUST (Paulo Custodio)
enteredon: Sat Apr 16 20:42:12 2011 GMT
The resulting entry would be:
Parse::
::FSM bdpOp Deterministic top-down parser based on a FSM PSCUST
Thanks for registering,
--
The PAUSE
PS: The following links are only valid for module list maintainers:
Registration form with editing capabilities:
https://pause.perl.org/pause/authenquery?ACTION=add_mod&USERID=de600000_4d42ff78853b69ec&SUBMIT_pause99_add_mod_preview=1
Immediate (one click) registration:
https://pause.perl.org/pause/authenquery?ACTION=add_mod&USERID=de600000_4d42ff78853b69ec&SUBMIT_pause99_add_mod_insertit=1
Peek at the current permissions:
https://pause.perl.org/pause/authenquery?pause99_peek_perms_by=me&pause99_peek_perms_query=Parse%3A%3AFSM