Applicability of Effect Handler Oriented Programming (EHOP) for Text-Based Game Development

Bachelor Thesis (2022)
Author(s)

I. Todorov (TU Delft - Electrical Engineering, Mathematics and Computer Science)

Contributor(s)

Casper Bach Bach – Mentor (TU Delft - Programming Languages)

C.R. van der Rest – Mentor (TU Delft - Programming Languages)

Jaro Reinders – Mentor (TU Delft - Programming Languages)

J.W. Böhmer – Graduation committee member (TU Delft - Algorithmics)

Faculty
Electrical Engineering, Mathematics and Computer Science
Copyright
© 2022 Ivan Todorov
More Info
expand_more
Publication Year
2022
Language
English
Copyright
© 2022 Ivan Todorov
Graduation Date
24-06-2022
Awarding Institution
Delft University of Technology
Project
Programming With Effects
Programme
Computer Science and Engineering
Related content

This is a link to the GitHub repository, which contains all of the source code, that was used, while writing this Bachelor thesis.

https://github.com/ivanstodorov/chess-game-koka
Faculty
Electrical Engineering, Mathematics and Computer Science
Reuse Rights

Other than for strictly personal use, it is not permitted to download, forward or distribute the text or part of it, without the consent of the author(s) and/or copyright holder(s), unless the work is under an open content license such as Creative Commons.

Abstract

Effect handler oriented programming (EHOP) is a recently proposed programming paradigm, which aims to provide a separation of concerns by isolating the handling of side-effects from the main application logic. Nowadays, as the core concepts behind EHOP are being added to more and more programming languages, it is evident that EHOP is slowly but steadily growing in popularity. Therefore, it is important to explore the applicability of EHOP for different areas of software development. However, so far, very little research has been conducted on this topic and, thus, barely any possible application domains of EHOP have been investigated. This study focuses on a potential field of application of EHOP, which has not been covered by previous research, namely - text-based game development, and aims to determine the extent to which the usage of EHOP for text-based game development affects the modularity, readability and maintainability of the source code. This goal will be achieved by performing both a qualitative as well as a quantitative analysis of the source code of a text-based game, written in Koka - a state-of-the-art programming language, which supports EHOP. The results show that there are substantial benefits to using EHOP for text-based game development. It significantly improves the modularity, readability and maintainability of the source code at the cost of very little to no performance.

Files

License info not available