Marpa :: Xs.

XS-Erweiterung von Marpa
Jetzt downloaden

Marpa :: Xs. Ranking & Zusammenfassung

Anzeige

  • Rating:
  • Lizenz:
  • LGPL
  • Name des Herausgebers:
  • Jeffrey Kegler
  • Website des Verlags:
  • http://search.cpan.org/~jkegl/

Marpa :: Xs. Stichworte


Marpa :: Xs. Beschreibung

XS-Erweiterung von Marpa MARPA :: XS ist ein Perl-Modul, das jede Sprache analysiert, deren Grammatik in BNF geschrieben werden kann. Dazu gehören rekursive Grammatiken, mehrdeutige Grammatiken, unendlich mehrdeutige Grammatiken und Grammatiken mit nutzlosen oder leeren Produktionen.Das Dokument enthält einen Überblick über die Übersicht der API für den MARPA-Parse-Motor. Die beiden Beispiele in diesem Dokument zeigen die typischen Flüsse von Marpa-Methodenaufrufen. Dieses Dokument wird diese Beispiele verwenden, um die grundlegenden Merkmale von Marpa in Semi-Tutorial-Mode zu beschreiben. Die erweiterten Funktionen von Marpa und vollständige Referenzdetails aller Funktionen finden Sie in den anderen Marpa-API-Dokumenten .Synopsis Meine $ Grammatik = Marpa :: XS :: Grammatik-> Neu ({Start => 'Ausdruck', Aktionen => ' MY_ACTIONEN ', Default_action =>' First_ARG ', Regeln => }, {lhs =>' Term ', Rhs => }, {lhs => 'Faktor', RHS => }, {lhs => 'Term', Rhs => , Action => 'do_add'}, { LHS => 'Faktor', RHS => , Action => 'do_multiply'},],}; $ Grammatik-> Precompute (); Meine $ RECCE = MARPA :: XS :: Anerkennung-> Neu ({Grammatik => $ Grammatik}); $ RECCES-> Lesen ('Nummer', 42); $ REACCE-> Lesen ('Multiplizieren',); $ RECCES-> Lesen ('Nummer', 1); $ RECCES-> Lesen ('Add',); $ RECCE-> Lesen ('Nummer', 7); SUB MY_ACTIONEN :: do_add {mein (undef, $ T1, undef, $ T2) = @_; Rückgabe $ T1 + $ T2; } SUB MY_ACTIONEN :: do_multiply {mein (undef, $ t1, undef, $ t2) = @_; Rückgabe $ T1 * $ t2; } SUB MY_ACTIONEN :: First_Arg {Schicht; Rückschaltverschiebung; } My $ value_ref = $ RECCES-> Wert; mein $ value = $ value_ref? $ {$ variable_ref}: 'keine Analyse'; Anforderungen: · Perl.


Marpa :: Xs. Zugehörige Software