Scopes of Bindings
The main diference between this part of Kernel AN2 and the Declarative facet of Kernel AN1 is that here, the bindings resulting from an action are simply given as transients, rather than 'produced' separately from the transients. However, bindings are still 'received' separately from transients, as in AN1. The combinator A1 hence A2 is used just as before, only now A1 is supposed to give the bindings map that A2 is to receive, and the only data given by the whole action is that given by A2 . Various data operations are available for expressing bindings, and for com bining the bindings produced by subactions(See them above). For instance, binding(tk, bv) forms the map taking the token tk to the bindable value bv; and overriding(b1, b2) returns the bindings map where bindings in b2 take precedence over those in b1. Note that since bindings are no longer produced separately from transients, there is no need for any hybrid functionalbinding combinators at all in AN2. The builtin distinction of a special value unknown, and the AN1 primitive action for 'unbinding', are omitted in AN2. |
Data| Flow of Data and Control| Actions as Data| Effects on Storage| Interactive Processes