While not working on Tuesdays, we from time to time participate to/ or organize events. Even if it is not customary, software-application-related events do take place in Brussels; this one was intitled Programming Conference 2017.
Raincode Labs organized a Compiler Coding Dojo, hosted by Vadim Zaystev its Chief Science Officer (later seen on pictures below)
Here’s what the program looked like:
– 09:00–09:15: Opening and introductions (Vadim Zaytsev)
– 09:15–10:30: Attribute Grammars for DSLs for Music and 3D Graphics (Elizabeth Scott, Adrian Johnstone) with ART
– 11:00–12:00: Metaprogramming in Late Phases of Compilation (Anya Helene Bagge) with Rascal
– 13:30–15:00: Experimenting with Racket as a Language Workbench (Robby Findler) with Racket
– 15:30–17:00: The Future of Compilers, presentations by Rik Arends with MakePad, Ralf Lämmel with The Software Languages Book, Adrian Johnstone with FunCons & Nicolas Laurent with Whimsy and Autumn
Participants were lucky enough to measure their compiling coding skills to others and especially under supervision of experts.
Robert Findler [Responsible for the creation and maintenance of DrRacket], Adrian Johnstone & Elizabeth Scott [both developed correct parsing algorithms in particular GLL top-down parser and the RNGLR family of generalised Tomita-style LR parsers] and Anya Helene Bagge [whose reasearch interests include DSLs & language extensions, program transformation & more] spent the whole day with newbie compiler coders throughout their respective sessions.
An impressive collection of books was available to help them “survive” the day.
A few quotes from the day:
Adrian Johnstone, while describing the software he & E. Scott are working on:
“We’re excepting a full release of the software in the summer, you are my guinea pigs”
“Of course it’s quite easy to write Java that is incorrect”
We learned from Anya Helene Bagge that the implementation of Rascal is about 30 000 lines.
Robby Findler & Matthew Flatt, in the Rascal session, were excellent supervisors & accessible to every participant.