| | |
Summary: L3
: A Linear Language with Locations
Greg Morrisett1
, Amal Ahmed1
, and Matthew Fluet2
1
Harvard University
{greg,amal}@eecs.harvard.edu
2
Cornell University
fluet@cs.cornell.edu
Abstract. We explore foundational typing support for strong updates
-- updating a memory cell to hold values of unrelated types at different
points in time. We present a simple, but expressive type system based
upon standard linear logic, one that also enjoys a simple semantic in-
terpretation for types that is closely related to models for spatial logics.
The typing interpretation is strong enough that, in spite of the fact that
our core calculus supports shared, mutable references and cyclic graphs,
every well-typed program terminates.
We then consider extensions needed to make our calculus expressive
|