From its home-page:
RbCl is a reflective object-oriented concurrent programming language. It is designed so that any run-time routine of the language can be replaced with RbCl objects---what we call no kernel in the language. The RbCl system has system object tables, which registers run-time routines, which is written in C++ at the beginning. The table can be modified, and user defined RbCl objects can be executed as run-time routines via a novel feature linguistic symbiosis.

See also ABCL, Akinori Yonezawa.