Foote, Johnson, and Noble -- 2
A Language Built of Objects
ØObject
ØBehavior
ØClassDescription
ØClass
ØMetaclass
ØMethod
ØMethodDictionary
ØCompiledMethod
ØByteArray
ØContext
ØMethodContext
ØBlockContext
ØMessage
ØProcess
ØProcessScheduler
ØSemaphore
ØSharedQueue
ØCompiler
ØSystemDictionary
Ø
I can’t begin to tell you how impressed I was, when I was first learning Smalltalk, to discover that programs were themselves built out of objects, and that you could change and extend these too, just like an other. It’s a big part of why I’m still here, and standing before you today.

(Give a brief rundown of what these do at runtime)…

There is really very little that you can’t get at in Smalltalk. We identified the things you can’t override back in ’89: sending a message, receiving a message, returning from a context, and reading and writing instance variables.