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.
Wed 6 SepDisplayed time zone: Belfast change
13:00 - 14:30 | |||
13:00 22mTalk | Chaperone Contracts for Higher-Order Sessions Research Papers DOI | ||
13:22 22mTalk | Whip: Higher-Order Contracts for Modern Services Research Papers Lucas Waye Harvard University, USA, Christos Dimoulas Harvard University, USA, Stephen Chong Harvard University, USA DOI | ||
13:45 22mTalk | Manifest Sharing with Session Types Research Papers DOI | ||
14:07 22mTalk | Gradual Session Types Research Papers Atsushi Igarashi Kyoto University, Japan, Peter Thiemann University of Freiburg, Germany, Vasco T. Vasconcelos University of Lisbon, Portugal, Philip Wadler University of Edinburgh, UK DOI |