Sciweavers

ICFP
2003
ACM

Dynamic rebinding for marshalling and update, with destruct-time?

15 years 11 days ago
Dynamic rebinding for marshalling and update, with destruct-time?
Most programming languages adopt static binding, but for distributed programming an exclusive reliance on static binding is too restrictive: dynamic binding is required in various guises, for example when a marshalled value is received from the network, containing identifiers that must be rebound to local resources. Typically it is provided only by ad-hoc mechanisms that lack clean semantics. In this paper we adopt a foundational approach, developing core dynamic rebinding mechanisms as extensions to simply-typed callby-value -calculus. To do so we must first explore refinements of the call-by-value reduction strategy that delay instantiation, to ensure computations make use of the most recent versions of rebound definitions. We introduce redex-time and destruct-time strategies. The latter forms the basis for a marsh calculus that supports dynamic rebinding of marshalled values, while remaining as far as possible statically-typed. We sketch an extension of marsh with concurrency and c...
Gavin M. Bierman, Michael W. Hicks, Peter Sewell,
Added 13 Dec 2009
Updated 13 Dec 2009
Type Conference
Year 2003
Where ICFP
Authors Gavin M. Bierman, Michael W. Hicks, Peter Sewell, Gareth Stoyle, Keith Wansbrough
Comments (0)