3 ms·
Python is extremely popular in education and I'm convinced this is a huge part of its overall popularity. In that, it displaced Java in a move wildly popular wi
by scythe 6y ago
Python is extremely popular in education and I'm convinced this is a huge part of its overall popularity. In that, it displaced Java in a move wildly popular with students; the language designers practically targeted college classes. But professors are conservative and won't usually change languages unless there is a compelling advantage.
So, you might think Lua can't compete with Python in education. But we have an ace in the hole: concurrency. Lua can be a great sandbox for learning concurrent programming, with built-in coroutines and a reentrant interpreter on top of an extremely simple semantics and basic type system.
The problem is that nobody is going to want to use an ad hoc combination of Lua and some questionably maintained 3P libraries to teach a course. If Lua is to be useful for teaching parallel programming, it needs a built-in or at minimum endorsed solution for parallelism. Penlight, probably the most popular "Lua batteries" collection, includes almost everything except parallelism!
Another issue in education, though, is 1-based arrays. They're a minor annoyance in practice, but learning to count from zero is important in many CS courses.