Removing the Notional Machine Discrepancy (Doctoral Consortium)

Jesse Hoobergs · 2023

A notional machine of a programming language is an abstraction that explains how programs in the language execute. I argue that when novices learn to program, there is a problematic discrepancy between the presented notional machine of the part of the language that they have seen and a notional machine of the whole language. This discrepancy can be removed by creating different languages that gradually change to the complete language. I am creating a Programming Education Runtime System that allows to modularly combine programming language constructs to create these gradual languages. As a next step, evaluation of the use of these gradual languages will be carried out.

Read the paper · More papers on PaperTik