{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,2,12]],"date-time":"2025-02-12T23:10:12Z","timestamp":1739401812020,"version":"3.37.0"},"publisher-location":"Berlin, Heidelberg","reference-count":22,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"type":"print","value":"9783642052002"},{"type":"electronic","value":"9783642052019"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2009]]},"DOI":"10.1007\/978-3-642-05201-9_3","type":"book-chapter","created":{"date-parts":[[2009,10,26]],"date-time":"2009-10-26T13:07:32Z","timestamp":1256562452000},"page":"23-36","source":"Crossref","is-referenced-by-count":2,"title":["Scala Roles: Reusable Object Collaborations in a Library"],"prefix":"10.1007","author":[{"given":"Michael","family":"Pradel","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Martin","family":"Odersky","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","reference":[{"key":"3_CR1","unstructured":"Reenskaug, T., Wold, P., Lehne, O.A.: Working with Objects, The OOram Software Engineering Method. Manning (1996)"},{"key":"3_CR2","unstructured":"Riehle, D.: Framework Design: A Role Modeling Approach. PhD thesis, ETH Z\u00fcrich (2000)"},{"issue":"1","key":"3_CR3","doi-asserted-by":"publisher","first-page":"83","DOI":"10.1016\/S0169-023X(00)00023-9","volume":"35","author":"F. Steimann","year":"2000","unstructured":"Steimann, F.: On the representation of roles in object-oriented and conceptual modelling. Data & Knowledge Engineering\u00a035(1), 83\u2013106 (2000)","journal-title":"Data & Knowledge Engineering"},{"key":"3_CR4","unstructured":"Object Management Group OMG: OMG Unified Modeling Language (OMG UML), Superstructure, v2.1.2 (November 2007)"},{"key":"3_CR5","first-page":"15","volume-title":"Pattern Languages of Program Design 4","author":"D. B\u00e4umer","year":"2000","unstructured":"B\u00e4umer, D., Riehle, D., Siberski, W., Wulf, M.: Role Object. In: Pattern Languages of Program Design 4, pp. 15\u201332. Addison-Wesley, Reading (2000)"},{"issue":"2","key":"3_CR6","doi-asserted-by":"crossref","first-page":"181","DOI":"10.3233\/APO-2007-033","volume":"2","author":"S. Herrmann","year":"2007","unstructured":"Herrmann, S.: A precise model for contextual roles: The programming language ObjectTeams\/Java. Applied Ontology\u00a02(2), 181\u2013207 (2007)","journal-title":"Applied Ontology"},{"issue":"2","key":"3_CR7","doi-asserted-by":"publisher","first-page":"215","DOI":"10.1145\/505145.505148","volume":"11","author":"Y. Smaragdakis","year":"2002","unstructured":"Smaragdakis, Y., Batory, D.: Mixin layers: An object-oriented implementation technique for refinements and collaboration-based designs. ACM Transactions on Software Engineering and Methodology (TOSEM)\u00a011(2), 215\u2013255 (2002)","journal-title":"ACM Transactions on Software Engineering and Methodology (TOSEM)"},{"key":"3_CR8","unstructured":"Odersky, M.: Scala Language Specification, Version 2.7 (May 2008)"},{"issue":"3","key":"3_CR9","doi-asserted-by":"publisher","first-page":"249","DOI":"10.1016\/0169-023X(92)90025-7","volume":"8","author":"N. Guarino","year":"1992","unstructured":"Guarino, N.: Concepts, attributes and arbitrary relations: Some linguistic and ontological criteria for structuring knowledge bases. Data & Knowledge Engineering\u00a08(3), 249\u2013261 (1992)","journal-title":"Data & Knowledge Engineering"},{"issue":"3","key":"3_CR10","doi-asserted-by":"publisher","first-page":"143","DOI":"10.1002\/(SICI)1096-9942(1996)2:3<143::AID-TAPO2>3.0.CO;2-X","volume":"2","author":"B.B. Kristensen","year":"1996","unstructured":"Kristensen, B.B., \u00d8sterbye, K.: Roles: Conceptual abstraction theory and practical language issues. Theory and Practice of Object Systems\u00a02(3), 143\u2013160 (1996)","journal-title":"Theory and Practice of Object Systems"},{"key":"3_CR11","volume-title":"Design Patterns: Elements of Reusable Object-Oriented Software","author":"E. Gamma","year":"1995","unstructured":"Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading (1995)"},{"key":"3_CR12","unstructured":"Harrison, W.: Homepage on subject-oriented programming and design patterns (1997), http:\/\/www.research.ibm.com\/sop\/sopcpats.htm"},{"key":"3_CR13","unstructured":"Odersky, M., Spoon, L., Venners, B.: Programming in Scala, A comprehensive step-by-step guide. Artima (2008)"},{"key":"3_CR14","first-page":"218","volume-title":"Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA 1997)","author":"D. Riehle","year":"1997","unstructured":"Riehle, D.: Composite design patterns. In: Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA 1997), pp. 218\u2013228. ACM, New York (1997)"},{"key":"3_CR15","unstructured":"Herrmann, S., Hundt, C., Mehner, K.: Translation polymorphism in Object Teams. Technical Report 2004\/05, TU Berlin (2004)"},{"key":"3_CR16","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"220","DOI":"10.1007\/BFb0053381","volume-title":"ECOOP \u201997 - Object-Oriented Programming","author":"G. Kiczales","year":"1997","unstructured":"Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C.V., Loingtier, J.M., Irwin, J.: Aspect-oriented programming. In: Aksit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol.\u00a01241, pp. 220\u2013242. Springer, Heidelberg (1997)"},{"issue":"10","key":"3_CR17","doi-asserted-by":"publisher","first-page":"353","DOI":"10.1145\/320385.320423","volume":"34","author":"E.A. Kendall","year":"1999","unstructured":"Kendall, E.A.: Role model designs and implementations with aspect-oriented programming. SIGPLAN Notices\u00a034(10), 353\u2013369 (1999)","journal-title":"SIGPLAN Notices"},{"issue":"11","key":"3_CR18","doi-asserted-by":"publisher","first-page":"161","DOI":"10.1145\/583854.582436","volume":"37","author":"J. Hannemann","year":"2002","unstructured":"Hannemann, J., Kiczales, G.: Design pattern implementation in Java and AspectJ. SIGPLAN Notices\u00a037(11), 161\u2013173 (2002)","journal-title":"SIGPLAN Notices"},{"key":"3_CR19","doi-asserted-by":"crossref","unstructured":"Rumbaugh, J.E.: Relations as semantic constructs in an object-oriented language. In: Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA 1987), pp. 466\u2013481 (1987)","DOI":"10.1145\/38765.38850"},{"key":"3_CR20","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"crossref","first-page":"262","DOI":"10.1007\/11531142_12","volume-title":"ECOOP 2005 - Object-Oriented Programming","author":"G.M. Bierman","year":"2005","unstructured":"Bierman, G.M., Wren, A.: First-class relationships in an object-oriented language. In: Black, A.P. (ed.) ECOOP 2005. LNCS, vol.\u00a03586, pp. 262\u2013286. Springer, Heidelberg (2005)"},{"key":"3_CR21","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"323","DOI":"10.1007\/978-3-540-73589-2_16","volume-title":"ECOOP 2007 \u2013 Object-Oriented Programming","author":"S. Balzer","year":"2007","unstructured":"Balzer, S., Gross, T.R., Eugster, P.: A relational model of object collaborations and its use in reasoning about relationships. In: Ernst, E. (ed.) ECOOP 2007. LNCS, vol.\u00a04609, pp. 323\u2013346. Springer, Heidelberg (2007)"},{"key":"3_CR22","unstructured":"Pradel, M.: Explicit relations with roles - a library approach. In: Workshop on Relationships and Associations in Object-Oriented Languages (RAOOL) at OOPSLA 2008 (2008)"}],"container-title":["Communications in Computer and Information Science","Software and Data Technologies"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-642-05201-9_3.pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,2,12]],"date-time":"2025-02-12T22:41:08Z","timestamp":1739400068000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-642-05201-9_3"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2009]]},"ISBN":["9783642052002","9783642052019"],"references-count":22,"URL":"https:\/\/doi.org\/10.1007\/978-3-642-05201-9_3","relation":{},"ISSN":["1865-0929","1865-0937"],"issn-type":[{"type":"print","value":"1865-0929"},{"type":"electronic","value":"1865-0937"}],"subject":[],"published":{"date-parts":[[2009]]}}}