Visual programming system and method
First Claim
1. A method of developing computer software from an electronic spreadsheet, the method comprising the computer implemented steps of:
- coupling content in at least one cell of an electronic spreadsheet to a window; and
determining properties of the window based on the content in the cell of the spreadsheet.
1 Assignment
0 Petitions
Accused Products
Abstract
The present invention provides a user-friendly visual programming and modeling environment with a spreadsheet interface. The invention allows the creation of complex software applications and programs in real-time. A user with no programming skills can easily develop object-oriented software programs. Each spreadsheet can represent an object, and the object can interact and send messages to other objects, which can also be represented by spreadsheets. In addition to variables and formulas, the cells in the spreadsheets can contain commands, definitions of methods and definitions of functions. One column of a spreadsheet may also function similar to a code text editor. In another embodiment, the code can either be complied or translated within a spreadsheet program to create software applications. The invention may include features to make programming easier by including the ability to drag and drop coded objects from a spreadsheet into a form. In this way, different types of objects may be dynamically coded and compiled at runtime. The data of these objects can be directly linked to the data of the cells.
-
Citations
97 Claims
-
1. A method of developing computer software from an electronic spreadsheet, the method comprising the computer implemented steps of:
-
coupling content in at least one cell of an electronic spreadsheet to a window; and
determining properties of the window based on the content in the cell of the spreadsheet. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer program product comprising:
a computer usable medium which includes computer readable program instructions for developing computer software with an electronic spreadsheet by;
(i) processing content associated with a cell of an electronic spreadsheet;
(ii) connecting the content in with the cell to a window; and
(iii) using the content associated with the cell, determining any attributes of the window. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
16. An apparatus for developing computer software using an electronic spreadsheet, the apparatus comprising:
-
(a) an electronic spreadsheet having at least one input cell;
(b) instructions in the cell; and
(c) a window which reflects the instructions in the cell. - View Dependent Claims (17, 18, 19, 20, 21, 22)
-
-
23. A system to develop computer software in a spreadsheet application, the system comprising:
-
a means for coupling instructions associated with at least one cell of an electronic spreadsheet to a window; and
a means for determining properties of the window based on any instructions associated with the cell of the spreadsheet.
-
-
24. An object-oriented computer programming method, the method comprising the computer implemented steps of:
-
representing an object in an object-oriented programming language with a respective spreadsheet, the spreadsheet having at least one cell storing instructions for the object; and
processing the object based on the instructions stored in the cell of the respective spreadsheet. - View Dependent Claims (25, 26, 27)
-
-
28. A computer program product comprising:
-
a computer usable medium having computer readable program instructions for developing object-oriented computer software using an electronic spreadsheet by;
defining an object in an object-oriented programming language using a respective spreadsheet, the spreadsheet having at least one cell including content for the object; and
determining the behavior of the object based on the content included in the cell of the respective spreadsheet. - View Dependent Claims (29, 30, 31)
-
-
32. A spreadsheet apparatus for object-oriented programming comprising:
-
an electronic spreadsheet which represents an object defined in an object defined in an object-oriented programming language; and
at least one input cell in the spreadsheet having information about the object. - View Dependent Claims (33, 34)
-
-
35. An object-oriented programming system with an electronic spreadsheet interface, the system comprising;
-
a means for representing an object in an object-oriented programming language with a respective spreadsheet, the spreadsheet having at least one cell storing instructions for the object; and
a means for processing the object based on the instructions stored in the cell of the respective spreadsheet.
-
-
36. A computerized method of developing object-oriented software from an electronic spreadsheet, the computerized method comprising:
defining a class in an object-oriented programming language by creating a respective spreadsheet. - View Dependent Claims (37, 38, 39, 40, 41)
-
42. A computer program product comprising:
a computer usable medium having computer readable code developing object-oriented software using an electronic spreadsheet by;
defining a class in an object-oriented programming language by creating a respective spreadsheet. - View Dependent Claims (43, 44, 45, 46, 47)
-
48. An apparatus with an electronic spreadsheet interface for developing object-oriented software comprising:
a class defined in an object-oriented programming language in response to creating an electronic spreadsheet. - View Dependent Claims (49, 50, 51, 52, 53)
-
54. An object-oriented programming system using an electronic spreadsheet, the system comprising:
a means for defining a class by creating a respective spreadsheet.
-
55. A method of providing text editor functionality in an electronic spreadsheet, the method comprising the computer implemented steps of:
-
defining a code column in an electronic spreadsheet; and
responding to a request for a newline by inserting a new cell in the code column. - View Dependent Claims (56, 57, 58, 59, 60)
-
-
61. A computer program product comprising:
a computer usable medium having computer readable program instructions which implement a computer programming environment in an electronic spreadsheet by;
creating a code column in an electronic spreadsheet; and
responding to a request for a newline by introducing a new cell in the code column. - View Dependent Claims (62, 63, 64, 65, 66)
-
67. An apparatus for developing computer software from an electronic spreadsheet comprising:
a code column in an electronic spreadsheet that responds to a request for a newline by introducing a new cell in the code column. - View Dependent Claims (68, 69, 70, 71)
-
72. A system for developing computer software in an electronic spreadsheet comprising:
-
a means for defining a code column in an electronic spreadsheet; and
a means for responding to a request for a newline by inserting a new cell in the code column.
-
-
73. A computerized method of object-oriented programming in an electronic spreadsheet system, the computerized method comprising:
-
in an electronic spreadsheet, creating an operation written in an object-oriented programming language; and
using the operation, interacting with another spreadsheet. - View Dependent Claims (74, 75, 76, 77)
-
-
78. A computer program product comprising:
a computer readable medium having computer readable instructions that enable object-oriented computer software development using an electronic spreadsheet by;
creating an operation written in an object-oriented programming language with a spreadsheet, the operation being used to interact with one or more objects. - View Dependent Claims (79, 80, 81, 82)
-
83. An apparatus for developing object-oriented computer software comprising:
an electronic spreadsheet which creates an operation written in an object-oriented programming language, the operation being used to interact with one or more objects. - View Dependent Claims (84, 85, 86)
-
87. A data processing system for developing computer software using an electronic spreadsheet, the system comprising:
-
a means for using a spreadsheet to create an operation written in an object-oriented programming language; and
a means for interacting with another spreadsheet by processing the operation.
-
-
88. A method of programming with an electronic spreadsheet, the method comprising the computer implemented steps of:
-
defining cells in a spreadsheet that are associated with an iterative process repeating for one or more cycles; and
at each cycle, determining whether to modify content in the cells associated with the iterative process. - View Dependent Claims (89, 90)
-
-
91. A computer program product comprising:
a computer readable medium having computer program code which enables computer programming with an electronic spreadsheet by;
defining cells in a spreadsheet that are associated with an iterative process repeating for one or more cycles; and
at each cycle, determining whether to modify content in the cells associated with the iterative process. - View Dependent Claims (92, 93)
-
94. An apparatus for programming using an electronic spreadsheet comprising:
-
a spreadsheet having cells that are associated with an iterative process repeating for one or more cycles; and
content in the spreadsheet being modifiable by the iterative process. - View Dependent Claims (95, 96)
-
-
97. A data processing system for programming using an electronic spreadsheet, the system comprising:
-
a means for defining cells in a spreadsheet that are associated with an iterative process that repeats for one or more cycles; and
at each cycle, a means for determining whether to modify content in the cells associated with the iterative process.
-
Specification