In Soar, the binding of information (in the form of attribute-value pairs) occurs at run time. For instance, operators are instantiated only when they are about to be applied. This is in contrast to procedural languages in which such bindings occur at compilation (or creation). This is an example of a minimum commitment strategy. This capability is chiefly enabled by Soar's use of problems spaces which provide the structure required to bind control information at run time.
Go to a discussion of this property for multiple architectures.