{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,7]],"date-time":"2025-06-07T22:40:01Z","timestamp":1749336001317,"version":"3.41.0"},"publisher-location":"Cham","reference-count":28,"publisher":"Springer International Publishing","isbn-type":[{"type":"print","value":"9783030781415"},{"type":"electronic","value":"9783030781422"}],"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-78142-2_4","type":"book-chapter","created":{"date-parts":[[2021,6,7]],"date-time":"2021-06-07T23:06:27Z","timestamp":1623107187000},"page":"61-79","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":0,"title":["Relating Functional and Imperative Session Types"],"prefix":"10.1007","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-1825-0097","authenticated-orcid":false,"given":"Hannes","family":"Saffrich","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-9000-1239","authenticated-orcid":false,"given":"Peter","family":"Thiemann","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2021,6,8]]},"reference":[{"key":"4_CR1","doi-asserted-by":"publisher","unstructured":"Allais, G.: Typing with leftovers - a mechanization of intuitionistic multiplicative-additive linear logic. In: 23rd International Conference on Types for Proofs and Programs, TYPES 2017. LIPIcs, Budapest, Hungary, May 29\u2013June 1, 2017, vol. 104, pp. 1:1\u20131:22. Schloss Dagstuhl - Leibniz-Zentrum f\u00fcr Informatik (2017). https:\/\/doi.org\/10.4230\/LIPIcs.TYPES.2017.1","DOI":"10.4230\/LIPIcs.TYPES.2017.1"},{"issue":"3\u20134","key":"4_CR2","doi-asserted-by":"publisher","first-page":"335","DOI":"10.1017\/S095679680900728X","volume":"19","author":"R Atkey","year":"2009","unstructured":"Atkey, R.: Parameterised notions of computation. J. Funct. Program. 19(3\u20134), 335\u2013376 (2009). https:\/\/doi.org\/10.1017\/S095679680900728X","journal-title":"J. Funct. Program."},{"key":"4_CR3","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"611","DOI":"10.1007\/978-3-030-17184-1_22","volume-title":"Programming Languages and Systems","author":"S Balzer","year":"2019","unstructured":"Balzer, S., Toninho, B., Pfenning, F.: Manifest Deadlock-freedom for shared session types. In: Caires, L. (ed.) ESOP 2019. LNCS, vol. 11423, pp. 611\u2013639. Springer, Cham (2019). https:\/\/doi.org\/10.1007\/978-3-030-17184-1_22"},{"key":"4_CR4","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"222","DOI":"10.1007\/978-3-642-15375-4_16","volume-title":"CONCUR 2010 - Concurrency Theory","author":"L Caires","year":"2010","unstructured":"Caires, L., Pfenning, F.: Session types as intuitionistic linear propositions. In: Gastin, P., Laroussinie, F. (eds.) CONCUR 2010. LNCS, vol. 6269, pp. 222\u2013236. Springer, Heidelberg (2010). https:\/\/doi.org\/10.1007\/978-3-642-15375-4_16"},{"key":"4_CR5","doi-asserted-by":"publisher","unstructured":"Das, A., Pfenning, F.: Session types with arithmetic refinements. In: Konnov, I., Kov\u00e1cs, L. (eds.) 31st International Conference on Concurrency Theory, CONCUR 2020 (Virtual Conference). LIPIcs, Vienna, Austria, 1\u20134 September 2020, vol. 171, pp. 13:1\u201313:18. Schloss Dagstuhl - Leibniz-Zentrum f\u00fcr Informatik (2020). https:\/\/doi.org\/10.4230\/LIPIcs.CONCUR.2020.13","DOI":"10.4230\/LIPIcs.CONCUR.2020.13"},{"key":"4_CR6","doi-asserted-by":"publisher","unstructured":"Fowler, S., Lindley, S., Morris, J.G., Decova, S.: Exceptional asynchronous session types: session types without tiers. Proc. ACM Program. Lang. 3(POPL), 28:1\u201328:29 (2019). https:\/\/doi.org\/10.1145\/3290341","DOI":"10.1145\/3290341"},{"issue":"1","key":"4_CR7","doi-asserted-by":"publisher","first-page":"19","DOI":"10.1017\/S0956796809990268","volume":"20","author":"SJ Gay","year":"2010","unstructured":"Gay, S.J., Vasconcelos, V.T.: Linear type theory for asynchronous session types. J. Funct. Program. 20(1), 19\u201350 (2010). https:\/\/doi.org\/10.1017\/S0956796809990268","journal-title":"J. Funct. Program."},{"key":"4_CR8","doi-asserted-by":"publisher","unstructured":"Gordon, C.S.: A generic approach to flow-sensitive polymorphic effects. In: 31st European Conference on Object-Oriented Programming, ECOOP 2017. LIPIcs, Barcelona, Spain, 19\u201323 June 2017, vol. 74, pp. 13:1\u201313:31. Schloss Dagstuhl - Leibniz-Zentrum f\u00fcr Informatik (2017). https:\/\/doi.org\/10.4230\/LIPIcs.ECOOP.2017.13","DOI":"10.4230\/LIPIcs.ECOOP.2017.13"},{"key":"4_CR9","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"509","DOI":"10.1007\/3-540-57208-2_35","volume-title":"CONCUR\u201993","author":"K Honda","year":"1993","unstructured":"Honda, K.: Types for dyadic interaction. In: Best, E. (ed.) CONCUR 1993. LNCS, vol. 715, pp. 509\u2013523. Springer, Heidelberg (1993). https:\/\/doi.org\/10.1007\/3-540-57208-2_35"},{"key":"4_CR10","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"329","DOI":"10.1007\/978-3-642-14107-2_16","volume-title":"ECOOP 2010 \u2013 Object-Oriented Programming","author":"R Hu","year":"2010","unstructured":"Hu, R., Kouzapas, D., Pernet, O., Yoshida, N., Honda, K.: Type-safe eventful sessions in Java. In: D\u2019Hondt, T. (ed.) ECOOP 2010. LNCS, vol. 6183, pp. 329\u2013353. Springer, Heidelberg (2010). https:\/\/doi.org\/10.1007\/978-3-642-14107-2_16"},{"key":"4_CR11","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"401","DOI":"10.1007\/978-3-662-49665-7_24","volume-title":"Fundamental Approaches to Software Engineering","author":"R Hu","year":"2016","unstructured":"Hu, R., Yoshida, N.: Hybrid session verification through endpoint API generation. In: Stevens, P., W\u0105sowski, A. (eds.) FASE 2016. LNCS, vol. 9633, pp. 401\u2013418. Springer, Heidelberg (2016). https:\/\/doi.org\/10.1007\/978-3-662-49665-7_24"},{"key":"4_CR12","doi-asserted-by":"publisher","first-page":"135","DOI":"10.1016\/j.scico.2018.08.005","volume":"172","author":"K Imai","year":"2019","unstructured":"Imai, K., Yoshida, N., Yuen, S.: Session-OCaml: a session-based library with polarities and lenses. Sci. Comput. Program. 172, 135\u2013159 (2019). https:\/\/doi.org\/10.1016\/j.scico.2018.08.005","journal-title":"Sci. Comput. Program."},{"key":"4_CR13","volume-title":"Communicating and Mobile Systems - The Pi-Calculus","author":"R Milner","year":"1999","unstructured":"Milner, R.: Communicating and Mobile Systems - The Pi-Calculus. Cambridge University Press, New York (1999)"},{"key":"4_CR14","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"804","DOI":"10.1007\/978-3-662-54434-1_30","volume-title":"Programming Languages and Systems","author":"L Padovani","year":"2017","unstructured":"Padovani, L.: Context-free session type inference. In: Yang, H. (ed.) ESOP 2017. LNCS, vol. 10201, pp. 804\u2013830. Springer, Heidelberg (2017). https:\/\/doi.org\/10.1007\/978-3-662-54434-1_30"},{"key":"4_CR15","doi-asserted-by":"publisher","first-page":"e4","DOI":"10.1017\/S0956796816000289","volume":"27","author":"L Padovani","year":"2017","unstructured":"Padovani, L.: A simple library implementation of binary sessions. J. Funct. Program. 27, e4 (2017). https:\/\/doi.org\/10.1017\/S0956796816000289","journal-title":"J. Funct. Program."},{"issue":"2","key":"4_CR16","doi-asserted-by":"publisher","first-page":"125","DOI":"10.1016\/0304-3975(75)90017-1","volume":"1","author":"GD Plotkin","year":"1975","unstructured":"Plotkin, G.D.: Call-by-name, call-by-value and the lambda-calculus. Theor. Comput. Sci. 1(2), 125\u2013159 (1975). https:\/\/doi.org\/10.1016\/0304-3975(75)90017-1","journal-title":"Theor. Comput. Sci."},{"key":"4_CR17","doi-asserted-by":"publisher","unstructured":"Pucella, R., Tov, J.A.: Haskell session types with (almost) no class. In: Proceedings of the 1st ACM SIGPLAN Symposium on Haskell, Haskell 2008, Victoria, BC, Canada, 25 September 2008, pp. 25\u201336. ACM (2008). https:\/\/doi.org\/10.1145\/1411286.1411290","DOI":"10.1145\/1411286.1411290"},{"key":"4_CR18","doi-asserted-by":"publisher","unstructured":"Reynolds, J.C.: Separation logic: a logic for shared mutable data structures. In: 17th IEEE Symposium on Logic in Computer Science (LICS 2002), Copenhagen, Denmark, 22\u201325 July 2002, Proceedings, pp. 55\u201374. IEEE Computer Society (2002). https:\/\/doi.org\/10.1109\/LICS.2002.1029817","DOI":"10.1109\/LICS.2002.1029817"},{"issue":"3\u20134","key":"4_CR19","first-page":"289","volume":"6","author":"A Sabry","year":"1993","unstructured":"Sabry, A., Felleisen, M.: Reasoning about programs in continuation-passing style. LISP Symb. Comput. 6(3\u20134), 289\u2013360 (1993)","journal-title":"LISP Symb. Comput."},{"issue":"6","key":"4_CR20","doi-asserted-by":"publisher","first-page":"916","DOI":"10.1145\/267959.269968","volume":"19","author":"A Sabry","year":"1997","unstructured":"Sabry, A., Wadler, P.: A reflection on call-by-value. ACM Trans. Program. Lang. Syst. 19(6), 916\u2013941 (1997). https:\/\/doi.org\/10.1145\/267959.269968","journal-title":"ACM Trans. Program. Lang. Syst."},{"key":"4_CR21","unstructured":"Sackman, M., Eisenbach, S.: Session types in Haskell updating message passing for the 21st century (2008). https:\/\/spiral.imperial.ac.uk:8443\/handle\/10044\/1\/5918"},{"key":"4_CR22","doi-asserted-by":"publisher","unstructured":"Scalas, A., Yoshida, N.: Lightweight session programming in Scala. In: 30th European Conference on Object-Oriented Programming, ECOOP 2016. LIPIcs, Rome, Italy, 18\u201322 July 2016, vol. 56, pp. 21:1\u201321:28. Schloss Dagstuhl - Leibniz-Zentrum f\u00fcr Informatik (2016). https:\/\/doi.org\/10.4230\/LIPIcs.ECOOP.2016.21","DOI":"10.4230\/LIPIcs.ECOOP.2016.21"},{"key":"4_CR23","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"366","DOI":"10.1007\/3-540-46425-5_24","volume-title":"Programming Languages and Systems","author":"F Smith","year":"2000","unstructured":"Smith, F., Walker, D., Morrisett, G.: Alias types. In: Smolka, G. (ed.) ESOP 2000. LNCS, vol. 1782, pp. 366\u2013381. Springer, Heidelberg (2000). https:\/\/doi.org\/10.1007\/3-540-46425-5_24"},{"issue":"1","key":"4_CR24","doi-asserted-by":"publisher","first-page":"157","DOI":"10.1109\/TSE.1986.6312929","volume":"12","author":"RE Strom","year":"1986","unstructured":"Strom, R.E., Yemini, S.: Typestate: a programming language concept for enhancing software reliability. IEEE Trans. Software Eng. 12(1), 157\u2013171 (1986). https:\/\/doi.org\/10.1109\/TSE.1986.6312929","journal-title":"IEEE Trans. Software Eng."},{"key":"4_CR25","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"398","DOI":"10.1007\/3-540-58184-7_118","volume-title":"PARLE\u201994 Parallel Architectures and Languages Europe","author":"K Takeuchi","year":"1994","unstructured":"Takeuchi, K., Honda, K., Kubo, M.: An interaction-based language and its typing system. In: Halatsis, C., Maritsas, D., Philokyprou, G., Theodoridis, S. (eds.) PARLE 1994. LNCS, vol. 817, pp. 398\u2013413. Springer, Heidelberg (1994). https:\/\/doi.org\/10.1007\/3-540-58184-7_118"},{"key":"4_CR26","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"350","DOI":"10.1007\/978-3-642-37036-6_20","volume-title":"Programming Languages and Systems","author":"B Toninho","year":"2013","unstructured":"Toninho, B., Caires, L., Pfenning, F.: Higher-order processes, functions, and sessions: a monadic integration. In: Felleisen, M., Gardner, P. (eds.) ESOP 2013. LNCS, vol. 7792, pp. 350\u2013369. Springer, Heidelberg (2013). https:\/\/doi.org\/10.1007\/978-3-642-37036-6_20"},{"issue":"1\u20132","key":"4_CR27","doi-asserted-by":"publisher","first-page":"64","DOI":"10.1016\/j.tcs.2006.06.028","volume":"368","author":"VT Vasconcelos","year":"2006","unstructured":"Vasconcelos, V.T., Gay, S.J., Ravara, A.: Type checking a multithreaded functional language with session types. Theor. Comput. Sci. 368(1\u20132), 64\u201387 (2006). https:\/\/doi.org\/10.1016\/j.tcs.2006.06.028","journal-title":"Theor. Comput. Sci."},{"key":"4_CR28","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"497","DOI":"10.1007\/978-3-540-28644-8_32","volume-title":"CONCUR 2004 - Concurrency Theory","author":"V Vasconcelos","year":"2004","unstructured":"Vasconcelos, V., Ravara, A., Gay, S.: Session types for functional multithreading. In: Gardner, P., Yoshida, N. (eds.) CONCUR 2004. LNCS, vol. 3170, pp. 497\u2013511. Springer, Heidelberg (2004). https:\/\/doi.org\/10.1007\/978-3-540-28644-8_32"}],"container-title":["Lecture Notes in Computer Science","Coordination Models and Languages"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-030-78142-2_4","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,7]],"date-time":"2025-06-07T22:02:23Z","timestamp":1749333743000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-030-78142-2_4"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2021]]},"ISBN":["9783030781415","9783030781422"],"references-count":28,"URL":"https:\/\/doi.org\/10.1007\/978-3-030-78142-2_4","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2021]]},"assertion":[{"value":"8 June 2021","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"COORDINATION","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Conference on Coordination Languages and Models","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Valletta","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Malta","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2021","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"14 June 2021","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"18 June 2021","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"23","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"coordination2021","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"http:\/\/www.discotec.org\/2021\/coordination.html","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":"31","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":"15","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":"2","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":"48% - 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":"No","order":9,"name":"external_reviewers_involved","label":"External Reviewers Involved","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"Due to the Corona pandemic this event was held virutally.","order":10,"name":"additional_info_on_review_process","label":"Additional Info on Review Process","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}}]}}