Video description
How do programming languages work under the hood? What’s the difference between compiler and interpreter? What is a virtual machine and JIT-compiler? And what about the difference between functional and imperative programming?
There are so many questions when it comes to implementing a programming language!
In this course, we will learn about compilers and AST interpreters and virtual machines. We will further explore basic expressions and variables in interpreters and learn about variables and environments. We will also explore built-in and native functions, user-defined functions, and call stack and recursive calls. Lastly, we will learn about OOP, class inheritance, and code isolation.
By the end of the course, we will implement a full AST interpreter for our programming language.
What You Will Learn
- Build a programing language from scratch
- Learn about AOT and JIT-compilers and Transpilers
- Learn about Bytecode, LLVM, stack-machines
- Learn about call-stack and activation records
- Learn about interpreters and compilers
- Learn about AST-interpreters and virtual machines
Audience
This class is for any curious engineer who would like to gain skills in building complex systems (and building a programming language is really a pretty advanced engineering task!) and obtain transferable knowledge for building such systems.
If you are interested specifically in compilers, interpreters, and source code transformation tools, then this class is also for you.
The only prerequisite for this class is basic data structures and algorithms: trees, lists, traversal.
About The Author
Dmitry Soshnikov: Dmitry Soshnikov is a software engineer and a lecturer on different computer science topics. He is passionate about education and focuses on high-quality educational content: concise and straight-to-the-point animated lectures with live-editing notes.
Product information
- Title: Building an Interpreter from Scratch
- Author(s):
- Release date: April 2021
- Publisher(s): Packt Publishing
- ISBN: 9781801071338
You might also like
video
Building a Parser from Scratch
Parsing or syntactic analysis is one of the first stages in designing and implementing a compiler. …
book
Build Your Own Programming Language
Written by the creator of the Unicon programming language, this book will show you how to …
book
Build a Large Language Model (From Scratch)
Learn how to create, train, and tweak large language models (LLMs) by building one from the …
audiobook
Build a Large Language Model (From Scratch)
Learn how to create, train, and tweak large language models (LLMs) by building one from the …