{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,11,18]],"date-time":"2025-11-18T12:08:57Z","timestamp":1763467737050,"version":"3.40.3"},"publisher-location":"Berlin, Heidelberg","reference-count":33,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"type":"print","value":"9783540630890"},{"type":"electronic","value":"9783540691273"}],"license":[{"start":{"date-parts":[[1997,1,1]],"date-time":"1997-01-01T00:00:00Z","timestamp":852076800000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"},{"start":{"date-parts":[[1997,1,1]],"date-time":"1997-01-01T00:00:00Z","timestamp":852076800000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[1997]]},"DOI":"10.1007\/bfb0053373","type":"book-chapter","created":{"date-parts":[[2006,6,7]],"date-time":"2006-06-07T04:12:53Z","timestamp":1149653573000},"page":"32-59","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":63,"title":["Balloon types: Controlling sharing of state in data types"],"prefix":"10.1007","author":[{"given":"Paulo S\u00e9rgio","family":"Almeida","sequence":"first","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2006,5,23]]},"reference":[{"key":"2_CR1","unstructured":"Gul Agha and Carl Hewitt. Actors: A conceptual foundation for concurrent object-oriented programming. In P. Wegner and B. Shriver, editors, Research Directions in Object-Oriented Programming, pages 49\u201374. MIT Press, 1987."},{"key":"2_CR2","unstructured":"P. S. Almeida. Control of Object Sharing (provisional title). PhD thesis, University of London, Imperial College, Department of Computing, 1997. To appear."},{"key":"2_CR3","unstructured":"G. E. Andrews. The theory of partitions. In Encyclopedia of Mathematics and its Applications, volume 2. Addison-Wesley, 1976."},{"key":"2_CR4","unstructured":"K. Arnold and J. Gosling. The Java Programming Language. Addison-Wesley, 1996."},{"issue":"10","key":"2_CR5","doi-asserted-by":"publisher","first-page":"376","DOI":"10.1145\/167962.165929","volume":"28","author":"F. Civello","year":"1993","unstructured":"Franco Civello. Roles for composite objects in object-oriented analysis and design. Proceedings OOPSLA'93. SIGPLAN Notices, 28(10):376\u2013393, October 1993.","journal-title":"Proceedings OOPSLA'93. SIGPLAN Notices"},{"key":"2_CR6","doi-asserted-by":"crossref","unstructured":"C. Clack and S. Peyton Jones. Strictness analysis\u2014a practical approach. In Proceedings FPCA'85, volume 201 of LNCS, pages 35\u201349. Springer-Verlag, September 1985.","DOI":"10.1007\/3-540-15975-4_28"},{"key":"2_CR7","doi-asserted-by":"crossref","unstructured":"P. Cousot and R. Cousot. Abstract Interpretation: A Unified Lattice Model for Static Analysis of Programs by Construction or Approximation of Fixpoints. In Proceedings 4th ACM Symposium on Principles of Programming Languages, pages 238\u2013252, January 1977.","DOI":"10.1145\/512950.512973"},{"key":"2_CR8","volume-title":"Publication S-22","author":"O.-J. Dahl","year":"1970","unstructured":"O.-J. Dahl, B. Myhrhaug, and K. Nygaard. The SIMULA 67 common base language. Publication S-22, Norwegian Computing Center, Oslo, 1970."},{"key":"2_CR9","doi-asserted-by":"crossref","unstructured":"R. Ghiya and L. J. Hendren. Is it a tree, a DAG, or a cyclic graph? A shape analysis for heap-directed pointers in C. In Proceedings 23rd ACM Symposium on Principles of Programming Languages, pages 1\u201315, January 1996.","DOI":"10.1145\/237721.237724"},{"key":"2_CR10","unstructured":"A. Goldberg and D. Robson. Smalltalk-80: The Language and its Implementation. Addison-Wesley, 1983."},{"key":"2_CR11","doi-asserted-by":"crossref","unstructured":"L. J. Hendren and G. R. Gao. Designing programming languages for analyzability: A fresh look at pointer data structures. In Proceedings 4th IEEE International Conference on Computer Languages, pages 242\u2013251, April 1992.","DOI":"10.1109\/ICCL.1992.185488"},{"key":"2_CR12","doi-asserted-by":"publisher","first-page":"271","DOI":"10.1007\/BF00289507","volume":"1","author":"C. A. R. Hoare","year":"1972","unstructured":"C. A. R. Hoare. Proof of correctness of data representations. Ada Informatica, 1:271\u2013281, 1972.","journal-title":"Ada Informatica"},{"key":"2_CR13","unstructured":"C. A. R. Hoare. Hints on programming language design. Technical Report STAN\/\/CS-TR-73-403, Stanford University, Department of Computer Science, December 1973. Based on a keynote address presented at the ACM Symposium on Principles of Programming Languages."},{"issue":"2","key":"2_CR14","doi-asserted-by":"crossref","first-page":"11","DOI":"10.1145\/130943.130947","volume":"3","author":"J. Hogg","year":"1992","unstructured":"J. Hogg, D. Lea, A. Wills, D. deChampeaux, and R. Holt. The Geneva convention on the treatment of object aliasing. Followup report on ECOOP'91 workshop W3: Object-oriented formal methods. OOPS Messenger, 3(2):11\u201316, April 1992.","journal-title":"OOPS Messenger"},{"issue":"11","key":"2_CR15","doi-asserted-by":"publisher","first-page":"271","DOI":"10.1145\/118014.117975","volume":"26","author":"J. Hogg","year":"1991","unstructured":"John Hogg. Islands: Aliasing protection in object-oriented languages. Proceedings OOPSLA'91. SIGPLAN Notices, 26(11):271\u2013285, November 1991.","journal-title":"Proceedings OOPSLA'91. SIGPLAN Notices"},{"key":"2_CR16","doi-asserted-by":"crossref","unstructured":"Sebastian Hunt. Frontiers and open sets in abstract interpretation. In Proceedings FPCA'89, pages 1\u201311. ACM Press, September 1989.","DOI":"10.1145\/99370.99371"},{"key":"2_CR17","unstructured":"N. D. Jones and F. Nielson. Abstract interpretation: a semantics-based tool for program analysis. In Handbook of Logic in Computer Science, volume 4: Semantic Modelling, pages 527\u2013636. Oxford University Press, 1995."},{"key":"2_CR18","unstructured":"S. Kent and J. Howse. Value types in Eiffel. In Proceedings TOOLS Europe 96 (TOOLS 19). Prentice Hall, 1996."},{"issue":"11","key":"2_CR19","doi-asserted-by":"publisher","first-page":"406","DOI":"10.1145\/960112.28739","volume":"21","author":"S. Khoshafian","year":"1986","unstructured":"S. Khoshafian and G. Copeland. Object identity. Proceedings OOPSLA'86. SIGPLAN Notices, 21(11):406\u2013416, November 1986.","journal-title":"Proceedings OOPSLA'86. SIGPLAN Notices"},{"issue":"12","key":"2_CR20","doi-asserted-by":"publisher","first-page":"118","DOI":"10.1145\/38807.38818","volume":"22","author":"W. Kim","year":"1987","unstructured":"Won Kim, Jay Banerjee, Hong-Tai Chou, Jorge F. Garza, and Darrel Woelk. Composite object support in an object-oriented database system. Proceedings OOPSLA'87. SIGPLAN Notices, 22(12):118\u2013125, December 1987.","journal-title":"Proceedings OOPSLA'87. SIGPLAN Notices"},{"key":"2_CR21","doi-asserted-by":"crossref","unstructured":"Bent Bruun Kristensen, Ole Lehrmann Madsen, Birger Moller-Pedersen, and Kristen Nygaard. The BETA programming language. In P. Wegner and B. Shriver, editors, Research Directions in Object-Oriented Programming, pages 7\u201348. MIT Press, 1987.","DOI":"10.7146\/dpb.v16i229.7578"},{"key":"2_CR22","doi-asserted-by":"crossref","unstructured":"B. W. Lampson, J. J. Horning, R. L. London, J. G. Mitchell, and G. J. Popek. Report on the programming language EUCLID. SIGPLAN Notices, 12(2), 1977.","DOI":"10.1145\/954666.971189"},{"key":"2_CR23","unstructured":"B. H. Liskov and J. Guttag. Abstraction and Specification in Program Development. The MIT Press, 1986."},{"key":"2_CR24","doi-asserted-by":"crossref","unstructured":"J. M. Lucassen and D. K. Gifford. Polymorphic effect systems. In Proceedings 15th ACM Symposium on Principles of Programming Languages, pages 47\u201357, January 1988.","DOI":"10.1145\/73560.73564"},{"issue":"12","key":"2_CR25","doi-asserted-by":"publisher","first-page":"70","DOI":"10.1145\/988164.988172","volume":"17","author":"B. J. MacLennan","year":"1982","unstructured":"B. J. MacLennan. Values and objects in programming languages. SIGPLAN Notices, 17(12):70\u201379, December 1982.","journal-title":"SIGPLAN Notices"},{"key":"2_CR26","unstructured":"Ole Lehrmann Madsen, Birger Moller-Pedersen, and Kristen Nygaard. Object-Oriented Programming in the BETA Programming Language. Addison-Wesley, 1993."},{"key":"2_CR27","unstructured":"Bertrand Meyer. Eiffel: The Language. Prentice Hall, 1992."},{"key":"2_CR28","doi-asserted-by":"crossref","unstructured":"Naftaly Minsky. Towards alias-free pointers. In Proceedings ECOOP'96, LNCS 1098, pages 189\u2013209. Springer-Verlag, 1996.","DOI":"10.1007\/BFb0053062"},{"key":"2_CR29","doi-asserted-by":"crossref","unstructured":"J. C. Reynolds. Syntactic control of interference. In Proceedings 5th ACM Symposium on Principles of Programming Languages, pages 39\u201346, January 1978.","DOI":"10.1145\/512760.512766"},{"key":"2_CR30","doi-asserted-by":"crossref","unstructured":"M. Sagiv, T. Reps, and R. Wilhelm. Solving shape-analysis problems in languages with destructive updating. In Proceedings 23rd ACM Symposium on Principles of Programming Languages, pages 16\u201331, January 1996.","DOI":"10.1145\/237721.237725"},{"key":"2_CR31","unstructured":"B. Stroustrup. The C++ programming language. Addison-Wesley, 1986."},{"issue":"12","key":"2_CR32","doi-asserted-by":"publisher","first-page":"168","DOI":"10.1145\/38807.38823","volume":"22","author":"P. Wegner","year":"1987","unstructured":"Peter Wegner. Dimensions of object-based language design. Proceedings OOPSLA'87. SIGPLAN Notices, 22(12):168\u2013182, December 1987.","journal-title":"Proceedings OOPSLA'87. SIGPLAN Notices"},{"key":"2_CR33","doi-asserted-by":"publisher","first-page":"35","DOI":"10.1007\/BF00264291","volume":"1","author":"N. Wirth","year":"1971","unstructured":"N. Wirth. The programming language Pascal. Acta Informatica, 1:35\u201363, 1971.","journal-title":"Acta Informatica"}],"container-title":["Lecture Notes in Computer Science","ECOOP'97 \u2014 Object-Oriented Programming"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/BFb0053373","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,1,9]],"date-time":"2025-01-09T07:01:48Z","timestamp":1736406108000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/BFb0053373"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[1997]]},"ISBN":["9783540630890","9783540691273"],"references-count":33,"URL":"https:\/\/doi.org\/10.1007\/bfb0053373","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[1997]]},"assertion":[{"value":"23 May 2006","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}}]}}