Passable Relations

version 1 by Ron Newcomb

  • Home page
  • Beginning
  • Previous
  • Next

  • Chapter 5 - Hide this mess from the documentation - unindexed

    The relation-kinds are Relation_Implicit, Relation_reversed, Relation_OtoO, Relation_OtoV, Relation_VtoO, Relation_VtoV, Relation_Sym_OtoO, Relation_Sym_VtoV, Relation_Equiv, Relation_ByRoutine, Relation_ByHalfRoutine, Relation_ByMapNRoutine, Relation_ByMapNERoutine, Relation_ByMapNWRoutine,Relation_ByMapSRoutine, Relation_ByMapSERoutine, Relation_ByMapSWRoutine, Relation_ByMapERoutine, Relation_ByMapWRoutine, Relation_ByMapURoutine, Relation_ByMapDRoutine, Relation_ByMapIRoutine, Relation_ByMapORoutine.

    [Chapter 6 - for debugging this extension - not for release

    First when play begins: output relation_metadata.

    To output relation_metadata: [ will print the new Array exactly as it would have appeared in auto.inf had the information not been missing ]
        say "Array relation_metadata -->[line break]";
        repeat with X running from 0 to the number of relations begin;
            say " [propnum of relation X] [kind of relation X] '[description of relation X]'[line break]";
        end repeat.

    [support for the above]
    Include (- [ RelationPropNum rel; return relation_metadata-->((rel*3)); ]; -).
    To decide which number is propnum for/of relation/abstract-relation (N - number): (- RelationPropNum({N}) -).
    To say (foo - Relation_reversed): say "(-1)".