Today I was external examinator for a programming language course at
the University of Aalborg.  Most of the designs are pretty
unimaginative - think reskins of tiny subsets of Java.  However, one
group had managed, almost by accident, to construct a dynamically
typed language with records (they called them "objects"), static
scoping, and first class functions.  That is, a pretty comfortable
Lisp!  (Although without s-expressions.)

I don't think they quite understood what they had done.  When I showed
them how to define a fully capable OOP system in their language (using
closures), some of them suggesting that perhaps their language should
be restricted so that this would not be possible.

Strong Allegory of the Cave vibes.