The MNL: A Block-Based Functional Programming Language with Reactive Blocks
by Steven Lolong
In Proceedings of the International Workshop on Programming Abstractions and Interactive Notations, Tools, and Environments (PAINT). ACM Press, 2025.
Abstract
The complexity of functional programming languages can pose a challenge for learners. However, the use of block-based languages in learning programming can lower the barriers to the learning process. While many block languages have been created, they often lack essential features of functional languages and do not include the type inference. This gap serves as motivation to develop a block-based functional programming language that provides visual information about three programming language conventions. The development process begins with designing text syntax, transforming it into blocks, drafting typing rules for visual languages, and building a new functional block language called Macaca Nigra Language. Case studies of Macaca Nigra Language demonstrate that it effectively provides visual clues through shapes and colors regarding the three conventions of programming languages.