{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,27]],"date-time":"2026-02-27T03:47:01Z","timestamp":1772164021887,"version":"3.50.1"},"publisher-location":"New York, NY, USA","reference-count":40,"publisher":"ACM","license":[{"start":{"date-parts":[[2010,9,27]],"date-time":"2010-09-27T00:00:00Z","timestamp":1285545600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":[],"published-print":{"date-parts":[[2010,9,27]]},"DOI":"10.1145\/1863543.1863585","type":"proceedings-article","created":{"date-parts":[[2010,9,28]],"date-time":"2010-09-28T13:41:50Z","timestamp":1285681310000},"page":"285-296","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":35,"title":["Total parser combinators"],"prefix":"10.1145","author":[{"given":"Nils Anders","family":"Danielsson","sequence":"first","affiliation":[{"name":"University of Nottingham, Nottingham, United Kingdom"}]}],"member":"320","published-online":{"date-parts":[[2010,9,27]]},"reference":[{"key":"e_1_3_2_2_1_1","volume-title":"The Agda Wiki.","author":"Team The Agda","year":"2010","unstructured":"}} The Agda Team . The Agda Wiki. Available at http:\/\/wiki.portal.chalmers.se\/agda\/, 2010 . }}The Agda Team. The Agda Wiki. Available at http:\/\/wiki.portal.chalmers.se\/agda\/, 2010."},{"key":"e_1_3_2_2_2_1","volume-title":"Termination checking in the presence of nested inductive and coinductive types. Note supporting presentation given at the Workshop on Partiality and Recursion in Interactive Theorem Provers","author":"Altenkirch Thorsten","year":"2010","unstructured":"}} Thorsten Altenkirch and Nils Anders Danielsson . Termination checking in the presence of nested inductive and coinductive types. Note supporting presentation given at the Workshop on Partiality and Recursion in Interactive Theorem Provers , Edinburgh, UK , 2010 . }}Thorsten Altenkirch and Nils Anders Danielsson. Termination checking in the presence of nested inductive and coinductive types. Note supporting presentation given at the Workshop on Partiality and Recursion in Interactive Theorem Provers, Edinburgh, UK, 2010."},{"key":"e_1_3_2_2_3_1","first-page":"18","volume-title":"Preliminary Proceedings of the Ninth Workshop on Language Descriptions Tools and Applications, LDTA 2009","author":"Baars Arthur","year":"2009","unstructured":"}} Arthur Baars , S. Doaitse Swierstra , and Marcos Viera . Typed transformations of typed grammars: The left corner transform . In Preliminary Proceedings of the Ninth Workshop on Language Descriptions Tools and Applications, LDTA 2009 , pages 18 -- 33 , 2009 . }}Arthur Baars, S. Doaitse Swierstra, and Marcos Viera. Typed transformations of typed grammars: The left corner transform. In Preliminary Proceedings of the Ninth Workshop on Language Descriptions Tools and Applications, LDTA 2009, pages 18--33, 2009."},{"key":"e_1_3_2_2_4_1","doi-asserted-by":"publisher","DOI":"10.5555\/3266641.3266659"},{"key":"e_1_3_2_2_5_1","first-page":"58","volume-title":"Tenth International Conference, MPC 2010","volume":"6120","author":"Brink Kasper","year":"2010","unstructured":"}} Kasper Brink , Stefan Holdermans , and Andres L\u00f6h . Dependently typed grammars. In Mathematics of Program Construction , Tenth International Conference, MPC 2010 , volume 6120 of LNCS, pages 58 -- 79 , 2010 . }}Kasper Brink, Stefan Holdermans, and Andres L\u00f6h. Dependently typed grammars. In Mathematics of Program Construction, Tenth International Conference, MPC 2010, volume 6120 of LNCS, pages 58--79, 2010."},{"key":"e_1_3_2_2_6_1","doi-asserted-by":"publisher","DOI":"10.1145\/321239.321249"},{"key":"e_1_3_2_2_7_1","volume-title":"Recursive Programming Techniques","author":"Burge William H.","year":"1975","unstructured":"}} William H. Burge . Recursive Programming Techniques . Addison-Wesley , 1975 . }}William H. Burge. Recursive Programming Techniques. Addison-Wesley, 1975."},{"key":"e_1_3_2_2_10_1","doi-asserted-by":"publisher","DOI":"10.1017\/S0956796804005192"},{"key":"e_1_3_2_2_11_1","doi-asserted-by":"publisher","DOI":"10.5555\/646066.756689"},{"key":"e_1_3_2_2_12_1","first-page":"62","volume-title":"International Workshop TYPES '93","volume":"806","author":"Coquand Thierry","year":"1994","unstructured":"}} Thierry Coquand . Infinite objects in type theory. In Types for Proofs and Programs , International Workshop TYPES '93 , volume 806 of LNCS, pages 62 -- 78 , 1994 . }}Thierry Coquand. Infinite objects in type theory. In Types for Proofs and Programs, International Workshop TYPES '93, volume 806 of LNCS, pages 62--78, 1994."},{"key":"e_1_3_2_2_13_1","doi-asserted-by":"publisher","DOI":"10.4204\/EPTCS.43.3"},{"key":"e_1_3_2_2_14_1","first-page":"100","volume-title":"Tenth International Conference, MPC 2010","volume":"6120","author":"Danielsson Nils Anders","year":"2010","unstructured":"}} Nils Anders Danielsson and Thorsten Altenkirch . Subtyping, de\u00adclar\u00ada\u00adtive\u00adly : An exercise in mixed induction and coinduction. In Mathematics of Program Construction , Tenth International Conference, MPC 2010 , volume 6120 of LNCS, pages 100 -- 118 , 2010 . }}Nils Anders Danielsson and Thorsten Altenkirch. Subtyping, de\u00adclar\u00ada\u00adtive\u00adly: An exercise in mixed induction and coinduction. In Mathematics of Program Construction, Tenth International Conference, MPC 2010, volume 6120 of LNCS, pages 100--118, 2010."},{"key":"e_1_3_2_2_15_1","volume-title":"Structurally recursive descent parsing. Unpublished note","author":"Danielsson Nils Anders","year":"2008","unstructured":"}} Nils Anders Danielsson and Ulf Norell . Structurally recursive descent parsing. Unpublished note , 2008 . }}Nils Anders Danielsson and Ulf Norell. Structurally recursive descent parsing. Unpublished note, 2008."},{"key":"e_1_3_2_2_16_1","volume-title":"Parsing mixfix operators. To appear in the proceedings of the 20th International Symposium on the Implementation and Application of Functional Languages (IFL","author":"Danielsson Nils Anders","year":"2008","unstructured":"}} Nils Anders Danielsson and Ulf Norell . Parsing mixfix operators. To appear in the proceedings of the 20th International Symposium on the Implementation and Application of Functional Languages (IFL 2008 ), 2009. }}Nils Anders Danielsson and Ulf Norell. Parsing mixfix operators. To appear in the proceedings of the 20th International Symposium on the Implementation and Application of Functional Languages (IFL 2008), 2009."},{"key":"e_1_3_2_2_17_1","doi-asserted-by":"publisher","DOI":"10.1002\/spe.4380170603"},{"key":"e_1_3_2_2_18_1","series-title":"LNCS","first-page":"1","volume-title":"Advanced Functional Programming","author":"Fokker Jeroen","year":"1995","unstructured":"}} Jeroen Fokker . Functional parsers . In Advanced Functional Programming , volume 925 of LNCS , pages 1 -- 23 , 1995 . }}Jeroen Fokker. Functional parsers. In Advanced Functional Programming, volume 925 of LNCS, pages 1--23, 1995."},{"key":"e_1_3_2_2_19_1","series-title":"LNCS","doi-asserted-by":"crossref","first-page":"167","DOI":"10.1007\/978-3-540-77442-6_12","volume-title":"PADL 2008: Practical Aspects of Declarative Languages","author":"Frost Richard A.","year":"2008","unstructured":"}} Richard A. Frost , Rahmatullah Hafiz , and Paul Callaghan . Parser combinators for ambiguous left-recursive grammars . In PADL 2008: Practical Aspects of Declarative Languages , volume 4902 of LNCS , pages 167 -- 181 , 2008 . }}Richard A. Frost, Rahmatullah Hafiz, and Paul Callaghan. Parser combinators for ambiguous left-recursive grammars. In PADL 2008: Practical Aspects of Declarative Languages, volume 4902 of LNCS, pages 167--181, 2008."},{"key":"e_1_3_2_2_21_1","doi-asserted-by":"publisher","DOI":"10.2168\/LMCS-5(3:9)2009"},{"key":"e_1_3_2_2_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/944705.944727"},{"key":"e_1_3_2_2_23_1","doi-asserted-by":"publisher","DOI":"10.1017\/S0956796800000411"},{"key":"e_1_3_2_2_24_1","doi-asserted-by":"publisher","DOI":"10.5555\/216261.216269"},{"key":"e_1_3_2_2_25_1","volume-title":"December","author":"Kiselyov Oleg","year":"2009","unstructured":"}} Oleg Kiselyov . Parsec-like parser combinator that handles left recursion? Message to the Haskell-Cafe mailing list , December 2009 . }}Oleg Kiselyov. Parsec-like parser combinator that handles left recursion? Message to the Haskell-Cafe mailing list, December 2009."},{"key":"e_1_3_2_2_26_1","series-title":"LNCS","doi-asserted-by":"crossref","first-page":"120","DOI":"10.1007\/3-540-48515-5_8","volume-title":"IFL'98: Implementation of Functional Languages","author":"Koopman Pieter","year":"1999","unstructured":"}} Pieter Koopman and Rinus Plasmeijer . Efficient combinator parsers . In IFL'98: Implementation of Functional Languages , volume 1595 of LNCS , pages 120 -- 136 , 1999 . }}Pieter Koopman and Rinus Plasmeijer. Efficient combinator parsers. In IFL'98: Implementation of Functional Languages, volume 1595 of LNCS, pages 120--136, 1999."},{"key":"e_1_3_2_2_27_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-11957-6_19"},{"key":"e_1_3_2_2_28_1","series-title":"LNCS","first-page":"26","volume-title":"Mathematical Foundations of Computer Science","author":"Kozen Dexter","year":"1990","unstructured":"}} Dexter Kozen . On Kleene algebras and closed semirings . In Mathematical Foundations of Computer Science 1990 , volume 452 of LNCS , pages 26 -- 47 , 1990. }}Dexter Kozen. On Kleene algebras and closed semirings. In Mathematical Foundations of Computer Science 1990, volume 452 of LNCS, pages 26--47, 1990."},{"key":"e_1_3_2_2_30_1","volume-title":"Parsing with fixed points. Master's thesis","author":"Lickman Paul","year":"1995","unstructured":"}} Paul Lickman . Parsing with fixed points. Master's thesis , University of Cambridge , 1995 . }}Paul Lickman. Parsing with fixed points. Master's thesis, University of Cambridge, 1995."},{"key":"e_1_3_2_2_31_1","volume-title":"Pure functional parsing","author":"Ljungl\u00f6f Peter","year":"2002","unstructured":"}} Peter Ljungl\u00f6f . Pure functional parsing ; an advanced tutorial. Licentiate thesis, Department of Computing Science, Chalmers University of Technology and G\u00f6teborg University , 2002 . }}Peter Ljungl\u00f6f. Pure functional parsing; an advanced tutorial. Licentiate thesis, Department of Computing Science, Chalmers University of Technology and G\u00f6teborg University, 2002."},{"key":"e_1_3_2_2_32_1","doi-asserted-by":"publisher","DOI":"10.1016\/S0019-9958(69)90334-9"},{"key":"e_1_3_2_2_33_1","volume-title":"Hind\u00e5s","author":"McBride Conor","year":"2002","unstructured":"}} Conor McBride and James McKinna . Seeing and doing. Presentation (given by McBride) at the Workshop on Termination and Type Theory , Hind\u00e5s , Sweden , 2002 . }}Conor McBride and James McKinna. Seeing and doing. Presentation (given by McBride) at the Workshop on Termination and Type Theory, Hind\u00e5s, Sweden, 2002."},{"key":"e_1_3_2_2_34_1","doi-asserted-by":"publisher","DOI":"10.1017\/S0956796807006326"},{"key":"e_1_3_2_2_35_1","unstructured":"}}Erik Meijer. Calculating Compilers. PhD thesis Nijmegen University 1992.  }}Erik Meijer. Calculating Compilers. PhD thesis Nijmegen University 1992."},{"key":"e_1_3_2_2_37_1","volume-title":"Strongly specified parser combinators. Post to the Muad\u2018Dib blog","year":"2009","unstructured":"}}Muad\u2018Dib. Strongly specified parser combinators. Post to the Muad\u2018Dib blog , 2009 . }}Muad\u2018Dib. Strongly specified parser combinators. Post to the Muad\u2018Dib blog, 2009."},{"key":"e_1_3_2_2_39_1","series-title":"LNCS","doi-asserted-by":"crossref","first-page":"504","DOI":"10.1007\/3-540-10007-5_47","volume-title":"Abstract Software Specifications","author":"Park David","year":"1980","unstructured":"}} David Park . On the semantics of fair parallelism . In Abstract Software Specifications , volume 86 of LNCS , pages 504 -- 526 , 1980 . }}David Park. On the semantics of fair parallelism. In Abstract Software Specifications, volume 86 of LNCS, pages 504--526, 1980."},{"key":"e_1_3_2_2_40_1","doi-asserted-by":"publisher","DOI":"10.1109\/LICS.1991.151632"},{"key":"e_1_3_2_2_41_1","doi-asserted-by":"publisher","DOI":"10.5555\/646733.701306"},{"key":"e_1_3_2_2_44_1","series-title":"LNCS","doi-asserted-by":"crossref","first-page":"184","DOI":"10.1007\/3-540-61628-4_7","volume-title":"Advanced Functional Programming","author":"Doaitse Swierstra S.","year":"1996","unstructured":"}} S. Doaitse Swierstra and Luc Duponcheel . Deterministic, error-correcting combinator parsers . In Advanced Functional Programming , volume 1129 of LNCS , pages 184 -- 207 , 1996 . }}S. Doaitse Swierstra and Luc Duponcheel. Deterministic, error-correcting combinator parsers. In Advanced Functional Programming, volume 1129 of LNCS, pages 184--207, 1996."},{"key":"e_1_3_2_2_45_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-03359-9_30"},{"key":"e_1_3_2_2_46_1","doi-asserted-by":"crossref","unstructured":"}}\n      Philip\n      Wadler\n    .\n  How to replace failure by a list of successes\n  ; a method for exception handling backtracking and pattern matching in lazy functional languages. \n  In Functional Programming Languages and Computer Architecture volume \n  201\n   of \n  LNCS pages \n  113\n  --\n  128 1985\n  .   }}Philip Wadler. How to replace failure by a list of successes; a method for exception handling backtracking and pattern matching in lazy functional languages. In Functional Programming Languages and Computer Architecture volume 201 of LNCS pages 113--128 1985.","DOI":"10.1007\/3-540-15975-4_33"},{"key":"e_1_3_2_2_47_1","volume-title":"Proceedings of the 1998 ACM SIGPLAN Workshop on ML","author":"Wadler Philip","year":"1998","unstructured":"}} Philip Wadler , Walid Taha , and David MacQueen . How to add laziness to a strict language, without even being odd . In Proceedings of the 1998 ACM SIGPLAN Workshop on ML , 1998 . }}Philip Wadler, Walid Taha, and David MacQueen. How to add laziness to a strict language, without even being odd. In Proceedings of the 1998 ACM SIGPLAN Workshop on ML, 1998."},{"key":"e_1_3_2_2_48_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-85373-2_6"}],"event":{"name":"ICFP '10: ACM SIGPLAN International Conference on Functional Programming","location":"Baltimore Maryland USA","acronym":"ICFP '10","sponsor":["SIGPLAN ACM Special Interest Group on Programming Languages"]},"container-title":["Proceedings of the 15th ACM SIGPLAN international conference on Functional programming"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1863543.1863585","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/1863543.1863585","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T07:39:52Z","timestamp":1750232392000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1863543.1863585"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2010,9,27]]},"references-count":40,"alternative-id":["10.1145\/1863543.1863585","10.1145\/1863543"],"URL":"https:\/\/doi.org\/10.1145\/1863543.1863585","relation":{"is-identical-to":[{"id-type":"doi","id":"10.1145\/1932681.1863585","asserted-by":"object"}]},"subject":[],"published":{"date-parts":[[2010,9,27]]},"assertion":[{"value":"2010-09-27","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}