ako - create a generic frame
new-generic-frame ako generic-frame-name with slot-list!
Create a new generic frame with name new-generic-frame and with slots defined by slot-list. Ako is a 2-arity predicate.
The slot specification consists of a slot name, followed by a ':'and a list of dæmons. Slot specifications are separated by ';'. The final slot specification should be terminated by a '!'.
frame_name ako inheritance-list slot1: facet11 demon11 facet12 demon12; slot2: facet21 demon21 facet22 demon22!
The description of a dæmon consists of a facet or the name
of the type of dæmon, followed by the implementation of the dæmon.
Some dæmons behave like predicates, succeeding ot failing and others
behave like functions, returning values. See the documentation for each
type of dæmon.
Click here to see an example of a generic frame definition.
Slot specifications are stored in Prolog's database as clauses. For example, here are the contents of the database just after the person generic frame from the example above has been defined.
isa, range, help, if_new, if_needed, if_removed, cache, multivalued, default
if ... then ... else, ask, new value, old value, in, .., must_be_a, yes, make, this
The parser is not as good as it could be. Syntax errors may be hard to track down.