The standard algorithm for higher-order contract checking can lead to unbounded space consumption and can destroy tail recursion, altering a program’s asymptotic space complexity. While space efficiency for gradual types—contracts mediating untyped and typed code—is well studied, sound space efficiency for manifest contracts—contracts that check stronger properties than simple types, e.g., “is a natural ” instead of “is an integer”—remains an open problem. We show how to achieve sound space efficiency for manifest contracts with strong predicate contracts. We define a framework for space efficiency, traversing the design space with three different space-efficient manifest calculi. Along the way, we examine the di-verse correctness criteria ...
Since Findler and Felleisen (Findler, R. B. & Felleisen, M. 2002) introduced higher-order contracts,...
Since Findler and Felleisen introduced higher-order contracts, many variants have been proposed. Bro...
Since Findler and Felleisen (Findler, R. B. & Felleisen, M. 2002) introduced higher-order contracts,...
The standard algorithm for higher-order contract checking can lead to unbounded space consumption an...
Eiffel popularized design by contract, a software design philosophy where programmers specify the re...
Eiffel popularized design by contract, a software design philosophy where programmers specify the re...
Eiffel popularized design by contract, a software design philosophy where programmers specify the re...
Gradual types mediate the interaction between dynamic and simple types, offering an easy transition ...
Eiffel popularized design by contract, a software design philosophy where programmers specify the re...
Eiffel popularized design by contract, a software design philosophy where programmers specify the re...
Eiffel popularized design by contract, a software design philosophy where programmers specify the re...
Since Findler and Felleisen introduced higher-order contracts, many variants have been proposed. Bro...
Since Findler and Felleisen (Findler, R. B. & Felleisen, M. 2002) introduced higher-order contra...
Even in statically typed languages it is useful to have certain invariants checked dynamically. Find...
Since Findler and Felleisen introduced higher-order contracts, many variants have been proposed. Bro...
Since Findler and Felleisen (Findler, R. B. & Felleisen, M. 2002) introduced higher-order contracts,...
Since Findler and Felleisen introduced higher-order contracts, many variants have been proposed. Bro...
Since Findler and Felleisen (Findler, R. B. & Felleisen, M. 2002) introduced higher-order contracts,...
The standard algorithm for higher-order contract checking can lead to unbounded space consumption an...
Eiffel popularized design by contract, a software design philosophy where programmers specify the re...
Eiffel popularized design by contract, a software design philosophy where programmers specify the re...
Eiffel popularized design by contract, a software design philosophy where programmers specify the re...
Gradual types mediate the interaction between dynamic and simple types, offering an easy transition ...
Eiffel popularized design by contract, a software design philosophy where programmers specify the re...
Eiffel popularized design by contract, a software design philosophy where programmers specify the re...
Eiffel popularized design by contract, a software design philosophy where programmers specify the re...
Since Findler and Felleisen introduced higher-order contracts, many variants have been proposed. Bro...
Since Findler and Felleisen (Findler, R. B. & Felleisen, M. 2002) introduced higher-order contra...
Even in statically typed languages it is useful to have certain invariants checked dynamically. Find...
Since Findler and Felleisen introduced higher-order contracts, many variants have been proposed. Bro...
Since Findler and Felleisen (Findler, R. B. & Felleisen, M. 2002) introduced higher-order contracts,...
Since Findler and Felleisen introduced higher-order contracts, many variants have been proposed. Bro...
Since Findler and Felleisen (Findler, R. B. & Felleisen, M. 2002) introduced higher-order contracts,...