This is an old revision of the document!
Table of Contents
Modular Programming
In this tutorial chapter, we introduce AmbientTalk's language features that have to do with writing modular programs. The term “modular” can be taken quite broadly in this context. By “modular” programming, we here mean programs hierarchically structured into multiple files and objects composed from multiple so-called “trait” objects. We also describe AmbientTalk's lightweight support for classifying objects and how this enables exception handling based on “types”.
Namespaces and the lobby
explain: lobby object, ~ object, files as objects, namespace objects and hierarchical structuring of files, uniform access files/objects
Importing objects
explain: import native, using import for importing external file definitions. Warning: importing from namespaces
Objects as traits
explain: using import as an object-composition mechanism: concepts behind traits (required/provided interface), aliasing, exclusion.
Classifying objects using stripes
explain: what are stripes? what kind of objects are they, stripe subtyping, stripe test, what default stripes exist
Exception Handling
explain: raise, try-catch and variants, first-class handlers, role of stripes, interface of an exception object