{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,4,9]],"date-time":"2025-04-09T04:14:30Z","timestamp":1744172070723,"version":"3.40.3"},"publisher-location":"Berlin, Heidelberg","reference-count":18,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"type":"print","value":"9783642331756"},{"type":"electronic","value":"9783642331763"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2012]]},"DOI":"10.1007\/978-3-642-33176-3_1","type":"book-chapter","created":{"date-parts":[[2012,9,12]],"date-time":"2012-09-12T08:53:23Z","timestamp":1347440003000},"page":"1-15","source":"Crossref","is-referenced-by-count":2,"title":["Implementing Reusable Exception Handling Patterns with Compile-Time Metaprogramming"],"prefix":"10.1007","author":[{"given":"Yannis","family":"Lilis","sequence":"first","affiliation":[]},{"given":"Anthony","family":"Savidis","sequence":"additional","affiliation":[]}],"member":"297","reference":[{"issue":"12","key":"1_CR1","doi-asserted-by":"publisher","first-page":"683","DOI":"10.1145\/361227.361230","volume":"18","author":"J.B. Goodenough","year":"1975","unstructured":"Goodenough, J.B.: Exception handling: Issues and a proposed notation. Communications of the ACM\u00a018(12), 683\u2013696 (1975)","journal-title":"Communications of the ACM"},{"key":"1_CR2","unstructured":"Doshi, G.: Best practices for exception handling (2003), http:\/\/www.onjava.com\/pub\/a\/onjava\/2003\/11\/19\/exceptions.html (accessed May 11, 2012)"},{"key":"1_CR3","unstructured":"McCune T.: Exception-handling antipatterns (2006), http:\/\/today.java.net\/pub\/a\/today\/2006\/04\/06\/exceptionhandling-antipatterns.html (accessed May 11, 2012)"},{"key":"1_CR4","unstructured":"Savidis, A.: Delta Language (2010), http:\/\/www.ics.forth.gr\/hci\/files\/plang\/Delta\/Delta.html (accessed May 11, 2012)"},{"key":"1_CR5","unstructured":"Bertrand, M.: Design by Contract. In: Mandrioli, D., Meyer, B. (eds.) Advances in Object-Oriented Software Engineering, pp. 1\u201350. Prentice Hall (1991)"},{"issue":"2","key":"1_CR6","doi-asserted-by":"publisher","first-page":"197","DOI":"10.1016\/S0164-1212(01)00062-0","volume":"59","author":"A. Garcia","year":"2001","unstructured":"Garcia, A., Rubira, C., Romanovsky, A., Xu, J.: A comparative study of exception handling mechanisms for building dependable object oriented software. Journal of Systems and Software\u00a059(2), 197\u2013222 (2001)","journal-title":"Journal of Systems and Software"},{"key":"1_CR7","unstructured":"Wirfs-Brock, R.: What it Really Takes to Handle Exceptions in Use Cases. In: Use 2002 Conference Proceedings, pp. 341\u2013370 (2002)"},{"key":"1_CR8","doi-asserted-by":"crossref","unstructured":"Newton, K.: The Exception Handling Application Block. From. The Definitive Guide to the Microsoft Enterprise Library, pp. 221\u2013257. Apress (2007)","DOI":"10.1007\/978-1-4302-0315-5_8"},{"issue":"2","key":"1_CR9","doi-asserted-by":"publisher","first-page":"162","DOI":"10.1109\/TSE.2010.1","volume":"36","author":"B.S. Lerner","year":"2010","unstructured":"Lerner, B.S., Christov, S., Osterweil, L.J., Bendraou, R., Kannengiesser, U., Wise, A.: Exception handling patterns for process modelling. IEEE Transactions on Software Engineering\u00a036(2), 162\u2013183 (2010)","journal-title":"IEEE Transactions on Software Engineering"},{"key":"1_CR10","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., Loingtier, J., Irwin, J.: Aspect-Oriented Programming. In: Aksit, M., Auletta, V. (eds.) ECOOP 1997. LNCS, vol.\u00a01241, pp. 220\u2013242. Springer, Heidelberg (1997)"},{"key":"1_CR11","unstructured":"Laddad, R.: AspectJ in Action. Manning\u00a0512 (2003)"},{"key":"1_CR12","doi-asserted-by":"crossref","unstructured":"Cole, L., Borba, P.: Deriving refactorings for Aspectj. In: Proc. of the 4th ACM Conference on Aspect-Oriented Software Development, Chicago, USA, pp. 123\u2013134 (March 2005)","DOI":"10.1145\/1052898.1052909"},{"key":"1_CR13","unstructured":"Laddad R. Aspect-Oriented refactoring, parts 1 and 2. The Server Side (2003), www.theserverside.com (accessed May 11, 2012)"},{"key":"1_CR14","doi-asserted-by":"crossref","unstructured":"Lippert, M., Lopes, C.V.: A study on exception detection and handling using aspect-oriented programming. In: Proc. of the 22nd ICSE, Limerick, Ireland, pp. 418\u2013427 (June 2000)","DOI":"10.1145\/337180.337229"},{"key":"1_CR15","doi-asserted-by":"crossref","unstructured":"Castor, F., Cacho, N., Figueiredo, E., Maranhao, R., Garcia, A., Rubira, C.: Exceptions and aspects: The devil is in the details. In: Proceedings of the 14th SIGSOFT FSE, Portland, U.S.A., pp. 152\u2013162 (November 2006)","DOI":"10.1145\/1181775.1181794"},{"key":"1_CR16","unstructured":"Castor, F., Garcia, A., Rubira, C.: Extracting Error Handling to Aspects: A Cookbook. In: Proceedings of the 23rd ICSM, Paris, France (2007)"},{"key":"1_CR17","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"176","DOI":"10.1007\/978-3-540-73589-2_9","volume-title":"ECOOP 2007 \u2013 Object-Oriented Programming","author":"P. Greenwood","year":"2007","unstructured":"Greenwood, P., Bartolomei, T., Figueiredo, E., Dosea, M., Garcia, A., Cacho, N., Sant\u2019Anna, C., Soares, S., Borba, P., Kulesza, U., Rashid, A.: On the Impact of Aspectual Decompositions on Design Stability: An Empirical Study. In: Bateni, M. (ed.) ECOOP 2007. LNCS, vol.\u00a04609, pp. 176\u2013200. Springer, Heidelberg (2007)"},{"key":"1_CR18","doi-asserted-by":"crossref","unstructured":"Coelho, R., Rashid, A., von Staa, A., Noble, J., Kulesza, U., Lucena., C.: A catalogue of bug patterns for exception handling in aspect-oriented programs. In: Proc. of the 15th Conference on Pattern Languages of Programs, New York, NY, USA, pp. 1\u201313 (2008)","DOI":"10.1145\/1753196.1753224"}],"container-title":["Lecture Notes in Computer Science","Software Engineering for Resilient Systems"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-642-33176-3_1.pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,4,8]],"date-time":"2025-04-08T09:29:12Z","timestamp":1744104552000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-642-33176-3_1"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2012]]},"ISBN":["9783642331756","9783642331763"],"references-count":18,"URL":"https:\/\/doi.org\/10.1007\/978-3-642-33176-3_1","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2012]]}}}