With an ongoing digital revolution taking place since the past decade, many companies across different industries are developing or adopting various technological tools for better efficiency, quality and cost reductions. Given this context, most universities today can be seen to offer at least one programming course to equip its students with the necessary skills.
In this digital era, learning as many languages and becoming familiar with many different paradigms helps students get access to a wider and dynamic job market and enhance problem solving skills and versatility. However, most universities usually only offer to teach two or three popular languages in their CS courses. This is primarily due to the significant effort and time required for teachers to provide formative assessment to their students' programming assignments. Having a short and quick feedback loop becomes crucial in the learning process especially when students have to switch between different languages in a short period of time. Also, many common tools do not work together with a wide variety of programming languages, forcing teachers to only use common languages like Python or Java.