Results 1 -
5 of
5
Building Brains for Bodies
- Autonomous Robots
, 1994
"... We describe a project to capitalize on newly available levels of computational resources in order to understand human cognition. We are building an integrated physical system including vision, sound input and output, and dextrous manipulation, all controlled by a continuously operating large scale p ..."
Abstract
-
Cited by 134 (8 self)
- Add to MetaCart
We describe a project to capitalize on newly available levels of computational resources in order to understand human cognition. We are building an integrated physical system including vision, sound input and output, and dextrous manipulation, all controlled by a continuously operating large scale parallel MIMD computer. The resulting system will learn to "think " by building on its bodily experiences to accomplish progressively more abstract tasks. Past experience suggests that in attempting to build such an integrated system we will have to fundamentally change the way artificial intelligence, cognitive science, linguistics, and philosophy think about the organization of intelligence. We expect to be able to better reconcile the theories that will be developed with current work in neuroscience.
Analysis of Recursive Types in an Imperative Language
, 1994
"... Analysis of Recursive Types in an Imperative Language by Edward Yan-Bing Wang Doctor of Philosophy in Computer Science University of California at BERKELEY Professor Paul N. Hilfinger, Chair I introduce Algorithm P and p-set, a new type-analysis algorithm and its associated type description, capable ..."
Abstract
-
Cited by 13 (0 self)
- Add to MetaCart
Analysis of Recursive Types in an Imperative Language by Edward Yan-Bing Wang Doctor of Philosophy in Computer Science University of California at BERKELEY Professor Paul N. Hilfinger, Chair I introduce Algorithm P and p-set, a new type-analysis algorithm and its associated type description, capable of deducing and accurately representing recursive types in programs in an imperative language, using type information present in both object creation and object use. When applied to Lisp and used to discover unnecessary type checks, Algorithm P is capable of removing close to all of the type checks on structured objects in most programs. Professor Paul N. Hilfinger Dissertation Committee Chair iii To my parents iv Acknowledgements I thank my advisor, Paul Hilfinger, and the other members of the committee, Alex Aiken and Phil Colella. Marcia Feitel helped in the writing of this report, in both content and style, and in English and Latin. The research documented here was in part support...
The Nimble Type Inferencer for Common Lisp-84
- Tech. Rept., Nimble Comp
, 1990
"... data types model the semantic intent of the programmer with respect to individual variable values, so that global properties of these individual values (e.g., evenness or primeness of an integer value) are maintained. The assert construct allows for the specification of complex relationships among s ..."
Abstract
- Add to MetaCart
data types model the semantic intent of the programmer with respect to individual variable values, so that global properties of these individual values (e.g., evenness or primeness of an integer value) are maintained. The assert construct allows for the specification of complex relationships among several variables. However, since we are interested in improving run-time efficiency, we will assume that the program is already semantically correct, and will therefore concern ourselves only with the determination of tight lattice bounds on the values of variables. Performing type inference requires proving many small theorems about programs, and therefore runs the risk of being confused with the more difficult task of theorem-proving for the purpose of proving programs correct relative to some external criteria. While some of the techniques may be similar to both tasks, the goals are completely different. For example, it is considered acceptable and routine for correctness provers to inte...
Using Program Structure to Guide Optimization in the Presence of First-Class Functions.
, 1994
"... Compilers for functional languages such as Standard ML can do a good job compiling programs, especially programs that perform symbolic computation. However, they often do a poor job on programs in a wide range of real-world application domains, such as systems programming and scientific computing. O ..."
Abstract
- Add to MetaCart
Compilers for functional languages such as Standard ML can do a good job compiling programs, especially programs that perform symbolic computation. However, they often do a poor job on programs in a wide range of real-world application domains, such as systems programming and scientific computing. One reason for this is that these compilers are not sensitive to program structure, that is, recursions ("loops"), the code executed during the evaluation of a recursive function ("loop bodies"), and recursive-function nesting ("loop nesting"). In part, this is because determining the code executed during evaluation of a recursive function and determining recursive-function nesting is difficult when functions are first-class values. The body of a recursive function may simply be a call to an unknown function. Recursivefunction nesting can be difficult to determine because functions may be passed off to be used elsewhere. However, even in situations where the program structure is easy to determine, the traditional emphasis on compiling function calls well instead of compiling recursions well has led to compilers that simply ignore recursions. In my thesis, I propose to demonstrate that it is practical for a realistic compiler to determine the structure of functional programs and to show that compilers for functional languages need to be sensitive to this information to do a good job compiling systems and scientific programs. Furthermore, I will show that being sensitive to program structure improves compilation of symbolic programs as well.
L -- A Common Lisp for Embedded Systems
, 1995
"... A commercially available system has been developed which allows for the use of Common Lisp in real time embedded control systems. The backbone of this system is a language called L. L is a subset of Common Lisp with multi-processing extensions. It is ideal for use in embedded systems with small comp ..."
Abstract
- Add to MetaCart
A commercially available system has been developed which allows for the use of Common Lisp in real time embedded control systems. The backbone of this system is a language called L. L is a subset of Common Lisp with multi-processing extensions. It is ideal for use in embedded systems with small computers. The system has a minimal memory footprint and can run on small processors. L contains both a runtime environment and an interpreter which runs on the target system and a cross compiler which runs on the host system. Making use of Common Lisp's macro facilities, a special purpose language has been constructed on top of L, called MARS for Multiple Agency Reactivity System. This language is uniquely tailored for real time control applications. It allows for the spawning of many small processes which communicate with one another via a message passing approach. A graphical user interface debugging tool was also developed which allows real time monitoring and modification of values of variables on the target system by the host system. Underlying this system is an e#cient real time operating system, called VENUS. The operating system is written in C for portability. The interface between L code and the hardware takes place via operating system calls. L accesses the C operating system calls via its foreign function interface. The first application for this system has been the programming and control of autonomous mobile robots. These robotic systems must process and react to their sensor systems in real time.

