[Inquiry] Re: Theme One Program -- Commentary -- Gate

Jon Awbrey jawbrey at att.net
Tue Jan 25 12:20:17 CST 2005


o~~~~~~~~~o~~~~~~~~~o~~~~~~~~~o~~~~~~~~~o~~~~~~~~~o

TOP.  Commentary Note 40

o~~~~~~~~~o~~~~~~~~~o~~~~~~~~~o~~~~~~~~~o~~~~~~~~~o

Gate.

Gate is a transformation of ideas that is used to copy cactus forms.
It constructs an Image of a sign-&-alias facsimile of a Gram node
in a pre-existing cactus form.  Recall that Gram nodes are those
that contain anything besides a comma, a left parenthesis, or
a right parenthesis in their 'sign' fields.

The following figures illustrate a typical application of Gate.

Step 1.
                        ^ ante (coupon (this))
                         \
                      o---\-------------o
        o-------------|----\--------o   |
        |   o---o   o---o   o---o   |   |
        o-->| p |-->| ) |-->| q |---o   |
            o---o   o---o   o---o       |
            ^               ^           |
            |      o--------|-----------o
            |     /         |
            |    /          | coupon (this)
            |   /           @
            |  /
    o-------|-/-------------------------o
    |   o---o<  o---o   o---o   o---o   |
    o-->| ( |-->| a |-->| b |-->| c |---o
        o---o   o---o   o---o   o---o
        ^
   this |
        @

Step 2.  For "q" not equal to comma, left parens, right parens:

                        ^ ante (coupon (this)) ^
                         \                      \
                      o---\-------------o        \
        o-------------|----\--------o   |      o--\--------o
        |   o---o   o---o   o---o   |   |      |   o---o   |
        o-->| p |-->| ) |-->| q |---o   |      o-->| q |---o
            o---o   o---o   o---o       |          o---o
            ^               ^           |          ^
            |      o--------|-----------o          |
            |     /         |                      |
            |    /          | coupon (this)        | gage (coupon (this))
            |   /           @                      @
            |  /
    o-------|-/-------------------------o
    |   o---o<  o---o   o---o   o---o   |
    o-->| ( |-->| a |-->| b |-->| c |---o
        o---o   o---o   o---o   o---o
        ^
   this |
        @

Step 3.
                     ^ ante (coupon (this))
                o---o \
        o-------|---|--\--------o
        |   o---o   |   o---o   |
        o-->| ) |---|-->| q |---o
            o---o   |   o---o
            ^       |   ^
            |       |   | gage (coupon (this))
            |       |   @
    o-------|---o   |
    |   o---o   |   |
    o-->| ( |---o   |
        o---o<------o
        ^
   gate |
        @

function gate (this: idea): idea;
begin
 gate := image (gage (coupon (this)))
end;

o~~~~~~~~~o~~~~~~~~~o~~~~~~~~~o~~~~~~~~~o~~~~~~~~~o
inquiry e-lab: http://stderr.org/pipermail/inquiry/
o~~~~~~~~~o~~~~~~~~~o~~~~~~~~~o~~~~~~~~~o~~~~~~~~~o



More information about the Inquiry mailing list