{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,1,21]],"date-time":"2025-01-21T20:10:02Z","timestamp":1737490202716,"version":"3.33.0"},"publisher-location":"Berlin, Heidelberg","reference-count":42,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"type":"print","value":"9783540661566"},{"type":"electronic","value":"9783540487432"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[1999]]},"DOI":"10.1007\/3-540-48743-3_2","type":"book-chapter","created":{"date-parts":[[2007,10,20]],"date-time":"2007-10-20T14:39:50Z","timestamp":1192891190000},"page":"18-42","source":"Crossref","is-referenced-by-count":12,"title":["Synthesizing Objects"],"prefix":"10.1007","author":[{"given":"Krzysztof","family":"Czarnecki","sequence":"first","affiliation":[]},{"given":"Ulrich W.","family":"Eisenecker","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[1999,11,19]]},"reference":[{"key":"2_CR1","doi-asserted-by":"crossref","unstructured":"M. Aksit and S. Matsuoka, (Eds.). Proceedings of 11th European Conference on Object-Oriented Programming (ECOOP\u2019 97), Springer-Verlag 1997","DOI":"10.1007\/BFb0053371"},{"issue":"4","key":"2_CR2","doi-asserted-by":"publisher","first-page":"355","DOI":"10.1145\/136586.136587","volume":"1","author":"D. Batory","year":"1992","unstructured":"D. Batory and S. O\u2019Malley. The Design and Implementation of Hierarchical Software Systems with Reusable Components. In ACM Transactions on Software Engineering and Methodology, vol. 1, no. 4, October 1992, pp. 355\u2013398","journal-title":"ACM Transactions on Software Engineering and Methodology"},{"key":"2_CR3","unstructured":"K. Czarnecki and U. Eisenecker. Template-Metaprogramming, http:\/\/home.tonline.de\/home\/Ulrich.Eisenecker\/meta.htm"},{"key":"2_CR4","unstructured":"K. Czarnecki and U. Eisenecker. Generative Programming: Methods, Techniques, and Applications. To appear, Addison-Wesley, 1999"},{"key":"2_CR5","unstructured":"K. Czarnecki, U. Eisenecker, R. Gl\u00fcck, D. Vandevoorde, and T. Veldhuizen. Generative Programming and Active Libraries. Submitted for publication, 1998"},{"issue":"10","key":"2_CR6","first-page":"285","volume":"30","author":"S. Chiba","year":"1995","unstructured":"S. Chiba. A Metaobject Protocol for C++. In Proceedings of the 10th Annual Conference on Object-Oriented Programming, Systems, Languages and Applications (OOPSLA\u201995), ACM SIGPLAN Notices, vol. 30, no. 10, 1995, pp. 285\u2013299, http:\/\/www.softlab.is.tsukuba.ac.jp\/~chiba\/openc++.html","journal-title":"Proceedings of the 10th Annual Conference on Object-Oriented Programming, Systems, Languages and Applications (OOPSLA\u201995), ACM SIGPLAN Notices"},{"key":"2_CR7","doi-asserted-by":"crossref","unstructured":"S. Cohen and L. M. Northrop. Object-Oriented Technology and Domain Analysis. In J. Poulin, (Eds.). Proceedings of the Fifth International Conference on Software Reuse (Victoria, Canada, June 1998). IEEE Computer Society Press, 1998 [DP98], pp. 86\u201393","DOI":"10.1109\/ICSR.1998.685733"},{"key":"2_CR8","volume-title":"Ph.D. thesis","author":"K. Czarnecki","year":"1998","unstructured":"K. Czarnecki. Generative Programming: Principles and Techniques of Software Engineering Based on Automated Configuration and Fragment-Based Component Models. Ph.D. thesis, Technische Universit\u00e4t Ilmenau, Germany, 1998, see http:\/\/nero.prakinf.tu-ilmenau.de\/~czarn\/"},{"key":"2_CR9","unstructured":"P. Devanbu and J. Poulin, (Eds.). Proceedings of the Fifth International Conference on Software Reuse (Victoria, Canada, June 1998). IEEE Computer Society Press, 1998"},{"key":"2_CR10","unstructured":"U. Eisenecker. Generatives Programmieren mit C++. In OBJEKTspektrum, No. 6, November\/December 1996, pp. 79\u201384"},{"key":"2_CR11","doi-asserted-by":"crossref","unstructured":"U. Eisenecker. Generative Programming (GP) with C++. In Proceedings of Modular Programming Languages (JMLC\u201997, Linz, Austria, March 1997), H. M\u00f6ssenb\u00f6ck, (Ed.), Springer-Verlag, Heidelberg 1997, pp. 351\u2013365","DOI":"10.1007\/3-540-62599-2_51"},{"key":"2_CR12","unstructured":"D. R. Engler.Incorporating application semantics and control into compilation. In Proceedings USENIX Conference on Domain-Specific Languages (DSL\u201997), 1997"},{"key":"2_CR13","doi-asserted-by":"crossref","unstructured":"M. L. Griss, J. Favaro, and M. d\u2019Alessandro. Integrating Feature Modeling with the RSEB. In J. Poulin, (Eds.). Proceedings of the Fifth International Conference on Software Reuse (Victoria, Canada, June 1998). IEEE Computer Society Press, 1998 [DP98], pp. 76\u201385, see http:\/\/www.intecs.it","DOI":"10.1109\/ICSR.1998.685732"},{"key":"2_CR14","unstructured":"E. Gamma, R. Helm, R. Johnson, and J. Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, 1995"},{"key":"2_CR15","unstructured":"Homepage of the Generative Matrix Computation Library at http:\/\/nero.prakinf.tu-ilmenau.de\/~czarn\/gmcl\/"},{"key":"2_CR16","doi-asserted-by":"publisher","first-page":"2","DOI":"10.1109\/ICSR.1996.496108","volume-title":"Proceedings of the Fourth International Conference on Software Reuse","author":"J. A. Goguen","year":"1996","unstructured":"J. A. Goguen. Parameterized Programming and Software Architecture. In Proceedings of the Fourth International Conference on Software Reuse, April 23\u201326, Orlando, Florida. IEEE Computer Society Press, Los Alamitos, California, 1996, pp. 2\u201310"},{"key":"2_CR17","unstructured":"Y. Ishikawa, A. Hori, M. Sato, M. Matsuda, J. Nolte, H. Tezuka, H. Konaka, M. Maeda, and K. Kubota. Design and Implementation of Metalevel Architecture in C++ \u2014 MPC++ approach. In Proceedings of Reflection\u201996, 1996"},{"key":"2_CR18","unstructured":"I. Jacobson, M. Griss, and P. Jonsson. Software Reuse: Architecture, Process and Organization for Business Success. Addison Wesley Longman, May 1997"},{"key":"2_CR19","series-title":"Lect Notes Comput Sci","volume-title":"Proceedings of the 12th European Conference Object-Oriented Programming (ECOOP\u201998)","year":"1998","unstructured":"E. Jul, (Ed.). Proceedings of the 12th European Conference Object-Oriented Programming (ECOOP\u201998), LNCS 1445, Springer-Verlag, 1998"},{"key":"2_CR20","volume-title":"Technical Report, CMU\/SEI-90-TR-21","author":"K. Kang","year":"1990","unstructured":"K. Kang, S. Cohen, J. Hess, W. Nowak, and S. Peterson. Feature-Oriented Domain Analysis (FODA) Feasibility Study. Technical Report, CMU\/SEI-90-TR-21, Software Engineering Institute, Carnegie Mellon University, Pittsburgh, Pennsylvania, November 1990"},{"key":"2_CR21","doi-asserted-by":"crossref","unstructured":"G. Kiczales, J. Lamping, A. Mendhekar, C. Maeda, C. V. Lopes, J.-M. Loingtier, and J. Irwin. Aspect-Oriented Programming. In S. Matsuoka, (Eds.). Proceedings of 11th European Conference on Object-Oriented Programming (ECOOP\u2019 97), Springer-Verlag 1997 [AM97], pp. 220\u2013242","DOI":"10.1007\/BFb0053381"},{"key":"2_CR22","unstructured":"J. Knaupp. Algorithm Generators: A First Experience, see http:\/\/nero.prakinf.tuilmenau.de\/~czarn\/generate\/stja98\/knaupp.zip"},{"key":"2_CR23","doi-asserted-by":"crossref","unstructured":"M. Mezini. Dynamic Object Evolution Without Name Collisions. In S. Matsuoka, (Eds.). Proceedings of 11th European Conference on Object-Oriented Programming (ECOOP\u2019 97), Springer-Verlag 1997 [AM97], pp. 190\u2013219","DOI":"10.1007\/BFb0053380"},{"key":"2_CR24","doi-asserted-by":"crossref","unstructured":"M. Mezini and K. Lieberherr. Adaptive Plug-and-Play Components for Evolutionary Software Development. In Proceedings of the Conference on Object-Oriented Programming Languages and Applications (OOPSLA\u2019 98), 1998","DOI":"10.1145\/286936.286950"},{"key":"2_CR25","volume-title":"STL Tutorial and Reference Guide","author":"D. R. Musser","year":"1996","unstructured":"D. R. Musser and A. Saini. STL Tutorial and Reference Guide. Addison-Wesley, Reading, Massachusetts, 1996"},{"key":"2_CR26","unstructured":"N.C. Myers. Traits: a new and useful template technique. In C++ Report, June 1995, see http:\/\/www.cantrip.org\/traits.html"},{"key":"2_CR27","unstructured":"T. Neubert. Anwendung von generativen Programmiertechniken am Beispiel der Matrixalgebra. Diplomarbeit, Technische Universit\u00e4t Chemnitz, 1998, also see Homepage of the Generative Matrix Computation Library at http:\/\/nero.prakinf.tu-ilmenau.de\/~czarn\/gmcl\/[GMCL]"},{"key":"2_CR28","unstructured":"POOMA: Parallel Object-Oriented Methods and Applications. A framework for scientific computing applications on parallel computers. Available at http:\/\/www.acl.lanl.gov\/pooma"},{"key":"2_CR29","unstructured":"W. Pree. Design Patterns for Object-Oriented Software Development. Addison-Wesley, 1995"},{"key":"2_CR30","doi-asserted-by":"crossref","unstructured":"C. Prehofer. Feature-Oriented Programming: A Fresh Look at Objects. In S. Matsuoka, (Eds.). Proceedings of 11th European Conference on Object-Oriented Programming (ECOOP\u2019 97), Springer-Verlag 1997 [AM97], pp. 419\u2013443","DOI":"10.1007\/BFb0053389"},{"key":"2_CR31","unstructured":"T. Reenskaug with P. Wold and O.A. Lehne. Working with Objects: The OOram Software Engineering Method. Manning, 1996"},{"key":"2_CR32","series-title":"Lect Notes Comput Sci","doi-asserted-by":"crossref","first-page":"550","DOI":"10.1007\/BFb0054107","volume-title":"Proceedings of the 12th European Conference Object-Oriented Programming (ECOOP\u201998)","author":"Y. Smaragdakis","year":"1998","unstructured":"Y. Smaragdakis and D. Batory. Implementing Layered Designs with Mixin Layers. In [Jul98], pp. 550\u2013570"},{"key":"2_CR33","unstructured":"M. Simos, D. Creps, C. Klinger, L. Levine, and D. Allemang. Organization Domain Modeling (ODM) Guidebook, Version 2.0. Informal Technical Report for STARS, STARS-VC-A025\/001\/00, June 14, 1996, see http:\/\/direct.asset.com"},{"key":"2_CR34","unstructured":"J. Stichnoth and T. Gross. Code composition as an implementation language for compilers. In Proceedings USENIX Conference on Domain-Specific Languages (DSL\u201997), 1997"},{"key":"2_CR35","unstructured":"C. Simonyi. Intentional Programming \u2014 Innovation in the Legacy Age. Position paper presented at IFIP WG 2.1 meeting, June 4, 1996, see http:\/\/www.research.microsoft.com\/research\/ip\/"},{"key":"2_CR36","doi-asserted-by":"crossref","unstructured":"J. G. Siek and A. Lumsdaine. A Rational Approach to Portable High Performance: The Basic Linear Algebra Instruction Set (BLAIS) and the Fixed Algorithm Size Template (FAST) Library. In Proceedings of the ECOOP\u201998 Workshop on Parallel Object-Oriented Computing (POOSC\u201998), 1998, see http:\/\/www.lsc.nd.edu\/","DOI":"10.1007\/3-540-49255-0_153"},{"key":"2_CR37","unstructured":"B. Stroustrup. The Design and Evolution of C++. Addison-Wesley, 1994"},{"key":"2_CR38","unstructured":"E. Unruh. Prime number computation. ANSI X3J16-94-0075\/ISO WG21-462, 1994"},{"issue":"4","key":"2_CR39","first-page":"36","volume":"7","author":"T. Veldhuizen","year":"1995","unstructured":"T. Veldhuizen. Using C++ template metaprograms. In C++ Report, vol. 7, no. 4, May 1995, pp. 36\u201343, see http:\/\/monet.uwaterloo.ca\/blitz\/","journal-title":"C++ Report"},{"issue":"5","key":"2_CR40","first-page":"26","volume":"7","author":"T. Veldhuizen","year":"1995","unstructured":"T. Veldhuizen. Expression Templates. In C++ Report, vol. 7no. 5, June 1995, pp. 26\u201331, see http:\/\/monet.uwaterloo.ca\/blitz\/","journal-title":"C++ Report"},{"key":"2_CR41","unstructured":"T. Veldhuizen. Scientific Computing: C++ versus Fortran. In Dr. Dobb\u2019s Journal, November 1997, pp. 34\u201341, see http:\/\/monet.uwaterloo.ca\/blitz\/"},{"key":"2_CR42","doi-asserted-by":"crossref","unstructured":"M. VanHilst and D. Notkin. Using Role Components to Implement Collaboration-Based Designs. In Proceedings of the 1996 ACM Conference on Object-Oriented Programming Systems, Languages and Applications (OOPSLA\u201996), 1996, pp. 359\u2013369","DOI":"10.1145\/236337.236375"}],"container-title":["Lecture Notes in Computer Science","ECOOP\u2019 99 \u2014 Object-Oriented Programming"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/3-540-48743-3_2","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,1,21]],"date-time":"2025-01-21T19:56:55Z","timestamp":1737489415000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/3-540-48743-3_2"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[1999]]},"ISBN":["9783540661566","9783540487432"],"references-count":42,"URL":"https:\/\/doi.org\/10.1007\/3-540-48743-3_2","relation":{},"ISSN":["0302-9743"],"issn-type":[{"type":"print","value":"0302-9743"}],"subject":[],"published":{"date-parts":[[1999]]}}}