Master's Compiler Design Course: Build a Compiler Through Five Projects Using Racket
By
azhenley
Master baker tier. Every paragraph earns its place on the tray.
Summary
The article describes a master's-level compiler design course (CIS531) that teaches students to build a compiler through five projects. The course uses the Racket programming language and assumes prior programming knowledge, some C experience, and basic assembly language familiarity. The content outlines the course structure, prerequisites, and learning objectives for those interested in compiler implementation, functional language internals, and practical x86-64 assembly experience.
Key quotes
· 3 pulledAre you interested in building a compiler? Learning how functional languages are implemented? Gaining a bit of practical experience with x86-64 assembly language?
CIS531 is a masters-level class on compiler design which assumes that (a) you know how to program, (b) you've had some exposure to C (know about stack allocation, malloc, etc.), and (c) have seen some assembly code.
My class projects are in the Racket programming language, but if you do
You might also wanna read
The History of Pipes, Forks, and Zombies in Unix Systems
This article discusses the history and concept of pipes in Unix systems, focusing on Doug McIlroy's original vision of coupling programs lik
A 7-line interpreter: Implementing a functional programming language in minutes
The article presents a minimal 7-line interpreter for a functional programming language, demonstrating the eval/apply design pattern from St
Demystifying Floating Point Numbers: An Interactive Guide
An in-depth technical blog post that demystifies floating point numbers, explaining their internal representation and behavior. The author i
The Seven Foundational Programming Paradigms: Understanding Core Concepts Beyond Specific Languages
The article argues that instead of focusing on specific programming languages, learners should understand the fundamental 'ur-languages' or
Introduction to C Programming: Understanding the Foundational Language
This appears to be the beginning of a book about the C programming language, specifically Chapter 1 titled 'Getting Started.' The content in
A Compiler Writing Journey: Building a Self-Compiling C Subset Compiler
A GitHub repository documenting a personal journey to write a self-compiling compiler for a subset of the C language. The project provides p
