Z racji tego, że często muszę pisać parsery, to napisałem dla siebie pewne narzędzie ułatwiające mi ich pisanie w CoffeeScript.
Oczywiście mógłbym użyć jakiegoś gotowego generatora parserów, ale z racji tego, że wolę utrzymywać kod CoffeeScript czysty oraz często muszę wykorzystywać i zmieniać fragmenty wcześniej napisanych parserów, to wygodniejsze jest dla mnie pisanie ich w kodzie, a nie generowanie.
Dlatego też napisałem proste narzędzie, która pozwoli w mojej ocenie pisać w ten sposób parsery w wygodny sposób. Jest to moje drugie podejście do tematu. Postarałem się, żeby można było łatwo:
- użyć wcześniej istniejących parserów
- składać je w bardziej skomplikowany
- nazywać parsery i podmieniać je w parserach, w których zostały użyte.
https://github.com/sielakos/parser-lib
W planach mam poprawienie dokumentacji (również pod względem poprawności językowej) oraz dopisanie wielu predefiniowanych parserów tak, żeby można było łatwo napisać parser prostego języka programowania.
Obecna wersja jest póki co bardzo prototypowa.