VisualFP - Designing a Visual, Block-Based Environment to Create & Execute Haskell Code

Streckeisen, Lukas and Flepp, Jann M. (2023) VisualFP - Designing a Visual, Block-Based Environment to Create & Execute Haskell Code. Other thesis, OST Ostschweizer Fachhochschule.

[thumbnail of HS 2023 2024-SA-EP-Flepp-Streckeisen-Haskell FP PL Open Slot 2.pdf] Text
HS 2023 2024-SA-EP-Flepp-Streckeisen-Haskell FP PL Open Slot 2.pdf - Supplemental Material

Download (4MB)


Most visual programming tools used to introduce children & young adults to the programming world are based on the imperative paradigm. Existing tools based on functional programming either lack a good user experience or hide critical concepts of the functional paradigm.
To address this gap, a visual, block-based tool for functional programming should be designed. This project aims to find a visual design of such a tool and then prove its feasibility in a proof of concept application.
Existing visual programming tools are examined before creating a visual design. The development of the design is approached in two iterations: In a first step, concept drafts are based on researched tools and evaluated using a survey. Then, a new concept is created using the received feedback and implemented in a proof of concept.
The created design concept focuses on function composition, guided by type holes that indicate the type required for a valid function definition.
The implemented application proves that the proposed concept for function composition works as envisioned. It includes an inference engine that determines the type of undefined parts of a function and is built using Electron.js & Haskell.
It is recommended that an additional project be conducted to implement missing features of the application so that it can be used in classrooms.
Keywords: Haskell, Functional Programming, Visual Programming

Item Type: Thesis (Other)
Subjects: Topics > User Interface Design
Area of Application > Development Tools
Area of Application > Academic and Education
Area of Application > E-Learning
Technologies > Programming Languages > Haskell
Technologies > Frameworks and Libraries > Node.js
Metatags > IFS (Institute for Software)
Divisions: Bachelor of Science FHO in Informatik > Student Research Project
Depositing User: OST Deposit User
Thesis advisor
Farhad D., Mehta
Date Deposited: 16 May 2024 11:41
Last Modified: 16 May 2024 11:41

Actions (login required)

View Item
View Item