University of Twente Student Theses

Login

Pitfalls in Parallel Programming Language Design

Merzoian, A. (2024) Pitfalls in Parallel Programming Language Design.

[img] PDF
450kB
Abstract:Multithreading is a very important concept for optimizing certain algorithms, the ability to split up certain workloads into isolated chunks and run an algorithm on these chunks across multiple threads can affect the performance of these algorithms by several factors. In this paper, a programming language called Twice is introduced. Twice is a minimal compiled language that implements multithreading through future (or promise) values. Twice is built on top of the LLVM project to support compilation to many targets and was created to be a learning tool for future language designers. Twice also implements other non-trivial features like top-level statements, control flow through if statements and while loops, a simple type system and access to foreign functions. This paper will explore the overall development process of the language compiler, discuss issues that came up during development and provide general pointers on what (not) to do when designing a programming language.
Item Type:Essay (Bachelor)
Faculty:EEMCS: Electrical Engineering, Mathematics and Computer Science
Subject:54 computer science
Programme:Computer Science BSc (56964)
Link to this item:https://purl.utwente.nl/essays/100873
Export this item as:BibTeX
EndNote
HTML Citation
Reference Manager

 

Repository Staff Only: item control page