[Pl-seminar] 6th February : Lucas Waye: Whip: Higher-order Contracts for Modern Services

Aviral Goel goel.av at husky.neu.edu
Wed Jan 30 10:58:42 EST 2019


*Date:* Wednesday, February 6th
*Location:* WVH 366
*Time:* 10:00 AM to 11:30 AM
*Host:* Ben Greenman

*Whip: Higher-order Contracts for Modern Services*
*Lucas Waye*

*Abstract*
Modern service-oriented applications forgo semantically rich protocols and
middleware when composing services. Instead, they embrace the
loosely-coupled development and deployment of services that communicate via
simple network protocols. Even though these applications do expose
interfaces that are higher-order in spirit, the simplicity of the network
protocols forces them to rely on brittle low-level encodings. To bridge the
apparent semantic gap, programmers introduce ad-hoc and error-prone
defensive code. Inspired by Design by Contract, we choose a different route
to bridge this gap. We introduce Whip, a contract system for modern
services. Whip (i) provides programmers with a higher-order contract
language tailored to the needs of modern services; and (ii) monitors
services at run time to detect services that do not live up to their
advertised interfaces. Contract monitoring is local to a service. Services
are treated as black boxes, allowing heterogeneous implementation languages
without modification to services' code. Thus, Whip does not disturb the
loosely coupled nature of modern services.

*Bio*
I'm currently a Software Engineer at Facebook thinking about privacy in the
data warehouse. Previously I helped build TiVo's Targeted Audience Delivery
platform. And before that I worked on the backend for Timeful (acquired by
Google) and on Hulu's analytics platform. In graduate school I worked on
Whip, a contract monitor for microservices. I received a Ph.D. and Master's
degree from Harvard under the guidance of Stephen Chong and a Bachelor's
degree from Cornell.
-------------- next part --------------
HTML attachment scrubbed and removed


More information about the pl-seminar mailing list