Valentin Aebi

   

I am a master's student in computer science at EPFL, specializing in programming languages and compilers. I have experience in compilation-related projects in the JVM ecosystem (Java, Scala, JVM bytecode).


Interests


Projects

๐Ÿ The Rattlesnake programming language

Personal project

Keywords: Language design, Compiler, JVM bytecode, Program verification, Scala

Simple imperative programming language, compiled to JVM bytecode. My goal was to create a rather minimal programming language that is still expressive enough to write non-trivial programs in a convenient way, e.g. a non-brute-force sudoku solver. The compiler is written in Scala. As part of our final project in the Formal verification class at EPFL, my teammates and I also built a verifying compiler for Rattlesnake.

๐Ÿ˜ JumboTrace

Research project, EPFL SYSTEMF laboratory, 2023-2024

Keywords: Java compiler plugin, JVM bytecode, Debuggers, Program tracing

For my master semester projects, I contributed to SYSTEMF's Immediate tracing project, whose goal is to record the evolution of the state of a program and display it as an execution trace. My work was focused on implementing such a tool for Java. The tool is named JumboTrace. The first version was based on bytecode instrumentation (report). The second version consists of a plugin for the Java compiler.

๐Ÿงช Stoichiometry calculator

Personal project

Keywords: Linear algebra, Chemistry, Rust

A calculator to balance chemical equations and compute quantities involved in chemical reactions. Written in Rust.

๐Ÿ‘จโ€๐Ÿ’ป Language features ร -la-carte

Bachelor project, EPFL Scala center, Spring semester 2022

Keywords: Static code analysis, Program transformation, Scala

For my bachelor project, I contributed to the Languages features ร -la-carte project. The goal of the project was to build a linter for Scala to check that some features of the language are not used (typically it could be used to guarantee that programs are functional). I also worked on a prototype tool that transforms (some) imperative Scala programs into equivalent functional programs.

๐Ÿ“ฑ Multimatum

Team project for the Software development project class, EPFL, Spring semester 2022

Keywords: Android, Kotlin

My teammates and I created Multimatum, an Android app to manage deadlines.