{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,6,11]],"date-time":"2026-06-11T11:05:18Z","timestamp":1781175918178,"version":"3.54.1"},"publisher-location":"Cham","reference-count":24,"publisher":"Springer International Publishing","isbn-type":[{"value":"9783030798369","type":"print"},{"value":"9783030798376","type":"electronic"}],"license":[{"start":{"date-parts":[[2021,1,1]],"date-time":"2021-01-01T00:00:00Z","timestamp":1609459200000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springer.com\/tdm"},{"start":{"date-parts":[[2021,1,1]],"date-time":"2021-01-01T00:00:00Z","timestamp":1609459200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2021]]},"DOI":"10.1007\/978-3-030-79837-6_5","type":"book-chapter","created":{"date-parts":[[2021,6,22]],"date-time":"2021-06-22T11:03:03Z","timestamp":1624359783000},"page":"79-95","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":8,"title":["Causal-Consistent Debugging of\u00a0Distributed Erlang Programs"],"prefix":"10.1007","author":[{"ORCID":"https:\/\/orcid.org\/0000-0003-3002-0697","authenticated-orcid":false,"given":"Giovanni","family":"Fabbretti","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-2527-9995","authenticated-orcid":false,"given":"Ivan","family":"Lanese","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-1373-7602","authenticated-orcid":false,"given":"Jean-Bernard","family":"Stefani","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"297","published-online":{"date-parts":[[2021,6,23]]},"reference":[{"key":"5_CR1","doi-asserted-by":"crossref","unstructured":"Agha, G.A.: Actors: A Model of Concurrent Computation in Distributed Systems. The MIT Press (1986)","DOI":"10.7551\/mitpress\/1086.001.0001"},{"key":"5_CR2","unstructured":"Carlsson, R., et al.: Core erlang 1.0.3. language specification (2004). https:\/\/www.it.uu.se\/research\/group\/hipe\/cerl\/doc\/core_erlang-1.0.3.pdf"},{"key":"5_CR3","unstructured":"Cesarini, F., Thompson, S.: ERLANG Programming. O\u2019Reilly Media, Inc. (2009)"},{"key":"5_CR4","doi-asserted-by":"crossref","unstructured":"Claessen, K., Svensson, H.: A semantics for distributed Erlang. In: Proceedings of the 2005 ACM SIGPLAN Workshop on Erlang, pp. 78\u201387. ACM (2005)","DOI":"10.1145\/1088361.1088376"},{"key":"5_CR5","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"292","DOI":"10.1007\/978-3-540-28644-8_19","volume-title":"CONCUR 2004 - Concurrency Theory","author":"V Danos","year":"2004","unstructured":"Danos, V., Krivine, J.: Reversible communicating systems. In: Gardner, P., Yoshida, N. (eds.) CONCUR 2004. LNCS, vol. 3170, pp. 292\u2013307. Springer, Heidelberg (2004). https:\/\/doi.org\/10.1007\/978-3-540-28644-8_19"},{"key":"5_CR6","unstructured":"Engblom, J.: A review of reverse debugging. In: Proceedings of the 2012 System, Software, SoC and Silicon Debug Conference, pp. 1\u20136 (2012)"},{"key":"5_CR7","unstructured":"Fabbretti, G.: Causal-Consistent Debugging of Distributed Erlang. Master\u2019s thesis. University of Bologna (2020). https:\/\/amslaurea.unibo.it\/22195\/"},{"key":"5_CR8","unstructured":"Fabbretti, G., Lanese, I.: Distributed CauDEr Website. https:\/\/github.com\/gfabbretti8\/cauder-v2.git (2021)"},{"key":"5_CR9","doi-asserted-by":"crossref","unstructured":"Fabbretti, G., Lanese, I., Stefani, J.B.: Causal-consistent debugging of distributed Erlang - Technical report (2021). https:\/\/team.inria.fr\/spades\/RC2021-TR","DOI":"10.1007\/978-3-030-79837-6_5"},{"key":"5_CR10","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"370","DOI":"10.1007\/978-3-642-54804-8_26","volume-title":"Fundamental Approaches to Software Engineering","author":"E Giachino","year":"2014","unstructured":"Giachino, E., Lanese, I., Mezzina, C.A.: Causal-consistent reversible debugging. In: Gnesi, S., Rensink, A. (eds.) FASE 2014. LNCS, vol. 8411, pp. 370\u2013384. Springer, Heidelberg (2014). https:\/\/doi.org\/10.1007\/978-3-642-54804-8_26"},{"key":"5_CR11","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"145","DOI":"10.1007\/978-3-030-67438-0_9","volume-title":"Practical Aspects of Declarative Languages","author":"JJ Gonz\u00e1lez-Abril","year":"2021","unstructured":"Gonz\u00e1lez-Abril, J.J., Vidal, G.: Causal-consistent reversible debugging: improving CauDEr. In: Morales, J.F., Orchard, D. (eds.) PADL 2021. LNCS, vol. 12548, pp. 145\u2013160. Springer, Cham (2021). https:\/\/doi.org\/10.1007\/978-3-030-67438-0_9"},{"key":"5_CR12","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"108","DOI":"10.1007\/978-3-030-21500-2_7","volume-title":"Reversible Computation","author":"J Hoey","year":"2019","unstructured":"Hoey, J., Ulidowski, I.: Reversible imperative parallel programs and debugging. In: Thomsen, M.K., Soeken, M. (eds.) RC 2019. LNCS, vol. 11497, pp. 108\u2013127. Springer, Cham (2019). https:\/\/doi.org\/10.1007\/978-3-030-21500-2_7"},{"issue":"3","key":"5_CR13","doi-asserted-by":"publisher","first-page":"183","DOI":"10.1147\/rd.53.0183","volume":"5","author":"R Landauer","year":"1961","unstructured":"Landauer, R.: Irreversibility and heat generation in the computing process. IBM J. Res. Dev. 5(3), 183\u2013191 (1961)","journal-title":"IBM J. Res. Dev."},{"key":"5_CR14","unstructured":"Lanese, I., Medic, D.: A general approach to derive uncontrolled reversible semantics. In: CONCUR. LIPIcs, vol. 171, pp. 33:1\u201333:24. Schloss Dagstuhl - Leibniz-Zentrum f\u00fcr Informatik (2020)"},{"key":"5_CR15","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"297","DOI":"10.1007\/978-3-642-23217-6_20","volume-title":"CONCUR 2011 \u2013 Concurrency Theory","author":"I Lanese","year":"2011","unstructured":"Lanese, I., Mezzina, C.A., Schmitt, A., Stefani, J.-B.: Controlling reversibility in higher-order Pi. In: Katoen, J.-P., K\u00f6nig, B. (eds.) CONCUR 2011. LNCS, vol. 6901, pp. 297\u2013311. Springer, Heidelberg (2011). https:\/\/doi.org\/10.1007\/978-3-642-23217-6_20"},{"key":"5_CR16","unstructured":"Lanese, I., Mezzina, C.A., Tiezzi, F.: Causal-consistent reversibility. Bull. EATCS 114 (2014)"},{"key":"5_CR17","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"247","DOI":"10.1007\/978-3-319-90686-7_16","volume-title":"Functional and Logic Programming","author":"I Lanese","year":"2018","unstructured":"Lanese, I., Nishida, N., Palacios, A., Vidal, G.: CauDEr: a causal-consistent reversible debugger for Erlang. In: Gallagher, J.P., Sulzmann, M. (eds.) FLOPS 2018. LNCS, vol. 10818, pp. 247\u2013263. Springer, Cham (2018). https:\/\/doi.org\/10.1007\/978-3-319-90686-7_16"},{"key":"5_CR18","unstructured":"Lanese, I., Nishida, N., Palacios, A., Vidal, G.: CauDEr website (2018). https:\/\/github.com\/mistupv\/cauder-v2"},{"key":"5_CR19","doi-asserted-by":"publisher","first-page":"71","DOI":"10.1016\/j.jlamp.2018.06.004","volume":"100","author":"I Lanese","year":"2018","unstructured":"Lanese, I., Nishida, N., Palacios, A., Vidal, G.: A theory of reversibility for Erlang. J. Log. Algebraic Meth. Program. 100, 71\u201397 (2018)","journal-title":"J. Log. Algebraic Meth. Program."},{"key":"5_CR20","doi-asserted-by":"crossref","unstructured":"Lanese, I., Palacios, A., Vidal, G.: Causal-consistent replay reversible semantics for message passing concurrent programs. Fundam. Informaticae 178, 229\u2013266 (2021)","DOI":"10.3233\/FI-2021-2005"},{"key":"5_CR21","unstructured":"McNellis, J., Mola, J., Sykes, K.: Time travel debugging: root causing bugs in commercial scale software. CppCon talk (2017). https:\/\/www.youtube.com\/watch?v=l1YJTg_A914"},{"key":"5_CR22","doi-asserted-by":"crossref","unstructured":"Caballero, R., Martin-Martin, E., Riesco, A., Tamarit, S.: Declarative debugging of concurrent Erlang programs. J. Log. Algebraic Meth. Program. 101, 22\u201341 (2018)","DOI":"10.1016\/j.jlamp.2018.07.005"},{"key":"5_CR23","doi-asserted-by":"crossref","unstructured":"Shibanai, K., Watanabe, T.: Actoverse: a reversible debugger for actors. In: ACM SIGPLAN, pp. 50\u201357 (2017)","DOI":"10.1145\/3141834.3141840"},{"key":"5_CR24","doi-asserted-by":"crossref","unstructured":"Svensson, H., Fredlund, L., Benac Earle, C.: A unified semantics for future Erlang. In: Proceedings of the 9th ACM SIGPLAN Workshop on Erlang, pp. 23\u201332 (2010)","DOI":"10.1145\/1863509.1863514"}],"container-title":["Lecture Notes in Computer Science","Reversible Computation"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-030-79837-6_5","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2021,6,29]],"date-time":"2021-06-29T23:06:29Z","timestamp":1625007989000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-030-79837-6_5"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2021]]},"ISBN":["9783030798369","9783030798376"],"references-count":24,"URL":"https:\/\/doi.org\/10.1007\/978-3-030-79837-6_5","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[2021]]},"assertion":[{"value":"23 June 2021","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"RC","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Conference on Reversible Computation","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2021","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"7 July 2021","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"8 July 2021","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"13","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"rc2021","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"https:\/\/reversible-computation-2021.github.io\/","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Single-blind","order":1,"name":"type","label":"Type","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"EasyChair","order":2,"name":"conference_management_system","label":"Conference Management System","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"21","order":3,"name":"number_of_submissions_sent_for_review","label":"Number of Submissions Sent for Review","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"11","order":4,"name":"number_of_full_papers_accepted","label":"Number of Full Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"0","order":5,"name":"number_of_short_papers_accepted","label":"Number of Short Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"52% - The value is computed by the equation \"Number of Full Papers Accepted \/ Number of Submissions Sent for Review * 100\" and then rounded to a whole number.","order":6,"name":"acceptance_rate_of_full_papers","label":"Acceptance Rate of Full Papers","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"3","order":7,"name":"average_number_of_reviews_per_paper","label":"Average Number of Reviews per Paper","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"3","order":8,"name":"average_number_of_papers_per_reviewer","label":"Average Number of Papers per Reviewer","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"Yes","order":9,"name":"external_reviewers_involved","label":"External Reviewers Involved","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}}]}}