Big Island, HI, USA
Jan. 6, 2003 to Jan. 9, 2003
Simon Frankau , University of Cambridge
We describe work-in-progress which aims at compiling suitably restricted functional programs with lazy lists directly into hardware. This extends previous work on SAFL which demonstrated that functional languages are effective at describing "fire-and-wait-for-result" programs, but for which stream-like I/O was awkward or impossible. Other frameworks (e.g. Lava) have used functional languages as a form of macro-language, so that executing a program generates a net-list (structural) description, while our language is compiled directly ("behaviourally") to hardware. In particular our stream operations (represented as creation and pattern matching of lazy CONS cells) are mapped into channel writes and reads. We introduce our language, SASL, compare our approach to that of synchronous stream/signal languages, and give example functional descriptions which can be compiled to hardware.
Simon Frankau, "Stream Processing Hardware from Functional Language Specifications", HICSS, 2003, 36th Hawaii International Conference on Systems Sciences, 36th Hawaii International Conference on Systems Sciences 2003, pp. 278b, doi:10.1109/HICSS.2003.1174809