GOOPEA: A Functional Programming Language with FIP Functionality

Carlsson, Oscar
Wahlgren, Patrik
Ivarsson, Oliver
Norén, Gustav
Lindström, Ella
Wahlsten, Alexander
Göteborgs universitet/Institutionen för data- och informationsteknikswe
University of Gothenburg/Department of Computer Science and Engineeringeng
2026-02-19T13:51:33Z
2026-02-19
Functional programming languages offer a unique way of writing code which can often be very concise, elegant and intuitive. However, due to their high-level nature, they are often more memory inefficient than other languages. This is further exacerbated by the memory management strategy reference counting which requires extra memory. This project explores a solution to this problem by extending reference counting with Functional In-Place (FIP) optimization in a new programming language goopea. The core idea of FIP is that objects that are referenced precisely once are reused. A web playground to experiment with goopea was also developed. The playground supports writing and executing of goopea code, contains documentation, and can show a visualization of the state of the memory for every step of the program. We ran benchmarks of multiple programs, comparing the performance with and without FIP. The tests showed that FIP greatly reduced memory usage in most programs, and got a significant speed improvement from the reduced number of memory allocations.
https://hdl.handle.net/2077/90740
eng
Technology
GOOPEA: A Functional Programming Language with FIP Functionality
text
Student essay
M2

Files

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
CSE 25-50.pdf
Size:
3.7 MB
Format:
Adobe Portable Document Format

License bundle

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