×

Programming in a precise syntax using natural language

  • US 9,851,950 B2
  • Filed: 11/15/2012
  • Issued: 12/26/2017
  • Est. Priority Date: 11/15/2011
  • Status: Active Grant
First Claim
Patent Images

1. A method for assisting with software programming, comprising:

  • receiving, via a user interface device, user input in a workspace document, corresponding to a source code file, provided by a software development application that, when executed by one or more computing devices, is configured to evaluate instructions in a precise syntax, wherein the workspace document is for entering instructions in the precise syntax to be evaluated by the software development application;

    after receiving the user input, displaying, on a display device, the user input in the workspace document;

    determining, with one or more computing devices, whether at least a portion of the user input i) is in the precise syntax, or ii) is in an imprecise syntax, including analyzing the user input to determine if the user input includes a user indication, in the precise syntax, that indicates whether at least the portion of the user input i) is in the precise syntax, or ii) is in an imprecise syntax;

    when it is determined that at least the portion of the user input is in the precise syntax,evaluating, with the software development application executed by one or more computing devices, at least the portion of the user input according to the precise syntax;

    when it is determined that at least the portion of the user input is in the imprecise syntax,based on at least the portion of the user input in the imprecise syntax, determining, with one or more computing devices, an instruction in the precise syntax that i) corresponds to at least the portion of the user input in the imprecise syntax, and ii) is indicated by at least the portion of the user input in the imprecise syntax,after determining the instruction in the precise syntax, including, with one or more computing devices, the instruction in the precise syntax in the workspace document such that the software development application executed by one or more computing devices can evaluate the instruction in the precise syntax, wherein including the instruction in the precise syntax in the workspace document comprises simultaneously displaying, on the display device, at least the portion of the user input in the imprecise syntax and the instruction in the precise syntax on the workspace document, andafter including the instruction in the precise syntax in the workspace document, evaluating, with the software development application executed by one or more computing devices, the instruction in the precise syntax;

    wherein determining the instruction in the precise syntax comprises;

    generating, with the software development application, an application programming interface (API) call that includes i) the at least the portion of the user input in the imprecise syntax, and ii) information indicating a result of a previous evaluation, by the software development application, of a user input previously entered into the workspace document;

    sending, with the software development application, the API call to a software development assistance system;

    processing, with the software development assistance system, the API call to determine the instruction in the precise syntax that corresponds to the user input in the imprecise syntax;

    formatting, with the software development assistance system, the instruction in the precise syntax according to a format recognized by the software development application; and

    receiving the instruction in the precise syntax from the software development assistance system, wherein receiving the instruction in the precise syntax from the software development assistance system is responsive to sending the API call to the software development assistance system, and wherein the instruction in the precise syntax is for generating a modification of the result of the previous evaluation.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×