Uppsats

GOOPEA: A Functional Programming Language with FIP Functionality

Kandidat-uppsats

Göteborgs universitet/Institutionen för data- och informationsteknik

Publicerad: 2026-02-19

Språk: Engelska

Sammanfattning

Functional programming languages offer a unique way of writing code which canoften be very concise, elegant and intuitive. However, due to their high-level nature,they are often more memory inefficient than other languages. This is furtherexacerbated by the memory management strategy reference counting which requiresextra memory.This project explores a solution to this problem by extending reference countingwith Functional In-Place (FIP) optimization in a new programming language goopea.The core idea of FIP is that objects that are referenced precisely once arereused.A web playground to experiment with goopea was also developed. The playgroundsupports writing and executing of goopea code, contains documentation, and canshow a visualization of the state of the memory for every step of the program.We ran benchmarks of multiple programs, comparing the performance with andwithout FIP. The tests showed that FIP greatly reduced memory usage in mostprograms, and got a significant speed improvement from the reduced number ofmemory allocations.

Information

Lärosäte / institution
Göteborgs universitet/Institutionen för data- och informationsteknik
Publiceringsdatum
2026-02-19
Uppsatstyp
Kandidat-uppsats
Språk
Engelska