Towards a System-Level Functional Language: Lithium

dc.contributor.authorSelander, Sebastian
dc.contributor.authorHammersberg, Samuel
dc.contributor.departmentGöteborgs universitet/Institutionen för data- och informationsteknikswe
dc.contributor.departmentUniversity of Gothenburg/Department of Computer Science and Engineeringeng
dc.date.accessioned2025-10-08T13:52:43Z
dc.date.available2025-10-08T13:52:43Z
dc.date.issued2025-10-08
dc.description.abstractFunctional programming has a rich and well-documented history. In functional programming, large problems can be described by the composition of smaller building blocks. Despite its benefits, functional programming has struggled to find its way into system-level programming. By leveraging the guarantees linear types impose, functional programming languages can be applied to system-level programming without sacrificing performance. This thesis presents Lithium, a system-level functional programming language that is based on a variant of linear logic. Lithium is designed to be an intermediate compilation target for linear functional languages. We give the typing and kinding rules for Lithium before describing a series of transformations to turn Lithium into a language that is easily translated into assembly code. Additionally, we present a compilation scheme, a mapping from types to memory, and the application binary interface (ABI).sv
dc.identifier.urihttps://hdl.handle.net/2077/89857
dc.language.isoengsv
dc.setspec.uppsokTechnology
dc.titleTowards a System-Level Functional Language: Lithiumsv
dc.typetext
dc.type.degreeStudent essay
dc.type.uppsokH2

Files

Original bundle

Now showing 1 - 1 of 1
No Thumbnail Available
Name:
CSE 25-34 SH SS.pdf
Size:
438.42 KB
Format:
Adobe Portable Document Format
Description:
Master thesis

License bundle

Now showing 1 - 1 of 1
No Thumbnail Available
Name:
license.txt
Size:
876 B
Format:
Item-specific license agreed upon to submission
Description:

Collections