KASH3 contains several advanced features that facilitate extending its functionality. Some of these come from the GAP3 programming language, in particular the overloading of operators using records. Extendable objects are also build on records. They allow storing additional information in objects on the shell level. Together with the type system this also allows inheritance of functionality to objects of new types. The type system also makes it possible to overload functions ('InstallMethods'). Overloading and the type system are tied in with the help system.