While attempting to teach callbacks to a room full of C# devs i figured lua was the easiest for creating readable examples. The language has very good teachable aspects. I'd pick lua over python as a teacher to teach data structures
I'm experienced across many languages. Including Haskell (professionally), Rust (for fun) and Ruby/Python/TypeScript.
When you say "fennel on top", sure that makes all the difference! I've argued in favour of using a LISP/Scheme for teaching students in the local uni i'm active in, but the businesses requesting "give us close to Java/C# certified graduates" won.
Edsgar Dijkstra wrote a nice piece on this.
https://www.cs.utexas.edu/users/EWD/transcriptions/OtherDocs...
But I'm not sure java is exactly without criticism either.
Lua and Love2D (and with Fennel on top) makes for a good teaching setup, IMHO.