Computer programming using tangible user interface where physical icons (phicons) indicate: beginning and end of statements and program constructs; statements generated with re-programmable phicons and stored
First Claim
1. An apparatus for generating computer programs, comprising:
- a physical space in which physical objects can be manipulated by a user;
a plurality of physical objects locatable within the physical space, each object representing at least one of an information element, an interation and an action command;
at least one sensor that observes physical manipulations on the physical objects occurring in the physical space and that generates corresponding electric signals based on the physical manipulations and the information elements, the iterations or the action commands represented by the manipulated physical objects; and
a processor that receives as inputs the electric signals, generates portions of information content corresponding to the information elements, the iterations or the action commands and stores the portions of information content for use as at least one of a computer program and a data file.
5 Assignments
0 Petitions
Accused Products
Abstract
Tangible computing is the manipulation of real, physical objects to instruct and control computers. Computer programs can be created by manipulating physical objects that represent program language elements of a program or programming language. A tangible computing system calls for observation by a computer of a real, three-dimensional work space, where each physical object can be assigned a program language element. Assignment of attributes to, and/or movement of each real physical object results in the creation of a new program component. In this manner, a user can manipulate real, physical objects to create programs. Thus, the real world itself becomes a human-computer interface that allows a user to create programs and control digital processes.
-
Citations
25 Claims
-
1. An apparatus for generating computer programs, comprising:
-
a physical space in which physical objects can be manipulated by a user;
a plurality of physical objects locatable within the physical space, each object representing at least one of an information element, an interation and an action command;
at least one sensor that observes physical manipulations on the physical objects occurring in the physical space and that generates corresponding electric signals based on the physical manipulations and the information elements, the iterations or the action commands represented by the manipulated physical objects; and
a processor that receives as inputs the electric signals, generates portions of information content corresponding to the information elements, the iterations or the action commands and stores the portions of information content for use as at least one of a computer program and a data file. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A method for generating computer programs, comprising:
-
placing a plurality of physical objects into a physical space, each object representing at least one of an information element, an iteration and an action command;
physically manipulating at least one of the plurality of physical objects in the physical space;
generating electric signals based on the physical manipulations and the at least one of the information element, the iteration and the action command of each at least one manipulated physical object; and
generating and storing for use as at least one of a computer program or data file, information content based on the information elements, the iterations or the action commands and the observed physical manipulations represents by the electric signals. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25)
selecting at least a first one of the plurality of physical objects, the first physical object having at least one predetermined information element; and
repositioning the selected first physical object in the physical space.
-
-
19. The method of claim 18, wherein physically manipulating comprises:
-
selecting a second one of the plurality of physical objects, the second physical object having at least one predetermined information element; and
repositioning the second object in the physical space.
-
-
20. The method of claim 19, wherein repositioning of one of the first and second objects changes the at least one predetermined information element of that object.
-
21. The method of claim 16, further comprising generating an external representation corresponding to the physical manipulations.
-
22. The method of claim 21, wherein generating the external representation comprises generating and outputting an image to a visual display device.
-
23. The method of claim 16, wherein:
-
placing the physical objects in the physical space assigns at least one information element to the physical objects; and
relationships between the objects are formed based on relative locations of the physical objects within the physical space.
-
-
24. The method of claim 16, wherein each of the information elements of each of the physical objects represents a variable or a programming statement element or operator, and the information content is program code having a syntax and semantics.
-
25. The method of claim 16, further comprising:
-
a start operation that begins the observation of the physical manipulations; and
a stop operation that ends the observation of the physical manipulations.
-
Specification