IP Library › Granted Patent US 9,772,823
Granted Patent B2
US 9,772,823 · App. 14/860,908 · Granted Sep 26, 2017

Aligning natural language to linking code snippets to perform a complicated task

Inventors: Corville O. Allen (Morrisville, NC); Heather L. Duschl (Raleigh, NC); Marit L. Imsdahl (Morrisville, NC); Alexandra D. Markello (Fayetteville, NC); Dana L. Price (Surf City, NC)
Assignee: International Business Machines Corporation
G06F8/36G06F8/34G06F9/54
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,772,823
App. No.
14/860,908
Granted
Sep 26, 2017
Kind
B2
Abstract

A method, system and computer-usable medium for linking a set of executable code snippets to perform a complicated task, comprising: decomposing a natural language statement into a plurality of decomposed natural language components; searching a repository of code snippets to identify code snippets corresponding to each of the decomposed natural language components; ordering execution of the code snippets based upon the plurality of decomposed natural language components; and, executing the code snippets in order of the natural language statement requests until a final outcome is achieved.

Claims (15)

1. A computer-implemented method for linking a set of executable code snippets to perform a complicated task, comprising:

decomposing a natural language statement into a plurality of decomposed natural language components, the natural language statement relating to a complicated task, the complicated task comprising a plurality of sub-tasks, each of the plurality of sub-tasks corresponding to a respective decomposed natural language component, the decomposing comprising parsing the natural language statement into terms and parts of speech;

searching a repository of code snippets to identify code snippets corresponding to each of the plurality of sub-tasks corresponding to the respective decomposed natural language components; and,

ordering execution of the code snippets based upon the sub-tasks corresponding to the plurality of decomposed natural language components,

wherein each of the plurality of sub-tasks corresponding to respective decomposed natural language statement components are identified based upon a subject-verb-object (SVO) operation, a term identification operation, input/output identification operation, an action identification operation and a goal identification operation.

2. The method of claim 1 , further comprising:

executing the code snippets in order of the natural language statement requests until a final outcome is achieved;

analyzing the plurality of decomposed natural language components for variables and values; and,

associating any identified variables and values with a particular code snippet based upon the analysis.

3. The method of claim 2 , wherein:

the associating includes matching data types to input types for code snippets, matching outcome types to output types, matching data types to a particular programming language of a code snippet and determining parameters to associate with the code snippet.

4. The method of claim 1 , wherein:

natural language statement based inputs and code snippet outputs are used to determine follow up snippets that are applicable for a next step of execution.

5. The method of claim 1 , wherein:

when a code snippet requires an additional parameter that is not specified within the natural language statement, a default instance of the additional parameter is generated that matches a signature within the repository of code snippets.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 22, 2015
From: ALLEN, CORVILLE O.; DUSCHL, HEATHER L.; IMSDAHL, MARIT L.; MARKELLO, ALEXANDRA D.; PRICE, DANA L.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 036620/0192 →
Continuity (2)
Continuation 14836029 · Aug 26, 2015
Related Publication 20170060555A1 · Mar 2, 2017