Hi Community,
I am happy to announce that next Tuesday (the 8th of November), Michael Ballantyne will hold the discussion about “Bringing together language workbenches and macro systems”.
You’ll find the Zoom link below!
Language workbenches and macro systems each aim to allow programmers to easily build DSLs. The two approaches have different and complementary advantages. Macros allow programmers to incrementally develop DSLs by creating syntactic abstractions over patterns they encounter in their code. “Languages as libraries” of macros are easy to integrate into a program. A user simply imports the library and does not need to configure build tools or IDEs. Language workbenches are excellent for creating larger-scale DSLs. They provide declarative metalanguages for specifying DSL elements such as syntax, name binding, and typing rules. Using these declarations, the language workbench generates a compiler and IDE services. Michael will present a “language workbench as a library” in the form of a metalanguage built on top of Racket’s macro system. The metalanguage allows programmers to conveniently develop a DSL in a Racket library while specifying the syntactic structure and binding rules of the DSL declaratively. The metalanguage hides the complicated operational details of working with Racket’s macro API.
Michael is a PhD student advised by Matthias Felleisen at Northeastern University. He works on making Racket a better host for domain-specific languages. He previously contributed to the Turnstile type system metalanguage and to the miniKanren logic programming language.
Web page: https://mballantyne.net/
How to connect
To avoid other security issues is now necessary to register for the meeting. The registration should be necessary just once and be valid for all the next meetings you will participate in. I understand it is a little extra effort, but it would avoid problems like the ones we encountered:
Registration for the Virtual Meetup
After registering, you will receive a confirmation email containing information about joining the meeting. It will also permit you to add it to your calendar.
Time
It is hosted on Zoom at 5 PM GMT+1/CET (you can use this link to figure out which time is in your timezone: Dateful Time Zone Converter.
Cheers,
Elisa