{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,4,13]],"date-time":"2026-04-13T21:41:45Z","timestamp":1776116505286,"version":"3.50.1"},"publisher-location":"Berlin, Heidelberg","reference-count":33,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"value":"9783642226540","type":"print"},{"value":"9783642226557","type":"electronic"}],"license":[{"start":{"date-parts":[[2011,1,1]],"date-time":"2011-01-01T00:00:00Z","timestamp":1293840000000},"content-version":"unspecified","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2011]]},"DOI":"10.1007\/978-3-642-22655-7_9","type":"book-chapter","created":{"date-parts":[[2011,7,18]],"date-time":"2011-07-18T13:37:43Z","timestamp":1310996263000},"page":"179-203","source":"Crossref","is-referenced-by-count":9,"title":["Worlds: Controlling the Scope of Side Effects"],"prefix":"10.1007","author":[{"given":"Alessandro","family":"Warth","sequence":"first","affiliation":[]},{"given":"Yoshiki","family":"Ohshima","sequence":"additional","affiliation":[]},{"given":"Ted","family":"Kaehler","sequence":"additional","affiliation":[]},{"given":"Alan","family":"Kay","sequence":"additional","affiliation":[]}],"member":"297","reference":[{"key":"9_CR1","first-page":"567","volume":"34","author":"R.M. Balzer","year":"1969","unstructured":"Balzer, R.M.: EXDAMS\u2014EXtendable debugging and monitoring system. AFIPS Spring Joint Computer Conference\u00a034, 567\u2013580 (1969)","journal-title":"AFIPS Spring Joint Computer Conference"},{"key":"9_CR2","first-page":"177","volume-title":"OOPSLA 2005: Proceedings of 20th International Conference on Object-Oriented Programming, Systems, Languages, and Applications","author":"A. Bergel","year":"2005","unstructured":"Bergel, A., Ducasse, S., Nierstrasz, O.: Classbox\/J: Controlling the scope of change in Java. In: OOPSLA 2005: Proceedings of 20th International Conference on Object-Oriented Programming, Systems, Languages, and Applications, pp. 177\u2013189. ACM Press, New York (2005)"},{"key":"9_CR3","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"122","DOI":"10.1007\/978-3-540-45213-3_17","volume-title":"Modular Programming Languages","author":"A. Bergel","year":"2003","unstructured":"Bergel, A., Ducasse, S., Wuyts, R.: Classboxes: A minimal module model supporting local rebinding. In: B\u00f6sz\u00f6rm\u00e9nyi, L., Schojer, P. (eds.) JMLC 2003. LNCS, vol.\u00a02789, pp. 122\u2013131. Springer, Heidelberg (2003)"},{"key":"9_CR4","unstructured":"Bracha, G.: Monkey Patching (blog post) (2008), \n                    \n                      http:\/\/gbracha.blogspot.com\/2008\/03\/monkey-patching.html"},{"key":"9_CR5","doi-asserted-by":"crossref","unstructured":"Burckhardt, S., Baldassion, A., Leijen, D.: Concurrent programming with revisions and isolation types. In: OOPSLA 2010 (October 2010)","DOI":"10.1145\/1869459.1869515"},{"key":"9_CR6","doi-asserted-by":"crossref","unstructured":"Clifton, C., Millstein, T., Leavens, G.T., Chambers, C.: MultiJava: Design rationale, compiler implementation, and applications. ACM Transactions on Programming Languages and Systems\u00a028(3) (May 2006)","DOI":"10.1145\/1133651.1133655"},{"key":"9_CR7","first-page":"25","volume-title":"ICDL 2007: Proceedings of the 2007 International Conference on Dynamic Languages","author":"M. Denker","year":"2007","unstructured":"Denker, M., G\u00eerba, T., Lienhard, A., Nierstrasz, O., Renggli, L., Zumkehr, P.: Encapsulating and exploiting change with changeboxes. In: ICDL 2007: Proceedings of the 2007 International Conference on Dynamic Languages, pp. 25\u201349. ACM Press, New York (2007)"},{"issue":"5","key":"9_CR8","doi-asserted-by":"publisher","first-page":"56","DOI":"10.1109\/MS.2007.144","volume":"24","author":"S. Ducasse","year":"2007","unstructured":"Ducasse, S., Lienhard, A., Renggli, L.: Seaside: A flexible environment for building dynamic web applications. IEEE Software\u00a024(5), 56\u201363 (2007)","journal-title":"IEEE Software"},{"key":"9_CR9","unstructured":"ECMA International. ECMA-262: ECMAScript Language Specification. European Association for Standardizing Information and Communication Systems, Geneva, Switzerland, third edition (December 1999)"},{"issue":"1","key":"9_CR10","doi-asserted-by":"publisher","first-page":"112","DOI":"10.1145\/69215.69226","volume":"24","author":"S.I. Feldman","year":"1989","unstructured":"Feldman, S.I., Brown, C.B.: IGOR: a system for program debugging via reversible execution. ACM SIGPLAN Notices\u00a024(1), 112\u2013123 (1989)","journal-title":"ACM SIGPLAN Notices"},{"key":"9_CR11","doi-asserted-by":"publisher","first-page":"36","DOI":"10.1145\/581478.581483","volume-title":"ICFP 2002: Proceedings of the seventh ACM SIGPLAN International Conference on Functional Programming","author":"B. Ford","year":"2002","unstructured":"Ford, B.: Packrat parsing: simple, powerful, lazy, linear time, functional pearl. In: ICFP 2002: Proceedings of the seventh ACM SIGPLAN International Conference on Functional Programming, pp. 36\u201347. ACM Press, New York (2002)"},{"key":"9_CR12","first-page":"111","volume-title":"POPL 2004: Proceedings of the 31st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages","author":"B. Ford","year":"2004","unstructured":"Ford, B.: Parsing expression grammars: a recognition-based syntactic foundation. In: POPL 2004: Proceedings of the 31st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pp. 111\u2013122. ACM Press, New York (2004)"},{"key":"9_CR13","volume-title":"Design Patterns","author":"E. Gamma","year":"1995","unstructured":"Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns. Addison-Wesley Professional, Reading (1995)"},{"key":"9_CR14","first-page":"48","volume-title":"PPoPP 2005: Proceedings of the tenth ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming","author":"T. H\u00e5rris","year":"2005","unstructured":"H\u00e5rris, T., Marlow, S., Peyton-Jones, S., Herlihy, M.: Composable memory transactions. In: PPoPP 2005: Proceedings of the tenth ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, pp. 48\u201360. ACM Press, New York (2005)"},{"issue":"3","key":"9_CR15","doi-asserted-by":"publisher","first-page":"125","DOI":"10.5381\/jot.2008.7.3.a4","volume":"7","author":"R. Hirschfeld","year":"2008","unstructured":"Hirschfeld, R., Costanza, P., Nierstrasz, O.: Context-Oriented Programming. Journal of Object Technology (JOT)\u00a07(3), 125\u2013151 (2008)","journal-title":"Journal of Object Technology (JOT)"},{"issue":"10","key":"9_CR16","doi-asserted-by":"publisher","first-page":"318","DOI":"10.1145\/263700.263754","volume":"32","author":"D. Ingalls","year":"1997","unstructured":"Ingalls, D., Kaehler, T., Maloney, J., Wallace, S., Kay, A.: Back to the future: the story of Squeak, a practical Smalltalk written in itself. SIGPLAN Notices\u00a032(10), 318\u2013326 (1997)","journal-title":"SIGPLAN Notices"},{"issue":"3","key":"9_CR17","doi-asserted-by":"publisher","first-page":"404","DOI":"10.1145\/3916.3988","volume":"7","author":"D.R. Jefferson","year":"1985","unstructured":"Jefferson, D.R.: Virtual time. ACM Transactions on Programming Languages and Systems\u00a07(3), 404\u2013425 (1985)","journal-title":"ACM Transactions on Programming Languages and Systems"},{"key":"9_CR18","first-page":"158","volume-title":"POPL19\u201988: Proceedings of the 15th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages","author":"G.F. Johnson","year":"1988","unstructured":"Johnson, G.F., Duggan, D.: Stores and partial continuations as first-class objects in a language and its environment. In: POPL19\u201988: Proceedings of the 15th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pp. 158\u2013168. ACM Press, New York (1988)"},{"key":"9_CR19","unstructured":"Kay, A., Ingalls, D., Ohshima, Y., Piumarta, I., Raab, A.: Proposal to NSF (2006), \n                    \n                      http:\/\/www.vpri.org\/pdf\/NSF_prop_RN-2006-002.pdf\n                    \n                    \n                   (granted on August 31, 2006)"},{"key":"9_CR20","unstructured":"Kay, A., Piumarta, I., Rose, K., Ingalls, D., Amelang, D., Kaehler, T., Ohshima, Y., Thacker, C., Wallace, S., Warth, A., Yamamiya, T.: Steps toward the reinvention of programming (first year progress report) (2007), \n                    \n                      http:\/\/www.vpri.org\/pdf\/steps_TR-2007-008.pdf"},{"issue":"2","key":"9_CR21","doi-asserted-by":"publisher","first-page":"213","DOI":"10.1145\/319566.319567","volume":"6","author":"H.T. Kung","year":"1981","unstructured":"Kung, H.T., Robinson, J.T.: On optimistic methods for concurrency control. ACM Transactions on Database Systems\u00a06(2), 213\u2013226 (1981)","journal-title":"ACM Transactions on Database Systems"},{"key":"9_CR22","unstructured":"Morrisett, J.G.: Generalizing first-class stores. In: SIPL 1993: Proceedings of the ACM SIGPLAN Workshop on State in Programming Languages, pp. 73\u201387 (1993)"},{"issue":"1","key":"9_CR23","doi-asserted-by":"publisher","first-page":"101","DOI":"10.1007\/s10990-006-8610-8","volume":"19","author":"V.K. Nandivada","year":"2006","unstructured":"Nandivada, V.K., Jagannathan, S.: Dynamic state restoration using versioning exceptions. Higher-Order and Symbolic Computation\u00a019(1), 101\u2013124 (2006)","journal-title":"Higher-Order and Symbolic Computation"},{"key":"9_CR24","volume-title":"Purely functional data structures","author":"C. Okasaki","year":"1999","unstructured":"Okasaki, C.: Purely functional data structures. Cambridge University Press, Cambridge (1999)"},{"key":"9_CR25","unstructured":"Reed, D.P.: Naming and synchronization in a decentralized computer system (PhD dissertation). Technical Report TR-205, Massachusetts Institute of Technology, Cambridge, MA, USA (1978)"},{"key":"9_CR26","doi-asserted-by":"publisher","first-page":"7","DOI":"10.1145\/1094855.1094861","volume-title":"OOPSLA 2005: Companion to the 20th annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications","author":"D.P. Reed","year":"2005","unstructured":"Reed, D.P.: Designing Croquet\u2019s TeaTime: a real-time, temporal environment for active object cooperation. In: OOPSLA 2005: Companion to the 20th annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, pp. 7\u20137. ACM Press, New York (2005)"},{"key":"9_CR27","doi-asserted-by":"crossref","unstructured":"Shavit, N., Touitou, D.: Software transactional memory. In: PODC 1995: Proceedings of the 12th Annual ACM Symposium on Principles of Distributed Computing, pp. 204\u2013213 (1995)","DOI":"10.1145\/224964.224987"},{"issue":"3","key":"9_CR28","doi-asserted-by":"publisher","first-page":"161","DOI":"10.1002\/(SICI)1096-9942(1996)2:3<161::AID-TAPO3>3.0.CO;2-Z","volume":"2","author":"R.B. Smith","year":"1996","unstructured":"Smith, R.B., Ungar, D.: A simple and unifying approach to subjective objects. Theor. Pract. Object Syst.\u00a02(3), 161\u2013178 (1996)","journal-title":"Theor. Pract. Object Syst."},{"key":"9_CR29","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/1408681.1408684","volume-title":"DLS 2008: Proceedings of the 2008 Dynamic Languages Symposium","author":"E. Tanter","year":"2008","unstructured":"Tanter, E.: Contextual values. In: DLS 2008: Proceedings of the 2008 Dynamic Languages Symposium, pp. 1\u201310. ACM Press, New York (2008)"},{"key":"9_CR30","unstructured":"Warth, A.: OMeta\/JS website, \n                    \n                      http:\/\/www.tinlizzie.org\/ometa-js\/"},{"key":"9_CR31","unstructured":"Warth, A.: Experimenting with Programming Languages. PhD dissertation, University of California, Los Angeles (2009)"},{"key":"9_CR32","volume-title":"OOPSLA 2007: Companion to the 22nd ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages, and Applications","author":"A. Warth","year":"2007","unstructured":"Warth, A., Piumarta, I.: OMeta: an Object-Oriented Language for Pattern-Matching. In: OOPSLA 2007: Companion to the 22nd ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages, and Applications, ACM Press, New York (2007)"},{"key":"9_CR33","first-page":"37","volume-title":"OOPSLA 2006: Proceedings of the 21st ACM SIGPLAN International Conference on Object-Oriented Programming Systems, Languages, and Applications","author":"A. Warth","year":"2006","unstructured":"Warth, A., Stanojevi\u0107, M., Millstein, T.: Statically scoped object adaptation with Expanders. In: OOPSLA 2006: Proceedings of the 21st ACM SIGPLAN International Conference on Object-Oriented Programming Systems, Languages, and Applications, pp. 37\u201356. ACM Press, New York (2006)"}],"container-title":["Lecture Notes in Computer Science","ECOOP 2011 \u2013 Object-Oriented Programming"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-642-22655-7_9","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,3,30]],"date-time":"2019-03-30T03:18:41Z","timestamp":1553915921000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-642-22655-7_9"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2011]]},"ISBN":["9783642226540","9783642226557"],"references-count":33,"URL":"https:\/\/doi.org\/10.1007\/978-3-642-22655-7_9","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[2011]]}}}