Wren is an embeddable, class-based scripting language and bytecode interpreter. It provides a dependency-free virtual machine designed for integrating dynamic script execution into host applications via a C API.
The language is centered on a modern object-oriented model featuring inheritance, method overloading, and first-class functions. It utilizes a concurrent fiber runtime to manage lightweight, cooperatively scheduled execution paths without relying on operating system threads.
The project includes a comprehensive suite of object-oriented primitives, closure-based state capture, and a module import system with cyclic dependency resolution. Its performance is supported by single-pass bytecode compilation, fixed-offset field access, and tagged value storage to reduce memory overhead.
The virtual machine can be integrated into applications as a static or shared library, and the language can also be executed as a standalone binary tool via a command-line interface.