NetCLOS

A portable concurrent actor extension of the object-oriented programming language CLOS, itself an extension of Common Lisp. It describes active objects, remote messaging and references, and synchronization mechanisms. Remote messages can be asynchronous (past), synchronous (RPC, or present), or promise (future-creating), which has a past message implicitly called on it for a result, and a forcing present message.