Technology paper:
Agents, iterators and introspection
You can access the white paper on agents, iterators and
introspection in Eiffel by clicking here.
Latest revision: 3 April (minor style improvement).
Document format and contents
The text is in Acrobat PDF format, so you will need the Acrobat Reader
plug-in to read it from within your browser.
This document is written in the form of an addition to the book Eiffel:
The Language. Note that internal hypertext links will
work, but not the links to other chapters. Consider the chapter number
(23) arbitrary.
Mechanism availability and restrictions
The facilities included here are available in experimental form in
release 4.3 of ISE Eiffel. Almost everything is supported as described in
the document; here are the exceptions:
-
The associated feature of a call expression may not belong to a base
type; for example {REAL}~abs will
not work. In the rare cases in which this is needed, encapsulate the
feature in a routine of your class, which takes the intended target as
argument.
-
The mechanism is not yet applicable to operator features (infix or
prefix, see top of page 578). If you want to use an operator feature in
an active expression, encapsulate it in an identifier feature for that
purpose.
-
The TYPE class has no useful
feature, and generator returns a
string.
-
The 4.3 version of EiffelBase has not been updated to take advantage of
agents. A forthcoming version will integrate iterator mechanisms in
classes such as TRAVERSAL, as
described in the document.
Credits
Major non-ISE contributions to the mechanisms described in the chapter
came from
-
Paul Dubois (Lawrence Livermore National Laboratory, <dubois1@llnl.gov>.
-
Mark Howard (Axa Rosenberg, formerly Rosenberg Institutional Equity
Management)
We are very grateful to them for their essential insights.
|