Reflective Yielders

application d1 to d2 | closure d

   
application d1 to d2: an abstraction, when d1 is an abstraction and d2 is data. Incorporates the same action as d1, except that the incorporated action is given d2 as transients whenever the abstraction is enacted. Represents supplying transients to an abstraction (precluding the supply of further transients).
  • This operation extends to yielders Y1, Y2 in the usual way: it is evaluated by applying the above operation to the data yielded by evaluating Y1, Y2.
Example

   
closure d: an abstraction yielder, where d is an abstraction. Yields an abstraction which incorporates the same action as d, except that the incorporated action receives particular bindings whenever the abstraction is enacted. The bindings are those current for the evaluation of closure d.
  • This operation extends to yielders Y in the usual way: it is evaluated by applying the above operation to the datum yielded by evaluating Y.
  • The yielder closure abstraction of A represents reification of an action as an abstraction with static bindings. The action enact the closure of a given abstraction represents reflection of an abstraction with dynamic bindings (unless static bindings were already supplied to it). The action enact a given abstraction represents reflection of an abstraction with no bindings (unless static bindings were already supplied to it).
Example



    Reflective Action Index | Reflective Actions | Reflective Yielders | Reflective Data