April 3, 2025 - 9:30am to 4:30pm Central Daylight Time
▶ ︎LIVE NOW

Building a Static Type-Inferring Compiler

Richard Feldman

Richard Feldman

Vendr, Inc.
Building a Static Type-Inferring Compiler

This Workshop's Online Chatroom is Currently Open!

This workshop has ended. Check back soon for the recording!

You can watch a replay of this workshop!

Spend a full day learning to build a static type-checking compiler with Richard Feldman!

Key Takeaways

By participating along with us in the workshop, you'll learn:

  • Understand how type checking and type inference work
  • Learn how compilers can statically detect naming errors
  • See how to build compiler-related tools like a code formatter
  • Learn how a compiler can use static types to generate efficient machine code

Is This Workshop for Me?

This course is for experienced programmers. It uses (very basic) JavaScript as the language for implementing the compiler, so if you want to do the exercises, you’ll need to be able to write JS. The course also starts with a compiler that turns source code into data structures, so although the course doesn’t require that you know how to do that, it also won’t be covering how to do it.

Workshop Details

In this course, you’ll learn how to build a static type-checker and binary machine code generator! Along the way, you’ll learn how to statically detect naming errors, as well as the basics of making a code formatter. This course doesn’t cover how source code gets parsed, or how interpreters work, but other courses cover those concepts (such as the “Building Your Own Programming Language” course).

Any Prerequisites?

  • Significant programming experience (in any language)
  • Knowing how to write JavaScript on a basic level, because the examples and exercises use JavaScript.

Attend Online Live and in Full HD

Or Join In Person from Downtown Minneapolis
Get Your Questions Answered
Code Along with the Class
Classroom Format

You're Registered to Attend Online!

You'll receive additional details and a reminder via email as the event draws near.

Building a Static Type-Inferring Compiler

Event Details

What

  • One Full Day Workshop Session
  • Replay Videos (available immediately)

When

  • April 3, 2025 - 9:30am to 4:30pm Central Daylight Time

Where

  • Option 1: Attend online on our full HD live stream
  • Option 2: Attend in-person at HQ in Minneapolis, MN

Daily Schedule

  • 9:30AM
    Introduction
  • 10:00AM
    Traversing the AST
  • 10:30AM
    Name Resolution
  • 11:30AM
    Type Inference
  • 12:00PM
    Lunch
  • 1:00PM
    Constraint Generation
  • 2:00PM
    Type Solving
  • 3:00PM
    Machine code generation
  • 4:00PM
    Wrap-up

Your (Awesome) Instructor

Richard Feldman

Richard Feldman

Richard is the creator of the Roc programming language, the host of the Software Unscripted Podcast, and the author of “Elm in Action” from Manning Publications. He’s written a lot of JavaScript, dating back to the pre-jQuery days, but since 2015 has spent more time writing Elm, Rust, and Roc. Over the years he’s created several popular Elm packages, including elm-css, elm-test, and elm-json-decode-pipeline; the JavaScript seamless-immutable library; and a fully-featured programming language compiler in Rust.

Check out all of our upcoming workshops!

Workshops happen throughout the year, and are all included with membership.