Instaparse is a library for generating parsers from context-free grammars.
https://github.com/engelberg/instaparse

The main new feature in this release is support for namespaced
non-terminals in your grammar, which become namespaced keywords in the
parser's tagged output. Namespaced keywords have become much more prevalent
in Clojure style in the years since instaparse was first released, so I
suspect many will find it useful to have direct support for namespaces.

Namespaces utilize `.` and `/` characters which have other meanings in
grammar specifications. It shouldn't cause any problems provided there's
some whitespace around these characters when using them as grammar
operators, but I wanted to be sure not to break previous grammars where
there was no reason to be careful with spacing, so this is an *opt-in *feature
for backwards compatibility. The way to opt-in to this feature is by adding
the optional keyword argument `:allow-namespaced-nts true` when building
your parser. For more explanation and an example, see the documentation
here:
https://github.com/Engelberg/instaparse?tab=readme-ov-file#namespaced-keywords

Thanks to Oliver (github.com/or) for suggesting this feature two years ago
and providing the pull request that was the foundation of this release. And
thanks to Clojurists Together for making it feasible for me to spend time
digging back into instaparse, evaluating and testing pull requests, and
working to get them merged and documented.

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/clojure/CAORbMOMohCDNgeFbBfGiZ7UGSD1JYiK64xLrSfaHSCQydWJXQA%40mail.gmail.com.

Reply via email to