Talk: 15:20-16:05 (English)

What is Functional Reactive Programming?

How can we work with time in functional programming? Traditionally, reactive systems—UIs, web servers, robotic controllers, simulations—are seen as inherently imperative, not suitable for functional programming. This does not have to be the case! Functional Reactive Programming (FRP), lets us have our cake and eat it too: we can use the composable, declarative style we love as functional programmers to write this kind of code. But what is FRP? It’s surprisingly hard to get a clear answer without diving deeply into research literature. I will give you an introduction with practical Haskell examples that will get you over the hump to understanding and using FRP.

Tikhon Jelvis


Tikhon picked up Haskell as his first functional language on a whim, and it’s stuck with him ever since. He’s worked with other functional languages too – a compiler in Racket, a backend service in OCaml – but now he’s back in the Haskell world, working on Target’s supply chain optimization team. Apart from programming in Haskell and giving talks, he also actively writes about Haskell and programming on Quora and helps organize local meetups and events like BayHac.