2007
DOI: 10.1017/s0956796807006600
|View full text |Cite
|
Sign up to set email alerts
|

Dynamic rebinding for marshalling and update, via redex-time and destruct-time reduction

Abstract: 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 the si… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
6
0

Year Published

2009
2009
2013
2013

Publication Types

Select...
3
2

Relationship

0
5

Authors

Journals

citations
Cited by 6 publications
(6 citation statements)
references
References 46 publications
0
6
0
Order By: Relevance
“…As a side-effect, the env operator also ensures that continuations are independent of any evaluation environment, i.e., any continuation brings its required environment in an env construct. To some extent, this is similar to the destructtime λ-calculus [8,33], which delays substitutions until values are consumed. That way, bindings can be marshalled and move between scopes.…”
Section: Discussionmentioning
confidence: 99%
“…As a side-effect, the env operator also ensures that continuations are independent of any evaluation environment, i.e., any continuation brings its required environment in an env construct. To some extent, this is similar to the destructtime λ-calculus [8,33], which delays substitutions until values are consumed. That way, bindings can be marshalled and move between scopes.…”
Section: Discussionmentioning
confidence: 99%
“…This strategy w.r.t. substitution, called destruct-time by Sewell et al [28], does not contradict the fact that λ • is call-by-value. Indeed, only values are copied, and any expression reached by the evaluation is immediately evaluated.…”
Section: Remark 2 (Policy On Substitution and Call-by-value)mentioning
confidence: 92%
“…We start with small examples to give some intuition on the semantics. First, as noted in Remark 2, substitution occurs at destruct-time in λ • , following the terminology of [28]. This means that substitution of an occurrence of a variable is only performed when this occurrence has to be replaced with a non-variable value in order for the evaluation to continue.…”
Section: Basic Examplesmentioning
confidence: 99%
“…But we believe a formal and mathematical model of dynamic update should be developed in order to understand what design choices can be considered in a component-based system. There a few formalization works have been carried out to support the correctness and consistency derivations of dynamic update [6], [7], [8], [9]. Nevertheless, we are not aware of past efforts that have well formalized the aspects for timing of update, state transformation and update failure recovery.…”
Section: Introductionmentioning
confidence: 99%