Io

Io is a pure object-oriented programming language inspired by Smalltalk, Self, Lua, Lisp, Act1, and NewtonScript. Io has a prototype-based object model similar to the ones in Self and NewtonScript, eliminating the distinction between instance and class. Like Smalltalk, everything is an object and it uses dynamic typing. Like Lisp, programs are just data trees. Io uses actors for concurrency.

Remarkable features of Io are its minimal size and openness to using external code resources. Io is executed by a small, portable virtual machine.

Features

 * pure object-oriented based on prototypes
 * lazy evaluation of function parameters
 * exception handling
 * Perl-like regular expressions
 * incremental garbage collecting supporting weak links
 * highly portable
 * DLL/shared library dynamic loading on most platforms
 * introspection, reflection and metaprogramming
 * Actor-based concurrency
 * Coroutines
 * small virtual machine
 * higher-order functions