Date of Original Version



Conference Proceeding

Abstract or Description

Many modern programming challenges center on the correct handling of abstract resources whose use is constrained in some way. These constraints include initialization before use, resource cleanup, safe coordination among threads, and usage protocols. Unlike class-based languages, the resource-based programming language Plaid models interfaces, representation, and behavior using states, and an object’s state can change. Plaid’s gradual, linear logic-based type system and runtime system will track both the state of an object and aliases to it, ensuring that clients access objects safely in both sequential and concurrent programs.



Published In

Proceedings of the Conference on Programming Language Design and Implementation (PLDI), 2010.