Page 204 Table of Contents Index Page 206
Chapters
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
A, B, C, D, E



CHAPTER 23. PRESENTATION TYPES

The set of presentation types forms a type lattice, an extension of the Common Lisp CLOS type
lattice. When a new presentation type is defined as a subtype of another presentation type it
inherits all the attributes of the supertype except those explicitly overridden in the definition.

Minor issue: Describe what a presentation type is more exactly. What is a parameterized
presentation type? Why do we want them? Why are they in a lattice? How do they relate to
CL types and CLOS classes? What exactly gets inherited? | SWM

23.2 Presentations

A presentation is a special kind of output record that remembers not only output, but the object
associated with the output and the semantic type associated with that object.

Minor issue: Describe exactly what a presentation is. What does it mean for presentations
to be nested? | SWM

=> presentation [Protocol Class]
The protocol class that corresponds to a presentation. A subclass of output-record. If you want
to create a new class that behaves like a presentation, it should be a subclass of presentation.
Subclasses of presentation must obey the presentation protocol.

=> presentationp object [Function]
Returns true if object is a presentation, otherwise returns false.

=> standard-presentation [Class]
The output record class that represents presentations. present normally creates output records
of this class. Members of this class are mutable.

=> :object [Init Arg]
=> :type [Init Arg]
=> :view [Init Arg]
=> :single-box [Init Arg]
=> :modifier [Init Arg]
All presentation classes must handle these five initargs, which are used to specify, respectively,
the object, type, view, single-box, and modifier components of a presentation.

23.2.1 The Presentation Protocol

The following functions comprise the presentation protocol. All classes that inherit from presentation
must implement methods for these generic functions.

=> presentation-object presentation [Generic Function]


Page 204 Table of Contents Index Page 206
Chapters
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
A, B, C, D, E