Prototypical language - no such thing as a class, instead you create a new object by cloning an existing one.
Objects have "slots" - basically a hash. You assign a new slot with :=
which will initialize it if it doesn't exist
If an object starts with a Capital letter, then it is a "Type" of object (like a class, but it's not a class OK!) it then gets a "type" slot. If an object starts with a lowercase letter then it's an instance, and it would get their parent's type slot.
e.g.
Book := Object clone
Fiction := Book clone
Fiction slotNames # returns list(type)
dune := Fiction clone
dune slotNames # returns list()
Lobby Nice little feature which lists all the named objects
Hash's
book := Map clone
book atPut("author", "C.S.Forester")
book atPut("genre", "Fiction")
you can turn maps into objects..
CSForesterCategory := book asObject
hornblowerAndTheAtropos := CSForesterCategory clone ...
Page created on 6 Jun 2020