…wird mit der libphorward jetzt immer geiler! Seit gestern gibts ein neues README-File mit schönem Demoprogramm und neuer Featureliste… damit mal Tacheles gesprochen wird, wozu das Ding eigentlich da ist:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
#include <phorward.h> int main() { ppgram* g; char* s = "1+2*(3+4)+5"; char* e; parray* a; g = pp_gram_create( "%emitall" "f: /[0-9]+/ | '(' e ')';" "t: t '*' f | f ;" "e: e '+' t | t ;" ); if( !pp_lr_parse( &a, g, s, &e ) ) return 1; /* parse error */ pp_ast_simplify( a ); return 0; } |
Schneller kann man keinen Parser definieren, ausführen und den Parsebaum als Ergebnis sehen… und alles direkt im C-Code!
Alleinstellungsmerkmal?? 🙂 I hope so…