profile picture

Introduction

Hi, my name is Yonah Goldberg. I'm a junior studying computer science, with a concentration in computer systems, at Carnegie Mellon University. Currently, I'm interested in programming languages and compilers.

In spring '23 I took Compiler Design and wrote a small compiler for C0, a safe subset of C. The compiler primarily targets x86-64 assembly, but for the final project my partner and I extended it to compile to LLVM IR. We also compile to SSA form and perform various optimizations, such as peephole optimizations, constant/copy propagation, tail recursion optimization, and dead code elimination. Because it would result in an academic integrity violation, the compiler is privated on my GitHub, but I can show anyone who wants to take a look.

At the same time, I did research under Josh Sunshine on Penrose, a DSL for creating mathematical diagrams from plaintext. I primarily worked on running the Penrose compiler and optimizer on a separate thread using web workers.

Currently I'm doing research under Ben Titzer, working on Virgil, a fast a lightweight systems programming language. I'm writing a backend and assembler to complile Virgil to Arm64.

For summer '24, I'm excited to be interning at NVIDIA in Santa Clara on the LLVM compiler optimizations team.

About this Website

This website is made with a Rust backend using Axum and Tokio. It has a simple HTML and JS frontend and is styled with Tailwind CSS. It is deployed via AWS App Runner.

I plan to update this with more projects soon. In the meantime, my GitHub is always updated with my most recent work!