I recently worked with GraalVM's Truffle language implementation framework.
I wanted to write a tutorial about it,
as I've found the existing explanations of how it works difficult to follow
(I had to piece a lot of information from different sources to get the whole picture).
Since it's a very large topic,
I'm breaking it up into multiple parts.
In the first installment,
I want to explain exactly what Truffle and Graal is,
and how they work together to help you easily create a high-performance implementation of a programming language.