2009-07-14 12 views
25

Szukałem ostatnio w Boost.Spirit (wersja zawarta w Boost 1.39), jednak jestem dość zdezorientowany z samych dokumentów. To, czego szukam, to przykład języka zabawek zaimplementowanego w Boost.Spirit - coś podobnego do maleńkiego Javascript lub Lua, gdzie zasadniczo tworzysz AST i proces jest. Byłbym szczęśliwy, gdyby po prostu obsługiwał definicje funkcji/zmiennych i podstawowych operatorów, chcę tylko zobaczyć, jak utworzyć normalną AST za pomocą Boost.Spirit i jak zaimplementować podstawowe reguły, takie jak identyfikatory, deklaracje itp.Przewodnik wprowadzający dla Boost.Spirit?

Do tej pory próbowałem przykładu kalkulatora, ale nie jest dla mnie jasne, jak zaimplementować większą gramatykę za pomocą Ducha. Z drugiej strony przykład mini_c, który jest dołączony, wygląda dość skomplikowanie i nie jest zbyt dobrze udokumentowany. Czy jest jakiś łatwy do zrozumienia przewodnik Boost.Spirit, czy może książka?

+0

Jeśli chcesz poznać nowy Boost Spirit X3, polecam [ten film wideo] (https://www.youtube.com/watch?v=xSBWklPLRvw). Slajdy Powerpoint znajdują się [tutaj] (http://ciere.com/cppnow15/using_x3.pdf). –

Odpowiedz

10
+2

Oto moje własne spojrzenie na JSON przy użyciu Spirit V2 https://github.com/sehe/spirit-v2-json dla porównania – sehe

+0

Oto ładne napisanie o Dr Dobbs: [http://www.drdobbs.com/ cpp/the-spirit-parser-library-inline-parsing/184401692] (http://www.drdobbs.com/cpp/the-spirit-parser-library-inline-parsing/184401692?pgno=1) – evilspacepirate

5

proszę pamiętać, że jest nowsza wersja duch doładowania z zupełnie nowym podejściem do generowania AST.

+3

Dokumentacja dla Spirit2: http://www.boost.org/doc/libs/1_40_0/libs/spirit/doc/html/index.html –

Powiązane problemy