Greetings Cameleers!
We’re back with another deep dive into the Flambda2 Optimizing Compiler! Our latest entry in the Flambda2 Snippets blog series is out !
Flambda2 Ep. 4: How to write a purely functional compiler
Beware, this episode is a hefty one !
This time again, we take you on a journey through the heart of Flambda2’s optimization process. Indeed, we take a look at the high-level considerations of Simplify
, the main optimization algorithm! This post is the most important one yet. The subject is key to coming to grasps with the philosophy and design behind our home-made compiler and we highly recommend that you read it if you’re interested in functional programming, exotic compiler architectures, novel engineering, and programming language representation!
If you’ve been following the series, this article builds on what we’ve covered before — especially Foundational Design Decisions (episode 1), and Speculative inlining (episode 3) — so you might want to check these out first. And as always, this is all leading up to even more compiler spelunking in future posts!
Hope you enjoy the read, and let us know what you think!
Until next time,
The OCamlPro Team