15. The non-transitory computer-readable storage medium of claim 9 , wherein the method further comprises concurrently displaying (i) a visual representation of a programming building block of the plurality of programming building blocks within a behavior editor and (ii) a visual representation of the current situation, wherein the current situation includes (a) a selection identifying a selected agent of a plurality of agents represented by the plurality of programming building blocks and (b) data describing at least the selected agent and wherein the programming building block corresponds to the selected agent and represents one or more behavioral rules of the selected agent.
16. The non-transitory computer-readable storage medium of claim 15 , wherein the method further comprises receiving from the end user via interaction with the visual representation of the current situation, by the programming environment, input regarding a hypothetical situation to be used as the current situation for evaluation by the conversational programming agent.