Computer Science ETDs
Publication Date
5-1-2014
Abstract
The Scala programming language successfully blends object-oriented and functional programming. The current implementation of Scala is tied to the Java Virtual Machine (JVM) which constrains the implementation and deployment targets. This thesis describes the implementation of a new backend for the Scala compiler that targets the Low Level Virtual Machine (LLVM). Targeting LLVM allows compilation of Scala programs to optimized native executables and enables implementation techniques that are not possible on the JVM. We discuss the design and implementation of this backend and evaluate its ability to compile existing Scala programs and the performance of the generated code. We then outline the additional work needed to produce a more complete, performant and robust backend.
Language
English
Keywords
programming languages, compilers, programming language implementation, llvm, scala
Document Type
Thesis
Degree Name
Computer Science
Level of Degree
Masters
Department Name
Department of Computer Science
First Committee Member (Chair)
Crandall, Jed
Second Committee Member
Lakin, Matthew
Recommended Citation
Reedy, Geoffrey. "Design and Implementation of a Scala Compiler Backend Targeting the Low Level Virtual Machine." (2014). https://digitalrepository.unm.edu/cs_etds/67