Hi all,
There is an exciting new release of Gerbil, as we now support the #lang form
for custom language preludes with arbitrary syntax. The release also comes
with an extensive parsing/lexing library, so that you can easily write new
language grammars in declarative syntax.
Custom languages are documented in the Guide and the Custom Languages tutorial:
https://github.com/vyzo/gerbil/blob/master/doc/tutorial/lang.md
For sources and downloads:
https://github.com/vyzo/gerbil
https://github.com/vyzo/gerbil/releases
Detailed Changelog since v0.8:
- expander:
- %%ref, %%app, and %%begin-module indirections for custom expansion
- #lang reader support for custom language preludes
- allow arbitrary extensions for modules (not just .ss)
- fix resolution of displaced syntax-quotes
- std/parser:
- parsing and lexing package in stdlib
- std/parser/grammar prelude for declarative parser specification
- core prelude:
- inline struct-instance? and direct-struct-instance?
- remove catch, add read-line
- stdlib
- std/make: recompile static exes when the static module is stale
- [targit] std/crypto/libcrypto: fix compatibility issues with openssl-1.1.x
- tutorial: Custom Languages tutorial
Happy Hacking!
-- vyzo