Alam, Abu S. (2015) A Programming System for End-user Functional Programming. PhD thesis, University of Gloucestershire.
Abu Alam PhD Thesis 2015.pdf
Available under License All Rights Reserved.
Download (2MB) | Preview
This research involves the construction of a programming system, HASKEU, to support end-user programming in a purely functional programming language. An end-user programmer is someone who may program a computer to get their job done, but has no interest in becoming a computer programmer. A purely functional programming language is one that does not require the expression of statement sequencing or variable updating. The end-user is offered two views of their functional program. The primary view is a visual one, in which the program is presented as a collection of boxes (representing processes) and lines (representing data flow). The secondary view is a textual one, in which the program is presented as a collection of written function definitions. It is expected that the end-user programmer will begin with the visual view, perhaps later moving on to the textual view. The task of the programming system is to ensure that the visual and textual views are kept consistent as the program is constructed. The foundation of the programming system is a implementation of the Model-View-Controller (MVC) design pattern as a reactive program using the elegant Functional Reactive Programming (FRP) framework. Human-Computer Interaction (HCI) principles and methods are considered in all design decisions. A usabilty study was made to find out the effectiveness of the new system.
|Item Type:||Thesis (PhD)|
|Uncontrolled Keywords:||Functional Programming, Visual Programming, End-User Programming, Visual Data Flow Language, Usability, Human-Computer Interaction, Model-View-Controller, Functional Reactive Programming, Programming Systems, HASKEU|
|Subjects:||Q Science > QA Mathematics > QA76 Computer software|
|Divisions:||Schools and Research Institutes > School of Computing and Technology|
|Depositing User:||Susan Turner|
|Date Deposited:||23 Oct 2015 10:47|
|Last Modified:||16 Sep 2016 13:43|