A Multi-Paradigm Programming Language for Education
Nikita Dümmel, Bernhard Westfechtel, Matthias Ehmann · 2023
An introductory CS1 course at universities has to meet different requirements. In addition to computational thinking, students have to learn a programming language and its underlying concepts. Furthermore, they should be educated in different paradigms such as procedural, object-oriented, and functional programming. Industrial-strength languages are optimized towards the requirements of professional software developers and tend to offer an overwhelming and complex set of language constructs. Using such a language in a CS1 course, students find themselves mainly struggling with learning the language, being primarily exposed to simple programs for demonstrating its constructs. In contrast, MuLE is an educational language that supports multiple paradigms with a small set of carefully designed constructs. Using MuLE, beginners may develop programming skills more easily, while they still learn underlying concepts systematically that may be transferred to other languages in their further education.