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 Dart, Gleam, and Rust, which each have specific characteristics that make them great examples of programming languages 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 pick and mix.