Valuable Protocol

All valuables (Blocks, WADelayedSend, and any other executable constructs in the particular Smalltalk dialect) are expected to conform to the following protocol which is based on ANSI Smalltalk.

  • #argumentCount as defined in ANSI.
  • #value as defined in ANSI.
  • #value: as defined in ANSI.
  • #value:value: as defined in ANSI.
  • #valueWithArguments: as defined in ANSI.
  • #valueWithPossibleArguments:, not defined by ANSI. Evaluates the receiver with as many of the given arguments as required.
  • #fixCallbackTemps, not defined by ANSI. Used for polymorphism with Squeak blocks. Makes Squeak blocks more closure like and saves some space.