Chapter 1 Overview
1.3 Road Map to the ADL
The elements of the ADL are defined briefly here. Italicized terms refer to other ADL terms also defined in this list.
- Assets allow a user to customize an application description using a special form of initialization.
- Assignment is a very simple type of statement that calculates the value of an expression and assigns it to a variable.
- Base types are the simplest system-defined variable types used in the ADL, e.g., integer or string.
- Base type constants are actual values of base typs that can be expressed in the ADL, e.g., 42 or "Hello, world!".
- Built-in function calls are invocations of system-defined functions that can take arguments and return a value. They help the user manipulate base and compound values in ways that would be difficult if not impossible with expressions.
- Class definitions specify the members and methods of a class.
- Complex types are indexed collections of data of a specified type. The ADL supports both indexed and associative arrays.
- Compound types are ADL data types built from base types. They include lists, times and intervals.
- Control structures are built from statements and conditional expressions to form complex statements that can change the course of an application's execution. The if and the while statements are examples of control structures.
- Dynamic object creation provides a mechanism for the application developer to create objects as needed at run-time.
- Expressions are built from constants, variables, and operators. They are used at
run-time to calculate new values.
- Identifiers name variables and classes in the ADL.
- Inheritance describes how one class builds on the members and methods of other classes.
- Initialization describes the various mechanisms for initializing class objects with their members and inherited bases.
- Lexical conventions determine how to format the ADL in a file or on the screen, including the mechanisms for embedding explanatory comments in a script.
- Libraries are collections of classes used as a starting point in building new classes, and the application as a whole.
- Messages are sent to objects, which must possess the appropriate method to handle the message. A message can be part of an expression if it returns a value or it can stand by itself as a statement.
- Metaclass operations describe special operators and messages used to treat a class as a special kind of object.
- Method definitions specify how messages with a particular selector, or name, are handled.
- Object definitions are similar to variable definitions. They specify class members or temporary objects in methods. An object definition can specify how the object is to be initialized at run-time.
- Object destruction describes what happens when a defined object is destroyed automatically, such as at the end of a method, or when a dynamic object is destroyed explicitly.
- Object member reference describes how to use parts of an object in expressions, assignment statements, and messages.
- Program structure describes how this whole hierarchy of components can be used to generate complete applications.
- Scope governs the visibility of variables and objects, that is, the portion of the program where their names are known.
- Type conversion specifies the rules the ADL uses to change the type of a value when it encounters one type but needs another, or when the result of an expression could be of several types. For instance, is the value of the expression 3.14159/2 an integer or a real?
- Variable definitions declare the developer's intention to use a named variable within a given context, or to initialize the variable to a particular value.
AM2 Documentation - 19 NOV 1996
Generated with Harlequin WebMaker