Directembedding: Concealing the Deep Embedding of DSLs
Macros expand at compilation time which forces you to think differently compared to when writing 'normal' code. The project involved developing Directembedding, a library for macro based direct embedding of DSLs. My contribution to the project was to add several new features and perform a case study. The case study was a lot of fun. I used the Directembedding library to implement slick-direct, a front-end for Slick.