ICRA Conference 2002 Conference Paper
Specifying Behavior in C++
- Xiangtian Dai
- Gregory D. Hager
- John Peterson
Most robot programming takes place in the "time domain", that is, the goal is to specify the behavior of a system that is acquiring a continual temporal stream of inputs, and is required to provide a continual, temporal stream of outputs. We present a reactive programming language, based on the functional reactive programming paradigm, for specifying such behavior. The major attributes of this language are: 1) it provides for both synchronous and asynchronous definitions of behavior; 2) specification is equational in nature; 3) it is type safe; and 4) it is embedded in C++. In particular the latter makes it simple to "lift" existing C++ libraries into the language.