Research Scientist at MIT

Toward a Categorical Foundation of Functional Reactive Programming

Abstract:

I will propose a simple category-theoretic foundation for functional reactive programming (FRP), which may also be useful in connection with incremental computation (IC). Both of these worlds involve objects that look like A-☐-B, as well as combinators that can be visualized as wiring diagrams. These boxes and combinators are often given meanings in terms of stream processors or state machines. I will give a categorical description of these ideas using symmetric monoidal categories. That is, I'll introduce a category W of boxes and wiring diagrams (syntax), and a functor P: W-->Set of propagators (a semantic interpretation of W). The mathematics is joint work with Dylan Rupel and Nat Stapleton, and the connection to PL is joint with David Darais. I'll assume the audience has a basic understanding of categories and functors, but not of monoidal categories or of anything about FRP or IC.

Bio:

David Spivak received a PhD in mathematics from UC Berkeley in 2007; his thesis was in algebraic topology. For the next three years he was a post doc in the math department at the University of Oregon. During this time his focus moved toward finding novel category-theoretic foundations of various information-bearing structures, such as databases. Since 2010, he has continued this research as a post doc, and then research scientist, in the math department at MIT.

Principles
of Programming Seminars