Functional Reactive Robotics: An Exercise in Principled Integration of Domain-Specific Languages


Izzet Pembeci, Henrik Nilsson, Greg Hager, Darius Burschka, John Peterson


Software for (semi-) autonomous robots tends to be a complex combination of components from many different application domains such as control theory, vision, and artificial intelligence. Components are often developed using their own domain-specific tools and abstractions. System integration can thus be a significant challenge, in particular when the application calls for a dynamic, adaptable system structure in which rigid boundaries between the subsystems are a performance impediment. We believe that, by identifying suitably abstract notions common to the different domains in question, it is possible to create a broader framework for software integration and to recast existing domain-specific frameworks in these terms. This approach simplifies integration and leads to improved reliability. In this paper, we show how Functional Reactive Programming (FRP) can serve as such a unifying framework for programming vision-guided, semi-autonomous robots and illustrate the benefits this approach entails. The key abstractions in FRP, reactive components describing continuous or discrete behavior in a declarative style, are first class entities, allowing the resulting systems to exhibit a dynamic, adaptable structure which we regard as especially important in the area of autonomous robots.


  author = 	 "Izzet Pembeci and Henrik Nilsson and Greogory Hager",
  title = 	 "Functional Reactive Robotics: An Exercise in Principled
                  Integration of Domain-Specific Languages",
  booktitle = 	 "Principles and Practice of Declarative Programming
  year =	 2002,
  address =      "Pittsburgh, Pennsylvania, USA",
  month =	 oct