High-level Languages for Low-level Systems

Subscribers:
344,000
Published on ● Video Link: https://www.youtube.com/watch?v=A3YZH47CVcU



Duration: 54:50
328 views
4


Functional languages such as Haskell provide powerful abstraction facilities, but directly applying these tools to resource-constrained devices is impractical because doing so imposes too much time and/or space overhead. In this talk, I will describe two systems that exploit new language techniques to allow low-level devices to be programmed using Haskell. Flask provides a library of high-level combinators for composing low-level code fragments into programs that run on TelosB motes, which have 16-bit processors and 10K of RAM. Nikola supports both run-time and compile-time generation of GPU code from a first-order language of array computations embedded in Haskell that can communicate seamlessly with CPU computations written in Haskell.







Tags:
microsoft research