$$
\newcommand{\N}{\mathbb{N}}
\newcommand{\C}{\mathbb{C}}
\newcommand{\R}{\mathbb{R}}
\newcommand{\Z}{\mathbb{Z}}
\newcommand{\ZZ}{\ooalign{Z\cr\hidewidth\kern0.1em\raisebox{-0.5ex}{Z}\hidewidth\cr}}
\newcommand{\colim}{\text{colim}}
\newcommand{\weaktopo}{\tau_\text{weak}}
\newcommand{\strongtopo}{\tau_\text{strong}}
\newcommand{\normtopo}{\tau_\text{norm}}
\newcommand{\green}[1]{\textcolor{ForestGreen}{#1}}
\newcommand{\red}[1]{\textcolor{red}{#1}}
\newcommand{\blue}[1]{\textcolor{blue}{#1}}
\newcommand{\orange}[1]{\textcolor{orange}{#1}}
\newcommand{\tr}{\text{tr}}
\newcommand{\id}{\text{id}}
\newcommand{\im}{\text{im}\>}
\newcommand{\res}{\text{res}}
\newcommand{\TopTwo}{\underline{\text{Top}^{(2)}}}
\newcommand{\CW}[1]{\underline{#1\text{-CW}}}
% specific for this document
\newcommand{\cellOne}{\textcolor{green}{1}}
\newcommand{\cellTwo}{\textcolor{red}{2}}
\newcommand{\cellThree}{\textcolor{brown}{3}}
\newcommand{\cellFour}{\textcolor{YellowOrange}{4}}
$$
Go2Jasmin
computer science
compilers
English
Author
Luca Leon Happel
Published
January 30, 2023
Abstract
Writing assembly code by hand is tedious and error-prone. Go2Jasmin is a compiler that translates a subset of the Go programming language into Jasmin assembly code for the Java Virtual Machine (JVM). This was a project I did during my bachelor’s degree in computer science for a good grade and for fun. Ultimately I decided to skip my bachelor’s degree in computer science to pursue a PhD in computer science afterwards, so this project was only really for fun (and its good grade never proved useful).