{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,3,28]],"date-time":"2025-03-28T06:00:14Z","timestamp":1743141614864,"version":"3.40.3"},"publisher-location":"Cham","reference-count":17,"publisher":"Springer International Publishing","isbn-type":[{"type":"print","value":"9783030162016"},{"type":"electronic","value":"9783030162023"}],"license":[{"start":{"date-parts":[[2019,1,1]],"date-time":"2019-01-01T00:00:00Z","timestamp":1546300800000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2019]]},"DOI":"10.1007\/978-3-030-16202-3_4","type":"book-chapter","created":{"date-parts":[[2019,3,15]],"date-time":"2019-03-15T09:04:08Z","timestamp":1552640648000},"page":"56-73","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":2,"title":["Runtime Verification in Erlang by Using Contracts"],"prefix":"10.1007","author":[{"given":"Lars-\u00c5ke","family":"Fredlund","sequence":"first","affiliation":[]},{"given":"Julio","family":"Mari\u00f1o","sequence":"additional","affiliation":[]},{"given":"Sergio","family":"P\u00e9rez","sequence":"additional","affiliation":[]},{"given":"Salvador","family":"Tamarit","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2019,3,16]]},"reference":[{"key":"4_CR1","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"33","DOI":"10.1007\/978-3-642-27694-1_4","volume-title":"Practical Aspects of Declarative Languages","author":"S Antoy","year":"2012","unstructured":"Antoy, S., Hanus, M.: Contracts and specifications for functional logic programming. In: Russo, C., Zhou, N.-F. (eds.) PADL 2012. LNCS, vol. 7149, pp. 33\u201347. Springer, Heidelberg (2012). https:\/\/doi.org\/10.1007\/978-3-642-27694-1_4"},{"key":"4_CR2","doi-asserted-by":"crossref","unstructured":"Arts, T., Hughes, J., Johansson, J., Wiger, U.T.: Testing telecoms software with quviq QuickCheck. In: Proceedings of the 2006 ACM SIGPLAN Workshop on Erlang, pp. 2\u201310. ACM (2006)","DOI":"10.1145\/1159789.1159792"},{"key":"4_CR3","doi-asserted-by":"crossref","unstructured":"Carlsson, R., R\u00e9mond, M.: EUnit: a lightweight unit testing framework for Erlang. In: Feeley, M., Trinder, P.W. (eds.) Proceedings of the 2006 ACM SIGPLAN Workshop on Erlang, p. 1. ACM (2006)","DOI":"10.1145\/1159789.1159791"},{"key":"4_CR4","doi-asserted-by":"crossref","unstructured":"Cassar, I., Francalanza, A., Aceto, L., Ing\u00f3lfsd\u00f3ttir, A.: eAOP: an aspect oriented programming framework for Erlang. In: Chechina, N., Fritchie, S.L. (eds.) Proceedings of the 16th ACM SIGPLAN International Workshop on Erlang, pp. 20\u201330. ACM (2017)","DOI":"10.1145\/3123569.3123570"},{"key":"4_CR5","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"370","DOI":"10.1007\/978-3-642-29860-8_29","volume-title":"Runtime Verification","author":"C Colombo","year":"2012","unstructured":"Colombo, C., Francalanza, A., Gatt, R.: Elarva: a monitoring tool for Erlang. In: Khurshid, S., Sen, K. (eds.) RV 2011. LNCS, vol. 7186, pp. 370\u2013374. Springer, Heidelberg (2012). https:\/\/doi.org\/10.1007\/978-3-642-29860-8_29"},{"key":"4_CR6","unstructured":"Ericsson AB: EDoc (2018). http:\/\/erlang.org\/doc\/apps\/edoc\/chapter.html"},{"issue":"5","key":"4_CR7","first-page":"457","volume":"230","author":"L Fredlund","year":"2016","unstructured":"Fredlund, L., Mari\u00f1o, J., Alborodo, R.N., Herranz, \u00c1.: A testing-based approach to ensure the safety of shared resource concurrent systems. Proc. Inst. Mech. Eng. Part O: J. Risk Reliab. 230(5), 457\u2013472 (2016)","journal-title":"Proc. Inst. Mech. Eng. Part O: J. Risk Reliab."},{"key":"4_CR8","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"323","DOI":"10.1007\/978-3-319-94460-9_19","volume-title":"Logic-Based Program Synthesis and Transformation","author":"M Hanus","year":"2018","unstructured":"Hanus, M.: Combining static and dynamic contract checking for curry. In: Fioravanti, F., Gallagher, J.P. (eds.) LOPSTR 2017. LNCS, vol. 10855, pp. 323\u2013340. Springer, Cham (2018). https:\/\/doi.org\/10.1007\/978-3-319-94460-9_19"},{"key":"4_CR9","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"102","DOI":"10.1007\/978-3-642-04570-7_9","volume-title":"Formal Methods for Industrial Critical Systems","author":"\u00c1 Herranz","year":"2009","unstructured":"Herranz, \u00c1., Mari\u00f1o, J., Carro, M., Moreno Navarro, J.J.: Modeling concurrent systems with shared resources. In: Alpuente, M., Cook, B., Joubert, C. (eds.) FMICS 2009. LNCS, vol. 5825, pp. 102\u2013116. Springer, Heidelberg (2009). https:\/\/doi.org\/10.1007\/978-3-642-04570-7_9"},{"key":"4_CR10","doi-asserted-by":"crossref","unstructured":"Jimenez, M., Lindahl, T., Sagonas, K.: A language for specifying type contracts in Erlang and its interaction with success typings. In: Thompson, S.J., Fredlund, L. (eds.) Proceedings of the 2007 ACM SIGPLAN Workshop on Erlang, Freiburg, Germany, 5 October 2007, pp. 11\u201317. ACM (2007)","DOI":"10.1145\/1292520.1292523"},{"key":"4_CR11","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"348","DOI":"10.1007\/978-3-642-17511-4_20","volume-title":"Logic for Programming, Artificial Intelligence, and Reasoning","author":"KRM Leino","year":"2010","unstructured":"Leino, K.R.M.: Dafny: an automatic program verifier for functional correctness. In: Clarke, E.M., Voronkov, A. (eds.) LPAR 2010. LNCS, vol. 6355, pp. 348\u2013370. Springer, Heidelberg (2010). https:\/\/doi.org\/10.1007\/978-3-642-17511-4_20"},{"key":"4_CR12","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"91","DOI":"10.1007\/978-3-540-30477-7_7","volume-title":"Programming Languages and Systems","author":"T Lindahl","year":"2004","unstructured":"Lindahl, T., Sagonas, K.: Detecting software defects in telecom applications through lightweight static analysis: a war story. In: Chin, W.-N. (ed.) APLAS 2004. LNCS, vol. 3302, pp. 91\u2013106. Springer, Heidelberg (2004). https:\/\/doi.org\/10.1007\/978-3-540-30477-7_7"},{"key":"4_CR13","doi-asserted-by":"crossref","unstructured":"Lorenz, D.H., Skotiniotis, T.: Extending design by contract for aspect-oriented programming. CoRR, abs\/cs\/0501070 (2005)","DOI":"10.1145\/1028664.1028747"},{"issue":"10","key":"4_CR14","doi-asserted-by":"publisher","first-page":"40","DOI":"10.1109\/2.161279","volume":"25","author":"B Meyer","year":"1992","unstructured":"Meyer, B.: Applying \u201cDesign by Contract\u201d. IEEE Comput. 25(10), 40\u201351 (1992)","journal-title":"IEEE Comput."},{"key":"4_CR15","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"137","DOI":"10.1007\/978-3-642-24276-2_9","volume-title":"Implementation and Application of Functional Languages","author":"M Pitidis","year":"2011","unstructured":"Pitidis, M., Sagonas, K.: Purity in Erlang. In: Hage, J., Moraz\u00e1n, M.T. (eds.) IFL 2010. LNCS, vol. 6647, pp. 137\u2013152. Springer, Heidelberg (2011). https:\/\/doi.org\/10.1007\/978-3-642-24276-2_9"},{"key":"4_CR16","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"61","DOI":"10.1007\/978-3-642-13414-2_5","volume-title":"Coordination Models and Languages","author":"H Plociniczak","year":"2010","unstructured":"Plociniczak, H., Eisenbach, S.: JErlang: Erlang with joins. In: Clarke, D., Agha, G. (eds.) COORDINATION 2010. LNCS, vol. 6116, pp. 61\u201375. Springer, Heidelberg (2010). https:\/\/doi.org\/10.1007\/978-3-642-13414-2_5"},{"key":"4_CR17","doi-asserted-by":"crossref","unstructured":"Rondon, P.M., Kawaguci, M., Jhala, R.: Liquid types. In: PLDI 2008, pp. 159\u2013169. ACM (2008)","DOI":"10.1145\/1375581.1375602"}],"container-title":["Lecture Notes in Computer Science","Functional and Constraint Logic Programming"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-030-16202-3_4","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,9,14]],"date-time":"2023-09-14T14:45:54Z","timestamp":1694702754000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-030-16202-3_4"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2019]]},"ISBN":["9783030162016","9783030162023"],"references-count":17,"URL":"https:\/\/doi.org\/10.1007\/978-3-030-16202-3_4","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2019]]},"assertion":[{"value":"16 March 2019","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"WFLP","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Workshop on Functional and Constraint Logic Programming","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Frankfurt\/Main","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Germany","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2018","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"6 September 2018","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"6 September 2018","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"26","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"wflp2018","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"http:\/\/ppdp-lopstr-18.cs.uni-frankfurt.de\/wflp18.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"}},{"value":"EasyChair","order":2,"name":"conference_management_system","label":"Conference Management System","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information"}},{"value":"19","order":3,"name":"number_of_submissions_sent_for_review","label":"Number of Submissions Sent for Review","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information"}},{"value":"10","order":4,"name":"number_of_full_papers_accepted","label":"Number of Full Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information"}},{"value":"0","order":5,"name":"number_of_short_papers_accepted","label":"Number of Short Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information"}},{"value":"53% - 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"}},{"value":"4","order":7,"name":"average_number_of_reviews_per_paper","label":"Average Number of Reviews per Paper","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information"}},{"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"}},{"value":"Yes","order":9,"name":"external_reviewers_involved","label":"External Reviewers Involved","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information"}}]}}