9. A non-transitory computer-readable storage medium embodying a set of instructions, which when executed by one or more processors of one or more computer systems, cause the one or more processors to perform a method comprising: allowing software code associated with one or more of a plurality of a plurality of programming building blocks to be concurrently edited and executed within a programming environment, including, responsive to advancement of time or input by an end user of the programming environment, revising a current situation relating to the plurality of programming building blocks or revising the software code: receiving (i) information regarding the plurality of programming building blocks and (ii) information indicative of the current situation; and evaluating the plurality of programming building blocks based on the current situation; and responsive to said evaluating, facilitating detection of one or more logical errors in one or more of the plurality of programming building blocks by proactively providing real-time, human perceptible semantic feedback regarding those of the plurality of programming building blocks to which the current situation is relevant to the end user based on the evaluating, wherein the real-time, human perceptible semantic feedback comprises annotating one or more of the plurality of programming building blocks.
9. A non-transitory computer-readable storage medium embodying a set of instructions, which when executed by one or more processors of one or more computer systems, cause the one or more processors to perform a method comprising: allowing software code associated with one or more of a plurality of a plurality of programming building blocks to be concurrently edited and executed within a programming environment, including, responsive to advancement of time or input by an end user of the programming environment, revising a current situation relating to the plurality of programming building blocks or revising the software code: receiving (i) information regarding the plurality of programming building blocks and (ii) information indicative of the current situation; and evaluating the plurality of programming building blocks based on the current situation; and responsive to said evaluating, facilitating detection of one or more logical errors in one or more of the plurality of programming building blocks by proactively providing real-time, human perceptible semantic feedback regarding those of the plurality of programming building blocks to which the current situation is relevant to the end user based on the evaluating, wherein the real-time, human perceptible semantic feedback comprises annotating one or more of the plurality of programming building blocks. 13. The non-transitory computer-readable storage medium of claim 9 , wherein the current situation includes data describing a collection of agents instantiated by an operational program.