Generative Programming and Verification - Nada Amin

2,675 views · Published 16 August 2017 · 38:08 · Indexed 4 November 2026

Channel: ClojureTV · 2017 · Science & Technology

Watch on YouTube

I will illustrate the promise of generative programming — writing expressive high-level programs that generate fast low-level code at runtime — with a small (less than 500 lines of code) SQL query engine that outperforms commercial and open source database systems. The key ingredient is a native interpreter for relational algebra operations, which we turn into a fast compiler with the help of the Scala type system. I will build the SQL engine step-by-step, focusing on generative programming patterns. Finally, I will touch upon verifying properties (e.g. no memory nor overflow errors, check contracts) of the low-level generated code, so that it is not only fast but also secure using a high-level, fast and safe HTTP parser as an example.

More from this channel