Extending and Evaluating a Tool for Visual and Stepwise Evaluation of Functional Programming Expressions (ClickyEvaluation)

Introduction

ClickyEvaluation is a visual interpreter for a Haskell-like language. Expressions can be entered as text and will be displayed as interactive HTML. The user can control the order of evaluation by clicking (thus the name) on subexpressions. The goal of ClickyEvaluation is to help students understand the evaluation of expressions in functional languages, especially with regards to higher order functions like <code>map</code> or <code>fold</code>. The project is written in PureScript, a Haskell dialect that compiles to JavaScript. Being compiled to JavaScript allows ClickyEvaluation to be used on any platform without the need to install additional software or to connect to a server.

  • Evaluated in a short and small experiment
  • Not yet evaluated in a course setting
  • Plan: Evaluate its usefulness during the FP or PdP course
  • Also: Implement more features

Goals

  • Evaluate tool parallel to FP or PdP course
  • Implement more features, e.g.:
    • Algebraic Data Types
    • do-Notation
    • Type Classes
  • Improve Interface:
    • Nicer GUI with better feedback
    • Refactor frontend code
    • Improve history performance

Prerequisites

  • Finished FP course (knowledge of monads) and hungry for more
  • Some knowledge of web technologies (JS, CSS, HTML)
  • Interest in doing experiments with students (questionnaires and exercises)

Download as PDF

Ansprechpartner

Stefan Kögel

Zusammenfassung

TypeMasterthesis
Startdirect
Locationinternally