Conversational programming
First Claim
1. A method comprising:
- allowing software code associated with one or more of a plurality of programming building blocks to be concurrently edited and executed within a programming environment, including;
receiving, by a conversational programming agent of the programming environment, (i) information regarding the plurality of programming building blocks and (ii) information indicative of a current situation relating to the plurality of programming building blocks; and
evaluating, by the conversational programming agent, the plurality of programming building blocks based on the current situation;
facilitating detection of one or more logical errors in one or more of the plurality of programming building blocks by proactively providing, by the conversational programming agent, semantic feedback regarding those of the plurality of programming building blocks to which the current situation is relevant to an end user based on the evaluating;
wherein the semantic feedback includes a plurality of colored annotations of different colors to one or more visual representations of one or more of the plurality of programming building blocks; and
wherein the conversational programming agent is implemented in one or more processors and one or more computer-readable media of one or more computer systems, the one or more computer-readable media having instructions tangibly embodied therein that are executable by the one or more processors.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods and systems for providing rich semantic feedback to programmers by executing programs, or parts of programs, in data contexts relevant to the programmer are provided. According to one embodiment, a method is provided for communicating semantic information to a programmer. A conversational programming agent of a programming environment receives (i) information regarding multiple programming building blocks and (ii) information indicative of a current situation relating to the programming building blocks. The conversational programming agent evaluates the programming building blocks based on the current situation. Then, the conversational programming agent provides semantic feedback regarding the programming building blocks to the programmer based on results of the evaluation.
26 Citations
18 Claims
-
1. A method comprising:
-
allowing software code associated with one or more of a plurality of programming building blocks to be concurrently edited and executed within a programming environment, including; receiving, by a conversational programming agent of the programming environment, (i) information regarding the plurality of programming building blocks and (ii) information indicative of a current situation relating to the plurality of programming building blocks; and evaluating, by the conversational programming agent, the plurality of programming building blocks based on the current situation; facilitating detection of one or more logical errors in one or more of the plurality of programming building blocks by proactively providing, by the conversational programming agent, semantic feedback regarding those of the plurality of programming building blocks to which the current situation is relevant to an end user based on the evaluating; wherein the semantic feedback includes a plurality of colored annotations of different colors to one or more visual representations of one or more of the plurality of programming building blocks; and wherein the conversational programming agent is implemented in one or more processors and one or more computer-readable media of one or more computer systems, the one or more computer-readable media having instructions tangibly embodied therein that are executable by the one or more processors. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A non-transitory computer-readable storage medium tangibly 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; receiving (i) information regarding the plurality of programming building blocks and (ii) information indicative of a current situation relating to the plurality of programming building blocks; and evaluating the plurality of programming building blocks based on the current situation; facilitating detection of one or more logical errors in one or more of the plurality of programming building blocks by proactively providing semantic feedback regarding those of the plurality of programming building blocks to which the current situation is relevant to an end user based on the evaluating; and wherein the semantic feedback includes a plurality of colored annotations of different colors to one or more visual representations of one or more of the plurality of programming building blocks. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A computer-implemented method comprising:
-
allowing software code associated with one or more of a plurality of programming building blocks to be concurrently edited and executed within a programming environment, including concurrently displaying, by the programming environment, (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 a 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; responsive to selection of the selected agent by an end user of the programming environment, a conversational programming agent of the programming environment, evaluating, based on the current situation, the one or more behavior rules and other behavior rules of one or more other of the plurality of agents to which the current situation is relevant; and facilitating detection of one or more logical errors in the one or more behavior rules by the end user by conveying results of said evaluating, by the conversational programming agent, in a form of one or more colored annotations of different colors to one or more the visual representations of the one or more of the plurality of programming building blocks, wherein the one or more annotations provide semantic feedback to the end user regarding a meaning of the one or more behavior rules in a context of the current situation. - View Dependent Claims (18)
-
Specification