{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,12,16]],"date-time":"2025-12-16T12:17:36Z","timestamp":1765887456767},"reference-count":51,"publisher":"Springer Science and Business Media LLC","issue":"2","license":[{"start":{"date-parts":[[2013,1,11]],"date-time":"2013-01-11T00:00:00Z","timestamp":1357862400000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Acta Informatica"],"published-print":{"date-parts":[[2013,3]]},"DOI":"10.1007\/s00236-012-0173-z","type":"journal-article","created":{"date-parts":[[2013,1,10]],"date-time":"2013-01-10T10:54:58Z","timestamp":1357815298000},"page":"77-122","source":"Crossref","is-referenced-by-count":38,"title":["Compositional type checking of delta-oriented software product lines"],"prefix":"10.1007","volume":"50","author":[{"given":"Lorenzo","family":"Bettini","sequence":"first","affiliation":[]},{"given":"Ferruccio","family":"Damiani","sequence":"additional","affiliation":[]},{"given":"Ina","family":"Schaefer","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2013,1,11]]},"reference":[{"key":"173_CR1","doi-asserted-by":"crossref","unstructured":"Ancona, D., Damiani, F., Drossopoulou, S., Zucca, E.: Polymorphic bytecode: compositional compilation for java-like languages. In: Proceedings of the 32nd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL \u201905, pp. 26\u201337. ACM, New York (2005). doi: 10.1145\/1040305.1040308","DOI":"10.1145\/1040305.1040308"},{"issue":"3","key":"173_CR2","doi-asserted-by":"crossref","first-page":"251","DOI":"10.1007\/s10515-010-0066-8","volume":"17","author":"S Apel","year":"2010","unstructured":"Apel, S., K\u00e4stner, C., Gr\u00f6sslinger, A., Lengauer, C.: Type safety for feature-oriented product lines. Autom. Softw. Eng. 17(3), 251\u2013300 (2010). doi: 10.1007\/s10515-010-0066-8","journal-title":"Autom. Softw. Eng."},{"key":"173_CR3","doi-asserted-by":"crossref","unstructured":"Apel, S., K\u00e4stner, C., Lengauer, C.: Feature featherweight java: a calculus for feature-oriented programming and stepwise refinement. In: Proceedings of the 7th International Conference on Generative Programming and Component Engineering, GPCE \u201908, pp. 101\u2013112. ACM, New York (2008). doi: 10.1145\/1449913.1449931","DOI":"10.1145\/1449913.1449931"},{"key":"173_CR4","first-page":"135","volume":"3880","author":"I Aracic","year":"2006","unstructured":"Aracic, I., Gasiunas, V., Mezini, M., Ostermann, K.: An overview of caesarJ. Trans. AOSD I, LNCS 3880, 135\u2013173 (2006). doi: 10.1007\/11687061_5","journal-title":"Trans. AOSD I, LNCS"},{"key":"173_CR5","doi-asserted-by":"crossref","unstructured":"Batory, D.: Feature models, grammars, and propositional formulas. In: Obbink, H., Pohl, K. (eds.) Software Product Lines (SPLC 2005), Lecture Notes in Computer Science, vol. 3714, pp. 7\u201320. Springer (2005). doi: 10.1007\/11554844_3","DOI":"10.1007\/11554844_3"},{"key":"173_CR6","doi-asserted-by":"crossref","first-page":"355","DOI":"10.1109\/TSE.2004.23","volume":"30","author":"D Batory","year":"2004","unstructured":"Batory, D., Sarvela, J.N., Rauschmayer, A.: Scaling step-wise refinement. IEEE Trans. Softw. Eng. 30, 355\u2013371 (2004). doi: 10.1109\/TSE.2004.23","journal-title":"IEEE Trans. Softw. Eng."},{"key":"173_CR7","doi-asserted-by":"crossref","unstructured":"Bettini, L., Damiani, F., Schaefer, I.: Implementing software product lines using traits. In: Proceedings of the 2010 ACM Symposium on Applied Computing, SAC \u201910, pp. 2096\u20132102. ACM, New York (2010). doi: 10.1145\/1774088.1774530","DOI":"10.1145\/1774088.1774530"},{"key":"173_CR8","doi-asserted-by":"crossref","unstructured":"Bettini, L., Damiani, F., Schaefer, I., Strocco, F.: TraitRecordJ: a programming language with traits and records. Sci. Comput. Program. (2011). doi: 10.1016\/j.scico.2011.06.007","DOI":"10.1016\/j.scico.2011.06.007"},{"key":"173_CR9","unstructured":"Bono, V., Damiani, F., Giachino, E.: Separating type, behavior, and State to achieve very fine-grained reuse. In: Electronic Proceedings of FTfJP (2007)"},{"key":"173_CR10","doi-asserted-by":"crossref","unstructured":"Bono, V., Damiani, F., Giachino, E.: On Traits and Types in a Java-like Setting. In: Ausiello, G., Karhumki, J., Mauri, G., Ong, L. (eds.) Fifth IFIP international conference on Theoretical Computer Science\u2014Tcs 2008, IFIP International Federation for Information Processing, vol. 273, pp. 367\u2013382. Springer (2008) doi: 10.1007\/978-0-387-09680-3_25","DOI":"10.1007\/978-0-387-09680-3_25"},{"key":"173_CR11","doi-asserted-by":"crossref","unstructured":"Bracha, G., Cook, W.: Mixin-based inheritance. In: Proceedings of the European Conference on Object-Oriented Programming on Object-Oriented Programming Systems, Languages, and Applications, OOPSLA\/ECOOP \u201990, pp. 303\u2013311. ACM, New York (1990). doi: 10.1145\/97945.97982","DOI":"10.1145\/97945.97982"},{"key":"173_CR12","volume-title":"Software Product Lines: Practices and Patterns","author":"P Clements","year":"2001","unstructured":"Clements, P., Northrop, L.: Software Product Lines: Practices and Patterns. Addison Wesley Longman, Reading (2001)"},{"issue":"3","key":"173_CR13","doi-asserted-by":"crossref","first-page":"321","DOI":"10.1016\/j.scico.2006.02.009","volume":"63","author":"C Clifton","year":"2006","unstructured":"Clifton, C., Leavens, G.T.: MiniMAO $$_1$$ : investigating the semantics of proceed. Sci. Comput. Program. 63(3), 321\u2013374 (2006). doi: 10.1016\/j.scico.2006.02.009","journal-title":"Sci. Comput. Program."},{"key":"173_CR14","volume-title":"Generative Programming: Methods, Tools, and Applications","author":"K Czarnecki","year":"2000","unstructured":"Czarnecki, K., Eisenecker, U.W.: Generative Programming: Methods, Tools, and Applications. Addison-Wesley, Reading (2000)"},{"key":"173_CR15","doi-asserted-by":"crossref","unstructured":"Damiani, F., Padovani, L., Schaefer, I.: A formal foundation for dynamic delta-oriented software product lines. In: Proceedings of the 11th International Conference on Generative Programming and Component Engineering, GPCE \u201912, pp. 1\u201310. ACM, New York (2012). doi: 10.1145\/2371401.2371403","DOI":"10.1145\/2371401.2371403"},{"key":"173_CR16","doi-asserted-by":"crossref","unstructured":"Damiani, F., Schaefer, I.: Dynamic delta-oriented programming. In: Proceedings of the 15th International Software product Line Conference, vol. 2, SPLC \u201911, pp. 34:1\u201334:8. ACM, New York (2011). doi: 10.1145\/2019136.2019175","DOI":"10.1145\/2019136.2019175"},{"key":"173_CR17","doi-asserted-by":"crossref","unstructured":"Damiani, F., Schaefer, I.: Family-based analysis of type safety for delta-oriented software product lines. In: Margaria, T., Steffen, B. (eds.) Leveraging Applications of Formal Methods, Verification and Validation. Technologies for Mastering Change, Lecture Notes in Computer Science, vol. 7609, pp. 193\u2013207. Springer (2012). doi: 10.1007\/978-3-642-34026-0_15","DOI":"10.1007\/978-3-642-34026-0_15"},{"key":"173_CR18","doi-asserted-by":"crossref","unstructured":"De Fraine, B., S\u00fcdholt, M., Jonckers, V.: Strongaspectj: flexible and safe pointcut\/advice bindings. In: Proceedings of the 7th International Conference on Aspect-Oriented Software Development, AOSD \u201908, pp. 60\u201371. ACM, New York (2008). doi: 10.1145\/1353482.1353491","DOI":"10.1145\/1353482.1353491"},{"key":"173_CR19","doi-asserted-by":"crossref","unstructured":"Delaware, B., Cook, W., Batory, D.: A machine-checked model of safe composition. In: Proceedings of the 2009 Workshop on Foundations of Aspect-Oriented Languages, FOAL \u201909, pp. 31\u201335. ACM, New York (2009). doi: 10.1145\/1509837.1509846","DOI":"10.1145\/1509837.1509846"},{"issue":"2","key":"173_CR20","doi-asserted-by":"crossref","first-page":"331","DOI":"10.1145\/1119479.1119483","volume":"28","author":"S Ducasse","year":"2006","unstructured":"Ducasse, S., Nierstrasz, O., Sch\u00e4rli, N., Wuyts, R., Black, A.: Traits: A mechanism for fine-grained reuse. ACM TOPLAS 28(2), 331\u2013388 (2006). doi: 10.1145\/1119479.1119483","journal-title":"ACM TOPLAS"},{"key":"173_CR21","unstructured":"Ernst, E.: gbeta - a language with virtual attributes, block structure, and propagating, dynamic inheritance. Ph.D. thesis, Department of Computer Science, University of \u00c5rhus, Denmark (1999). http:\/\/www.daimi.au.dk\/eernst\/gbeta"},{"key":"173_CR22","doi-asserted-by":"crossref","unstructured":"Ernst, E.: Propagating class and method combination. In: Guerraoui, R. (ed.) ECOOP 1999\u2014Object-Oriented Programming, Lecture Notes in Computer Science, vol. 1628, pp. 67\u201391. Springer (1999). doi: 10.1007\/3-540-48743-3_4","DOI":"10.1007\/3-540-48743-3_4"},{"key":"173_CR23","doi-asserted-by":"crossref","unstructured":"Ernst, E.: Higher-order hierarchies. In: Cardelli, L. (ed.) ECOOP 2003\u2014Object-Oriented Programming, Lecture Notes in Computer Science, vol. 2743, pp. 303\u2013328. Springer (2003). doi: 10.1007\/978-3-540-45070-2_14","DOI":"10.1007\/978-3-540-45070-2_14"},{"key":"173_CR24","unstructured":"Ernst, E.: The expression problem, Scandinavian style. In: MASPEGHI (2004). http:\/\/www.i3s.unice.fr\/maspeghi2004\/final-version\/e_ernst.pdf"},{"key":"173_CR25","doi-asserted-by":"crossref","unstructured":"Fraine, B., Ernst, E., Sdholt, M.: Essential AOP: the a calculus. In: D\u2019Hondt, T. (ed.) ECOOP 2010\u2014Object-Oriented Programming, Lecture Notes in Computer Science, vol. 6183, pp. 101\u2013125. Springer (2010). doi: 10.1007\/978-3-642-14107-2_6","DOI":"10.1007\/978-3-642-14107-2_6"},{"issue":"3","key":"173_CR26","doi-asserted-by":"crossref","first-page":"396","DOI":"10.1145\/503502.503505","volume":"23","author":"A Igarashi","year":"2001","unstructured":"Igarashi, A., Pierce, B., Wadler, P.: Featherweight Java: a minimal core calculus for Java and GJ. ACM TOPLAS 23(3), 396\u2013450 (2001). doi: 10.1145\/503502.503505","journal-title":"ACM TOPLAS"},{"key":"173_CR27","doi-asserted-by":"crossref","unstructured":"Johnsen, E., Kyas, M., Yu, I.: Dynamic classes: modular asynchronous evolution of distributed concurrent objects. In: Cavalcanti, A., Dams, D. (eds.) FM 2009: Formal Methods, Lecture Notes in Computer Science, vol. 5850, pp. 596\u2013611. Springer (2009). doi: 10.1007\/978-3-642-05089-3_38","DOI":"10.1007\/978-3-642-05089-3_38"},{"key":"173_CR28","doi-asserted-by":"crossref","unstructured":"Kang, K.C., Cohen, S.G., Hess, J.A., Novak, W.E., Peterson, A.S.: Feature-Oriented Domain Analysis (FODA) Feasibility Study. Technical report. Carnegie Mellon Software Engineering Institute (1990)","DOI":"10.21236\/ADA235785"},{"key":"173_CR29","doi-asserted-by":"crossref","unstructured":"K\u00e4stner, C., Apel, S., Batory, D.: A case study implementing features using aspectJ. In: Software Product Line Conference (SPLC 2007), pp. 223\u2013232. IEEE, Los Alamitos (2007). doi: 10.1109\/SPLINE.2007.12","DOI":"10.1109\/SPLINE.2007.12"},{"key":"173_CR30","doi-asserted-by":"crossref","unstructured":"K\u00e4stner, C., Apel, S., Kuhlemann, M.: Granularity in software product lines. In: Proceedings of the 30th International Conference on Software Engineering, ICSE \u201908, pp. 311\u2013320. ACM, New York (2008). doi: 10.1145\/1368088.1368131","DOI":"10.1145\/1368088.1368131"},{"key":"173_CR31","unstructured":"K\u00e4stner, C., Apel, S., ur Rahman, S.S., Rosenm\u00fcller, M., Batory, D., Saake, G.: On the impact of the optional feature problem: analysis and case studies. In: Proceedings of the 13th International Software Product Line Conference, SPLC \u201909, pp. 181\u2013190. Carnegie Mellon University, Pittsburgh (2009). doi: 10.1145\/1753235.1753261"},{"key":"173_CR32","doi-asserted-by":"crossref","unstructured":"Kiczales, G., Hilsdale, E., Hugunin, J., Kersten, M., Palm, J., Griswold, W.G.: An overview of aspectJ. In: ECOOP 2001\u2014Object-Oriented Programming, Lecture Notes in Computer Science, vol. 2072, pp. 327\u2013354. Springer (2001). doi: 10.1007\/3-540-45337-7_18","DOI":"10.1007\/3-540-45337-7_18"},{"key":"173_CR33","doi-asserted-by":"crossref","unstructured":"Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., Loingtier, J.M., Irwin, J.: Aspect-oriented programming. In: ECOOP 1997\u2014Object-Oriented Programming, Lecture Notes in Computer Science, vol. 1241, pp. 220\u2013242. Springer (1997). doi: 10.1007\/BFb0053381","DOI":"10.1007\/BFb0053381"},{"issue":"4","key":"173_CR34","doi-asserted-by":"crossref","first-page":"29","DOI":"10.1109\/MS.2002.1020284","volume":"19","author":"C Krueger","year":"2002","unstructured":"Krueger, C.: Eliminating the adoption barrier. IEEE Softw. 19(4), 29\u201331 (2002). doi: 10.1109\/MS.2002.1020284","journal-title":"IEEE Softw."},{"key":"173_CR35","doi-asserted-by":"crossref","unstructured":"Kuhlemann, M., Batory, D., K\u00e4stner, C.: Safe composition of non-monotonic features. In: Proceedings of the Eighth International Conference on Generative Programming and Component Engineering, GPCE \u201909, pp. 177\u2013186. ACM, New York (2009). doi: 10.1145\/1621607.1621634","DOI":"10.1145\/1621607.1621634"},{"key":"173_CR36","doi-asserted-by":"crossref","unstructured":"Lopez-Herrejon, R., Batory, D., Cook, W.: Evaluating support for features in advanced modularization technologies. In: Black, A.P. (ed.) ECOOP 2005\u2014Object-Oriented Programming, Lecture Notes in Computer Science, vol. 3586, pp. 169\u2013194. Springer (2005). doi: 10.1007\/11531142_8","DOI":"10.1007\/11531142_8"},{"key":"173_CR37","doi-asserted-by":"crossref","unstructured":"Madsen, O.L., M\u00f8ller-Pedersen, B.: Virtual classes: a powerful mechanism in object-oriented programming. In: Conference Proceedings on Object-Oriented Programming Systems, Languages and Applications, OOPSLA \u201989, pp. 397\u2013406. ACM, New York (1989). doi: 10.1145\/74877.74919","DOI":"10.1145\/74877.74919"},{"key":"173_CR38","unstructured":"Odersky, M.: The Scala Language Specification, version 2.4. Technical Report, Programming Methods Laboratory, EPFL (2007)"},{"key":"173_CR39","doi-asserted-by":"crossref","unstructured":"Ossher, H., Tarr, P.: Hyper\/J: multi-dimensional separation of concerns for Java. In: Proceedings of the 22nd International Conference on Software Engineering, ICSE \u201900, pp. 734\u2013737. ACM, New York (2000). doi: 10.1145\/337180.337618","DOI":"10.1145\/337180.337618"},{"key":"173_CR40","doi-asserted-by":"crossref","unstructured":"Ostermann, K.: Dynamically composable collaborations with delegation layers. In: Magnusson, B. (ed.) ECOOP 2002\u2014Object-Oriented Programming, Lecture Notes in Computer Science, vol. 2374, pp. 89\u2013110. Springer (2002). doi: 10.1007\/3-540-47993-7_4","DOI":"10.1007\/3-540-47993-7_4"},{"key":"173_CR41","doi-asserted-by":"crossref","unstructured":"Rosenm\u00fcller, M., Siegmund, N., Saake, G., Apel, S.: Code generation to support static and dynamic composition of software product lines. In: Proceedings of the 7th International Conference on Generative Programming and Component Engineering, GPCE \u201908, pp. 3\u201312. ACM, New York (2008). doi: 10.1145\/1449913.1449917","DOI":"10.1145\/1449913.1449917"},{"key":"173_CR42","doi-asserted-by":"crossref","unstructured":"Schaefer, I., Bettini, L., Bono, V., Damiani, F., Tanzarella, N.: Delta-oriented programming of software product lines. In: Bosch, J., Lee, J. (eds.) Software Product Lines: Going Beyond (SPLC 2010), Lecture Notes in Computer Science, vol. 6287, pp. 77\u201391. Springer (2010). doi: 10.1007\/978-3-642-15579-6_6","DOI":"10.1007\/978-3-642-15579-6_6"},{"key":"173_CR43","doi-asserted-by":"crossref","unstructured":"Schaefer, I., Bettini, L., Damiani, F.: Compositional type-checking for delta-oriented programming. In: Proceedings of the Tenth International Conference on Aspect-Oriented Software Development, AOSD \u201911, pp. 43\u201356. ACM, New York (2011). doi: 10.1145\/1960275.1960283","DOI":"10.1145\/1960275.1960283"},{"key":"173_CR44","doi-asserted-by":"crossref","unstructured":"Schaefer, I., Damiani, F.: Pure delta-oriented programming. In: Proceedings of the 2nd International Workshop on Feature-Oriented Software Development, FOSD \u201910, pp. 49\u201356. ACM, New York (2010). doi: 10.1145\/1868688.1868696","DOI":"10.1145\/1868688.1868696"},{"issue":"2","key":"173_CR45","doi-asserted-by":"crossref","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 Trans. Softw. Eng. Methodol. 11(2), 215\u2013255 (2002). doi: 10.1145\/505145.505148","journal-title":"ACM Trans. Softw. Eng. Methodol."},{"key":"173_CR46","doi-asserted-by":"crossref","unstructured":"Strni\u0161a, R., Sewell, P., Parkinson, M.: The java module system: core design and semantic definition. In: Proceedings of the 22nd Annual ACM SIGPLAN Conference on Object-Oriented Programming Systems and Applications, OOPSLA \u201907, pp. 499\u2013514. ACM, New York (2007). doi: 10.1145\/1297027.1297064","DOI":"10.1145\/1297027.1297064"},{"key":"173_CR47","doi-asserted-by":"crossref","unstructured":"Tarr, P., Ossher, H., Harrison, W., Sutton Jr., S.M.: N degrees of separation: multi-dimensional separation of concerns. In: Proceedings of the 21st International Conference on Software Engineering, ICSE \u201999, pp. 107\u2013119. ACM, New York (1999). doi: 10.1145\/302405.302457","DOI":"10.1145\/302405.302457"},{"key":"173_CR48","doi-asserted-by":"crossref","unstructured":"Thaker, S., Batory, D., Kitchin, D., Cook, W.: Safe composition of product lines. In: Proceedings of the 6th International Conference on Generative Programming and Component Engineering, GPCE \u201907, pp. 95\u2013104. ACM, New York (2007). doi: 10.1145\/1289971.1289989","DOI":"10.1145\/1289971.1289989"},{"key":"173_CR49","unstructured":"Th\u00fcm, T., Apel, S., K\u00e4stner, C., Kuhlemann, M., Schaefer, I., Saake, G.: Analysis Strategies for Software Product Lines. Technical Report FIN-004-2012, School of Computer Science, University of Magdeburg, Germany (2012). http:\/\/www.cs.uni-magdeburg.de\/inf_media\/downloads\/forschung\/technical_reports_und_preprints\/2012\/04_2012.pdf"},{"key":"173_CR50","doi-asserted-by":"crossref","unstructured":"Torgersen, M.: The expression problem revisited. In: Odersky, M. (ed.) ECOOP 2004\u2014Object-Oriented Programming, Lecture Notes in Computer Science, vol. 3086, pp. 123\u2013146. Springer (2004). doi: 10.1007\/978-3-540-24851-4_6","DOI":"10.1007\/978-3-540-24851-4_6"},{"key":"173_CR51","unstructured":"Zenger, M., Odersky, M.: Independently extensible solutions to the expression problem. In: FOOL (2005)"}],"container-title":["Acta Informatica"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s00236-012-0173-z.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/article\/10.1007\/s00236-012-0173-z\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s00236-012-0173-z","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,7,8]],"date-time":"2019-07-08T00:52:43Z","timestamp":1562547163000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/s00236-012-0173-z"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2013,1,11]]},"references-count":51,"journal-issue":{"issue":"2","published-print":{"date-parts":[[2013,3]]}},"alternative-id":["173"],"URL":"https:\/\/doi.org\/10.1007\/s00236-012-0173-z","relation":{},"ISSN":["0001-5903","1432-0525"],"issn-type":[{"value":"0001-5903","type":"print"},{"value":"1432-0525","type":"electronic"}],"subject":[],"published":{"date-parts":[[2013,1,11]]}}}