T was empirically the best Lisp (and maybe the best programming language) ever. Its facilities for object-oriented programming were a master-stroke of simplicity. (A similar facility is available in Chicken Scheme through the operations egg, if you want to have a play with it.)
Chris Neukirchen demonstrates a remarkably simple, effective implementation of T objects in Ruby. Personally, it’s not quite how I would have done it, but it’s an interesting proof-of-concept. Observe that inheritance and Rubyesque mix-ins are both provided by simple ‘joining’ of objects. There are no classes: the object system is closer to being prototype-based, but doesn’t work by cloning as most do.
The T manual is available in PDF format, but I created it from a very old LaTeX document rescued from the Web Archive. Please let me know if you notice anything missing or otherwise astray.