Capturing Functions and Catching Satellites
semanticscholar(2014)
摘要
The 2009 ICFP programming contest problem required contestants to control virtual satellites that obey basic physical laws. The orbital physics behavior of the system was simulated via a binary provided to contestants which ran on top of a simple virtual machine. Contestants were required to implement the virtual machine along with a controller program to manipulate the satellite’s behavior. In this paper, we describe the modeling of the simulation environment, with a focus on the compilation and testing infrastructure for the generated binaries for this virtual machine. This infrastructure makes novel use of an implementation of a deeply embedded Domain Specific Language (DSL) within Haskell. In particular, with use of IO-based observable sharing, it was straightforward for a function to be both an executable specification as well as a portable implementation.
更多查看译文
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要