James Koppel on Any Monadic Effect in Direct Style


From James Koppel:

Continuations in Java! Nondeterminism in Python! Probabilistic programming in Perl! In this talk, I'll present my new result showing that any language with exception and state can run any monadic effect in direct style. It's long been known you can do this in any language that has delimited control. Now I'll show how to implement delimited control in any language with exceptions and state, using a construction I call "thermometer continuations." The trick? We are capturing the future by replaying the past.

Bio: After winning the "20 Under 20" Thiel Fellowship, Jimmy Koppel graduated early from Carnegie Mellon University to found Tarski Technologies, a startup building commercial program repair technology. In 2014, he joined Apptimize as the third employee, where he obtained four patents in the areas of binary modification and mobile A/B testing. He is currently a third-year Ph. D. student in the Computer-Aided Programming group at MIT, with research focusing on software language engineering, generic programming, and causal inference. He also runs a business turning software engineers into better software engineers ( www.jameskoppelcoaching.com ).