Supporting read-only and side effect free execution has been the focus of a large body of work in the area of statically typed programming languages. Read-onlyness in dynamically typed languages is difficult to achieve because of the absence of a type checking phase and the support of an open-world assumption in which code can be constantly added and modified. To address this issue, we propose Dynamic Read-Only references (DRO) that provide a view on an object where this object and its object graph are protected from modification. The read-only view dynamically propagates to aggregated objects, without changing the object graph itself; it acts as a read-only view of complex data structures, without making them read-only globally. We implement dynamic read-only references by using smart object proxies that lazily propagate the read-only view, following the object graph and driven by control flow and applied them to realize side-effect free assertions. © 2010 Springer-Verlag.
CITATION STYLE
Arnaud, J. B., Denker, M., Ducasse, S., Pollet, D., Bergel, A., & Suen, M. (2010). Read-only execution for dynamic languages. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 6141 LNCS, pp. 117–136). https://doi.org/10.1007/978-3-642-13953-6_7
Mendeley helps you to discover research relevant for your work.