IP Library Granted Patent US 7,653,546
Granted Patent B2
US 7,653,546 · App. 10/992,516 · Granted Jan 26, 2010

Method and system for efficient voice-based programming

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 7,653,546
App. No.
10/992,516
Granted
Jan 26, 2010
Kind
B2
Abstract

Provided is a system and method for creating program code via voice input. The method includes providing a client application configured to compare a voice input to a grammar specified in a document; mapping a plurality of commands specified in the grammar to programming language commands; and enhancing the mapped programming language commands to enable compiling. The enhancing can include creating programming code by inserting at least implicit parentheses, punctuation, and default variable values. The programming language commands can be associated with Java or another language. The document can be a VoiceXML file that can be altered to permit a number of different programming language. A voice programming system includes a receiver to receive voice commands; a voice programming processor configured to process the voice commands to create code; and an enhancement block configured to alter the code into compilable code. The enhancement block inserts implicit parentheses, punctuation and variables appropriate for a predetermined code.

Claims (34)

1. A computer-implemented method for creating program code, the method comprising:

providing a client application configured to compare a voice input to a grammar specified in a document;

mapping a plurality of commands specified in the grammar to programming language commands; and

enhancing the mapped programming language commands to enable compiling;

wherein the enhancing includes creating programming code by inserting a default value for a variable specified by the voice input, wherein the default value is not specified by the voice input.

2. The method of claim 1 , wherein the method is implemented on a smart card.

3. The method of claim 1 , wherein the document is a VoiceXML file that can be altered to permit a number of different programming languages.

4. The method of claim 3 , wherein the VoiceXML file includes code for creating programming code according to one of a plurality of programming languages.

5. The computer-implemented method of claim 1 , wherein the enhancing includes creating programming code by further inserting implicit parentheses and/or punctuation.

6. A computer program product comprising:

a memory;

computer executable code, stored on the memory for execution on a processor, for:

providing a client application configured to compare a voice input to a grammar specified in a document;

mapping a plurality of commands specified in the grammar to programming language commands; and

enhancing the mapped programming language commands to enable compiling;

wherein the enhancing includes creating programming code by inserting a default value for a variable specified by the voice input, wherein the default value is not specified by the voice input.

7. The computer program product of claim 6 wherein the programming language commands are associated with one of a plurality of programming languages.

8. The computer program product of claim 6 wherein the programming language commands are Java programming language commands.

9. The computer program product of claim 6 wherein the document is a VoiceXML file.

10. The computer program product of claim 6 wherein the document is a VoiceXML file that includes code for creating programming code according to one of a plurality of programming languages.

11. The computer program product of claim 6 , wherein the enhancing includes creating programming code by further inserting implicit parentheses and/or punctuation.

12. A voice programming system comprising a combination of hardware and software that implements:

a receiver configured to receive voice commands;

a voice programming processor coupled to the receiver, the voice programming processor configured to process the voice commands to create code; and

an enhancement block coupled to the voice programming processor, the enhancement block configured to alter the code into compilable code;

wherein the enhancement block inserts a default value for a variable specified by the voice commands, wherein the default value is not specified by the voice commands.

13. The voice programming system of claim 12 wherein the voice programming processor includes a VoiceXML document configured to process the voice commands.

14. The voice programming system of claim 12 wherein the programming language commands are associated with one of a plurality of programming languages.

15. The voice programming system of claim 12 wherein the programming language commands are Java programming language commands.

16. The voice programming system of claim 12 wherein a VoiceXML document functions as a conversational finite state machine to enable the voice input to be transformed into program code.

17. The voice programming system of claim 12 wherein the voice programming processor includes a VoiceXML document as part of an application to compare a voice input to a grammar specified by the VoiceXML document.

18. The voice programming system of claim 12 wherein the system is implemented on an application specific integrated circuit (ASIC).

19. The voice programming system of claim 12 wherein the system is implemented on a smart card.

20. The voice programming system of claim 12 , wherein the enhancement block further inserts implicit parentheses and/or punctuation.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 14, 2023
From: NUANCE COMMUNICATIONS, INC.
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 065566/0013 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 13, 2009
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: NUANCE COMMUNICATIONS, INC.
Reel/Frame 022689/0317 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 23, 2005
From: WEINMEISTER, KARL J.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 015949/0356 →