{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,3,27]],"date-time":"2025-03-27T15:10:13Z","timestamp":1743088213106,"version":"3.40.3"},"publisher-location":"Cham","reference-count":36,"publisher":"Springer Nature Switzerland","isbn-type":[{"type":"print","value":"9783031849237"},{"type":"electronic","value":"9783031849244"}],"license":[{"start":{"date-parts":[[2025,1,1]],"date-time":"2025-01-01T00:00:00Z","timestamp":1735689600000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"},{"start":{"date-parts":[[2025,1,1]],"date-time":"2025-01-01T00:00:00Z","timestamp":1735689600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2025]]},"DOI":"10.1007\/978-3-031-84924-4_4","type":"book-chapter","created":{"date-parts":[[2025,3,17]],"date-time":"2025-03-17T12:00:53Z","timestamp":1742212853000},"page":"53-70","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":0,"title":["MOLA: A Runtime Verification Engine Factory by\u00a0(Meta-)interpreting Embedded DSLs"],"prefix":"10.1007","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-3478-3408","authenticated-orcid":false,"given":"Felipe","family":"Gorostiaga","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-4691-5831","authenticated-orcid":false,"given":"Martin","family":"Ceresa","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-3927-4773","authenticated-orcid":false,"given":"C\u00e9sar","family":"S\u00e1nchez","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2025,3,18]]},"reference":[{"issue":"2","key":"4_CR1","doi-asserted-by":"publisher","first-page":"172","DOI":"10.1145\/506147.506151","volume":"49","author":"E Asarin","year":"2002","unstructured":"Asarin, E., Caspi, P., Maler, O.: Timed regular expressions. J. ACM 49(2), 172\u2013206 (2002)","journal-title":"J. ACM"},{"key":"4_CR2","doi-asserted-by":"crossref","unstructured":"Barringer, H., Goldberg, A., Havelund, K., Sen, K.: Rule-based runtime verification. In: Proceedings of VMCAI\u201904. LNCS, vol.\u00a02937, pp. 44\u201357. Springer, Venice (2004)","DOI":"10.1007\/978-3-540-24622-0_5"},{"key":"4_CR3","doi-asserted-by":"crossref","unstructured":"Bartocci, E., Falcone, Y. (eds.): Lectures on Runtime Verification - Introductory and Advanced Topics, LNCS, vol. 10457. Springer, Heidelberg (2018). iSBN 978-3-319-75631-8","DOI":"10.1007\/978-3-319-75632-5"},{"issue":"4","key":"4_CR4","first-page":"14","volume":"20","author":"A Bauer","year":"2011","unstructured":"Bauer, A., Leucker, M., Schallhart, C.: Runtime verification for LTL and TLTL. ACM T. Softw. Eng. Meth. 20(4), 14 (2011)","journal-title":"ACM T. Softw. Eng. Meth."},{"key":"4_CR5","doi-asserted-by":"publisher","first-page":"2","DOI":"10.4204\/EPTCS.153.2","volume":"153","author":"P Capriotti","year":"2014","unstructured":"Capriotti, P., Kaposi, A.: Free applicative functors. EPTCS 153, 2\u201330 (2014). https:\/\/doi.org\/10.4204\/EPTCS.153.2","journal-title":"EPTCS"},{"key":"4_CR6","doi-asserted-by":"crossref","unstructured":"Caspi, P., Hamon, G., Pouzet, M.: Real-Time Systems: Models and verification \u2013 Theory and tools, chap. Synchronous Functional Programming with Lucid Synchrone. ISTE (2007)","DOI":"10.1002\/9780470611012.ch7"},{"key":"4_CR7","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"25","DOI":"10.1007\/978-3-030-64437-6_2","volume-title":"Programming Languages and Systems","author":"M Ceresa","year":"2020","unstructured":"Ceresa, M., Gorostiaga, F., S\u00e1nchez, C.: Declarative stream runtime verification (hLola). In: Oliveira, B.C.S. (ed.) APLAS 2020. LNCS, vol. 12470, pp. 25\u201343. Springer, Cham (2020). https:\/\/doi.org\/10.1007\/978-3-030-64437-6_2"},{"key":"4_CR8","doi-asserted-by":"crossref","unstructured":"Clarke, E.M., Emerson, E.A.: Design and synthesis of synchronization skeletons using branching time temporal logic. In: Proceedings of Workshop on Logic of Programs, pp. 52\u201371 (1981)","DOI":"10.1007\/BFb0025774"},{"key":"4_CR9","unstructured":"Clarke, E.M., Grunberg, O., Peled, D.A.: Model Checking. MIT Press, Cambridge (1999)"},{"key":"4_CR10","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"144","DOI":"10.1007\/978-3-030-03044-5_10","volume-title":"Formal Methods: Foundations and Applications","author":"L Convent","year":"2018","unstructured":"Convent, L., Hungerecker, S., Leucker, M., Scheffel, T., Schmitz, M., Thoma, D.: TeSSLa: temporal stream-based specification language. In: Massoni, T., Mousavi, M.R. (eds.) SBMF 2018. LNCS, vol. 11254, pp. 144\u2013162. Springer, Cham (2018). https:\/\/doi.org\/10.1007\/978-3-030-03044-5_10"},{"key":"4_CR11","doi-asserted-by":"crossref","unstructured":"D\u2019Angelo, B., et al.: LOLA: runtime monitoring of synchronous systems. In: Proceedings of TIME\u201905, pp. 166\u2013174. IEEE (2005)","DOI":"10.1109\/TIME.2005.26"},{"key":"4_CR12","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"27","DOI":"10.1007\/978-3-540-45069-6_3","volume-title":"Computer Aided Verification","author":"C Eisner","year":"2003","unstructured":"Eisner, C., Fisman, D., Havlicek, J., Lustig, Y., McIsaac, A., Van Campenhout, D.: Reasoning with temporal logic on truncated paths. In: Hunt, W.A., Somenzi, F. (eds.) CAV 2003. LNCS, vol. 2725, pp. 27\u201339. Springer, Heidelberg (2003). https:\/\/doi.org\/10.1007\/978-3-540-45069-6_3"},{"key":"4_CR13","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"152","DOI":"10.1007\/978-3-319-46982-9_10","volume-title":"Runtime Verification","author":"P Faymonville","year":"2016","unstructured":"Faymonville, P., Finkbeiner, B., Schirmer, S., Torfah, H.: A stream-based specification language for network monitoring. In: Falcone, Y., S\u00e1nchez, C. (eds.) RV 2016. LNCS, vol. 10012, pp. 152\u2013168. Springer, Cham (2016). https:\/\/doi.org\/10.1007\/978-3-319-46982-9_10"},{"key":"4_CR14","unstructured":"Faymonville, P., Finkbeiner, B., Schwenger, M., Torfah, H.: Real-time stream-based monitoring. CoRR arxiv:1711.03829 (2017)"},{"key":"4_CR15","unstructured":"Goodman, L.M.: Tezos \u2013 a self-amending crypto-ledger (2014). https:\/\/www.tezos.com\/whitepaper.pdf"},{"key":"4_CR16","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"282","DOI":"10.1007\/978-3-030-03769-7_16","volume-title":"Runtime Verification","author":"F Gorostiaga","year":"2018","unstructured":"Gorostiaga, F., S\u00e1nchez, C.: Striver: stream runtime verification for real-time event-streams. In: Colombo, C., Leucker, M. (eds.) RV 2018. LNCS, vol. 11237, pp. 282\u2013298. Springer, Cham (2018). https:\/\/doi.org\/10.1007\/978-3-030-03769-7_16"},{"key":"4_CR17","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"349","DOI":"10.1007\/978-3-030-72013-1_18","volume-title":"Tools and Algorithms for the Construction and Analysis of Systems","author":"F Gorostiaga","year":"2021","unstructured":"Gorostiaga, F., S\u00e1nchez, C.: HLola: a very functional tool for extensible stream runtime verification. In: TACAS 2021. LNCS, vol. 12652, pp. 349\u2013356. Springer, Cham (2021). https:\/\/doi.org\/10.1007\/978-3-030-72013-1_18"},{"key":"4_CR18","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"164","DOI":"10.1007\/978-3-030-88494-9_9","volume-title":"Runtime Verification","author":"F Gorostiaga","year":"2021","unstructured":"Gorostiaga, F., S\u00e1nchez, C.: Nested monitors: monitors as expressions to build monitors. In: Feng, L., Fisman, D. (eds.) RV 2021. LNCS, vol. 12974, pp. 164\u2013183. Springer, Cham (2021). https:\/\/doi.org\/10.1007\/978-3-030-88494-9_9"},{"key":"4_CR19","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"374","DOI":"10.1007\/978-3-540-69149-5_40","volume-title":"Verified Software: Theories, Tools, Experiments","author":"K Havelund","year":"2008","unstructured":"Havelund, K., Goldberg, A.: Verify your runs. In: Meyer, B., Woodcock, J. (eds.) VSTTE 2005. LNCS, vol. 4171, pp. 374\u2013383. Springer, Heidelberg (2008). https:\/\/doi.org\/10.1007\/978-3-540-69149-5_40"},{"key":"4_CR20","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"342","DOI":"10.1007\/3-540-46002-0_24","volume-title":"Tools and Algorithms for the Construction and Analysis of Systems","author":"K Havelund","year":"2002","unstructured":"Havelund, K., Ro\u015fu, G.: Synthesizing monitors for safety properties. In: Katoen, J.-P., Stevens, P. (eds.) TACAS 2002. LNCS, vol. 2280, pp. 342\u2013356. Springer, Heidelberg (2002). https:\/\/doi.org\/10.1007\/3-540-46002-0_24"},{"key":"4_CR21","doi-asserted-by":"crossref","unstructured":"Leucker, M., S\u00e1nchez, C., Scheffel, T., Schmitz, M., Schramm, A.: TeSSLa: runtime verification of non-synchronized real-time streams. In: Proceedings of the 33rd Symposium on Applied Computing (SAC\u201918), pp. 1925\u20131933. ACM (2018)","DOI":"10.1145\/3167132.3167338"},{"issue":"5","key":"4_CR22","doi-asserted-by":"publisher","first-page":"293","DOI":"10.1016\/j.jlap.2008.08.004","volume":"78","author":"M Leucker","year":"2009","unstructured":"Leucker, M., Schallhart, C.: A brief account of runtime verification. J. Logic Algebr. Progr. 78(5), 293\u2013303 (2009)","journal-title":"J. Logic Algebr. Progr."},{"key":"4_CR23","doi-asserted-by":"publisher","DOI":"10.1007\/978-1-4612-4222-2","volume-title":"Temporal Verification of Reactive Systems: Safety","author":"Z Manna","year":"1995","unstructured":"Manna, Z., Pnueli, A.: Temporal Verification of Reactive Systems: Safety. Springer, New York (1995)"},{"key":"4_CR24","doi-asserted-by":"publisher","first-page":"351","DOI":"10.1007\/978-3-031-44267-4_19","volume-title":"Runtime Verification","author":"P Pedregal","year":"2023","unstructured":"Pedregal, P., Gorostiaga, F., S\u00e1nchez, C.: A stream runtime verification tool with nested and retroactive parametrization. In: Katsaros, P., Nenzi, L. (eds.) Runtime Verification, pp. 351\u2013362. Springer, Cham (2023). https:\/\/doi.org\/10.1007\/978-3-031-44267-4_19"},{"key":"4_CR25","unstructured":"Perez, I., Dedden, F., Goodloe, A.: Copilot 3. Technical Report. NASA\/TM-2020-220587, NASA Langley Research Center (2020)"},{"key":"4_CR26","unstructured":"Peyton\u00a0Jones, S.: The Implementation of Functional Programming Languages. Prentice Hall Internaltional (UK) Ltd. (1987). https:\/\/www.microsoft.com\/en-us\/research\/publication\/the-implementation-of-functional-programming-languages-2\/, chapters also by: Philip Wadler, Programming Research Group, Oxford; Peter Hancock, Metier Management Systems, Ltd.; David Turner, University of Kent, Canterbury"},{"key":"4_CR27","doi-asserted-by":"publisher","unstructured":"Pfenning, F., Elliott, C.: Higher-order abstract syntax. SIGPLAN Not. 23(7), 199\u2013208 (1988). https:\/\/doi.org\/10.1145\/960116.54010","DOI":"10.1145\/960116.54010"},{"key":"4_CR28","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"345","DOI":"10.1007\/978-3-642-16612-9_26","volume-title":"Runtime Verification","author":"L Pike","year":"2010","unstructured":"Pike, L., Goodloe, A., Morisset, R., Niller, S.: Copilot: a hard real-time runtime monitor. In: Barringer, H., Falcone, Y., Finkbeiner, B., Havelund, K., Lee, I., Pace, G., Ro\u015fu, G., Sokolsky, O., Tillmann, N. (eds.) RV 2010. LNCS, vol. 6418, pp. 345\u2013359. Springer, Heidelberg (2010). https:\/\/doi.org\/10.1007\/978-3-642-16612-9_26"},{"key":"4_CR29","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"337","DOI":"10.1007\/3-540-11494-7_22","volume-title":"International Symposium on Programming","author":"JP Queille","year":"1982","unstructured":"Queille, J.P., Sifakis, J.: Specification and verification of concurrent systems in CESAR. In: Dezani-Ciancaglini, M., Montanari, U. (eds.) Programming 1982. LNCS, vol. 137, pp. 337\u2013351. Springer, Heidelberg (1982). https:\/\/doi.org\/10.1007\/3-540-11494-7_22"},{"key":"4_CR30","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"357","DOI":"10.1007\/978-3-642-54862-8_24","volume-title":"Tools and Algorithms for the Construction and Analysis of Systems","author":"T Reinbacher","year":"2014","unstructured":"Reinbacher, T., Rozier, K.Y., Schumann, J.: Temporal-logic based runtime observer pairs for system health management of real-time systems. In: \u00c1brah\u00e1m, E., Havelund, K. (eds.) TACAS 2014. LNCS, vol. 8413, pp. 357\u2013372. Springer, Heidelberg (2014). https:\/\/doi.org\/10.1007\/978-3-642-54862-8_24"},{"issue":"2","key":"4_CR31","doi-asserted-by":"publisher","first-page":"151","DOI":"10.1007\/s10515-005-6205-y","volume":"12","author":"G Ro\u015fu","year":"2005","unstructured":"Ro\u015fu, G., Havelund, K.: Rewriting-based techniques for runtime verification. Autom. Softw. Eng. 12(2), 151\u2013197 (2005)","journal-title":"Autom. Softw. Eng."},{"key":"4_CR32","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"138","DOI":"10.1007\/978-3-030-03769-7_9","volume-title":"Runtime Verification","author":"C S\u00e1nchez","year":"2018","unstructured":"S\u00e1nchez, C.: Online and offline stream runtime verification of synchronous systems. In: Colombo, C., Leucker, M. (eds.) RV 2018. LNCS, vol. 11237, pp. 138\u2013163. Springer, Cham (2018). https:\/\/doi.org\/10.1007\/978-3-030-03769-7_9"},{"issue":"2","key":"4_CR33","first-page":"226","volume":"89","author":"K Sen","year":"2003","unstructured":"Sen, K., Ro\u015fu, G.: Generating optimal monitors for extended regular expressions. ENTCS 89(2), 226\u2013245 (2003)","journal-title":"ENTCS"},{"issue":"3","key":"4_CR34","doi-asserted-by":"publisher","first-page":"279","DOI":"10.1007\/s10703-019-00337-w","volume":"54","author":"C S\u00e1nchez","year":"2019","unstructured":"S\u00e1nchez, C., et al.: A survey of challenges for runtime verification from advanced application domains (beyond software). Formal Methods Syst. Des. 54(3), 279\u2013335 (2019). https:\/\/doi.org\/10.1007\/s10703-019-00337-w","journal-title":"Formal Methods Syst. Des."},{"key":"4_CR35","doi-asserted-by":"publisher","unstructured":"Valliappan, N., Krook, R., Russo, A., Claessen, K.: Towards secure iot programming in haskell. In: Proceedings of the 13th ACM SIGPLAN International Symposium on Haskell, Haskell 2020, pp. 136\u2013150. Association for Computing Machinery, New York (2020). https:\/\/doi.org\/10.1145\/3406088.3409027","DOI":"10.1145\/3406088.3409027"},{"key":"4_CR36","doi-asserted-by":"crossref","unstructured":"Zudaire, S., Gorostiaga, F., S\u00e1nchez, C., Schneider, G., Uchitel, S.: Assumption monitoring using runtime verification for UAV temporal task plan executions. In: Proceedings of IEEE International Conference on Robotics and Automation (ICRA\u201921). IEEE (2021)","DOI":"10.1109\/ICRA48506.2021.9561671"}],"container-title":["Lecture Notes in Computer Science","Practical Aspects of Declarative Languages"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-031-84924-4_4","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,3,17]],"date-time":"2025-03-17T12:01:00Z","timestamp":1742212860000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-031-84924-4_4"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2025]]},"ISBN":["9783031849237","9783031849244"],"references-count":36,"URL":"https:\/\/doi.org\/10.1007\/978-3-031-84924-4_4","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2025]]},"assertion":[{"value":"18 March 2025","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"PADL","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Symposium on Practical Aspects of Declarative Languages","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Denver, CO","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"USA","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2025","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"20 January 2025","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"26 January 2025","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"27","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"padl2025","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}}]}}