MARPA :: PP.

Pure Perl versione di Marpa
Scarica ora

MARPA :: PP. Classifica e riepilogo

Annuncio pubblicitario

  • Rating:
  • Licenza:
  • Perl Artistic License
  • Nome editore:
  • Jeffrey Kegler
  • Sito web dell'editore:
  • http://search.cpan.org/~jkegl/

MARPA :: PP. Tag


MARPA :: PP. Descrizione

Versione pura perl di Marpa MARPA :: PP è un modulo perl che analizza qualsiasi linguaggio la cui grammatica può essere scritta in BNF. Ciò include grammatiche ricorsive, grammatiche ambigue, grammatiche e grammatiche infinitamente ambigue con produzioni inutili o vuote. Questo documento contiene una panoramica di alto livello dell'API per il motore MARPA Parse. I due esempi in questo documento mostrano i flussi tipici delle chiamate del metodo MarpA. Questo documento utilizzerà questi esempi per descrivere le caratteristiche di base di MarpA in modo semi-tutorial. Le caratteristiche avanzate di Marpa e i dettagli di riferimento completi di tutte le funzionalità possono essere trovati negli altri documenti API MarpA.Synopsis utilizzano MARPA :: PP; My $ GRAMMAR = MARPA :: Grammatica-> Nuovo ({Start => 'Expression', Azioni => 'my_actions', default_action => 'first_arg', regole => }, {lhs => 'termine', dhs => }, {lhs => 'fattore', dhs => }, {lhs => ' Termine ', RHS => , Azione =>' DO_ADD '}, {LHS =>' Factor ', RHS => , Action =>' Do_multiply '}} ,],}); $ grammatica-> preconfina (); My $ RECCE = MARPA :: riconoscimento-> Nuovo ({grammatica => $ grammatica}); $ rece-> Leggi ('numero', 42); $ rece-> Leggi ('moltiplicare',); $ rece-> Leggi ('numero', 1); $ rece-> Leggi ('aggiungi',); $ rece-> Leggi ('numero', 7); Sub my_actions :: do_add {my (undef, $ t1, undef, $ t2) = @_; restituire $ T1 + $ T2; } Sub my_actions :: do_multiply {my (undef, $ t1, undef, $ t2) = @_; restituire $ T1 * $ T2; } Sub my_actions :: first_arg {shift; ritorno spostamento; } My $ VALUE_REF = $ rece-> valore; My $ Value = $ Value_ref? $ {$ VALUE_REF}: 'No Parse'; Requisiti: · Perl.


MARPA :: PP. Software correlato