Implementing and Optimizing a Simple, Dependently-Typed Language

dc.contributor.authorBlaguszewski, Michael
dc.contributor.departmentChalmers tekniska högskola / Institutionen för data- och informationsteknik (Chalmers)sv
dc.contributor.departmentChalmers University of Technology / Department of Computer Science and Engineering (Chalmers)en
dc.date.accessioned2019-07-03T12:22:52Z
dc.date.available2019-07-03T12:22:52Z
dc.date.issued2010
dc.description.abstractThis thesis presents a compiler for the simple functional programming language LambdaPi, which includes dependent types. The compiler is written in Haskell and uses LLVM, a framework for building optimizing compiler backends. It can compile the complete standard library provided by LambdaPi’s authors into native machine code. It is not much of an optimizing compiler, but several obvious opportunities for improvement exist. First I discuss the theoretical background of project: the principles of dependent types and the languages which include them. I also give a brief overview of the LLVM system and of related work. The second section describes the process of implementation, which was done in stages from a trivial calculator language up to full LambdaPi. And finally we consider opportunities for optimization. Some of these stem from Edwin Brady’s [2005] analysis of Epigram, while others are lower-level and can be performed for us by LLVM.
dc.identifier.urihttps://hdl.handle.net/20.500.12380/124826
dc.language.isoeng
dc.setspec.uppsokTechnology
dc.subjectDatalogi
dc.subjectComputer science
dc.titleImplementing and Optimizing a Simple, Dependently-Typed Language
dc.type.degreeExamensarbete för masterexamensv
dc.type.degreeMaster Thesisen
dc.type.uppsokH
Ladda ner
Original bundle
Visar 1 - 1 av 1
Hämtar...
Bild (thumbnail)
Namn:
124826.pdf
Storlek:
294 KB
Format:
Adobe Portable Document Format
Beskrivning:
Fulltext