Foundations of Programming Languages: Build Interpreters with Scala
Master the core building blocks of code, evaluate language paradigms, and write your own functional interpreters using Scala.
About this course
Ever wondered how programming languages actually work under the hood? Understanding the core mechanics of languages allows you to learn new syntax faster and choose the right tool for any software project.
This text-based course guides you through the fundamental building blocks of programming languages. By studying how code is parsed, evaluated, and executed, you will transition from just writing code to understanding how compilers and interpreters process it. You will gain hands-on experience by building your own basic interpreters using Scala.
What you'll learn:
- Understand the foundational mechanics of syntax, parsing, and abstract syntax trees
- Build functional interpreters from scratch to evaluate custom expressions and variables
- Analyze different type systems, including static, dynamic, and modern type inference patterns
- Evaluate the trade-offs between various programming paradigms and memory management models
- Design domain-specific mini-languages tailored to solve unique software problems
- Apply pattern matching and functional programming concepts in Scala to process language structures
The journey begins with core terminology and the basic anatomy of a programming language, before moving into environment models, functions, and state. You will then apply these concepts by reading interpreter code and exploring topics like types and scoping.
This course is designed for beginner developers, computer science students, and curious programmers who want to deepen their understanding of how languages work. No prior experience with compilers or Scala is required.
Start exploring the inner workings of code and elevate your programming perspective today.
What you'll get
-
📜
Certificate of completion
Add it to your LinkedIn profile -
♾️
Lifetime access
Come back anytime, no expiry -
📱
Phone or computer
Works anywhere, any device -
💸
30-day refund
No questions asked -
⚡
Short & focused
45 min of practical content
Reviews
No reviews yet — be the first to share your experience.
Learners also took
Learn to bridge functional and object-oriented styles using TypeScript, Clojure, and Kotlin to write more flexible and maintainable code.
$4.99$9.99
Explore functional programming paradigms, dynamic typing, and language design using Racket to write more flexible and robust code.
$4.99$9.99
Master the core mechanics of object-oriented and functional programming to write adaptable, robust code across Ruby and other modern languages.
$4.99$9.99
Master the fundamentals of Go, from basic syntax to concurrency, and start building efficient backend applications with this step-by-step guide.
$4.99$9.99
Frequently asked
What do I need to take this course? +
Just a phone or computer with internet. No installs, no special hardware.
How do I pay? +
By card via Stripe, or with cryptocurrency. We do not store card details — Stripe handles them securely.
Can I get a refund? +
Yes — full refund within 30 days, no questions asked.
How long will I have access? +
Forever. Once you purchase, the course is yours to revisit anytime.
Will I get a certificate? +
Yes. On completion you'll receive a certificate you can add to your LinkedIn profile.
Built for learners in
Tech
Design
Finance
Marketing
Healthcare
Education
Hospitality
Manufacturing