Ich möchte einen einfachen Parser in Perl schreiben, der hauptsächlich eine zusätzliche Ebene über einer bestehenden Sprache bietet. Ich sah Parse::Yapp
, Parse::Lex
oder sogar Marpa::R2
, aber das einzige konkrete Beispiel ist immer das gleiche: ein einfacher Rechner, der 43 * 8 + 1
tut. Ich kann nicht leicht andere Beispiele finden, also frage ich mich, ob diese Pakete immer noch eine gute Wahl sind, um einen Parser zu implementieren.Werden Parse :: Yapp, Parse :: Lex oder Marpa :: R2 noch verwendet?
Sind Parse::Yapp
, Parse::Lex
oder Marpa::R2
immer noch eine gute Lösung über einen hand-rolled Ansatz?
Wo finde ich weitere Beispiele und Dokumentationen zu diesen Modulen? Die CPAN-Seiten sind normalerweise ziemlich leer
Überprüfen Sie die Links [hier] (https://github.com/choroba/marpa-enhanced-calculator) für Nicht-Rechner Beispiele auf [Marpa :: R2] (http : //p3rl.org/Marpa :: R2) . – choroba
Versuchen Sie etwas wie 'calc.pl 'a = 43 b = 3 * 8; drucke a + b''. Aber der Punkt war, die anderen Links zu zeigen :-) – choroba
Ich aktualisierte den Code in GitHub, um die Eingabe ohne ein abschließendes Trennzeichen zu akzeptieren. – choroba