![]() |
Section 6.4:
|
A type specifier in Sather is used when declaring attributes, shareds, constants and local variables. It denotes the type of the listed objects, together with any type arguments in a way similar to many other programming languages; it could be alternatively a method closure as described by the concrete syntax below.
From the point of view of the concrete syntax above there needs to be some reference to the class named in the specification - and to the class arguments involved.
The relation between this type specifier and the program Type Graph is discussed in Section 6.5 which defines sub-typing, super-typing and well-formedness for the entire type graph of the program.
TO BE DONE
Insofar as the Sather typing mechanism affects the operations which the programmer may write, then a type specifier may be considered to affect the dynamic semantics of the program. This, however, is not so since it is classes and their features which have implementations - not individual non-abstract types. The dynamic senantics associated with despatching on abstract types is therefore discussed under the type graph clauses of this specification - not here!
![]() |
Specification Index | ![]() |
Language Index | ![]() |
Section 6 Index |
Comments
or enquiries should be made to Keith Hopper. Page last modified: Friday, 26 May 2000. |
![]() |