Title
Flexible models for dynamic linking
Abstract
Dynamic linking supports flexible code deployment: partially linked code links further code on the fly, as needed; and thus, end-users receive updates automatically. On the down side, each program run may link different versions of the same code, possibly causing subtle errors which mystify end-users. Dynamic linking in Java and C# are similar: The same linking phases are involved, soundness is based on similar ideas, and executions which do not throw linking errors give the same result. They are, however, not identical: the linking phases are combined differently, and take place in a different order. We develop a non-deterministic model, which includes the behaviour of Java and C#. The non-determinism allows us to describe the design space, to distill the similarities between the two languages, and to use one proof of soundness for both.We also prove that all execution strategies are equivalent in the sense that all terminating executions which do not involve a link error, give the same result.
Year
Venue
Keywords
2003
ESOP
link error,design space,execution strategy,similar idea,different order,program run,non-deterministic model,mystify end-users,flexible model,different version,supports flexible code deployment
Field
DocType
Volume
Design space,Software deployment,Programming language,Computer science,On the fly,Theoretical computer science,Normalization property,Soundness,Java
Conference
2618
ISSN
ISBN
Citations 
0302-9743
3-540-00886-1
20
PageRank 
References 
Authors
1.23
16
3
Name
Order
Citations
PageRank
Sophia Drossopoulou1101690.55
Giovanni Lagorio221217.98
Susan Eisenbach3898114.68