{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,9,29]],"date-time":"2026-09-29T21:19:45Z","timestamp":1790716785712,"version":"4.1.0"},"publisher-location":"Berlin, Heidelberg","reference-count":27,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"value":"9783642166112","type":"print"},{"value":"9783642166129","type":"electronic"}],"license":[{"start":{"date-parts":[[2010,1,1]],"date-time":"2010-01-01T00:00:00Z","timestamp":1262304000000},"content-version":"unspecified","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2010]]},"DOI":"10.1007\/978-3-642-16612-9_15","type":"book-chapter","created":{"date-parts":[[2010,11,17]],"date-time":"2010-11-17T11:45:14Z","timestamp":1289994314000},"page":"183-197","source":"Crossref","is-referenced-by-count":35,"title":["Clara: A Framework for Partially Evaluating Finite-State Runtime Monitors Ahead of Time"],"prefix":"10.1007","author":[{"given":"Eric","family":"Bodden","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Patrick","family":"Lam","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Laurie","family":"Hendren","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"297","reference":[{"issue":"1","key":"15_CR1","doi-asserted-by":"publisher","first-page":"157","DOI":"10.1109\/TSE.1986.6312929","volume":"12","author":"R.E. Strom","year":"1986","unstructured":"Strom, R.E., Yemini, S.: Typestate: A programming language concept for enhancing software reliability. IEEE Transactions on Software Engineering (TSE)\u00a012(1), 157\u2013171 (1986)","journal-title":"IEEE Transactions on Software Engineering (TSE)"},{"key":"15_CR2","unstructured":"Bodden, E.: Verifying finite-state properties of large-scale programs. PhD thesis, McGill University (June 2009) (available through ProQuest)"},{"key":"15_CR3","doi-asserted-by":"crossref","unstructured":"Allan, C., Avgustinov, P., Christensen, A.S., Hendren, L., Kuzins, S., Lhot\u00e1k, O., de Moor, O., Sereni, D., Sittampalam, G., Tibble, J.: Adding Trace Matching with Free Variables to AspectJ. In: OOPSLA, pp. 345\u2013364 (October 2005)","DOI":"10.1145\/1094811.1094839"},{"key":"15_CR4","unstructured":"Bodden, E.: J-LO - A tool for runtime-checking temporal assertions. Master\u2019s thesis, RWTH Aachen University (November 2005)"},{"key":"15_CR5","doi-asserted-by":"crossref","unstructured":"Chen, F., Ro\u015fu, G.: MOP: an efficient and generic runtime verification framework. In: OOPSLA, pp. 569\u2013588 (October 2007)","DOI":"10.1145\/1297027.1297069"},{"key":"15_CR6","doi-asserted-by":"crossref","unstructured":"Maoz, S., Harel, D.: From multi-modal scenarios to code: compiling LSCs into AspectJ. In: Symposium on the Foundations of Software Engineering (FSE), pp. 219\u2013230 (November 2006)","DOI":"10.1145\/1181775.1181802"},{"key":"15_CR7","doi-asserted-by":"crossref","unstructured":"Kr\u00fcger, I.H., Lee, G., Meisinger, M.: Automating software architecture exploration with M2Aspects. In: Workshop on Scenarios and state machines: models, algorithms, and tools (SCESM), pp. 51\u201358 (May 2006)","DOI":"10.1145\/1138953.1138964"},{"key":"15_CR8","doi-asserted-by":"crossref","unstructured":"Avgustinov, P., Tibble, J., de Moor, O.: Making trace monitors feasible. In: OOPSLA, pp. 589\u2013608 (October 2007)","DOI":"10.1145\/1297027.1297070"},{"key":"15_CR9","doi-asserted-by":"crossref","unstructured":"Chen, F., Meredith, P., Jin, D., Ro\u015fu, G.: Efficient formalism-independent monitoring of parametric properties. In: ASE, pp. 383\u2013394 (2009)","DOI":"10.1109\/ASE.2009.50"},{"key":"15_CR10","doi-asserted-by":"crossref","unstructured":"Dwyer, M.B., Diep, M., Elbaum, S.: Reducing the cost of path property monitoring through sampling. In: ASE, Washington, DC, USA, pp. 228\u2013237 (2008)","DOI":"10.1109\/ASE.2008.33"},{"key":"15_CR11","unstructured":"AspectJ team: The AspectJ home page (2003), http:\/\/eclipse.org\/aspectj\/"},{"key":"15_CR12","doi-asserted-by":"crossref","unstructured":"Avgustinov, P., Christensen, A.S., Hendren, L., Kuzins, S., Lhot\u00e1k, J., Lhot\u00e1k, O., de Moor, O., Sereni, D., Sittampalam, G., Tibble, J.: abc: An extensible AspectJ compiler. In: AOSD, pp. 87\u201398 (March 2005)","DOI":"10.1145\/1052898.1052906"},{"key":"15_CR13","doi-asserted-by":"crossref","unstructured":"Bodden, E., Hendren, L., Lam, P., Lhot\u00e1k, O., Naeem, N.A.: Collaborative runtime verification with tracematches. Journal of Logics and Computation (November 2008), doi:10.1093\/logcom\/exn077","DOI":"10.1093\/logcom\/exn077"},{"key":"15_CR14","doi-asserted-by":"crossref","unstructured":"Bodden, E., Chen, F., Ro\u015fu, G.: Dependent advice: A general approach to optimizing history-based aspects. In: AOSD, pp. 3\u201314 (March 2009)","DOI":"10.1145\/1509239.1509243"},{"key":"15_CR15","doi-asserted-by":"crossref","unstructured":"Hilsdale, E., Hugunin, J.: Advice weaving in AspectJ. In: AOSD, pp. 26\u201335 (March 2004)","DOI":"10.1145\/976270.976276"},{"key":"15_CR16","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"46","DOI":"10.1007\/3-540-36579-6_4","volume-title":"Compiler Construction","author":"H. Masuhara","year":"2003","unstructured":"Masuhara, H., Kiczales, G., Dutchyn, C.: A compilation and optimization model for aspect-oriented programs. In: Hedin, G. (ed.) CC 2003. LNCS, vol.\u00a02622, pp. 46\u201360. Springer, Heidelberg (2003)"},{"key":"15_CR17","series-title":"LNCS","first-page":"246","volume-title":"TACAS 2009","author":"F. Chen","year":"2009","unstructured":"Chen, F., Ro\u015fu, G.: Parametric trace slicing and monitoring. In: Kowalewski, S., Philippou, A. (eds.) TACAS 2009. LNCS, vol.\u00a05505, pp. 246\u2013261. Springer, Heidelberg (2009)"},{"key":"15_CR18","doi-asserted-by":"crossref","unstructured":"Sridharan, M., Bod\u00edk, R.: Refinement-based context-sensitive points-to analysis for Java. In: Conference on Programming Language Design and Implementation (PLDI), pp. 387\u2013400 (June 2006)","DOI":"10.1145\/1133981.1134027"},{"key":"15_CR19","doi-asserted-by":"publisher","first-page":"5","DOI":"10.1145\/1806799.1806805","volume-title":"ICSE 2010: Proceedings of the 32nd ACM\/IEEE International Conference on Software Engineering","author":"E. Bodden","year":"2010","unstructured":"Bodden, E.: Efficient hybrid typestate analysis by determining continuation-equivalent states. In: ICSE 2010: Proceedings of the 32nd ACM\/IEEE International Conference on Software Engineering, pp. 5\u201314. ACM, New York (2010)"},{"key":"15_CR20","doi-asserted-by":"crossref","unstructured":"Avgustinov, P., Christensen, A.S., Hendren, L., Kuzins, S., Lhot\u00e1k, J., Lhot\u00e1k, O., de Moor, O., Sereni, D., Sittampalam, G., Tibble, J.: Optimising AspectJ. In: Conference on Programming Language Design and Implementation (PLDI), pp. 117\u2013128 (June 2005)","DOI":"10.1145\/1065010.1065026"},{"key":"15_CR21","doi-asserted-by":"crossref","unstructured":"Blackburn, S.M., Garner, R., Hoffman, C., Khan, A.M., McKinley, K.S., Bentzur, R., Diwan, A., Feinberg, D., Frampton, D., Guyer, S.Z., Hirzel, M., Hosking, A., Jump, M., Lee, H., Moss, J.E.B., Phansalkar, A., Stefanovic, D., VanDrunen, T., von Dincklage, D., Wiedermann, B.: The DaCapo benchmarks: Java benchmarking development and analysis. In: OOPSLA, pp. 169\u2013190 (October 2006)","DOI":"10.1145\/1167473.1167488"},{"key":"15_CR22","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"465","DOI":"10.1007\/978-3-540-24851-4_21","volume-title":"ECOOP 2004 \u2013 Object-Oriented Programming","author":"R. DeLine","year":"2004","unstructured":"DeLine, R., F\u00e4hndrich, M.: Typestates for objects. In: Odersky, M. (ed.) ECOOP 2004. LNCS, vol.\u00a03086, pp. 465\u2013490. Springer, Heidelberg (2004)"},{"key":"15_CR23","doi-asserted-by":"crossref","unstructured":"Bierhoff, K., Aldrich, J.: Modular typestate checking of aliased objects. In: OOPSLA, pp. 301\u2013320 (October 2007)","DOI":"10.21236\/ADA465507"},{"key":"15_CR24","doi-asserted-by":"crossref","unstructured":"Fink, S., Yahav, E., Dor, N., Ramalingam, G., Geay, E.: Effective typestate verification in the presence of aliasing. In: International Symposium on Software Testing and Analysis (ISSTA), pp. 133\u2013144 (July 2006)","DOI":"10.1145\/1146238.1146254"},{"key":"15_CR25","doi-asserted-by":"crossref","unstructured":"Naeem, N.A., Lhot\u00e1k, O.: Typestate-like analysis of multiple interacting objects. In: OOPSLA, pp. 347\u2013366 (October 2008)","DOI":"10.1145\/1449764.1449792"},{"key":"15_CR26","doi-asserted-by":"crossref","unstructured":"Bodden, E., Lam, P., Hendren, L.: Finding Programming Errors Earlier by Evaluating Runtime Monitors Ahead-of-Time. In: Symposium on the Foundations of Software Engineering (FSE), pp. 36\u201347 (November 2008)","DOI":"10.1145\/1453101.1453109"},{"key":"15_CR27","doi-asserted-by":"crossref","unstructured":"Dwyer, M.B., Purandare, R.: Residual dynamic typestate analysis: Exploiting static analysis results to reformulate and reduce the cost of dynamic analysis. In: ASE, pp.124\u2013133 (May 2007)","DOI":"10.1145\/1321631.1321651"}],"container-title":["Lecture Notes in Computer Science","Runtime Verification"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-642-16612-9_15","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,6,6]],"date-time":"2019-06-06T09:57:29Z","timestamp":1559815049000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-642-16612-9_15"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2010]]},"ISBN":["9783642166112","9783642166129"],"references-count":27,"URL":"https:\/\/doi.org\/10.1007\/978-3-642-16612-9_15","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[2010]]}}}