Modern and Emerging Programming Languages

Welcome! In this free open online course, you’ll learn how programming languages are designed and how they work, while also learning how to create your own programming language.


On the side, you’ll also learn Rust, which has specific characteristics that make it a great example of a programming language to learn.


The course expects that you already have some prior programming experience. The course is currently being developed, and new parts are published periodically.

Course Parts

We recommend starting from the first one, but you can also browse around.