We are pleased to announce the first official release of Yampa An implementation of Functional Reactive Programming Version 0.9 Yampa is the culmination of our efforts to provide domain-specific embedded languages for the programming of hybrid systems using the concepts of functional reactive programming (FRP). Yampa is structured using *arrows*, which greatly reduce the chance of introducing space- and time-leaks into reactive, time-varying systems. This release contains the following major components: * The Yampa Base Library, containing generic functions for the expression of continuous behaviors, discrete events, and the interactions between behaviors and events. * The Yampa Robotics Library, containing entities tailored for controlling mobile robots, both real and simulated, in the style of Frob, our FRP-based robotics language. The simulator is written using Yampa's Base and HGL, and performs physical modelling of mobile differential-drive robots equipped with several kinds of sensors. A pre-configured version of the simulator allows one to play RoboCup Soccer. Note: With the Base Library and HGL (or any other graphics library), it is easy to write reactive animation programs in the style of Fran. Thus there is no need for a special library to support graphics and animation. For information on down-loading Yampa, please visit the Yampa website at: http://www.haskell.org/yampa There is also a Yampa mailing list. To subscribe, point your browser at: http://mailman.cs.yale.edu/mailman/listinfo/yampa-users YaMPA doesn't really mean anything, but this work started at Yale, ended with Arrows, and had Much Programming in the middle. Yampa is also a river in Colorado that combines continuous, placid sections with an occasional abrupt transition - a perfect metaphor for hybrid systems. The Yale Haskell Group http://haskell.cs.yale.edu/yale -- Henrik Nilsson Yale University Department of Computer Science nilsson@cs.yale.edu
participants (1)
-
nilsson@cs.yale.edu