Meld: A declarative approach to programming ensembles - Ashley-Rollman, M.P.; Goldstein, S.C.; Lee, P.; Mowry, T.C.; Pillai, P. (2007 IEEE/RSJ International Conference on Intelligent Robots and Systems, 2007)
This paper presents Meld, a programming language for modular robots, i.e., for independently executing robots where inter-robot communication is limited to immediate neighbors. Meld is a declarative language, based on P2, a logic- programming language originally designed for programming overlay networks. By using logic programming, the code for an ensemble of robots can be written from a global perspective, as opposed to a large collection of independent robot views. This greatly simplifies the thought process needed for programming large ensembles. Initial experience shows that this also leads to a considerable reduction in code size and complexity. An initial implementation of Meld has been completed and has been used to demonstrate its effectiveness in the Claytronics simulator. Early results indicate that Meld programs are considerably more concise (more than 20times shorter) than programs written in C++, while running nearly as efficiently.