Wren is a small, fast, class-based concurrent scripting language. Think Smalltalk in a Lua sized package with a dash of Erlang and wrapped up in a familiar, modern syntax.
The VM implementation is under 4,000 semicolons. You can skim the whole thing in an afternoon. It’s small, but not dense. It is readable and lovingly-commented. A fast single-pass compiler to tight bytecode, and a compact object representation help Wren compete with other dynamic languages.
Wren places classes front and center. And lightweight fibers are core to the execution model and let you organize your program into an army of communicating coroutines.