We invite participants interested in large scale code generation, including but not limited to:
- large API bindings projects like Amazonka,
- transpilers and compilers,
- parser and data binding generation.
We provide instruction and exercise templates in Haskell, but users of any functional programming language are welcome.
After completing this tutorial, participants will be familiar with best current practices:
- propagating source positions to final error messages.
- useful monad transformers stacks,
- tagging code for unidirectional or bidirectional code generation,
- making code readable and debuggable by the end-user,
- policy on releasing new versions,
- techniques for automatic generation of changelogs,
- managing version migrations,
- reusing parsers for AST construction,
- avoiding common issues with generated code.
I encourage attendees to register their interests and requirements in advance: https://forms.gle/ETAhPxAprLHFWqyU6