publications: - title: "An Extended LR Parsing Algorithm For Grammars Using Feature-Based Syntactic Categories" author: - name: "Tsuneko Nakazawa" link: "https://researchr.org/alias/tsuneko-nakazawa" year: "1991" doi: "http://acl.ldc.upenn.edu/E/E91/E91-1013.pdf" links: doi: "http://acl.ldc.upenn.edu/E/E91/E91-1013.pdf" tags: - "parsing algorithm" - "rule-based" - "parsing" - "grammar" researchr: "https://researchr.org/publication/Nakazawa91" cites: 0 citedby: 0 pages: "69-74" booktitle: "EACL" kind: "inproceedings" key: "Nakazawa91" - title: "A Systolic Parsing Algorithm for a Visual Programming Language" author: - name: "Adam W. Bojanczyk" link: "https://researchr.org/alias/adam-w.-bojanczyk" - name: "Takayuki Dan Kimura" link: "https://researchr.org/alias/takayuki-dan-kimura" year: "1986" tags: - "parsing algorithm" - "programming languages" - "programming" - "parsing" researchr: "https://researchr.org/publication/BojanczykK86" cites: 0 citedby: 0 pages: "48-55" booktitle: "Proceedings of the Fall Joint Computer Conference, November 2-6, 1986, Dallas, Texas, USA" publisher: "IEEE Computer Society" isbn: "0-8186-0743-2" kind: "inproceedings" key: "BojanczykK86" - title: "Parsing expression grammars made practical" author: - name: "Nicolas Laurent" link: "https://researchr.org/alias/nicolas-laurent" - name: "Kim Mens" link: "https://researchr.org/alias/kim-mens" year: "2015" doi: "http://doi.acm.org/10.1145/2814251.2814265" links: doi: "http://doi.acm.org/10.1145/2814251.2814265" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/sle/LaurentM15" researchr: "https://researchr.org/publication/LaurentM15-SLE" cites: 0 citedby: 0 pages: "167-172" booktitle: "Proceedings of the 2015 ACM SIGPLAN International Conference on Software Language Engineering, SLE 2015, Pittsburgh, PA, USA, October 25-27, 2015" editor: - name: "Richard F. Paige" link: "https://researchr.org/alias/richard-f.-paige" - name: "Davide Di Ruscio" link: "https://researchr.org/alias/davide-di-ruscio" - name: "Markus Völter" link: "http://www.voelter.de/" publisher: "ACM" isbn: "978-1-4503-3686-4" kind: "inproceedings" key: "LaurentM15-SLE" - title: "Disambiguation Filters for Scannerless Generalized LR Parsers" author: - name: "Mark G. J. van den Brand" link: "http://www.win.tue.nl/~mvdbrand/" - name: "Jeroen Scheerder" link: "http://www.linkedin.com/in/jeroenscheerder" - name: "Jurgen J. Vinju" link: "http://homepages.cwi.nl/~jurgenv/" - name: "Eelco Visser" link: "http://eelcovisser.org" year: "2002" doi: "https://doi.org/10.1007/3-540-45937-5_12" abstract: "In this paper we present the fusion of generalized LR parsing and scannerless parsing. This combination supports syntax definitions in which all aspects (lexical and context-free) of the syntax of a language are defined explicitly in one formalism. Furthermore, there are no restrictions on the class of grammars, thus allowing a natural syntax tree structure. Ambiguities that arise through the use of unrestricted grammars are handled by explicit disambiguation constructs, instead of implicit defaults that are taken by traditional scanner and parser generators. Hence, a syntax definition becomes a full declarative description of a language. Scannerless generalized LR parsing is a viable technique that has been applied in various industrial and academic projects. " links: doi: "https://doi.org/10.1007/3-540-45937-5_12" tags: - "GLR parsing" - "syntax definition" - "SDF" - "lexical syntax" - "scannerless" - "disambiguation" - "GLR" - "context-aware" - "parsing" - "scannerless parsing" - "ASF+SDF" - "SGLR" - "grammar" researchr: "https://researchr.org/publication/BrandSVV02" cites: 0 citedby: 4 pages: "143-158" booktitle: "Compiler Construction, 11th International Conference, CC 2002, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2002, Grenoble, France, April 8-12, 2002, Proceedings" editor: - name: "R. Nigel Horspool" link: "https://researchr.org/alias/r.-nigel-horspool" volume: "2304" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "3-540-43369-4" kind: "inproceedings" key: "BrandSVV02" - title: "Object-Oriented Visual Language Grammar and its Parsing Algorithm" author: - name: "Kyung-An Kim" link: "https://researchr.org/alias/kyung-an-kim" - name: "Kiho Lee" link: "https://researchr.org/alias/kiho-lee" year: "1998" tags: - "parsing algorithm" - "parsing" - "grammar" researchr: "https://researchr.org/publication/KimL98%3A1" cites: 0 citedby: 0 pages: "86-87" booktitle: "VL" kind: "inproceedings" key: "KimL98:1" - title: "Modernizing parsing tools: parsing and analysis with object-oriented programming" author: - name: "Steven O'Hara" link: "https://researchr.org/alias/steven-o%27hara" - name: "Rocky Slavin" link: "https://researchr.org/alias/rocky-slavin" year: "2019" doi: "https://doi.org/10.1145/3315568.3329967" links: doi: "https://doi.org/10.1145/3315568.3329967" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/pldi/OHaraS19" researchr: "https://researchr.org/publication/OHaraS19" cites: 0 citedby: 0 pages: "20-25" booktitle: "Proceedings of the 8th ACM SIGPLAN International Workshop on State Of the Art in Program Analysis, SOAP@PLDI 2019, Phoenix, AZ, USA, June 22, 2019" editor: - name: "Neville Grech" link: "https://researchr.org/alias/neville-grech" - name: "Thierry Lavoie" link: "https://researchr.org/alias/thierry-lavoie" publisher: "ACM" isbn: "978-1-4503-6720-2" kind: "inproceedings" key: "OHaraS19" - title: "A Parallel Parsing Algorithm for Natural Language using Tree Adjoining Grammar" author: - name: "Tom Nurkkala" link: "https://researchr.org/alias/tom-nurkkala" - name: "Vipin Kumar" link: "https://researchr.org/alias/vipin-kumar" year: "1994" tags: - "parsing algorithm" - "parsing" - "grammar" researchr: "https://researchr.org/publication/NurkkalaK94" cites: 0 citedby: 0 pages: "820-828" booktitle: "Proceedings of the 8th International Symposium on Parallel Processing, Cancún, Mexico, April 1994" editor: - name: "Howard Jay Siegel" link: "https://researchr.org/alias/howard-jay-siegel" publisher: "IEEE Computer Society" isbn: "0-8186-5602-6" kind: "inproceedings" key: "NurkkalaK94" - title: "Weighted Deductive Parsing and Knuth s Algorithm" author: - name: "Mark-Jan Nederhof" link: "https://researchr.org/alias/mark-jan-nederhof" year: "2003" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/Nederhof03" cites: 0 citedby: 0 journal: "Computational Linguistics" volume: "29" number: "1" pages: "135-143" kind: "article" key: "Nederhof03" - title: "Eco: A Language Composition Editor" author: - name: "Lukas Diekmann" link: "https://researchr.org/alias/lukas-diekmann" - name: "Laurence Tratt" link: "https://researchr.org/alias/laurence-tratt" year: "2014" doi: "http://dx.doi.org/10.1007/978-3-319-11245-9_5" links: doi: "http://dx.doi.org/10.1007/978-3-319-11245-9_5" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/sle/DiekmannT14" researchr: "https://researchr.org/publication/DiekmannT14" cites: 0 citedby: 0 pages: "82-101" booktitle: "Software Language Engineering - 7th International Conference, SLE 2014, Västerås, Sweden, September 15-16, 2014. Proceedings" editor: - name: "Benoît Combemale" link: "https://researchr.org/alias/beno%C3%AEt-combemale" - name: "David J. Pearce" link: "https://researchr.org/alias/david-j.-pearce" - name: "Olivier Barais" link: "https://researchr.org/alias/olivier-barais" - name: "Jurgen J. Vinju" link: "http://homepages.cwi.nl/~jurgenv/" volume: "8706" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "978-3-319-11244-2" kind: "inproceedings" key: "DiekmannT14" - title: "An attribute language definition for adaptable parsing expression grammars" author: - name: "Elton M. Cardoso" link: "https://researchr.org/alias/elton-m.-cardoso" - name: "Rodrigo G. Ribeiro" link: "https://researchr.org/alias/rodrigo-g.-ribeiro" - name: "Leonardo Vieira dos Santos Reis" link: "https://researchr.org/alias/leonardo-vieira-dos-santos-reis" - name: "Mariza A. S. Bigonha" link: "https://researchr.org/alias/mariza-a.-s.-bigonha" - name: "Roberto S. Bigonha" link: "https://researchr.org/alias/roberto-s.-bigonha" - name: "Vladimir Oliveira Di Iorio" link: "https://researchr.org/alias/vladimir-oliveira-di-iorio" year: "2019" doi: "https://doi.org/10.1145/3297280.3299738" links: doi: "https://doi.org/10.1145/3297280.3299738" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/sac/CardosoRRBBI19" researchr: "https://researchr.org/publication/CardosoRRBBI19" cites: 0 citedby: 0 pages: "1518-1525" booktitle: "Proceedings of the 34th ACM/SIGAPP Symposium on Applied Computing, SAC 2019, Limassol, Cyprus, April 8-12, 2019" editor: - name: "Chih-Cheng Hung" link: "https://researchr.org/alias/chih-cheng-hung" - name: "George A. Papadopoulos" link: "https://researchr.org/alias/george-a.-papadopoulos" publisher: "ACM" isbn: "978-1-4503-5933-7" kind: "inproceedings" key: "CardosoRRBBI19" - title: "Repairing syntax errors in LR parsers" author: - name: "Rafael Corchuelo" link: "https://researchr.org/alias/rafael-corchuelo" - name: "José Antonio Pérez" link: "https://researchr.org/alias/jos%C3%A9-antonio-p%C3%A9rez" - name: "Antonio Ruiz Cortés" link: "https://researchr.org/alias/antonio-ruiz-cort%C3%A9s" - name: "Miguel Toro" link: "https://researchr.org/alias/miguel-toro" year: "2002" doi: "http://doi.acm.org/10.1145/586088.586092" links: doi: "http://doi.acm.org/10.1145/586088.586092" tags: - "parsing" researchr: "https://researchr.org/publication/CorchueloPRT02" cites: 0 citedby: 0 journal: "ACM Transactions on Programming Languages and Systems" volume: "24" number: "6" pages: "698-710" kind: "article" key: "CorchueloPRT02" - title: "A Bottom-Up Adaption of Earley s Parsing Algorithm" author: - name: "Frédéric Voisin" link: "https://researchr.org/alias/fr%C3%A9d%C3%A9ric-voisin" year: "1988" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/Voisin88" cites: 0 citedby: 0 pages: "146-160" booktitle: "Programming Language Implementation and Logic Programming, 1st International Workshop PLILP 88, Orléans, France, May 16-18, 1988, Proceedings" editor: - name: "Pierre Deransart" link: "https://researchr.org/alias/pierre-deransart" - name: "Bernard Lorho" link: "https://researchr.org/alias/bernard-lorho" - name: "Jan Maluszynski" link: "https://researchr.org/alias/jan-maluszynski" volume: "348" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "3-540-50820-1" kind: "inproceedings" key: "Voisin88" - title: "A Yo-Yo Parsing Algorithm for a Large Class of van Wijngaarden Grammars" author: - name: "Anthony J. Fisher" link: "https://researchr.org/alias/anthony-j.-fisher" year: "1992" tags: - "parsing algorithm" - "parsing" - "grammar" researchr: "https://researchr.org/publication/Fisher92" cites: 0 citedby: 0 journal: "Acta Informatica" volume: "29" number: "5" pages: "461-481" kind: "article" key: "Fisher92" - title: "Interactive parser synthesis by example" author: - name: "Alan Leung" link: "https://researchr.org/alias/alan-leung" - name: "John Sarracino" link: "https://researchr.org/alias/john-sarracino" - name: "Sorin Lerner" link: "https://researchr.org/alias/sorin-lerner" year: "2015" doi: "http://doi.acm.org/10.1145/2737924.2738002" links: doi: "http://doi.acm.org/10.1145/2737924.2738002" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/pldi/LeungSL15" researchr: "https://researchr.org/publication/LeungSL15" cites: 0 citedby: 0 pages: "565-574" booktitle: "Proceedings of the 36th ACM SIGPLAN Conference on Programming Language Design and Implementation, Portland, OR, USA, June 15-17, 2015" editor: - name: "David Grove" link: "https://researchr.org/alias/david-grove" - name: "Steve Blackburn" link: "https://researchr.org/alias/steve-blackburn" publisher: "ACM" isbn: "978-1-4503-3468-6" kind: "inproceedings" key: "LeungSL15" - title: "An Incremental LL(1) Parsing Algorithm" author: - name: "Wuu Yang" link: "https://researchr.org/alias/wuu-yang" year: "1993" tags: - "parsing algorithm" - "parsing" - "incremental" researchr: "https://researchr.org/publication/Yang93a" cites: 0 citedby: 0 journal: "Inf. Process. Lett." volume: "48" number: "2" pages: "67-72" kind: "article" key: "Yang93a" - title: "The Grammar Tool Box: A Case Study Comparing GLR Parsing Algorithms" author: - name: "Adrian Johnstone" link: "http://www.cs.rhul.ac.uk/~adrian/" - name: "Elizabeth Scott" link: "http://www.cs.rhul.ac.uk/People/staff/scott.html" - name: "Giorgios R. Economopoulos" link: "http://users.ecs.soton.ac.uk/gre/" year: "2004" doi: "http://dx.doi.org/10.1016/j.entcs.2004.06.008" abstract: "The Grammar Tool Box is a toolset for manipulating Context Free Grammars and objects associated with them such as parsers, languages and derivations. GTB has three main rôles: as a pedagogic tool; as an experimental platform for novel algorithms and representations; and as a production tool for translator front end generation. In this paper we give an overview of GTB and its companion Java-based animator tool PAT. We illustrate the use of the toolset in the construction of a comparative study of three variants of the Tomita-style GLR parsing algorithm running on LR(0), SLR(1) and LR(1) tables for ANSI-C, ISO-Pascal and IBM VS-COBOL, and give results showing the size of the structures constructed by these parsers and the amount of searching required during the parse, which abstracts their runtime." links: doi: "http://dx.doi.org/10.1016/j.entcs.2004.06.008" tags: - "parsing algorithm" - "GLR parsing" - "rule-based" - "Java" - "case study" - "context free languages" - "GLR" - "C++" - "context-aware" - "Meta-Environment" - "Cobol" - "parsing" - "Pascal" - "grammar types" - "meta-objects" - "grammar" researchr: "https://researchr.org/publication/JohnstoneSE04%3A0" cites: 0 citedby: 0 journal: "Electronic Notes in Theoretical Computer Science" volume: "110" pages: "97-113" kind: "article" key: "JohnstoneSE04:0" - title: "An Efficient Chinese Parsing Algorithm for Computer-Assisted Language Learning" author: - name: "Chi-Hong Leung" link: "https://researchr.org/alias/chi-hong-leung" - name: "Yuen-Yan Chan" link: "https://researchr.org/alias/yuen-yan-chan" - name: "Albert K. W. Wu" link: "https://researchr.org/alias/albert-k.-w.-wu" year: "2002" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/LeungCW02" cites: 0 citedby: 0 pages: "195-196" booktitle: "ICCE" kind: "inproceedings" key: "LeungCW02" - title: "Generalised Regular Parsers" author: - name: "Adrian Johnstone" link: "http://www.cs.rhul.ac.uk/~adrian/" - name: "Elizabeth Scott" link: "https://researchr.org/alias/elizabeth-scott" year: "2003" doi: "http://link.springer.de/link/service/series/0558/bibs/2622/26220232.htm" links: doi: "http://link.springer.de/link/service/series/0558/bibs/2622/26220232.htm" tags: - "parsing" researchr: "https://researchr.org/publication/JohnstoneS03" cites: 0 citedby: 0 pages: "232-246" booktitle: "Compiler Construction, 12th International Conference, CC 2003, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2003, Warsaw, Poland, April 7-11, 2003, Proceedings" editor: - name: "Görel Hedin" link: "http://cs.lth.se/gorel_hedin" volume: "2622" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "3-540-00904-3" kind: "inproceedings" key: "JohnstoneS03" - title: "Extensible language - where are we going" author: - name: "Cheatham,Jr., T. E." link: "https://researchr.org/alias/cheatham%2Cjr.%2C-t.-e." year: "1971" doi: "http://doi.acm.org/10.1145/800006.807999" links: doi: "http://doi.acm.org/10.1145/800006.807999" tags: - "e-science" - "extensible language" researchr: "https://researchr.org/publication/807999" cites: 0 citedby: 0 booktitle: "Proceedings of the international symposium on Extensible languages" address: "New York, NY, USA" publisher: "ACM" kind: "inproceedings" key: "807999" - title: "On the translation of languages from left to right" author: - name: "Donald E. Knuth" link: "https://researchr.org/alias/donald-e.-knuth" year: "1965" abstract: "There has been much recent interest in languages whose grammar is sufficiently simple that an efficient left-to-right parsing algorithm can be mechanically produced from the grammar. In this paper, we define LR(k) grammars, which are perhaps the most general ones of this type, and they provide the basis for understanding all of the special tricks which have been used in the construction of parsing algorithms for languages with simple structure, e.g. algebraic languages. We give algorithms for deciding if a given grammar satisfies the LR(k) condition, for given k, and also give methods for generating recognizes for LR(k) grammars. It is shown that the problem of whether or not a grammar is LR(k) for some k is undecidable, and the paper concludes by establishing various connections between LR(k) grammars and deterministic languages. In particular, the LR(k) condition is a natural analogue, for grammars, of the deterministic condition, for languages." links: "pdf": "http://www.dc.uba.ar/materias/tl/2010/c2/files/Knuth-1965-TranslationofLanguages.pdf/at_download/file" tags: - "parsing algorithm" - "translation" - "e-science" - " algebra" - "parsing" - "grammar" researchr: "https://researchr.org/publication/knuth1965translation" cites: 0 citedby: 0 journal: "Information and control" volume: "8" number: "6" kind: "article" key: "knuth1965translation" - title: "A new top-down parsing algorithm to accommodate ambiguity and left recursion in polynomial time" author: - name: "Richard A. Frost" link: "https://researchr.org/alias/richard-a.-frost" - name: "Rahmatullah Hafiz" link: "https://researchr.org/alias/rahmatullah-hafiz" year: "2006" doi: "http://doi.acm.org/10.1145/1149982.1149988" links: doi: "http://doi.acm.org/10.1145/1149982.1149988" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/FrostH06" cites: 0 citedby: 0 journal: "SIGPLAN Notices" volume: "41" number: "5" pages: "46-54" kind: "article" key: "FrostH06" - title: "Online Sequential Prediction via Incremental Parsing: The Active LeZi Algorithm" author: - name: "Karthik Gopalratnam" link: "https://researchr.org/alias/karthik-gopalratnam" - name: "Diane J. Cook" link: "https://researchr.org/alias/diane-j.-cook" year: "2007" doi: "http://doi.ieeecomputersociety.org/10.1109/MIS.2007.15" links: doi: "http://doi.ieeecomputersociety.org/10.1109/MIS.2007.15" tags: - "parsing algorithm" - "parsing" - "incremental" researchr: "https://researchr.org/publication/GopalratnamC07" cites: 0 citedby: 0 journal: "IEEE Intelligent Systems" volume: "22" number: "1" pages: "52-58" kind: "article" key: "GopalratnamC07" - title: "A backtracking LR algorithm for parsing ambiguous context-dependent languages" author: - name: "Adrian D. Thurston" link: "https://researchr.org/alias/adrian-d.-thurston" - name: "James R. Cordy" link: "http://research.cs.queensu.ca/~cordy/" year: "2006" doi: "http://doi.acm.org/10.1145/1188966.1188972" links: doi: "http://doi.acm.org/10.1145/1188966.1188972" tags: - "parsing algorithm" - "context-aware" - "parsing" researchr: "https://researchr.org/publication/ThurstonC06" cites: 0 citedby: 0 pages: "39-53" booktitle: "Proceedings of the 2006 conference of the Centre for Advanced Studies on Collaborative Research, October 16-19, 2006, Toronto, Ontario, Canada" editor: - name: "Hakan Erdogmus" link: "https://researchr.org/alias/hakan-erdogmus" - name: "Eleni Stroulia" link: "https://researchr.org/alias/eleni-stroulia" - name: "Darlene A. Stewart" link: "https://researchr.org/alias/darlene-a.-stewart" publisher: "IBM" kind: "inproceedings" key: "ThurstonC06" - title: "PPL - an extensible language that failed" author: - name: "Standish, Thomas A." link: "https://researchr.org/alias/standish%2C-thomas-a." year: "1971" doi: "http://doi.acm.org/10.1145/800006.807998" links: doi: "http://doi.acm.org/10.1145/800006.807998" tags: - "extensible language" researchr: "https://researchr.org/publication/807998" cites: 0 citedby: 0 booktitle: "Proceedings of the international symposium on Extensible languages" address: "New York, NY, USA" publisher: "ACM" kind: "inproceedings" key: "807998" - title: "A fast algorithm for video parsing using MPEG compressed sequences" author: - name: "Ke Shen" link: "https://researchr.org/alias/ke-shen" - name: "Edward J. Delp" link: "https://researchr.org/alias/edward-j.-delp" year: "1995" doi: "https://doi.org/10.1109/ICIP.1995.537462" links: doi: "https://doi.org/10.1109/ICIP.1995.537462" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/ShenD95" cites: 0 citedby: 0 pages: "2252-2255" booktitle: "ICIP" kind: "inproceedings" key: "ShenD95" - title: "Generalized Lr Parsing Algorithm for Boolean Grammars" author: - name: "Alexander Okhotin" link: "https://researchr.org/alias/alexander-okhotin" year: "2006" doi: "http://dx.doi.org/10.1142/S0129054106004029" links: doi: "http://dx.doi.org/10.1142/S0129054106004029" tags: - "parsing algorithm" - "parsing" - "grammar" researchr: "https://researchr.org/publication/Okhotin06" cites: 0 citedby: 0 journal: "Int. J. Found. Comput. Sci." volume: "17" number: "3" pages: "629-664" kind: "article" key: "Okhotin06" - title: "Extensible control structures" author: - name: "Prenner, Charles J." link: "https://researchr.org/alias/prenner%2C-charles-j." year: "1973" doi: "http://doi.acm.org/10.1145/800021.808301" links: doi: "http://doi.acm.org/10.1145/800021.808301" researchr: "https://researchr.org/publication/808301" cites: 0 citedby: 0 booktitle: "Proceeding of ACM SIGPLAN - SIGOPS interface meeting on Programming languages - operating systems" address: "New York, NY, USA" publisher: "ACM" kind: "inproceedings" key: "808301" - title: "A Parallel Evolutionary Algorithm for Stochastic Natural Language Parsing" author: - name: "Lourdes Araujo" link: "https://researchr.org/alias/lourdes-araujo" year: "2002" doi: "http://link.springer.de/link/service/series/0558/bibs/2439/24390700.htm" links: doi: "http://link.springer.de/link/service/series/0558/bibs/2439/24390700.htm" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/Araujo02" cites: 0 citedby: 0 pages: "700-709" booktitle: "Parallel Problem Solving from Nature - PPSN VII, 7th International Conference, Granada, Spain, September 7-11, 2002, Proceedings" editor: - name: "Juan J. Merelo Guervós" link: "https://researchr.org/alias/juan-j.-merelo-guerv%C3%B3s" - name: "Panagiotis Adamidis" link: "https://researchr.org/alias/panagiotis-adamidis" - name: "Hans-Georg Beyer" link: "https://researchr.org/alias/hans-georg-beyer" - name: "José Luis Fernández-Villacañas Martín" link: "https://researchr.org/alias/jos%C3%A9-luis-fern%C3%A1ndez-villaca%C3%B1as-mart%C3%ADn" - name: "Hans-Paul Schwefel" link: "https://researchr.org/alias/hans-paul-schwefel" volume: "2439" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "3-540-44139-5" kind: "inproceedings" key: "Araujo02" - title: "Easy language extension with Meta-AspectJ" author: - name: "Shan Shan Huang" link: "http://www.freeflygeek.com/" - name: "Yannis Smaragdakis" link: "http://smaragd.org" year: "2006" doi: "http://doi.acm.org/10.1145/1134436" links: doi: "http://doi.acm.org/10.1145/1134436" tags: - "AspectJ" - "meta-model" - "Meta-Environment" - "meta-objects" researchr: "https://researchr.org/publication/HuangS06" cites: 0 citedby: 1 pages: "865-868" booktitle: "28th International Conference on Software Engineering (ICSE 2006), Shanghai, China, May 20-28, 2006" editor: - name: "Leon J. Osterweil" link: "https://researchr.org/alias/leon-j.-osterweil" - name: "H. Dieter Rombach" link: "https://researchr.org/alias/h.-dieter-rombach" - name: "Mary Lou Soffa" link: "https://researchr.org/alias/mary-lou-soffa" publisher: "ACM" isbn: "1-59593-375-1" kind: "inproceedings" key: "HuangS06" - title: "BRNGLR: a cubic Tomita-style GLR parsing algorithm" author: - name: "Elizabeth Scott" link: "http://www.cs.rhul.ac.uk/People/staff/scott.html" - name: "Adrian Johnstone" link: "http://www.cs.rhul.ac.uk/~adrian/" - name: "Giorgios R. Economopoulos" link: "http://users.ecs.soton.ac.uk/gre/" year: "2007" doi: "http://dx.doi.org/10.1007/s00236-007-0054-z" abstract: "Tomita-style generalised LR (GLR) algorithms extend the standard LR algorithm to non-deterministic grammars by performing all possible choices of action. Cubic complexity is achieved if all rules are of length at most two. In this paper we shall show how to achieve cubic time bounds for all grammars by binarising the search performed whilst executing reduce actions in a GLR-style parser. We call the resulting algorithm Binary Right Nulled GLR (BRNGLR) parsing. The binarisation process generates run-time behaviour that is related to that shown by a parser which pre-processes its grammar or parse table into a binary form, but without the increase in table size and with a reduced run-time space overhead. BRNGLR parsers have worst-case cubic run time on all grammars, linear behaviour on LR(1) grammars and produce, in worst-case cubic time, a cubic size binary SPPF representation of all the derivations of a given sentence. " links: doi: "http://dx.doi.org/10.1007/s00236-007-0054-z" tags: - "parsing algorithm" - "GLR parsing" - "rule-based" - "GLR" - "rules" - "search" - "parsing" - "grammar" researchr: "https://researchr.org/publication/ScottJE07" cites: 0 citedby: 0 journal: "Acta Informatica" volume: "44" number: "6" pages: "427-461" kind: "article" key: "ScottJE07" - title: "TXL: A Rapid Prototyping System for Programming Language Dialects" author: - name: "James R. Cordy" link: "http://research.cs.queensu.ca/~cordy/" - name: "Charles D. Halpern-Hamu" link: "https://researchr.org/alias/charles-d.-halpern-hamu" - name: "Eric Promislow" link: "https://researchr.org/alias/eric-promislow" year: "1991" doi: "https://doi.org/10.1109/ICCL.1988.13075" links: doi: "https://doi.org/10.1109/ICCL.1988.13075" tags: - "programming languages" - "TXL" - "programming" researchr: "https://researchr.org/publication/CordyHP91" cites: 0 citedby: 1 journal: "Computer Languages, Systems \\& Structures" volume: "16" number: "1" pages: "97-107" kind: "article" key: "CordyHP91" - title: "A Modular SGLR Parsing Architecture for Systematic Performance Optimization" author: - name: "Jasper Denkers" link: "https://jasperdenkers.com" year: "2018" doi: "http://resolver.tudelft.nl/uuid:7d9f9bcc-117c-4617-860a-4e3e0bbc8988" abstract: "SGLR parsing is an approach that enables parsing of context-free languages by means of declarative, concise and maintainable syntax definition. Existing implementations suffer from performance issues and their architectures are often highly coupled without clear separation between their components. This work introduces a modular SGLR architecture with several variants implemented for its components to systematically benchmark and improve performance. This work evaluates these variants both independently and combined using artificial and real world programming languages grammars. The architecture is implemented in Java as JSGLR2, the successor of the original parser in Spoofax, interpreting parse tables generated by SDF3. The improvements combined result into a parsing and imploding time speedup from 3x on Java to 10x on GreenMarl with respect to the previous JSGLR implementation." links: doi: "http://resolver.tudelft.nl/uuid:7d9f9bcc-117c-4617-860a-4e3e0bbc8988" "tu delft library": "http://resolver.tudelft.nl/uuid:7d9f9bcc-117c-4617-860a-4e3e0bbc8988" researchr: "https://researchr.org/publication/Denkers2018" cites: 0 citedby: 1 school: "Delft University of Technology" kind: "mastersthesis" key: "Denkers2018" - title: "An Efficient Context-Free Parsing Algorithm for Natural Languages" author: - name: "Masaru Tomita" link: "https://researchr.org/alias/masaru-tomita" year: "1985" tags: - "parsing algorithm" - "context-aware" - "parsing" researchr: "https://researchr.org/publication/Tomita85" cites: 0 citedby: 1 pages: "756-764" booktitle: "IJCAI" kind: "inproceedings" key: "Tomita85" - title: "A Language Designer's Workbench: A One-Stop-Shop for Implementation and Verification of Language Designs" author: - name: "Eelco Visser" link: "http://eelcovisser.org" - name: "Guido Wachsmuth" link: "https://www.linkedin.com/in/guidowachsmuth/" - name: "Andrew P. Tolmach" link: "http://www.cs.pdx.edu/~apt" - name: "Pierre Néron" link: "https://researchr.org/profile/pierrejeanmichelneron/publications" - name: "Vlad A. Vergu" link: "http://www.linkedin.com/in/vladv" - name: "Augusto Passalaqua" link: "http://www.linkedin.com/pub/augusto-passalaqua/9/829/b29" - name: "Gabriël Konat" link: "http://nl.linkedin.com/in/gabrielkonat" year: "2014" doi: "http://doi.acm.org/10.1145/2661136.2661149" abstract: "The realization of a language design requires multiple artifacts that redundantly encode the same information. This entails significant effort for language implementors, and often results in late detection of errors in language definitions. In this paper we present a proof-of-concept language designer's workbench that supports generation of IDEs, interpreters, and verification infrastructure from a single source. This constitutes a first milestone on the way to a system that fully automates language implementation and verification. " links: doi: "http://doi.acm.org/10.1145/2661136.2661149" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/oopsla/VisserWTNVPK14" "pdf": "http://dl.acm.org/ft_gateway.cfm?id=2661149&ftid=1505232&dwn=1&CFID=550125770&CFTOKEN=54358949" researchr: "https://researchr.org/publication/VisserOnward14" cites: 0 citedby: 0 pages: "95-111" booktitle: "Onward! 2014, Proceedings of the 2014 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming & Software, part of SPLASH '14, Portland, OR, USA, October 20-24, 2014" editor: - name: "Andrew P. Black" link: "https://researchr.org/alias/andrew-p.-black" - name: "Shriram Krishnamurthi" link: "http://www.cs.brown.edu/~sk/" - name: "Bernd Bruegge" link: "https://researchr.org/alias/bernd-bruegge" - name: "Joseph N. Ruskiewicz" link: "https://researchr.org/alias/joseph-n.-ruskiewicz" publisher: "ACM" isbn: "978-1-4503-3210-1" kind: "inproceedings" key: "VisserOnward14" - title: "GLL parsing with flexible combinators" author: - name: "L. Thomas van Binsbergen" link: "https://researchr.org/alias/l.-thomas-van-binsbergen" - name: "Elizabeth Scott" link: "https://researchr.org/alias/elizabeth-scott" - name: "Adrian Johnstone" link: "https://researchr.org/alias/adrian-johnstone" year: "2018" doi: "https://doi.org/10.1145/3276604.3276618" links: doi: "https://doi.org/10.1145/3276604.3276618" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/sle/BinsbergenSJ18" researchr: "https://researchr.org/publication/BinsbergenSJ18" cites: 0 citedby: 0 pages: "16-28" booktitle: "Proceedings of the 11th ACM SIGPLAN International Conference on Software Language Engineering, SLE 2018, Boston, MA, USA, November 05-06, 2018" editor: - name: "David Pearce 0005" link: "https://researchr.org/alias/david-pearce-0005" - name: "Tanja Mayerhofer" link: "https://researchr.org/alias/tanja-mayerhofer" - name: "Friedrich Steimann" link: "http://www.fernuni-hagen.de/ps/team/friedrich.steimann.shtml" publisher: "ACM" isbn: "978-1-4503-6029-6" kind: "inproceedings" key: "BinsbergenSJ18" - title: "Concrete Syntax with Black Box Parsers" author: - name: "Rodin Aarssen" link: "https://researchr.org/alias/rodin-aarssen" - name: "Jurgen J. Vinju" link: "http://homepages.cwi.nl/~jurgenv/" - name: "Tijs van der Storm" link: "http://homepages.cwi.nl/~storm/" year: "2019" doi: "https://doi.org/10.22152/programming-journal.org/2019/3/15" links: doi: "https://doi.org/10.22152/programming-journal.org/2019/3/15" dblp: "http://dblp.uni-trier.de/rec/bibtex/journals/programming/AarssenVS19" researchr: "https://researchr.org/publication/AarssenVS19" cites: 0 citedby: 0 journal: "Programming Journal" volume: "3" number: "3" pages: "15" kind: "article" key: "AarssenVS19" - title: "Generalised LR parsing algorithms" author: - name: "Giorgios R. Economopoulos" link: "http://users.ecs.soton.ac.uk/gre/" year: "2006" month: "August" abstract: "This thesis concerns the parsing of context-free grammars. A parser is a tool, defined for a specific grammar, that constructs a syntactic representation of an input string and determines if the string is grammatically correct or not. An algorithm that is capable of parsing any context-free grammar is called a generalised (context-free) parser. This thesis is devoted to the theoretical analysis of generalised parsing algorithms. We describe, analyse and compare several algorithms that are based on Knuth's LR parser. This work underpins the design and implementation of the Parser Animation Tool (PAT). We use PAT to evaluate the asymptotic complexity of generalised parsing algorithms and to develop the Binary Right Nulled Generalised LR algorithm - a new cubic worst case parser. We also compare the Right Nullable Generalised LR, Reduction Incorporated Generalised LR, Farshi, Tomita and Earley algorithms using the statistical data collected by PAT. Our study indicates that the overheads associated with some of the parsing algorithms may have significant consequences on their behaviour. " tags: - "parsing algorithm" - "GLR parsing" - "rule-based" - "case study" - "design complexity" - "GLR" - "analysis" - "data-flow" - "context-aware" - "data-flow analysis" - "parsing" - "design" - "grammar" researchr: "https://researchr.org/publication/economopoulos06" cites: 0 citedby: 0 school: "Royal Holloway, University of London" advisor: - name: "Elizabeth Scott" link: "http://www.cs.rhul.ac.uk/People/staff/scott.html" - name: "Adrian Johnstone" link: "http://www.cs.rhul.ac.uk/~adrian/" kind: "phdthesis" key: "economopoulos06" - title: "Language extension and composition with language workbenches" author: - name: "Markus Völter" link: "http://www.voelter.de/" - name: "Eelco Visser" link: "http://eelcovisser.org" year: "2010" doi: "http://doi.acm.org/10.1145/1869542.1869623" abstract: " Domain-specific languages (DSLs) provide high expressive power focused on a particular problem domain. They provide linguistic abstractions and specialized syntax specifically designed for a domain, allowing developers to avoid boilerplate code and low-level implementation details. Language workbenches are tools that integrate all aspects of the definition of domain-specific or general-purpose software languages and the creation of a programming environment from such a definition. To count as a language workbench, a tool needs to satisfy basic requirements for the integrated definition of syntax, semantics, and editor services, and preferably also support language extension and composition. Within these requirements there is ample room for variation in the design of a language workbench. In this tutorial, we give an introduction to the state of the art in textual DSLs and language workbenches. We discuss the main requirements and variation points in the design of language workbenches, and describe two points in the design space using two state-of-the-art language workbenches. Spoofax is an example of a parser-based language workbench, while MPS represents language workbenches based on projectional editors. " links: doi: "http://doi.acm.org/10.1145/1869542.1869623" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/oopsla/VolterV10" tags: - "workbench" - "composition" - "language workbench" researchr: "https://researchr.org/publication/VolterV10" cites: 0 citedby: 0 pages: "301-304" booktitle: "Companion to the 25th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, SPLASH/OOPSLA 2010, October 17-21, 2010, Reno/Tahoe, Nevada, USA" editor: - name: "William R. Cook" link: "http://www.cs.utexas.edu/~wcook/" - name: "Siobhán Clarke" link: "https://www.cs.tcd.ie/Siobhan.Clarke/" - name: "Martin C. Rinard" link: "https://researchr.org/alias/martin-c.-rinard" publisher: "ACM" isbn: "978-1-4503-0240-1" kind: "inproceedings" key: "VolterV10" - title: "Code generation by model transformation: a case study in transformation modularity" author: - name: "Zef Hemel" link: "http://zef.me" - name: "Lennart C. L. Kats" link: "http://www.lclnet.nl/" - name: "Danny M. Groenewegen" link: "https://www.linkedin.com/in/dannygroenewegen/" - name: "Eelco Visser" link: "http://eelcovisser.org" year: "2010" doi: "10.1007/s10270-009-0136-1" abstract: "The realization of model-driven software development requires effective techniques for implementing code generators for domain-specific languages. This paper identifies techniques for improving separation of concerns in the implementation of generators. The core technique is code generation by model transformation, that is, the generation of a structured representation (model) of the target program instead of plain text. This approach enables the transformation of code after generation, which in turn enables the extension of the target language with features that allow better modularity in code generation rules. The technique can also be applied to ‘internal code generation’ for the translation of high-level extensions of a DSL to lower-level constructs within the same DSL using model-to-model transformations. This paper refines our earlier description of code generation by model transformation with an improved architecture for the composition of model-to-model normalization rules, solving the problem of combining type analysis and transformation. Instead of coarse-grained stages that alternate between normalization and type analysis, we have developed a new style of type analysis that can be integrated with normalizing transformations in a fine-grained manner. The normalization strategy has a simple extension interface and integrates non-local, context-sensitive transformation rules. We have applied the techniques in a realistic case study of domain-specific language engineering, i.e. the code generator for WebDSL, using Stratego, a high-level transformation language that integrates model-to-model, model-to-code, and code-to-code transformations." links: dblp: "http://dblp.uni-trier.de/rec/bibtex/journals/sosym/HemelKGV10" tags: - "model-to-model transformation" - "case study" - "meta-model" - "source-to-source" - "C++" - "code generation" - "model transformation" - "Meta-Environment" - "transformation" researchr: "https://researchr.org/publication/HemelKGV10" cites: 0 citedby: 0 journal: "Software and Systems Modeling" volume: "9" number: "3" pages: "375-402" kind: "article" key: "HemelKGV10" - title: "Declarative Specification of Template-Based Textual Editors" author: - name: "Tobi Vollebregt" link: "http://www.tobivollebregt.nl/" year: "2012" month: "April" doi: "http://resolver.tudelft.nl/uuid:8907468c-b102-4a35-aa84-d49bb2110541" abstract: "Syntax discoverability has been a crucial advantage of structure editors for new users of a language. Despite this advantage, structure editors have not been widely adopted. Nevertheless, the Cheetah system, developed at Capgemini, leverages a structure editor to aid domain experts modeling tax-benefit rules in a domain specific language. The structure editor suffers from a lack of free form editing and conversions from/to plain text. The Spoofax language workbench, developed at Delft University of Technology, uses a textual editor, which is syntax-aware due to immediate parsing and analyses. In this thesis we describe a migration from Cheetah to Spoofax, which aims to bring the advantages of text editing to the tax-benefit rule modeling language. During the migration, we experienced that current text-based language workbenches, such as Spoofax, require redundant specification of the ingredients for a template-based editor, which is detrimental to the quality of syntactic completion, as consistency and completeness of the definition cannot be guaranteed. We describe the design and implementation of a specification language for syntax definition based on templates. It unifies the specification of parser, pretty printer and template-based editor. We evaluate the template language by application to the tax-benefit rule modeling language and a language for mobile web applications." links: doi: "http://resolver.tudelft.nl/uuid:8907468c-b102-4a35-aa84-d49bb2110541" "pdf": "http://repository.tudelft.nl/assets/uuid:8907468c-b102-4a35-aa84-d49bb2110541/thesis-final.pdf" "tud repository": "http://resolver.tudelft.nl/uuid:8907468c-b102-4a35-aa84-d49bb2110541" tags: - "workbench" - "rule-based" - "syntax definition" - "completeness" - "model editor" - "meta-model" - "modeling language" - "modeling" - "language modeling" - "language design" - "rules" - "migration" - "web applications" - "consistency" - "language workbench" - "Spoofax" - "Meta-Environment" - "parsing" - "domain-specific language" researchr: "https://researchr.org/publication/Vollebregt2012" cites: 0 citedby: 0 school: "Delft University of Technology" address: "Delft, The Netherlands" advisor: - name: "Eelco Visser" link: "http://eelcovisser.org" - name: "Lennart C. L. Kats" link: "http://www.lclnet.nl/" kind: "mastersthesis" key: "Vollebregt2012" - title: "Practical Error Recovery in LR Parsing" author: - name: "Seppo Sippu" link: "https://researchr.org/alias/seppo-sippu" - name: "Eljas Soisalon-Soininen" link: "https://researchr.org/alias/eljas-soisalon-soininen" year: "1982" tags: - "parsing" researchr: "https://researchr.org/publication/SippiS82" cites: 0 citedby: 0 pages: "177-184" booktitle: "POPL" kind: "inproceedings" key: "SippiS82" - title: "Providing rapid feedback in generated modular language environments: adding error recovery to scannerless generalized-LR parsing" author: - name: "Lennart C. L. Kats" link: "http://www.lclnet.nl/" - name: "Maartje de Jonge" link: "https://researchr.org/profile/maartjedejonge/publications" - name: "Emma Nilsson-Nyman" link: "http://www.cs.lth.se/home/Emma.Nilsson_Nyman/" - name: "Eelco Visser" link: "http://eelcovisser.org" year: "2009" doi: "http://doi.acm.org/10.1145/1640089.1640122" abstract: "Integrated development environments (IDEs) increase programmer productivity, providing rapid, interactive feedback based on the syntax and semantics of a language. A heavy burden lies on developers of new languages to provide adequate IDE support. Code generation techniques provide a viable, efficient approach to semi-automatically produce IDE plugins. Key components for the realization of plugins are the language's grammar and parser. For embedded languages and language extensions, constituent IDE plugin modules and their grammars can be combined. Unlike conventional parsing algorithms, scannerless generalized-LR parsing supports the full set of context-free grammars, which is closed under composition, and hence can parse language embeddings and extensions composed from separate grammar modules. To apply this algorithm in an interactive environment, this paper introduces a novel error recovery mechanism, which allows it to be used with files with syntax errors -- common in interactive editing. Error recovery is vital for providing rapid feedback in case of syntax errors, as most IDE services depend on the parser -- from syntax highlighting to semantic analysis and cross-referencing. We base our approach on the principles of island grammars, and derive permissive grammars with error recovery productions from normal SDF grammars. To cope with the added complexity of these grammars, we adapt the parser to support backtracking. We evaluate the recovery quality and performance of our approach using a set of composed languages, based on Java and Stratego. " links: doi: "http://doi.acm.org/10.1145/1640089.1640122" successor: "https://researchr.org/publication/JongeKVS12" "technical report (pdf)": "http://www.lclnet.nl/publications/error-recovery.pdf" tags: - "parsing algorithm" - "semantics" - "rule-based" - "Java" - "SDF" - "composition" - "analysis" - "principles" - "C++" - "code generation" - "context-aware" - "Meta-Environment" - "parsing" - "scannerless parsing" - "systematic-approach" - "island grammars" - "ASF+SDF" - "grammar" - "Stratego" researchr: "https://researchr.org/publication/KatsJNV09" cites: 0 citedby: 1 pages: "445-464" booktitle: "Proceedings of the 24th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2009, October 25-29, 2009, Orlando, Florida, USA" editor: - name: "Shail Arora" link: "https://researchr.org/alias/shail-arora" - name: "Gary T. Leavens" link: "https://researchr.org/alias/gary-t.-leavens" publisher: "ACM" isbn: "978-1-60558-766-0" kind: "inproceedings" key: "KatsJNV09" - title: "Language-parametric Techniques for Language-Specific Editors" author: - name: "Maartje de Jonge" link: "https://researchr.org/profile/maartjedejonge/publications" year: "2014" month: "January" doi: "http://dx.doi.org/10.4233/uuid:5b485a4a-e502-42d9-8bd2-21c02226ed91" abstract: "The goal of this dissertation is to develop techniques that simplify the implementation of tool support for new languages. More specifically, we focus on language-parametric solutions for the implementation of language-specific editor support. In the first part of this dissertation we investigate generic techniques to recover from syntax errors that occur during interactive editing. In the second part we look into language-parametric techniques for the implementation of refactoring tools." links: doi: "http://dx.doi.org/10.4233/uuid:5b485a4a-e502-42d9-8bd2-21c02226ed91" "blog": "http://eelcovisser.org/post/271/language-parametric-techniques-for-language-specific-editors" "pdf": "http://repository.tudelft.nl/assets/uuid:5b485a4a-e502-42d9-8bd2-21c02226ed91/doc.pdf" researchr: "https://researchr.org/publication/DeJonge2014" cites: 0 citedby: 0 school: "Delft University of Technology" address: "Delft, TheNetherlands" advisor: - name: "Eelco Visser" link: "http://eelcovisser.org" - name: "Arie van Deursen" link: "http://www.st.ewi.tudelft.nl/~arie/" kind: "phdthesis" key: "DeJonge2014" - title: "The Computational Complexity of GLR Parsing" author: - name: "Johnson, Mark" link: "https://researchr.org/alias/johnson%2C-mark" year: "1991" doi: "10.1007/978-1-4615-4034-2_3" abstract: "The Tomita parsing algorithm adapts Knuth's (1967) well-known parsing algorithm for LR(K) grammars to non-LR grammars, including ambiguous grammars. Knuth's algorithm is provably efficient: it requires at most O(n|G|) units of time, where {\\backslash}G{\\backslash} is the size of (i.e. the number of symbols in) G and n is the length of the string to be parsed. This is often significantly better than the O(n3|G|2) worst case time required by standard parsing algorithms such as the Earley algorithm. Since the Tomita algorithm is closely related to Knuth's algorithm, one might expect that it too is provably more efficient than the Earley algorithm, especially as actual computational implementations of Tomita's algorithm outperform implementations of the Earley algorithm (Tomita 1986, 1987)." links: "url": "https://doi.org/10.1007/978-1-4615-4034-2_3" researchr: "https://researchr.org/publication/Johnson1991" cites: 0 citedby: 0 pages: "35-42" booktitle: "Generalized LR Parsing" address: "Boston, MA" publisher: "Springer US" isbn: "978-1-4615-4034-2" kind: "inbook" key: "Johnson1991" - title: "Towards Typed Semantics for Parsing Expression Grammars" author: - name: "Rodrigo Geraldo Ribeiro" link: "https://researchr.org/alias/rodrigo-geraldo-ribeiro" - name: "Leonardo Vieira dos Santos Reis" link: "https://researchr.org/alias/leonardo-vieira-dos-santos-reis" - name: "Samuel da Silva Feitosa" link: "https://researchr.org/alias/samuel-da-silva-feitosa" - name: "Elton M. Cardoso" link: "https://researchr.org/alias/elton-m.-cardoso" year: "2019" doi: "https://doi.org/10.1145/3355378.3355388" links: doi: "https://doi.org/10.1145/3355378.3355388" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/sblp/RibeiroRFC19" researchr: "https://researchr.org/publication/RibeiroRFC19" cites: 0 citedby: 0 pages: "70-77" booktitle: "Proceedings of the XXIII Brazilian Symposium on Programming Languages, SBLP 2019, Salvador, Brazil, September 23-27, 2019" publisher: "ACM" isbn: "978-1-4503-7638-9" kind: "inproceedings" key: "RibeiroRFC19" - title: "Modelling GLL Parser Implementations" author: - name: "Adrian Johnstone" link: "http://www.cs.rhul.ac.uk/~adrian/" - name: "Elizabeth Scott" link: "https://researchr.org/alias/elizabeth-scott" year: "2010" doi: "http://dx.doi.org/10.1007/978-3-642-19440-5_4" links: doi: "http://dx.doi.org/10.1007/978-3-642-19440-5_4" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/sle/JohnstoneS10" tags: - "meta-model" - "Meta-Environment" - "parsing" researchr: "https://researchr.org/publication/JohnstoneS10-0" cites: 0 citedby: 0 pages: "42-61" booktitle: "Software Language Engineering - Third International Conference, SLE 2010, Eindhoven, The Netherlands, October 12-13, 2010, Revised Selected Papers" editor: - name: "Brian A. Malloy" link: "https://researchr.org/alias/brian-a.-malloy" - name: "Steffen Staab" link: "https://researchr.org/alias/steffen-staab" - name: "Mark van den Brand" link: "https://researchr.org/alias/mark-van-den-brand" volume: "6563" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "978-3-642-19439-9" kind: "inproceedings" key: "JohnstoneS10-0" - title: "Polymorphic Syntax Definition" author: - name: "Eelco Visser" link: "http://eelcovisser.org" year: "1998" doi: "http://dx.doi.org/10.1016/S0304-3975(97)00268-5" abstract: "Context-free grammars are used in several algebraic specification formalisms instead of first-order signatures for the definition of the structure of algebras, because grammars provide better notation than signatures. The rigidity of these first-order structures enforces a choice between strongly typed structures with little genericity or generic operations over untyped structures. In two-level signatures level 1 defines the algebra of types used at level 0 providing the possibility to define polymorphic abstract data types. Two-level grammars are the grammatical counterpart of two-level signatures. This paper discusses the correspondence between context-free grammars and first-order signatures, the extension of this correspondence to two-level grammars and signatures, examples of the usage of two-level grammars for polymorphic syntax definition, a restriction of the class of two-level grammars for which the parsing problem is decidable, a parsing algorithm that yields a minimal and finite set of most general parse trees for this class of grammars, and a proof of its correctness." links: doi: "http://dx.doi.org/10.1016/S0304-3975(97)00268-5" tags: - "parsing algorithm" - "syntax definition" - "abstract syntax" - "data-flow" - "algebraic specification" - " algebra" - "context-aware" - "parsing" - "signature" - "grammar" researchr: "https://researchr.org/publication/Visser98" cites: 0 citedby: 0 journal: "Theoretical Computer Science" volume: "199" number: "1-2" pages: "57-86" kind: "article" key: "Visser98" - title: "LR Parsers For Natural Languages" author: - name: "Masaru Tomita" link: "https://researchr.org/alias/masaru-tomita" year: "1984" doi: "http://acl.ldc.upenn.edu/P/P84/P84-1073.pdf" abstract: "MLR, an extended LR parser, is introduced, and its application to natural language parsing is discussed. An LR parser is a ~;hift-reduce parser which is doterministically guided by a parsing table. A parsing table can be obtained automatically from a contextfree phrase structure grammar. LR parsers cannot manage antl)iguous grammars such as natural language grammars, because their I)arsing tables would have multiply-defined entries, which precludes deterministic parsing. MLR, however, can handle mulliply-defined entries, using a dynamic programnting method. When an input sentence is ambiguous, the MI.R parser produces all possible parse trees witftoul parsing any part of the input sentenc:e more than once in the same way, despite the fact that the parser does not maintain a chart as in chart par~ing. Our method also prnvkles an elegant solution to the problem of multi-part-of-speech words such as \"that\". The MLR parser and its parsing table generator have been implemented at Carnegie-Mellon University." links: doi: "http://acl.ldc.upenn.edu/P/P84/P84-1073.pdf" tags: - "GLR parsing" - "LR parsing" - "GLR" - "e-science" - "parsing" - "grammar" researchr: "https://researchr.org/publication/Tomita84%3A0" cites: 0 citedby: 0 pages: "354-357" booktitle: "COLING" kind: "inproceedings" key: "Tomita84:0" - title: "Operator precedence for data-dependent grammars" author: - name: "Ali Afroozeh" link: "https://www.cwi.nl/people/2605" - name: "Anastasia Izmaylova" link: "https://researchr.org/alias/anastasia-izmaylova" year: "2016" doi: "http://doi.acm.org/10.1145/2847538.2847540" links: doi: "http://doi.acm.org/10.1145/2847538.2847540" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/pepm/AfroozehI16" researchr: "https://researchr.org/publication/AfroozehI16" cites: 0 citedby: 0 pages: "13-24" booktitle: "Proceedings of the 2016 ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation, PEPM 2016, St. Petersburg, FL, USA, January 20 - 22, 2016" editor: - name: "Martin Erwig" link: "https://researchr.org/alias/martin-erwig" - name: "Tiark Rompf" link: "https://researchr.org/alias/tiark-rompf" publisher: "ACM" isbn: "978-1-4503-4097-7" kind: "inproceedings" key: "AfroozehI16" - title: "A New Approach to Earley s Parsing Algorithm" author: - name: "F. E. J. Kruseman Aretz" link: "https://researchr.org/alias/f.-e.-j.-kruseman-aretz" year: "1989" tags: - "parsing algorithm" - "e-science" - "parsing" - "systematic-approach" researchr: "https://researchr.org/publication/Aretz89" cites: 0 citedby: 0 journal: "Science of Computer Programming" volume: "12" number: "2" pages: "105-121" kind: "article" key: "Aretz89" - title: "An Efficient Context-Free Parsing Algorithm with Semantic Actions" author: - name: "Marco Piastra" link: "https://researchr.org/alias/marco-piastra" - name: "Roberto Bolognesi" link: "https://researchr.org/alias/roberto-bolognesi" year: "1991" tags: - "parsing algorithm" - "context-aware" - "parsing" researchr: "https://researchr.org/publication/PiastraB91" cites: 0 citedby: 0 pages: "271-280" booktitle: "Trends in Artificial Intelligence, 2nd Congress of the Italian Association for Artificial Intelligence, AI*IA, Palermo, Italy, October, 29-31, 1991, Proceedings" editor: - name: "Edoardo Ardizzone" link: "https://researchr.org/alias/edoardo-ardizzone" - name: "Salvatore Gaglio" link: "https://researchr.org/alias/salvatore-gaglio" - name: "Filippo Sorbello" link: "https://researchr.org/alias/filippo-sorbello" volume: "549" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "3-540-54712-6" kind: "inproceedings" key: "PiastraB91" - title: "Domain specific language implementation via compile-time meta-programming" author: - name: "Laurence Tratt" link: "http://tratt.net/laurie/" year: "2008" doi: "http://doi.acm.org/10.1145/1391956.1391958" abstract: "Domain specific languages (DSLs) are mini-languages that are increasingly seen as being a valuable tool for software developers and non-developers alike. DSLs must currently be created in an ad-hoc fashion, often leading to high development costs and implementations of variable quality. In this article, I show how expressive DSLs can be hygienically embedded in the Converge programming language using its compile-time meta-programming facility, the concept of DSL blocks, and specialised error reporting techniques. By making use of pre-existing facilities, and following a simple methodology, DSL implementation costs can be significantly reduced whilst leading to higher quality DSL implementations." links: doi: "http://doi.acm.org/10.1145/1391956.1391958" tags: - "programming languages" - "meta programming" - "meta-model" - "embedded software" - "model-driven development" - "compiler" - "DSL" - "programming" - "Meta-Environment" - "extensible language" - "meta-objects" - "domain-specific language" researchr: "https://researchr.org/publication/Tratt08-TOPLAS" cites: 0 citedby: 1 journal: "ACM Transactions on Programming Languages and Systems" volume: "30" number: "6" kind: "article" key: "Tratt08-TOPLAS" - title: "GLR Parsing in Time O(n3)" author: - name: "Kipps, James R." link: "https://researchr.org/alias/kipps%2C-james-r." year: "1991" doi: "10.1007/978-1-4615-4034-2_4" abstract: "Algorithms for general CF parsing, e.g., Earley's algorithm (Earley, 1968) and the Cocke-Younger-Kasami algorithm (Younger, 1967), are necessarily less efficient than algorithms for restricted CF parsing, e.g., the LL, operator precedence, and LR algorithms (Aho and Ullman, 1972), because they must simulate a multi-path, nondeterministic pass over their inputs using some form of search, typically, goal-driven. While many of the general algorithms can be shown to theoretically perform as well as the restricted algorithms on a large subclass of CF grammars, due to the inefficiency of goal expansion the general algorithms have not been widely used as practical parsers for programming languages." links: "url": "https://doi.org/10.1007/978-1-4615-4034-2_4" researchr: "https://researchr.org/publication/Kipps1991" cites: 0 citedby: 0 pages: "43-59" booktitle: "Generalized LR Parsing" address: "Boston, MA" publisher: "Springer US" isbn: "978-1-4615-4034-2" kind: "inbook" key: "Kipps1991" - title: "What's Wrong With My Benchmark Results? Studying Bad Practices in JMH Benchmarks" author: - name: "Costa, Diego" link: "https://researchr.org/alias/costa%2C-diego" - name: "Cor-Paul Bezemer" link: "http://asgaard.ece.ualberta.ca/" - name: "Leitner, Philipp" link: "https://researchr.org/alias/leitner%2C-philipp" - name: "Andrzejak, Artur" link: "https://researchr.org/alias/andrzejak%2C-artur" year: "2019" month: "06" doi: "https://doi.org/10.1109/TSE.2019.2925345" links: doi: "https://doi.org/10.1109/TSE.2019.2925345" researchr: "https://researchr.org/publication/costa2019jmh-bad-practices" cites: 0 citedby: 0 journal: "IEEE Trans. Software Eng." pages: "1" kind: "article" key: "costa2019jmh-bad-practices" - title: "A Practical Method for LR and LL Syntactic Error Diagnosis" author: - name: "Michael G. Burke" link: "http://domino.research.ibm.com/comm/research_people.nsf/pages/burkem.index.html" - name: "Gerald A. Fisher" link: "https://researchr.org/alias/gerald-a.-fisher" year: "1987" doi: "http://doi.acm.org/10.1145/22719.22720" abstract: " This paper presents a powerful, practical, and essentially language-independent syntactic error diagnosis and recovery method that is applicable within the frameworks of LR and LL parsing. The method generally issues accurate diagnoses even where multiple errors occur within close proximity, yet seldom issues spurious error messages. It employs a new technique, parse action deferral, that allows the most appropriate recovery in cases where this would ordinarily be precluded by late detection of the error. The method is practical in that it does not impose substantial space or time overhead on the parsing of correct programs, and in that its time efficiency in processing an error allows for its incorporation in a production compiler. The method is language independent, but it does allow for tuning with respect to particular languages and implementations through the setting of language-specific parameters. " links: doi: "http://doi.acm.org/10.1145/22719.22720" tags: - "programming languages" - "compiler" - "parsing" - "error recovery" - "domain-specific language" researchr: "https://researchr.org/publication/BurkeF87" cites: 0 citedby: 0 journal: "ACM Transactions on Programming Languages and Systems" volume: "9" number: "2" pages: "164-197" kind: "article" key: "BurkeF87" - title: "Packrats parse in packs" author: - name: "Mario Blazevic" link: "https://researchr.org/alias/mario-blazevic" - name: "Jacques Légaré" link: "https://researchr.org/alias/jacques-l%C3%A9gar%C3%A9" year: "2017" doi: "http://doi.acm.org/10.1145/3122955.3122958" links: doi: "http://doi.acm.org/10.1145/3122955.3122958" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/haskell/BlazevicL17" researchr: "https://researchr.org/publication/BlazevicL17" cites: 0 citedby: 0 pages: "14-25" booktitle: "Proceedings of the 10th ACM SIGPLAN International Symposium on Haskell, Oxford, United Kingdom, September 7-8, 2017" editor: - name: "Iavor S. Diatchki" link: "https://researchr.org/alias/iavor-s.-diatchki" publisher: "ACM" isbn: "978-1-4503-5182-9" kind: "inproceedings" key: "BlazevicL17" - title: "Rewriting with Layout" author: - name: "Mark G. J. van den Brand" link: "http://www.win.tue.nl/~mvdbrand/" - name: "Jurgen J. Vinju" link: "http://homepages.cwi.nl/~jurgenv/" year: "2000" doi: "http://homepages.cwi.nl/~jurgenv/publications/papers/rewriting_with_layout.ps.gz" abstract: "Rewriting technology has proved to be an adequate and powerful mechanism to perform source code transformations. These transformations can not only be efficiently implemented using rewriting technology, but it also provides a firmer grip on the source code syntax. However, an important shortcoming of rewriting technology is that source code comments and layout are lost during rewriting. We propose \"rewriting with layout\" to solve this problem. We present a rewriting algorithm that keeps the layout of sub-terms that are not rewritten, and reuses the layout occurring in the right-hand side of the rewrite rules. " links: doi: "http://homepages.cwi.nl/~jurgenv/publications/papers/rewriting_with_layout.ps.gz" tags: - "model-to-model transformation" - "rule-based" - "source comments" - "layout" - "SDF" - "graph transformation" - "term rewriting" - "reuse" - "source-to-source" - "graph-rewriting" - "rules" - "model transformation" - "metaprogramming" - "rewriting" - "ASF+SDF" - "concrete syntax" - "open-source" - "transformation" - "whitespace" researchr: "https://researchr.org/publication/BV00" cites: 0 citedby: 0 booktitle: "Proceedings of RULE" editor: - name: "Claude Kirchner" link: "http://www.loria.fr/~ckirchne/" - name: "Nachum Dershowitz" link: "http://www.math.tau.ac.il/~nachumd/Homepage.html" kind: "inproceedings" key: "BV00" - title: "A Parsing Algorithm for Unification Grammar" author: - name: "Andrew R. Haas" link: "https://researchr.org/alias/andrew-r.-haas" year: "1989" tags: - "parsing algorithm" - "parsing" - "grammar" researchr: "https://researchr.org/publication/Haas89%3A0" cites: 0 citedby: 0 journal: "Computational Linguistics" volume: "15" number: "4" pages: "219-232" kind: "article" key: "Haas89:0" - title: "Practical LR error recovery" author: - name: "Susan L. Graham" link: "https://researchr.org/alias/susan-l.-graham" - name: "Charles B. Haley" link: "https://researchr.org/alias/charles-b.-haley" - name: "William N. Joy" link: "https://researchr.org/alias/william-n.-joy" year: "1979" doi: "http://doi.acm.org/10.1145/800229.806967" links: doi: "http://doi.acm.org/10.1145/800229.806967" researchr: "https://researchr.org/publication/GrahamHJ79" cites: 0 citedby: 0 pages: "168-175" booktitle: "Proceedings of the 1979 SIGPLAN Symposium on Compiler Construction, Denver, Colorado, USA, August 6-10, 1979" publisher: "ACM" kind: "inproceedings" key: "GrahamHJ79" - title: "Extending Earley s context-free parsing algorithm for string pattern matching" author: - name: "Ken-Chih Liu" link: "https://researchr.org/alias/ken-chih-liu" year: "1988" doi: "http://doi.acm.org/10.1145/322609.322861" links: doi: "http://doi.acm.org/10.1145/322609.322861" tags: - "parsing algorithm" - "pattern matching" - "context-aware" - "parsing" researchr: "https://researchr.org/publication/Liu88%3A1" cites: 0 citedby: 0 pages: "500-509" booktitle: "Proceedings of the Sixteenth ACM Annual Conference on Computer Science, Atlanta, Georgia, USA, February 23-25, 1988" publisher: "ACM" isbn: "0-89791-260-8" kind: "inproceedings" key: "Liu88:1" - title: "Adaptive LL(*) parsing: the power of dynamic analysis" author: - name: "Terence John Parr" link: "http://www.cs.usfca.edu/~parrt/" - name: "Sam Harwell" link: "https://researchr.org/alias/sam-harwell" - name: "Kathleen Fisher" link: "https://researchr.org/alias/kathleen-fisher" year: "2014" doi: "http://doi.acm.org/10.1145/2660193.2660202" links: doi: "http://doi.acm.org/10.1145/2660193.2660202" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/oopsla/ParrHF14" researchr: "https://researchr.org/publication/ParrHF14" cites: 0 citedby: 0 pages: "579-598" booktitle: "Proceedings of the 2014 ACM International Conference on Object Oriented Programming Systems Languages & Applications, OOPSLA 2014, part of SPLASH 2014, Portland, OR, USA, October 20-24, 2014" editor: - name: "Andrew P. Black" link: "https://researchr.org/alias/andrew-p.-black" - name: "Todd D. Millstein" link: "https://researchr.org/alias/todd-d.-millstein" publisher: "ACM" isbn: "978-1-4503-2585-1" kind: "inproceedings" key: "ParrHF14" - title: "An Incremental On-line Parsing Algorithm for Recognizing Sketching Diagrams" author: - name: "Joan Mas" link: "https://researchr.org/alias/joan-mas" - name: "Gemma Sánchez" link: "https://researchr.org/alias/gemma-s%C3%A1nchez" - name: "Josep Lladós" link: "https://researchr.org/alias/josep-llad%C3%B3s" - name: "Bart Lamiroy" link: "https://researchr.org/alias/bart-lamiroy" year: "2007" doi: "http://doi.ieeecomputersociety.org/10.1109/ICDAR.2007.54" links: doi: "http://doi.ieeecomputersociety.org/10.1109/ICDAR.2007.54" tags: - "parsing algorithm" - "parsing" - "incremental" researchr: "https://researchr.org/publication/MasSLL07" cites: 0 citedby: 0 pages: "452-456" booktitle: "9th International Conference on Document Analysis and Recognition (ICDAR 2007), 23-26 September, Curitiba, Paraná, Brazil" publisher: "IEEE Computer Society" isbn: "978-0-7695-2822-9" kind: "inproceedings" key: "MasSLL07" - title: "A New Parsing Algorithm for EOL-Systems" author: - name: "Kulathur S. Rajasethupathy" link: "https://researchr.org/alias/kulathur-s.-rajasethupathy" - name: "R. K. Shyamasundar" link: "https://researchr.org/alias/r.-k.-shyamasundar" year: "1982" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/RajasethupathyyS82" cites: 0 citedby: 0 journal: "Elektronische Informationsverarbeitung und Kybernetik" volume: "18" number: "10/11" pages: "543-564" kind: "article" key: "RajasethupathyyS82" - title: "Language Workbenches: The Killer-App for Domain Specific Languages?" author: - name: "Martin Fowler" link: "http://martinfowler.com/" year: "2005" doi: "http://www.martinfowler.com/articles/languageWorkbench.html" abstract: "Most new ideas in software developments are really new variations on old ideas. This article describes one of these, the growing idea of a class of tools that I call Language Workbenches - examples of which include Intentional Software, JetBrains's Meta Programming System, and Microsoft's Software Factories. These tools take an old style of development - which I call language oriented programming and use IDE tooling in a bid to make language oriented programming a viable approach. Although I'm not enough of a prognosticator to say whether they will succeed in their ambition, I do think that these tools are some of the most interesting things on the horizon of software development. Interesting enough to write this essay to try to explain, at least in outline, how they work and the main issues around their future usefulness." links: doi: "http://www.martinfowler.com/articles/languageWorkbench.html" tags: - "programming languages" - "workbench" - "object-oriented programming" - "meta programming" - "language-oriented programming" - "meta-model" - "LOP" - "model-driven development" - "programming" - "subject-oriented programming" - "language workbench" - "Meta-Environment" - "systematic-approach" - "feature-oriented programming" - "meta-objects" - "domain-specific language" researchr: "https://researchr.org/publication/Fowler2004" cites: 0 citedby: 3 kind: "misc" key: "Fowler2004" - title: "Software microbenchmarking in the cloud. How bad is it really?" author: - name: "Christoph Laaber" link: "https://researchr.org/alias/christoph-laaber" - name: "Joel Scheuner" link: "https://researchr.org/alias/joel-scheuner" - name: "Philipp Leitner" link: "https://researchr.org/alias/philipp-leitner" year: "2019" doi: "https://doi.org/10.1007/s10664-019-09681-1" links: doi: "https://doi.org/10.1007/s10664-019-09681-1" dblp: "http://dblp.uni-trier.de/rec/bibtex/journals/ese/LaaberSL19" researchr: "https://researchr.org/publication/LaaberSL19" cites: 0 citedby: 0 journal: "Empirical Software Engineering" volume: "24" number: "4" pages: "2469-2508" kind: "article" key: "LaaberSL19" - title: "An Optimized Parsing Algorithm Well Suited to RNA Folding" author: - name: "Fabrice Lefebvre" link: "https://researchr.org/alias/fabrice-lefebvre" year: "1995" tags: - "parsing algorithm" - "optimization" - "parsing" researchr: "https://researchr.org/publication/Lefebvre95" cites: 0 citedby: 0 pages: "222-230" booktitle: "Proceedings of the Third International Conference on Intelligent Systems for Molecular Biology, Cambridge, United Kingdom, July 16-19, 1995" editor: - name: "Christopher J. Rawlings" link: "https://researchr.org/alias/christopher-j.-rawlings" - name: "Dominic A. Clark" link: "https://researchr.org/alias/dominic-a.-clark" - name: "Russ B. Altman" link: "https://researchr.org/alias/russ-b.-altman" - name: "Lawrence Hunter" link: "https://researchr.org/alias/lawrence-hunter" - name: "Thomas Lengauer" link: "https://researchr.org/alias/thomas-lengauer" - name: "Shoshana J. Wodak" link: "https://researchr.org/alias/shoshana-j.-wodak" publisher: "AAAI" isbn: "0-929280-83-0" kind: "inproceedings" key: "Lefebvre95" - title: "Derivation of a Parsing Algorithm in Martin-Löf s Theory of Types" author: - name: "Paul Chisholm" link: "https://researchr.org/alias/paul-chisholm" year: "1987" tags: - "parsing algorithm" - "type theory" - "parsing" researchr: "https://researchr.org/publication/Chisholm87" cites: 0 citedby: 0 journal: "Science of Computer Programming" volume: "8" number: "1" pages: "1-42" kind: "article" key: "Chisholm87" - title: "Efficient development of consistent projectional editors using grammar cells" author: - name: "Markus Völter" link: "http://www.voelter.de/" - name: "Tamás Szabó" link: "https://researchr.org/alias/tam%C3%A1s-szab%C3%B3" - name: "Sascha Lisson" link: "https://researchr.org/alias/sascha-lisson" - name: " Bernd Kolb" link: "https://researchr.org/alias/bernd-kolb" - name: "Sebastian Erdweg" link: "http://www.informatik.uni-marburg.de/~seba/" - name: "Thorsten Berger" link: "https://researchr.org/alias/thorsten-berger" year: "2016" doi: "http://dl.acm.org/citation.cfm?id=2997365" links: doi: "http://dl.acm.org/citation.cfm?id=2997365" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/sle/VoelterSLKEB16" researchr: "https://researchr.org/publication/VoelterSLKEB16" cites: 0 citedby: 0 pages: "28-40" booktitle: "Proceedings of the 2016 ACM SIGPLAN International Conference on Software Language Engineering, Amsterdam, The Netherlands, October 31 - November 1, 2016" editor: - name: "Tijs van der Storm" link: "https://researchr.org/alias/tijs-van-der-storm" - name: "Emilie Balland" link: "https://researchr.org/alias/emilie-balland" - name: "Dániel Varró" link: "https://researchr.org/alias/d%C3%A1niel-varr%C3%B3" publisher: "ACM" isbn: "978-1-4503-4447-0" kind: "inproceedings" key: "VoelterSLKEB16" - title: "General Incremental Lexical Analysis" author: - name: "Tim A. Wagner" link: "https://researchr.org/alias/tim-a.-wagner" - name: "Susan L. Graham" link: "https://researchr.org/alias/susan-l.-graham" year: "1997" researchr: "https://researchr.org/publication/WagnerG97-lex" cites: 0 citedby: 1 kind: "unpublished" key: "WagnerG97-lex" - title: "A Novel Video Parsing Algorithm Utilizing the Pleasure-Arousal-Dominance Emotional Information" author: - name: "Sutjipto Arifin" link: "https://researchr.org/alias/sutjipto-arifin" - name: "Peter Y. K. Cheung" link: "https://researchr.org/alias/peter-y.-k.-cheung" year: "2007" doi: "http://dx.doi.org/10.1109/ICIP.2007.4379589" links: doi: "http://dx.doi.org/10.1109/ICIP.2007.4379589" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/ArifinC07%3A1" cites: 0 citedby: 0 pages: "333-336" booktitle: "Proceedings of the International Conference on Image Processing, ICIP 2007, September 16-19, 2007, San Antonio, Texas, USA" publisher: "IEEE" kind: "inproceedings" key: "ArifinC07:1" - title: "Island Grammar-Based Parsing Using GLL and Tom" author: - name: "Ali Afroozeh" link: "https://www.cwi.nl/people/2605" - name: "Jean-Christophe Bach" link: "https://researchr.org/alias/jean-christophe-bach" - name: "Mark van den Brand" link: "https://researchr.org/alias/mark-van-den-brand" - name: "Adrian Johnstone" link: "http://www.cs.rhul.ac.uk/~adrian/" - name: " Maarten Manders" link: "https://researchr.org/alias/maarten-manders" - name: "Pierre-Etienne Moreau" link: "https://researchr.org/alias/pierre-etienne-moreau" - name: "Elizabeth Scott" link: "https://researchr.org/alias/elizabeth-scott" year: "2012" doi: "http://dx.doi.org/10.1007/978-3-642-36089-3_13" links: doi: "http://dx.doi.org/10.1007/978-3-642-36089-3_13" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/sle/AfroozehBBJMMS12" researchr: "https://researchr.org/publication/AfroozehBBJMMS12" cites: 0 citedby: 0 pages: "224-243" booktitle: "Software Language Engineering, 5th International Conference, SLE 2012, Dresden, Germany, September 26-28, 2012, Revised Selected Papers" editor: - name: "Krzysztof Czarnecki" link: "http://www.swen.uwaterloo.ca/~kczarnec/" - name: "Görel Hedin" link: "http://cs.lth.se/gorel_hedin" volume: "7745" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "978-3-642-36089-3" kind: "inproceedings" key: "AfroozehBBJMMS12" - title: "Natural and Flexible Error Recovery for Generated Parsers" author: - name: "Maartje de Jonge" link: "https://researchr.org/profile/maartjedejonge/publications" - name: "Emma Nilsson-Nyman" link: "http://www.cs.lth.se/home/Emma.Nilsson_Nyman/" - name: "Lennart C. L. Kats" link: "http://www.lclnet.nl/" - name: "Eelco Visser" link: "http://eelcovisser.org" year: "2009" doi: "http://dx.doi.org/10.1007/978-3-642-12107-4_16" abstract: "Parser generators are an indispensable tool for rapid language development. However, they often fall short of the finesse of a hand-crafted parser, built with the language semantics in mind. One area where generated parsers have provided unsatisfactory results is that of error recovery. Good error recovery is both natural, giving recovery suggestions in line with the intention of the programmer; and flexible, allowing it to be adapted according to language insights and language changes. This paper describes a novel approach to error recovery, taking into account not only the context-free grammar, but also indentation usage. We base our approach on an extension of the SGLR parser that supports fine-grained error recovery rules and can be used to parse complex, composed languages. We take a divide-and-conquer approach to error recovery: using indentation, erroneous regions of code are identified. These regions constrain the search space for applying recovery rules, improving performance and ensuring recovery suggestions local to the error. As a last resort, erroneous regions can be discarded. Our approach also integrates bridge parsing to provide more accurate suggestions for indentation-sensitive language constructs such as scopes. We evaluate our approach by comparison with the JDT Java parser used in Eclipse. " links: doi: "http://dx.doi.org/10.1007/978-3-642-12107-4_16" successor: "https://researchr.org/publication/JongeKVS12" tags: - "semantics" - "rule-based" - "Java" - "Eclipse" - "rules" - "C++" - "search suggestions" - "context-aware" - "search" - "parsing" - "error recovery" - "systematic-approach" - "SGLR" - "grammar" researchr: "https://researchr.org/publication/JongeNKV09" cites: 0 citedby: 0 pages: "204-223" booktitle: "Software Language Engineering, Second International Conference, SLE 2009, Denver, CO, USA, October 5-6, 2009, Revised Selected Papers" editor: - name: "Mark G. J. van den Brand" link: "http://www.win.tue.nl/~mvdbrand/" - name: "Dragan Gasevic" link: "http://www.sfu.ca/~dgasevic/" - name: "Jeffrey G. Gray" link: "http://www.gray-area.org/" volume: "5969" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "978-3-642-12106-7" kind: "inproceedings" key: "JongeNKV09" - title: "A symbol-based extension of parsing expression grammars and context-sensitive packrat parsing" author: - name: "Kimio Kuramitsu" link: "https://researchr.org/alias/kimio-kuramitsu" year: "2017" doi: "http://doi.acm.org/10.1145/3136014.3136025" links: doi: "http://doi.acm.org/10.1145/3136014.3136025" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/sle/Kuramitsu17" researchr: "https://researchr.org/publication/Kuramitsu17" cites: 0 citedby: 0 pages: "26-37" booktitle: "Proceedings of the 10th ACM SIGPLAN International Conference on Software Language Engineering, SLE 2017, Vancouver, BC, Canada, October 23-24, 2017" editor: - name: "Benoît Combemale" link: "https://researchr.org/alias/beno%C3%AEt-combemale" - name: "Marjan Mernik" link: "https://researchr.org/alias/marjan-mernik" - name: "Bernhard Rumpe" link: "http://www.se-rwth.de/~rumpe/" publisher: "ACM" isbn: "978-1-4503-5525-4" kind: "inproceedings" key: "Kuramitsu17" - title: "Generalised Parsing: Some Costs" author: - name: "Adrian Johnstone" link: "http://www.cs.rhul.ac.uk/~adrian/" - name: "Elizabeth Scott" link: "http://www.cs.rhul.ac.uk/People/staff/scott.html" - name: "Giorgios R. Economopoulos" link: "http://users.ecs.soton.ac.uk/gre/" year: "2004" doi: "http://dx.doi.org/10.1007/b95956" abstract: "We discuss generalisations of bottom up parsing, emphasising the relative costs for real programming languages. Our goal is to provide a roadmap of the available approaches in terms of their space and time performance for programming language applications, focusing mainly on GLR style algorithms. It is well known that the original Tomita GLR algorithm fails to terminate on hidden left recursion: here we analyse two approaches to correct GLR parsing (i) the modification due to Farshi that is incorporated into Visserrsquos work and (ii) our own right-nullable GLR (RNGLR) algorithm, showing that Farshirsquos approach can be expensive. We also present results from our new Binary RNGLR algorithm which is asymptotically the fastest parser in this family and show that the recently reported reduction incorporated parsers can require automata that are too large to be practical on current machines." links: doi: "http://dx.doi.org/10.1007/b95956" tags: - "parsing algorithm" - "programming languages" - "GLR parsing" - "GLR" - "programming" - "parsing" - "systematic-approach" researchr: "https://researchr.org/publication/JohnstoneSE04" cites: 0 citedby: 0 pages: "89-103" booktitle: "Compiler Construction, 13th International Conference, CC 2004, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2004, Barcelona, Spain, March 29 - April 2, 2004, Proceedings" volume: "2985" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "3-540-21297-3" kind: "inproceedings" key: "JohnstoneSE04" - title: "An alternative approach to macro processing" author: - name: "Hammer, Michael" link: "https://researchr.org/alias/hammer%2C-michael" year: "1971" doi: "http://doi.acm.org/10.1145/800006.807983" links: doi: "http://doi.acm.org/10.1145/800006.807983" tags: - "macros" - "systematic-approach" researchr: "https://researchr.org/publication/807983" cites: 0 citedby: 0 booktitle: "Proceedings of the international symposium on Extensible languages" address: "New York, NY, USA" publisher: "ACM" kind: "inproceedings" key: "807983" - title: "A locally least-cost LR-error corrector" author: - name: "Charles Fischer" link: "https://researchr.org/alias/charles-fischer" - name: "Bernard Dion" link: "https://researchr.org/alias/bernard-dion" - name: "Jon Mauney" link: "https://researchr.org/alias/jon-mauney" year: "1979" researchr: "https://researchr.org/publication/FischerBM79" cites: 0 citedby: 0 institution: "University of Wisconsin-Madison Department of Computer Sciences" kind: "techreport" key: "FischerBM79" - title: "Syntax and sensibility: Using language models to detect and correct syntax errors" author: - name: "Eddie Antonio Santos" link: "https://researchr.org/alias/eddie-antonio-santos" - name: "Joshua Charles Campbell" link: "https://researchr.org/alias/joshua-charles-campbell" - name: "Dhvani Patel" link: "https://researchr.org/alias/dhvani-patel" - name: "Abram Hindle" link: "https://researchr.org/alias/abram-hindle" - name: "José Nelson Amaral" link: "https://researchr.org/alias/jos%C3%A9-nelson-amaral" year: "2018" doi: "http://doi.ieeecomputersociety.org/10.1109/SANER.2018.8330219" links: doi: "http://doi.ieeecomputersociety.org/10.1109/SANER.2018.8330219" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/wcre/SantosCPHA18" researchr: "https://researchr.org/publication/SantosCPHA18" cites: 0 citedby: 0 pages: "311-322" booktitle: "25th International Conference on Software Analysis, Evolution and Reengineering, SANER 2018, Campobasso, Italy, March 20-23, 2018" editor: - name: "Rocco Oliveto" link: "https://researchr.org/alias/rocco-oliveto" - name: "Massimiliano Di Penta" link: "https://researchr.org/alias/massimiliano-di-penta" - name: "David C. Shepherd" link: "https://researchr.org/alias/david-c.-shepherd" publisher: "IEEE Computer Society" isbn: "978-1-5386-4969-5" kind: "inproceedings" key: "SantosCPHA18" - title: "An Efficient Context-Free Parsing Algorithm (Reprint)" author: - name: "Jay Earley" link: "https://researchr.org/alias/jay-earley" year: "1983" tags: - "parsing algorithm" - "context-aware" - "parsing" researchr: "https://researchr.org/publication/Earley83" cites: 0 citedby: 0 journal: "Communications of the ACM" volume: "26" number: "1" pages: "57-61" kind: "article" key: "Earley83" - title: "A typed, algebraic approach to parsing" author: - name: "Neelakantan R. Krishnaswami" link: "https://researchr.org/alias/neelakantan-r.-krishnaswami" - name: "Jeremy Yallop" link: "https://researchr.org/alias/jeremy-yallop" year: "2019" doi: "https://doi.org/10.1145/3314221.3314625" links: doi: "https://doi.org/10.1145/3314221.3314625" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/pldi/KrishnaswamiY19" researchr: "https://researchr.org/publication/KrishnaswamiY19" cites: 0 citedby: 0 pages: "379-393" booktitle: "Proceedings of the 40th ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2019, Phoenix, AZ, USA, June 22-26, 2019" editor: - name: "Kathryn S. McKinley" link: "https://researchr.org/alias/kathryn-s.-mckinley" - name: "Kathleen Fisher" link: "https://researchr.org/alias/kathleen-fisher" publisher: "ACM" isbn: "978-1-4503-6712-7" kind: "inproceedings" key: "KrishnaswamiY19" - title: "Hazelnut: a bidirectionally typed structure editor calculus" author: - name: "Cyrus Omar" link: "https://researchr.org/alias/cyrus-omar" - name: "Ian Voysey" link: "https://researchr.org/alias/ian-voysey" - name: "Michael Hilton" link: "https://researchr.org/alias/michael-hilton" - name: "Jonathan Aldrich" link: "https://researchr.org/alias/jonathan-aldrich" - name: "Matthew A. Hammer" link: "https://researchr.org/alias/matthew-a.-hammer" year: "2017" doi: "http://dl.acm.org/citation.cfm?id=3009900" links: doi: "http://dl.acm.org/citation.cfm?id=3009900" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/popl/OmarVHAH17" researchr: "https://researchr.org/publication/OmarVHAH17" cites: 0 citedby: 0 pages: "86-99" booktitle: "Proceedings of the 44th ACM SIGPLAN Symposium on Principles of Programming Languages, POPL 2017, Paris, France, January 18-20, 2017" editor: - name: "Giuseppe Castagna" link: "https://researchr.org/alias/giuseppe-castagna" - name: "Andrew D. Gordon" link: "https://researchr.org/alias/andrew-d.-gordon" publisher: "ACM" isbn: "978-1-4503-4660-3" kind: "inproceedings" key: "OmarVHAH17" - title: "Parsing multi-ordered grammars with the Gray algorithm" author: - name: "Nick Papoulias" link: "https://researchr.org/alias/nick-papoulias" year: "2019" doi: "https://doi.org/10.7287/peerj.preprints.27465v2" links: doi: "https://doi.org/10.7287/peerj.preprints.27465v2" dblp: "http://dblp.uni-trier.de/rec/bibtex/journals/peerjpre/Papoulias19a" researchr: "https://researchr.org/publication/Papoulias19a" cites: 0 citedby: 0 journal: "PeerJ PrePrints" volume: "7" kind: "article" key: "Papoulias19a" - title: "Building Documentation Generators" author: - name: "Arie van Deursen" link: "http://www.st.ewi.tudelft.nl/~arie/" - name: "Tobias Kuipers" link: "http://www.sig.eu" year: "1999" doi: "http://computer.org/proceedings/icsm/0016/00160040abs.htm" links: doi: "http://computer.org/proceedings/icsm/0016/00160040abs.htm" tags: - "island grammars" researchr: "https://researchr.org/publication/DeursenK99%3A0" cites: 0 citedby: 0 pages: "40-49" booktitle: "ICSM" kind: "inproceedings" key: "DeursenK99:0" - title: "A faster algorithm for the computation of string convolutions using LZ78 parsing" author: - name: "Valerio Freschi" link: "https://researchr.org/alias/valerio-freschi" - name: "Alessandro Bogliolo" link: "https://researchr.org/alias/alessandro-bogliolo" year: "2010" doi: "http://dx.doi.org/10.1016/j.ipl.2010.05.010" abstract: "String convolution between vectors of integers representing a pattern and a text is a widely used computational primitive in string processing. In this paper, we investigate the use of an algorithmic framework which exploits sequence repetitions (identified according to the Lempel–Ziv parsing technique, i.e., the LZ78 algorithm) to speed up conventional algorithms (based on Fast Fourier Transform) for the computation of convolution between a pattern and a text, when the text is long enough and the pattern is sufficiently small. In particular, we present a deterministic algorithm which, given a text T of length n (drawn from a constant size alphabet ΣT) and a pattern P of length m (drawn from a constant size alphabet ΣP), computes the convolution between P and T with time and space complexity View the MathML source, where h is the entropy of text T." links: doi: "http://dx.doi.org/10.1016/j.ipl.2010.05.010" dblp: "http://dblp.uni-trier.de/rec/bibtex/journals/ipl/FreschiB10" tags: - "parsing algorithm" - "rule-based" - "source-to-source" - "parsing" - "open-source" researchr: "https://researchr.org/publication/FreschiB10" cites: 0 citedby: 0 journal: "Inf. Process. Lett." volume: "110" number: "14-15" pages: "609-613" kind: "article" key: "FreschiB10" - title: "A new parallel algorithm for parsing arithmetic infix expressions" author: - name: "Y. N. Srikant" link: "https://researchr.org/alias/y.-n.-srikant" - name: "Priti Shankar" link: "https://researchr.org/alias/priti-shankar" year: "1987" doi: "http://dx.doi.org/10.1016/0167-8191(87)90028-7" links: doi: "http://dx.doi.org/10.1016/0167-8191(87)90028-7" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/SrikantS87" cites: 0 citedby: 0 journal: "Parallel Computing" volume: "4" number: "3" pages: "291-304" kind: "article" key: "SrikantS87" - title: "A Formal Way from Text to Code Templates" author: - name: "Guido Wachsmuth" link: "https://www.linkedin.com/in/guidowachsmuth/" year: "2009" doi: "http://dx.doi.org/10.1007/978-3-642-00593-0_8" abstract: "We present an approach to define template languages for generating syntactically correct code. In the first part of the paper, we define the syntax and semantics of a template language for text generation. We use Natural Semantics for expressing both the static and the dynamic semantics of the language. In the second part, we deal with template languages for code generation in a particular target language. We provide construction steps for the syntax and semantics of such languages. The approach is generic and can be applied to any target language." links: doi: "http://dx.doi.org/10.1007/978-3-642-00593-0_8" tags: - "model-to-model transformation" - "semantics" - "transformation engineering" - "formal semantics" - "model-to-text transformation" - "language engineering" - "transformation language" - "composition" - "source-to-source" - "model-driven engineering" - "code generation" - "model transformation" - "natural semantics" - "language composition" - "grammarware" - "modelware" - "systematic-approach" - "open-source" - "transformation" researchr: "https://researchr.org/publication/Wachsmuth09" cites: 0 citedby: 0 pages: "109-123" booktitle: "Fundamental Approaches to Software Engineering, 12th International Conference, FASE 2009, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009, York, UK, March 22-29, 2009. Proceedings" editor: - name: "Marsha Chechik" link: "https://researchr.org/alias/marsha-chechik" - name: "Martin Wirsing" link: "https://researchr.org/alias/martin-wirsing" volume: "5503" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "978-3-642-00592-3" kind: "inproceedings" key: "Wachsmuth09" - title: "Application of extensible languages to specialized application languages" author: - name: "Sammet, Jean E." link: "https://researchr.org/alias/sammet%2C-jean-e." year: "1971" doi: "http://doi.acm.org/10.1145/800006.807997" links: doi: "http://doi.acm.org/10.1145/800006.807997" tags: - "e-science" - "extensible language" researchr: "https://researchr.org/publication/807997" cites: 0 citedby: 0 booktitle: "Proceedings of the international symposium on Extensible languages" address: "New York, NY, USA" publisher: "ACM" kind: "inproceedings" key: "807997" - title: "A Data Parallel Algorithm for XML DOM Parsing" author: - name: "Bhavik Shah" link: "https://researchr.org/alias/bhavik-shah" - name: "Praveen Rao" link: "https://researchr.org/alias/praveen-rao" - name: "Bongki Moon" link: "https://researchr.org/alias/bongki-moon" - name: "Mohan Rajagopalan" link: "https://researchr.org/alias/mohan-rajagopalan" year: "2009" doi: "http://dx.doi.org/10.1007/978-3-642-03555-5_7" links: doi: "http://dx.doi.org/10.1007/978-3-642-03555-5_7" tags: - "parsing algorithm" - "XML" - "XML Schema" - "data-flow" - "parsing" researchr: "https://researchr.org/publication/ShahRMR09" cites: 0 citedby: 0 pages: "75-90" booktitle: "Database and XML Technologies, 6th International XML Database Symposium, XSym 2009, Lyon, France, August 24, 2009. Proceedings" editor: - name: "Zohra Bellahsene" link: "https://researchr.org/alias/zohra-bellahsene" - name: "Ela Hunt" link: "https://researchr.org/alias/ela-hunt" - name: "Michael Rys" link: "https://researchr.org/alias/michael-rys" - name: "Rainer Unland" link: "https://researchr.org/alias/rainer-unland" volume: "5679" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "978-3-642-03554-8" kind: "inproceedings" key: "ShahRMR09" - title: "Lake symbols for island parsing" author: - name: "Katsumi Okuda" link: "https://researchr.org/alias/katsumi-okuda" - name: "Shigeru Chiba" link: "https://researchr.org/alias/shigeru-chiba" year: "2021" doi: "https://doi.org/10.22152/programming-journal.org/2021/5/11" links: doi: "https://doi.org/10.22152/programming-journal.org/2021/5/11" dblp: "http://dblp.uni-trier.de/rec/bibtex/journals/programming/OkudaC21" researchr: "https://researchr.org/publication/OkudaC21" cites: 0 citedby: 0 journal: "Programming Journal" volume: "5" number: "2" pages: "11" kind: "article" key: "OkudaC21" - title: "Principled syntactic code completion using placeholders" author: - name: "Luis Eduardo de Souza Amorim" link: "https://www.linkedin.com/profile/view?id=136481548" - name: "Sebastian Erdweg" link: "http://www.informatik.uni-marburg.de/~seba/" - name: "Guido Wachsmuth" link: "https://www.linkedin.com/in/guidowachsmuth/" - name: "Eelco Visser" link: "http://eelcovisser.org" year: "2016" doi: "http://dx.doi.org/10.1145/2997364.2997374" abstract: "Principled syntactic code completion enables developers to change source code by inserting code templates, thus increasing developer efficiency and supporting language exploration. However, existing code completion systems are ad-hoc and neither complete nor sound. They are not complete and only provide few code templates for selected programming languages. They also are not sound and propose code templates that yield invalid programs when inserted.This paper presents a generic framework that automatically derives complete and sound syntactic code completion from the syntax definition of arbitrary languages. A key insight of our work is to provide an explicit syntactic representation for incomplete programs using placeholders. This enables us to address the following challenges for code completion separately: (i) completing incomplete programs by replacing placeholders with code templates, (ii) injecting placeholders into complete programs to make them incomplete, and (iii) introducing lexemes and placeholders into incorrect programs through error-recovery parsing to make them correct so we can apply one of the previous strategies. We formalize our framework and provide an implementation in the Spoofax Language Workbench. " links: doi: "http://dx.doi.org/10.1145/2997364.2997374" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/sle/AmorimEWV16" researchr: "https://researchr.org/publication/AmorimEWV16" cites: 0 citedby: 0 pages: "163-175" booktitle: "Proceedings of the 2016 ACM SIGPLAN International Conference on Software Language Engineering, Amsterdam, The Netherlands, October 31 - November 1, 2016" editor: - name: "Tijs van der Storm" link: "https://researchr.org/alias/tijs-van-der-storm" - name: "Emilie Balland" link: "https://researchr.org/alias/emilie-balland" - name: "Dániel Varró" link: "https://researchr.org/alias/d%C3%A1niel-varr%C3%B3" publisher: "ACM" isbn: "978-1-4503-4447-0" kind: "inproceedings" key: "AmorimEWV16" - title: "METAPI - a language for extensions" author: - name: "Chandler, Gerald D." link: "https://researchr.org/alias/chandler%2C-gerald-d." year: "1971" doi: "http://doi.acm.org/10.1145/800006.807972" links: doi: "http://doi.acm.org/10.1145/800006.807972" researchr: "https://researchr.org/publication/807972" cites: 0 citedby: 0 booktitle: "Proceedings of the international symposium on Extensible languages" address: "New York, NY, USA" publisher: "ACM" kind: "inproceedings" key: "807972" - title: "Natural and Flexible Error Recovery for Generated Modular Language Environments" author: - name: "Maartje de Jonge" link: "https://researchr.org/profile/maartjedejonge/publications" - name: "Lennart C. L. Kats" link: "http://www.lclnet.nl/" - name: "Eelco Visser" link: "http://eelcovisser.org" - name: "Emma Söderberg" link: "https://researchr.org/alias/emma-s%C3%B6derberg" year: "2012" doi: "http://doi.acm.org/10.1145/2400676.2400678" abstract: "Integrated development environments (IDEs) increase programmer productivity, providing rapid, interactive feedback based on the syntax and semantics of a language. Unlike conventional parsing algorithms, scannerless generalized-LR parsing supports the full set of context-free grammars, which is closed under composition, and hence can parse languages composed from separate grammar modules. To apply this algorithm in an interactive environment, this paper introduces a novel error recovery mechanism. Our approach is language-independent, and relies on automatic derivation of recovery rules from grammars. By taking layout information into consideration it can efficiently suggest natural recovery suggestions." links: doi: "http://doi.acm.org/10.1145/2400676.2400678" dblp: "http://dblp.uni-trier.de/rec/bibtex/journals/toplas/JongeKVS12" researchr: "https://researchr.org/publication/JongeKVS12" cites: 0 citedby: 0 journal: "ACM Transactions on Programming Languages and Systems" volume: "34" number: "4" pages: "15" kind: "article" key: "JongeKVS12" - title: "Declarative, formal, and extensible syntax definition for AspectJ" author: - name: "Martin Bravenboer" link: "http://martin.bravenboer.name/" - name: "Éric Tanter" link: "http://pleiad.dcc.uchile.cl/people/etanter" - name: "Eelco Visser" link: "http://eelcovisser.org" year: "2006" doi: "http://doi.acm.org/10.1145/1167473.1167491" abstract: " Aspect-Oriented Programming (AOP) is attracting attention from both research and industry, as illustrated by the ever-growing popularity of AspectJ, the de facto standard AOP extension of Java. From a compiler construction perspective AspectJ is interesting as it is a typical example of compositional language, ie a language composed of a number of separate languages with different syntactical styles: in addition to plain Java, AspectJ includes a language for defining pointcuts and one for defining advices. Language composition represents a non-trivial challenge for conventional parsing techniques. First, combining several languages with different lexical syntax leads to considerable complexity in the lexical states to processed. Second, as new language features for AOP are being explored, many research proposals are concerned with further extending the AspectJ language, resulting in a need for an extensible syntax definition.This paper shows how scannerless parsing elegantly addresses the issues encountered by conventional techniques when parsing AspectJ . We present the design of a modular, extensible, and formal definition of the lexical and context-free aspects of the AspectJ syntax in the Syntax Definition Formalism SDF, which is implemented by a scannerless, generalized-LR parser (SGLR). We introduce grammar mixins as a novel application of SDF's modularity features, which allows the declarative definition of different keyword policies and combination of extensions. We illustrate the modular extensibility of our definition with syntax extensions taken from current research on aspect languages. Finally, benchmarks show the reasonable performance of scannerless generalized-LR parsing for this grammar. " links: doi: "http://doi.acm.org/10.1145/1167473.1167491" tags: - "programming languages" - "AspectJ" - "object-oriented programming" - "Java" - "syntax definition" - "SDF" - "lexical syntax" - "design complexity" - "composition" - "design research" - "language design" - "aspect oriented programming" - "compiler" - "programming" - "subject-oriented programming" - "context-aware" - "language composition" - "parsing" - "design" - "scannerless parsing" - "extensible language" - "ASF+SDF" - "feature-oriented programming" - "SGLR" - "grammar" researchr: "https://researchr.org/publication/BravenboerTV06" cites: 0 citedby: 1 pages: "209-228" booktitle: "Proceedings of the 21th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2006, October 22-26, 2006, Portland, Oregon, USA" editor: - name: "Peri L. Tarr" link: "http://portal.acm.org/author_page.cfm?id=81100131551&coll=GUIDE&dl=GUIDE&trk=0&CFID=51133021&CFTOKEN=87963901" - name: "William R. Cook" link: "http://www.cs.utexas.edu/~wcook/" publisher: "ACM" isbn: "1-59593-348-4" kind: "inproceedings" key: "BravenboerTV06" - title: "Efficient parallel and incremental parsing of practical context-free languages" author: - name: "Jean-Philippe Bernardy" link: "https://researchr.org/alias/jean-philippe-bernardy" - name: "Koen Claessen" link: "http://www.cse.chalmers.se/~koen/" year: "2015" doi: "http://dx.doi.org/10.1017/S0956796815000131" links: doi: "http://dx.doi.org/10.1017/S0956796815000131" dblp: "http://dblp.uni-trier.de/rec/bibtex/journals/jfp/BernardyC15" researchr: "https://researchr.org/publication/BernardyC15" cites: 0 citedby: 0 journal: "Journal of Functional Programming" volume: "25" kind: "article" key: "BernardyC15" - title: "A Simple and Efficient Incremental LL(1) parsing" author: - name: "Warren X. Li" link: "https://researchr.org/alias/warren-x.-li" year: "1995" tags: - "parsing" - "incremental" researchr: "https://researchr.org/publication/Li95%3A8" cites: 0 citedby: 0 pages: "399-404" booktitle: "SOFSEM 95, 22nd Seminar on Current Trends in Theory and Practice of Informatics, Milovy, Czech Republic, November 23 - December 1, 1995, Proceedings" editor: - name: "Miroslav Bartosek" link: "https://researchr.org/alias/miroslav-bartosek" - name: "Jan Staudek" link: "https://researchr.org/alias/jan-staudek" - name: "Jirí Wiedermann" link: "https://researchr.org/alias/jir%C3%AD-wiedermann" volume: "1012" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "3-540-60609-2" kind: "inproceedings" key: "Li95:8" - title: "Elkhound: A Fast, Practical GLR Parser Generator" author: - name: "Scott McPeak" link: "https://researchr.org/alias/scott-mcpeak" - name: "George C. Necula" link: "https://researchr.org/alias/george-c.-necula" year: "2004" doi: "https://doi.org/10.1007/978-3-540-24723-4_6" links: doi: "https://doi.org/10.1007/978-3-540-24723-4_6" tags: - "GLR parsing" - "GLR" - "C++" - "parsing" researchr: "https://researchr.org/publication/McPeakN04" cites: 0 citedby: 0 pages: "73-88" booktitle: "Compiler Construction, 13th International Conference, CC 2004, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2004, Barcelona, Spain, March 29 - April 2, 2004, Proceedings" volume: "2985" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "3-540-21297-3" kind: "inproceedings" key: "McPeakN04" - title: "Merlin: a language server for OCaml (experience report)" author: - name: "Frédéric Bour" link: "https://researchr.org/alias/fr%C3%A9d%C3%A9ric-bour" - name: "Thomas Refis" link: "https://researchr.org/alias/thomas-refis" - name: "Gabriel Scherer" link: "https://researchr.org/alias/gabriel-scherer" year: "2018" doi: "https://doi.org/10.1145/3236798" links: doi: "https://doi.org/10.1145/3236798" dblp: "http://dblp.uni-trier.de/rec/bibtex/journals/pacmpl/BourRS18" researchr: "https://researchr.org/publication/BourRS18" cites: 0 citedby: 0 journal: "Proceedings of the ACM on Programming Languages" volume: "2" number: "ICFP" kind: "article" key: "BourRS18" - title: "Layout-Sensitive Generalized Parsing" author: - name: "Sebastian Erdweg" link: "http://www.informatik.uni-marburg.de/~seba/" - name: "Tillmann Rendel" link: "https://researchr.org/alias/tillmann-rendel" - name: "Christian Kästner" link: "https://researchr.org/alias/christian-k%C3%A4stner" - name: "Klaus Ostermann" link: "https://researchr.org/alias/klaus-ostermann" year: "2012" doi: "http://dx.doi.org/10.1007/978-3-642-36089-3_14" links: doi: "http://dx.doi.org/10.1007/978-3-642-36089-3_14" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/sle/ErdwegRKO12" researchr: "https://researchr.org/publication/ErdwegRKO12" cites: 0 citedby: 0 pages: "244-263" booktitle: "Software Language Engineering, 5th International Conference, SLE 2012, Dresden, Germany, September 26-28, 2012, Revised Selected Papers" editor: - name: "Krzysztof Czarnecki" link: "http://www.swen.uwaterloo.ca/~kczarnec/" - name: "Görel Hedin" link: "http://cs.lth.se/gorel_hedin" volume: "7745" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "978-3-642-36089-3" kind: "inproceedings" key: "ErdwegRKO12" - title: "Verifiable composition of deterministic grammars" author: - name: "August Schwerdfeger" link: "https://researchr.org/alias/august-schwerdfeger" - name: "Eric {Van Wyk}" link: "http://www-users.cs.umn.edu/~evw/" year: "2009" doi: "http://doi.acm.org/10.1145/1542476.1542499" links: doi: "http://doi.acm.org/10.1145/1542476.1542499" tags: - "composition" - "grammar" researchr: "https://researchr.org/publication/SchwerdfegerW09" cites: 0 citedby: 0 pages: "199-210" booktitle: "Proceedings of the 2009 ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2009, Dublin, Ireland, June 15-21, 2009" editor: - name: "Michael Hind" link: "https://researchr.org/alias/michael-hind" - name: "Amer Diwan" link: "https://researchr.org/alias/amer-diwan" publisher: "ACM" isbn: "978-1-60558-392-1" kind: "inproceedings" key: "SchwerdfegerW09" - title: "One parser to rule them all" author: - name: "Ali Afroozeh" link: "https://www.cwi.nl/people/2605" - name: "Anastasia Izmaylova" link: "https://researchr.org/alias/anastasia-izmaylova" year: "2015" doi: "http://doi.acm.org/10.1145/2814228.2814242" links: doi: "http://doi.acm.org/10.1145/2814228.2814242" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/oopsla/AfroozehI15" researchr: "https://researchr.org/publication/AfroozehI15-0" cites: 0 citedby: 0 pages: "151-170" booktitle: "2015 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software, Onward! 2015, Pittsburgh, PA, USA, October 25-30, 2015" editor: - name: "Gail C. Murphy" link: "https://researchr.org/alias/gail-c.-murphy" - name: "Guy L. Steele Jr." link: "https://researchr.org/alias/guy-l.-steele-jr." publisher: "ACM" isbn: "978-1-4503-3688-8" kind: "inproceedings" key: "AfroozehI15-0" - title: "A Generalized CYK Algorithm for Parsing Stochastic CFG" author: - name: "Jean-Cédric Chappelier" link: "https://researchr.org/alias/jean-c%C3%A9dric-chappelier" - name: "Martin Rajman" link: "https://researchr.org/alias/martin-rajman" year: "1998" doi: "ftp://ftp.inria.fr/INRIA/Projects/Atoll/TAPD98/chappelier.ps.gz" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/ChappelierR98" cites: 0 citedby: 0 pages: "133-137" booktitle: "TAPD" kind: "inproceedings" key: "ChappelierR98" - title: "Processing XPath queries with forward and downward axes over XML streams" author: - name: "Makoto Onizuka" link: "https://researchr.org/alias/makoto-onizuka" year: "2010" doi: "http://doi.acm.org/10.1145/1739041.1739048" abstract: "We propose an XPath processing algorithm that efficiently evaluates XPath queries in XP{downarrow,rightarrow,*,[]} over XML streams. An XPath query is expressed with axes, which are binary relations between nodes in XML streams: 'downarrow' identifies the child/descendant axes and 'rightarrow' indicates the following/following-sibling axes. The proposed algorithm evaluates XPath queries within one XML parsing pass and outputs the fragments found in XML streams as the query results. The difficulty of XP{downarrow,rightarrow,*,[]} evaluation lies in establishing dynamic scope control for the following/following-sibling axes. The algorithm uses double-layered non-deterministic finite automata (NFA) to resolve this issue. First layer NFA is compiled from XPath queries and is able to evaluate sub-queries in XP{downarrow,rightarrow,*}. Second layer NFA handles predicate parts. It is dynamically maintained during XML parsing: a state is constructed from a pair of the corresponding state in the first layer automaton and the currently parsed node in the XML stream. Layered NFA achieves O(|D||Q|) time complexity by introducing a state sharing technique, which avoids the exponential growth in the state size of Layered NFA by eliminating redundant transitions. We validate the efficiency of the algorithm through empirical experiments and show that Layered NFA is up to four times faster, and twice as fast on average, than existing algorithms. " links: doi: "http://doi.acm.org/10.1145/1739041.1739048" tags: - "empirical" - "parsing algorithm" - "XML" - "XML Schema" - "XPath" - "compiler" - "parsing" - "stream processing" researchr: "https://researchr.org/publication/Onizuka10" cites: 0 citedby: 0 pages: "27-38" booktitle: "EDBT 2010, 13th International Conference on Extending Database Technology, Lausanne, Switzerland, March 22-26, 2010, Proceedings" editor: - name: "Ioana Manolescu" link: "https://researchr.org/alias/ioana-manolescu" - name: "Stefano Spaccapietra" link: "https://researchr.org/alias/stefano-spaccapietra" - name: "Jens Teubner" link: "http://people.inf.ethz.ch/jteubner/" - name: "Masaru Kitsuregawa" link: "https://researchr.org/alias/masaru-kitsuregawa" - name: "Alain Léger" link: "https://researchr.org/alias/alain-l%C3%A3%C2%A9ger" - name: "Felix Naumann" link: "https://researchr.org/alias/felix-naumann" - name: "Anastasia Ailamaki" link: "https://researchr.org/alias/anastasia-ailamaki" - name: "Fatma Özcan" link: "https://researchr.org/alias/fatma-%C3%A3%E2%80%93zcan" volume: "426" series: "ACM International Conference Proceeding Series" publisher: "ACM" isbn: "978-1-60558-945-9" kind: "inproceedings" key: "Onizuka10" - title: "A parsing algorithm for Korean implemented in Prolog" author: - name: "Soyoung Kwon" link: "https://researchr.org/alias/soyoung-kwon" year: "2006" doi: "http://doi.acm.org/10.1145/1185448.1185458" links: doi: "http://doi.acm.org/10.1145/1185448.1185458" tags: - "parsing algorithm" - "Prolog" - "parsing" researchr: "https://researchr.org/publication/Kwon06%3A8" cites: 0 citedby: 0 pages: "40-44" booktitle: "Proceedings of the 44st Annual Southeast Regional Conference, 2006, Melbourne, Florida, USA, March 10-12, 2006" editor: - name: "Ronaldo Menezes" link: "https://researchr.org/alias/ronaldo-menezes" publisher: "ACM" isbn: "1-59593-315-8" kind: "inproceedings" key: "Kwon06:8" - title: "Incremental Scannerless Generalized LR Parsing" author: - name: "Maarten P. Sijm" link: "https://researchr.org/profile/mpsijm/publications" year: "2019" doi: "https://doi.org/10.1145/3359061.3361085" abstract: "We present the Incremental Scannerless Generalized LR (ISGLR) parsing algorithm, which combines the benefits of Incremental Generalized LR (IGLR) parsing and Scannerless Generalized LR (SGLR) parsing. The parser preprocesses the input by modifying the previously saved parse forest. This allows the input to the parser to be a stream of parse nodes, instead of a stream of characters. Scannerless parsing relies heavily on non-determinism during parsing, negatively impacting the incrementality of ISGLR parsing. We evaluated the ISGLR parsing algorithm using file histories from Git, achieving a speedup of up to 25 times over non-incremental SGLR." links: doi: "https://doi.org/10.1145/3359061.3361085" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/oopsla/Sijm19" successor: "https://researchr.org/publication/Sijm21" researchr: "https://researchr.org/publication/Sijm19" cites: 6 citedby: 0 pages: "54-56" booktitle: "Proceedings Companion of the 2019 ACM SIGPLAN International Conference on Systems, Programming, Languages, and Applications: Software for Humanity, SPLASH 2019, Athens, Greece, October 20-25, 2019" editor: - name: "Yannis Smaragdakis" link: "https://researchr.org/alias/yannis-smaragdakis" publisher: "ACM" isbn: "978-1-4503-6992-3" kind: "inproceedings" key: "Sijm19" - title: "An Optimal Tabular Parsing Algorithm" author: - name: "Mark-Jan Nederhof" link: "https://researchr.org/alias/mark-jan-nederhof" year: "1994" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/Nederhof94" cites: 0 citedby: 0 pages: "117-124" booktitle: "ACL" kind: "inproceedings" key: "Nederhof94" - title: "Context-aware scanning for parsing extensible languages" author: - name: "Eric {Van Wyk}" link: "http://www-users.cs.umn.edu/~evw/" - name: "August Schwerdfeger" link: "https://researchr.org/alias/august-schwerdfeger" year: "2007" doi: "http://doi.acm.org/10.1145/1289971.1289983" links: doi: "http://doi.acm.org/10.1145/1289971.1289983" tags: - "context-aware" - "parsing" - "extensible language" researchr: "https://researchr.org/publication/WykS07" cites: 0 citedby: 1 pages: "63-72" booktitle: "Generative Programming and Component Engineering, 6th International Conference, GPCE 2007" editor: - name: "Charles Consel" link: "https://researchr.org/alias/charles-consel" - name: "Julia L. Lawall" link: "http://www.diku.dk/hjemmesider/ansatte/julia/" address: "Salzburg, Austria" publisher: "ACM" isbn: "978-1-59593-855-8" kind: "inproceedings" key: "WykS07" - title: "An All-Path Parsing Algorithm for Constraint-Based Dependency Grammars of CF-Power" author: - name: "Tomasz Obrêbski" link: "https://researchr.org/alias/tomasz-obr%C3%AAbski" year: "2007" doi: "http://dx.doi.org/10.1007/978-3-540-74628-7_20" links: doi: "http://dx.doi.org/10.1007/978-3-540-74628-7_20" tags: - "parsing algorithm" - "rule-based" - "constraints" - "parsing" - "grammar" researchr: "https://researchr.org/publication/Obrebski07" cites: 0 citedby: 0 pages: "139-146" booktitle: "Text, Speech and Dialogue, 10th International Conference, TSD 2007, Pilsen, Czech Republic, September 3-7, 2007, Proceedings" editor: - name: "Václav Matousek" link: "https://researchr.org/alias/v%C3%A1clav-matousek" - name: "Pavel Mautner" link: "https://researchr.org/alias/pavel-mautner" volume: "4629" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "978-3-540-74627-0" kind: "inproceedings" key: "Obrebski07" - title: "The State of the Art in Language Workbenches - Conclusions from the Language Workbench Challenge" author: - name: "Sebastian Erdweg" link: "http://www.informatik.uni-marburg.de/~seba/" - name: "Tijs van der Storm" link: "http://homepages.cwi.nl/~storm/" - name: "Markus Völter" link: "http://www.voelter.de/" - name: " Meinte Boersma" link: "https://researchr.org/alias/meinte-boersma" - name: "Remi Bosman" link: "https://researchr.org/alias/remi-bosman" - name: "William R. Cook" link: "http://www.cs.utexas.edu/~wcook/" - name: "Albert Gerritsen" link: "https://researchr.org/alias/albert-gerritsen" - name: "Angelo Hulshout" link: "https://researchr.org/alias/angelo-hulshout" - name: "Steven Kelly" link: "https://researchr.org/alias/steven-kelly" - name: "Alex Loh" link: "https://researchr.org/alias/alex-loh" - name: "Gabriël Konat" link: "http://nl.linkedin.com/in/gabrielkonat" - name: "Pedro J. Molina" link: "https://researchr.org/alias/pedro-j.-molina" - name: "Martin Palatnik" link: "https://researchr.org/alias/martin-palatnik" - name: "Risto Pohjonen" link: "https://researchr.org/alias/risto-pohjonen" - name: "Eugen Schindler" link: "https://researchr.org/alias/eugen-schindler" - name: "Klemens Schindler" link: "https://researchr.org/alias/klemens-schindler" - name: "Riccardo Solmi" link: "https://researchr.org/alias/riccardo-solmi" - name: "Vlad A. Vergu" link: "https://researchr.org/alias/vlad-a.-vergu" - name: "Eelco Visser" link: "http://eelcovisser.org" - name: "Kevin van der Vlist" link: "https://researchr.org/alias/kevin-van-der-vlist" - name: "Guido Wachsmuth" link: "https://www.linkedin.com/in/guidowachsmuth/" - name: "Jimi van der Woning" link: "https://researchr.org/alias/jimi-van-der-woning" year: "2013" doi: "http://dx.doi.org/10.1007/978-3-319-02654-1_11" abstract: "Language workbenches are tools that provide high-level mechanisms for the implementation of (domain-specific) languages. Language workbenches are an active area of research that also receives many contributions from industry. To compare and discuss existing language workbenches, the annual Language Workbench Challenge was launched in 2011. Each year, participants are challenged to realize a given domain-specific language with their workbenches as a basis for discussion and comparison. In this paper, we describe the state of the art of language workbenches as observed in the previous editions of the Language Workbench Challenge. In particular, we capture the design space of language workbenches in a feature model and show where in this design space the participants of the 2013 Language Workbench Challenge reside. We compare these workbenches based on a DSL for questionnaires that was realized in all workbenches." links: doi: "http://dx.doi.org/10.1007/978-3-319-02654-1_11" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/sle/ErdwegSVBBCGHKLKMPPSSSVVVWW13" researchr: "https://researchr.org/publication/ErdwegSV13" cites: 0 citedby: 0 pages: "197-217" booktitle: "Software Language Engineering - 6th International Conference, SLE 2013, Indianapolis, IN, USA, October 26-28, 2013. Proceedings" editor: - name: "Martin Erwig" link: "https://researchr.org/alias/martin-erwig" - name: "Richard F. Paige" link: "https://researchr.org/alias/richard-f.-paige" - name: "Eric {Van Wyk}" link: "http://www-users.cs.umn.edu/~evw/" volume: "8225" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "978-3-319-02653-4" kind: "inproceedings" key: "ErdwegSV13" - title: "Iguana: a practical data-dependent parsing framework" author: - name: "Ali Afroozeh" link: "https://www.cwi.nl/people/2605" - name: "Anastasia Izmaylova" link: "https://researchr.org/alias/anastasia-izmaylova" year: "2016" doi: "http://doi.acm.org/10.1145/2892208.2892234" links: doi: "http://doi.acm.org/10.1145/2892208.2892234" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/cc/AfroozehI16" researchr: "https://researchr.org/publication/AfroozehI16-0" cites: 0 citedby: 0 pages: "267-268" booktitle: "Proceedings of the 25th International Conference on Compiler Construction, CC 2016, Barcelona, Spain, March 12-18, 2016" editor: - name: "Ayal Zaks" link: "https://researchr.org/alias/ayal-zaks" - name: "Manuel V. Hermenegildo" link: "https://researchr.org/alias/manuel-v.-hermenegildo" publisher: "ACM" isbn: "978-1-4503-4241-4" kind: "inproceedings" key: "AfroozehI16-0" - title: "Type-Driven Automatic Quotation of Concrete Object Code in Meta Programs" author: - name: "Jurgen J. Vinju" link: "http://homepages.cwi.nl/~jurgenv/" year: "2005" doi: "http://dx.doi.org/10.1007/11751113_8" abstract: "Meta programming can be facilitated by the ability to represent program fragments in concrete syntax instead of abstract syntax. The resulting meta programs are more self-documenting. One caveat in concrete meta programming is the syntactic separation between the meta language and the object language. To solve this problem, many meta programming systems use quoting and anti-quoting to indicate precisely where level switches occur. These \"syntactic hedges\" can obfuscate the concrete program fragments. This paper describes an algorithm for inferring quotes, such that the meta programmer no longer needs to explicitly indicate transitions between the meta and object languages. " links: doi: "http://dx.doi.org/10.1007/11751113_8" tags: - "programming languages" - "object-oriented programming" - "concrete object syntax" - "meta programming" - "SDF" - "meta-model" - "abstract syntax" - "type system" - "programming" - "subject-oriented programming" - "metaprogramming" - "Meta-Environment" - "quotation" - "ASF+SDF" - "feature-oriented programming" - "concrete syntax" - "meta-objects" researchr: "https://researchr.org/publication/Vinju05" cites: 0 citedby: 0 pages: "97-112" booktitle: "Rapid Integration of Software Engineering Techniques, Second International Workshop, RISE 2005, Heraklion, Crete, Greece, September 8-9, 2005, Revised Selected Papers" editor: - name: "Nicolas Guelfi" link: "https://researchr.org/alias/nicolas-guelfi" - name: "Anthony Savidis" link: "https://researchr.org/alias/anthony-savidis" volume: "3943" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "3-540-34063-7" kind: "inproceedings" key: "Vinju05" - title: "Evaluating GLR parsing algorithms" author: - name: "Adrian Johnstone" link: "http://www.cs.rhul.ac.uk/~adrian/" - name: "Elizabeth Scott" link: "http://www.cs.rhul.ac.uk/People/staff/scott.html" - name: "Giorgios R. Economopoulos" link: "http://users.ecs.soton.ac.uk/gre/" year: "2006" doi: "http://dx.doi.org/10.1016/j.scico.2006.04.004" abstract: "We describe the behaviour of three variants of GLR parsing: (i) Farshi’s original correction to Tomita’s non-general algorithm; (ii) the Right Nulled GLR algorithm which provides a more efficient generalisation of Tomita and (iii) the Binary Right Nulled GLR algorithm, on three types of LR table. We present a guide to the parse-time behaviour of these algorithms which illustrates the inefficiencies in conventional Farshi-style GLR parsing. We also describe the tool GTB (Grammar Tool Box) which provides a platform for comparative studies of parsing algorithms; and use GTB to exercise the three GLR algorithms running with LR(0), SLR(1) and LR(1) tables for ANSI-C, ISO-Pascal and IBM VS-COBOL. We give results showing the size of the structures constructed by these parsers and the amount of searching required during the parse, which abstracts their runtime." links: doi: "http://dx.doi.org/10.1016/j.scico.2006.04.004" tags: - "parsing algorithm" - "GLR parsing" - "context free languages" - "GLR" - "C++" - "context-aware" - "Cobol" - "parsing" - "Pascal" - "grammar types" - "grammar" researchr: "https://researchr.org/publication/JohnstoneSE06" cites: 0 citedby: 0 journal: "Science of Computer Programming" volume: "61" number: "3" pages: "228-244" kind: "article" key: "JohnstoneSE06" - title: "Generalized Type-Based Disambiguation of Meta Programs with Concrete Object Syntax" author: - name: "Martin Bravenboer" link: "http://martin.bravenboer.name/" - name: "Rob Vermaas" link: "https://researchr.org/profile/robvermaas/publications" - name: "Jurgen J. Vinju" link: "http://homepages.cwi.nl/~jurgenv/" - name: "Eelco Visser" link: "http://eelcovisser.org" year: "2005" doi: "http://dx.doi.org/10.1007/11561347_12" abstract: "In meta programming with concrete object syntax, object-level programs are composed from fragments written in concrete syntax. The use of small program fragments in such quotations and the use of meta-level expressions within these fragments (anti-quotation) often leads to ambiguities. This problem is usually solved through explicit disambiguation, resulting in considerable syntactic overhead. A few systems manage to reduce this overhead by using type information during parsing. Since this is hard to achieve with traditional parsing technology, these systems provide specific combinations of meta and object languages, and their implementations are difficult to reuse. In this paper, we generalize these approaches and present a language independent method for introducing concrete object syntax without explicit disambiguation. The method uses scannerless generalized-LR parsing to parse meta programs with embedded object-level fragments, which produces a forest of all possible parses. This forest is reduced to a tree by a disambiguating type checker for the meta language. To validate our method we have developed embeddings of several object languages in Java, including AspectJ and Java itself. " links: doi: "http://dx.doi.org/10.1007/11561347_12" tags: - "programming languages" - "AspectJ" - "object-oriented programming" - "concrete object syntax" - "rule-based" - "Java" - "syntax definition" - "meta programming" - "SDF" - "meta-model" - "disambiguation" - "type system" - "reuse" - "programming" - "subject-oriented programming" - "Meta-Environment" - "parsing" - "scannerless parsing" - "systematic-approach" - "ASF+SDF" - "feature-oriented programming" - "concrete syntax" - "meta-objects" - "domain-specific language" researchr: "https://researchr.org/publication/BravenboerVVV05" cites: 0 citedby: 2 pages: "157-172" booktitle: "Generative Programming and Component Engineering, 4th International Conference, GPCE 2005" editor: - name: "Robert Glück" link: "http://www.diku.dk/hjemmesider/ansatte/glueck/" - name: "Michael R. Lowry" link: "https://researchr.org/alias/michael-r.-lowry" volume: "3676" series: "Lecture Notes in Computer Science" address: "Tallinn, Estonia" publisher: "Springer" isbn: "3-540-29138-5" kind: "inproceedings" key: "BravenboerVVV05" - title: "An Input-Parsing Algorithm Supporting Integration of Deictic Gesture in Natural Language Interface" author: - name: "Yong Sun" link: "https://researchr.org/alias/yong-sun" - name: "Fang Chen" link: "https://researchr.org/alias/fang-chen" - name: "Yu Shi" link: "https://researchr.org/alias/yu-shi" - name: "Vera Chung" link: "https://researchr.org/alias/vera-chung" year: "2007" doi: "http://dx.doi.org/10.1007/978-3-540-73110-8_22" links: doi: "http://dx.doi.org/10.1007/978-3-540-73110-8_22" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/SunCSC07" cites: 0 citedby: 0 pages: "206-215" booktitle: "Human-Computer Interaction. HCI Intelligent Multimodal Interaction Environments, 12th International Conference, HCI International 2007, Beijing, China, July 22-27, 2007, Proceedings, Part III" editor: - name: "Julie A. Jacko" link: "https://researchr.org/alias/julie-a.-jacko" volume: "4552" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "978-3-540-73108-5" kind: "inproceedings" key: "SunCSC07" - title: "Right nulled GLR parsers" author: - name: "Elizabeth Scott" link: "https://researchr.org/alias/elizabeth-scott" - name: "Adrian Johnstone" link: "http://www.cs.rhul.ac.uk/~adrian/" year: "2006" doi: "http://doi.acm.org/10.1145/1146810" links: doi: "http://doi.acm.org/10.1145/1146810" tags: - "GLR parsing" - "GLR" - "parsing" researchr: "https://researchr.org/publication/ScottJ06" cites: 0 citedby: 0 journal: "ACM Transactions on Programming Languages and Systems" volume: "28" number: "4" pages: "577-618" kind: "article" key: "ScottJ06" - title: "MetaJ: An Extensible Environment for Metaprogramming in Java" author: - name: "Ademir Alvarenga de Oliveira" link: "https://researchr.org/alias/ademir-alvarenga-de-oliveira" - name: "Thiago Henrique Braga" link: "https://researchr.org/alias/thiago-henrique-braga" - name: "Marcelo de Almeida Maia" link: "https://researchr.org/alias/marcelo-de-almeida-maia" - name: "Roberto da Silva Bigonha" link: "https://researchr.org/alias/roberto-da-silva-bigonha" year: "2004" doi: "http://www.jucs.org/jucs_10_7/metaj_an_extensible_environment" links: doi: "http://www.jucs.org/jucs_10_7/metaj_an_extensible_environment" tags: - "Java" - "meta-model" - "Meta-Environment" - "meta-objects" researchr: "https://researchr.org/publication/OliveiraBMB04" cites: 0 citedby: 0 journal: "J. UCS" volume: "10" number: "7" pages: "872-891" kind: "article" key: "OliveiraBMB04" - title: "Practical, general parser combinators" author: - name: "Anastasia Izmaylova" link: "https://researchr.org/alias/anastasia-izmaylova" - name: "Ali Afroozeh" link: "https://www.cwi.nl/people/2605" - name: "Tijs van der Storm" link: "https://researchr.org/alias/tijs-van-der-storm" year: "2016" doi: "http://doi.acm.org/10.1145/2847538.2847539" links: doi: "http://doi.acm.org/10.1145/2847538.2847539" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/pepm/IzmaylovaAS16" researchr: "https://researchr.org/publication/IzmaylovaAS16" cites: 0 citedby: 0 pages: "1-12" booktitle: "Proceedings of the 2016 ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation, PEPM 2016, St. Petersburg, FL, USA, January 20 - 22, 2016" editor: - name: "Martin Erwig" link: "https://researchr.org/alias/martin-erwig" - name: "Tiark Rompf" link: "https://researchr.org/alias/tiark-rompf" publisher: "ACM" isbn: "978-1-4503-4097-7" kind: "inproceedings" key: "IzmaylovaAS16" - title: "Safe Specification of Operator Precedence Rules" author: - name: "Ali Afroozeh" link: "https://www.cwi.nl/people/2605" - name: "Mark G. J. van den Brand" link: "http://www.win.tue.nl/~mvdbrand/" - name: "Adrian Johnstone" link: "http://www.cs.rhul.ac.uk/~adrian/" - name: "Elizabeth Scott" link: "http://www.cs.rhul.ac.uk/People/staff/scott.html" - name: "Jurgen J. Vinju" link: "http://homepages.cwi.nl/~jurgenv/" year: "2013" doi: "http://dx.doi.org/10.1007/978-3-319-02654-1_8" links: doi: "http://dx.doi.org/10.1007/978-3-319-02654-1_8" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/sle/AfroozehBJSV13" researchr: "https://researchr.org/publication/AfroozehBJSV13" cites: 0 citedby: 0 pages: "137-156" booktitle: "Software Language Engineering - 6th International Conference, SLE 2013, Indianapolis, IN, USA, October 26-28, 2013. Proceedings" editor: - name: "Martin Erwig" link: "https://researchr.org/alias/martin-erwig" - name: "Richard F. Paige" link: "https://researchr.org/alias/richard-f.-paige" - name: "Eric {Van Wyk}" link: "http://www-users.cs.umn.edu/~evw/" volume: "8225" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "978-3-319-02653-4" kind: "inproceedings" key: "AfroozehBJSV13" - title: "Chinese Syntactic Parsing Based on Extended GLR Parsing Algorithm with PCFG*" author: - name: "Yan Zhang" link: "https://researchr.org/alias/yan-zhang" - name: "Bo Xu" link: "https://researchr.org/alias/bo-xu" - name: "Chengqing Zong" link: "https://researchr.org/alias/chengqing-zong" year: "2002" doi: "http://acl.ldc.upenn.edu/C/C02/C02-2028.pdf" links: doi: "http://acl.ldc.upenn.edu/C/C02/C02-2028.pdf" tags: - "parsing algorithm" - "GLR parsing" - "rule-based" - "GLR" - "parsing" researchr: "https://researchr.org/publication/ZhangXZ02" cites: 0 citedby: 0 booktitle: "COLING" kind: "inproceedings" key: "ZhangXZ02" - title: "Faster, Practical GLL Parsing" author: - name: "Ali Afroozeh" link: "https://www.cwi.nl/people/2605" - name: "Anastasia Izmaylova" link: "https://researchr.org/alias/anastasia-izmaylova" year: "2015" doi: "http://dx.doi.org/10.1007/978-3-662-46663-6_5" links: doi: "http://dx.doi.org/10.1007/978-3-662-46663-6_5" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/cc/AfroozehI15" researchr: "https://researchr.org/publication/AfroozehI15" cites: 0 citedby: 0 pages: "89-108" booktitle: "Compiler Construction - 24th International Conference, CC 2015, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2015, London, UK, April 11-18, 2015. Proceedings" editor: - name: "Björn Franke" link: "https://researchr.org/alias/bj%C3%B6rn-franke" volume: "9031" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "978-3-662-46662-9" kind: "inproceedings" key: "AfroozehI15" - title: "Left Recursion in Parsing Expression Grammars" author: - name: "Sérgio Medeiros" link: "https://researchr.org/alias/s%C3%A9rgio-medeiros" - name: "Fabio Mascarenhas" link: "https://researchr.org/alias/fabio-mascarenhas" - name: "Roberto Ierusalimschy" link: "https://researchr.org/alias/roberto-ierusalimschy" year: "2012" doi: "http://dx.doi.org/10.1007/978-3-642-33182-4_4" links: doi: "http://dx.doi.org/10.1007/978-3-642-33182-4_4" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/sblp/MedeirosMI12" researchr: "https://researchr.org/publication/MedeirosMI12" cites: 0 citedby: 0 pages: "27-41" booktitle: "Programming Languages - 16th Brazilian Symposium, SBLP 2012, Natal, Brazil, September 23-28, 2012. Proceedings" editor: - name: "Francisco Heron de Carvalho Junior" link: "https://researchr.org/alias/francisco-heron-de-carvalho-junior" - name: "Luís Soares Barbosa" link: "https://researchr.org/alias/lu%C3%ADs-soares-barbosa" volume: "7554" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "978-3-642-33181-7" kind: "inproceedings" key: "MedeirosMI12" - title: "An Extended Operator Precedence Parsing Algorithm" author: - name: "D. S. Henderson" link: "https://researchr.org/alias/d.-s.-henderson" - name: "Michael R. Levy" link: "https://researchr.org/alias/michael-r.-levy" year: "1976" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/HendersonL76" cites: 0 citedby: 0 journal: "Comput. J." volume: "19" number: "3" pages: "229-233" kind: "article" key: "HendersonL76" - title: "LL(*): the foundation of the ANTLR parser generator" author: - name: "Terence John Parr" link: "http://www.cs.usfca.edu/~parrt/" - name: "Kathleen Fisher" link: "https://researchr.org/alias/kathleen-fisher" year: "2011" doi: "http://doi.acm.org/10.1145/1993498.1993548" links: doi: "http://doi.acm.org/10.1145/1993498.1993548" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/pldi/ParrF11" tags: - "parsing" researchr: "https://researchr.org/publication/ParrF11" cites: 0 citedby: 0 pages: "425-436" booktitle: "Proceedings of the 32nd ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2011, San Jose, CA, USA, June 4-8, 2011" editor: - name: "Mary W. Hall" link: "https://researchr.org/alias/mary-w.-hall" - name: "David A. Padua" link: "https://researchr.org/alias/david-a.-padua" publisher: "ACM" isbn: "978-1-4503-0663-8" kind: "inproceedings" key: "ParrF11" - title: "Active Lezi: an Incremental Parsing Algorithm for Sequential Prediction" author: - name: "Karthik Gopalratnam" link: "https://researchr.org/alias/karthik-gopalratnam" - name: "Diane J. Cook" link: "https://researchr.org/alias/diane-j.-cook" year: "2004" doi: "http://dx.doi.org/10.1142/S0218213004001892" links: doi: "http://dx.doi.org/10.1142/S0218213004001892" tags: - "parsing algorithm" - "parsing" - "incremental" researchr: "https://researchr.org/publication/Cook04%3A1" cites: 0 citedby: 0 journal: "International Journal on Artificial Intelligence Tools" volume: "13" number: "4" pages: "917-930" kind: "article" key: "Cook04:1" - title: "Multi-purpose Syntax Definition with SDF3" author: - name: "Luis Eduardo de Souza Amorim" link: "https://www.linkedin.com/profile/view?id=136481548" - name: "Eelco Visser" link: "http://eelcovisser.org" year: "2020" doi: "https://doi.org/10.1007/978-3-030-58768-0_1" abstract: "SDF3 is a syntax definition formalism that extends plain context-free grammars with features such as constructor declarations, declarative disambiguation rules, character-level grammars, permissive syntax, layout constraints, formatting templates, placeholder syntax, and modular composition. These features support the multi-purpose interpretation of syntax definitions, including derivation of type schemas for abstract syntax tree representations, scannerless generalized parsing of the full class of context-free grammars, error recovery, layout-sensitive parsing, parenthesization and formatting, and syntactic completion. This paper gives a high level overview of SDF3 by means of examples and provides a guide to the literature for further details." links: doi: "https://doi.org/10.1007/978-3-030-58768-0_1" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/sefm/AmorimV20" researchr: "https://researchr.org/publication/AmorimV20" cites: 0 citedby: 0 pages: "1-23" booktitle: "Software Engineering and Formal Methods - 18th International Conference, SEFM 2020, Amsterdam, The Netherlands, September 14-18, 2020, Proceedings" editor: - name: "Frank S. de Boer" link: "https://researchr.org/alias/frank-s.-de-boer" - name: "Antonio Cerone" link: "https://researchr.org/alias/antonio-cerone" volume: "12310" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "978-3-030-58768-0" kind: "inproceedings" key: "AmorimV20" - title: "A General Context-Free Parsing Algorithm Running in Linear Time on Every LR (k) Grammar Without Using Lookahead" author: - name: "Joop M. I. M. Leo" link: "https://researchr.org/alias/joop-m.-i.-m.-leo" year: "1991" tags: - "parsing algorithm" - "context-aware" - "parsing" - "grammar" researchr: "https://researchr.org/publication/Leo91" cites: 0 citedby: 0 journal: "Theoretical Computer Science" volume: "82" number: "1" pages: "165-176" kind: "article" key: "Leo91" - title: "Correctness of an Extended Operator-Precedence Parsing Algorithm" author: - name: "R. Nigel Horspool" link: "https://researchr.org/alias/r.-nigel-horspool" - name: "Michael R. Levy" link: "https://researchr.org/alias/michael-r.-levy" year: "1987" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/HorspoolL87%3A0" cites: 0 citedby: 0 journal: "Inf. Process. Lett." volume: "24" number: "4" pages: "265-273" kind: "article" key: "HorspoolL87:0" - title: "A New Algorithm for Deterministic Parsing and Its Application to Grammar and Style Checking" author: - name: "Rey-Long Liu" link: "https://researchr.org/alias/rey-long-liu" - name: "Von-Wun Soo" link: "https://researchr.org/alias/von-wun-soo" year: "1994" doi: "http://www.iis.sinica.edu.tw/page/jise/1994/199409_04.html" links: doi: "http://www.iis.sinica.edu.tw/page/jise/1994/199409_04.html" tags: - "parsing algorithm" - "parsing" - "grammar" researchr: "https://researchr.org/publication/LiuS94%3A6" cites: 0 citedby: 0 journal: "J. Inf. Sci. Eng." volume: "11" number: "3" pages: "369-385" kind: "article" key: "LiuS94:6" - title: "BRN-table based GLR parsers" author: - name: "Elizabeth Scott" link: "http://www.cs.rhul.ac.uk/People/staff/scott.html" - name: "Adrian Johnstone" link: "http://www.cs.rhul.ac.uk/~adrian/" - name: "Giorgios R. Economopoulos" link: "http://users.ecs.soton.ac.uk/gre/" year: "2003" month: "July 2006" tags: - "GLR parsing" - "rule-based" - "GLR" - "parsing" researchr: "https://researchr.org/publication/SCOTT03a" cites: 0 citedby: 0 institution: "Royal Holloway, University of London" number: "CSD-TR-03-06" kind: "techreport" key: "SCOTT03a" - title: "Typed parsing and unparsing for untyped regular expression engines" author: - name: "Gabriel Radanne" link: "https://researchr.org/alias/gabriel-radanne" year: "2019" doi: "https://doi.org/10.1145/3294032.3294082" links: doi: "https://doi.org/10.1145/3294032.3294082" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/pepm/Radanne19" researchr: "https://researchr.org/publication/Radanne19" cites: 0 citedby: 0 pages: "35-46" booktitle: "Proceedings of the 2019 ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation, PEPM@POPL 2019, Cascais, Portugal, January 14-15, 2019" editor: - name: "Manuel V. Hermenegildo" link: "https://researchr.org/alias/manuel-v.-hermenegildo" - name: "Atsushi Igarashi" link: "https://researchr.org/alias/atsushi-igarashi" publisher: "ACM" isbn: "978-1-4503-6226-9" kind: "inproceedings" key: "Radanne19" - title: "Linear Time Algorithm for Parsing RNA Secondary Structure" author: - name: "Baharak Rastegari" link: "https://researchr.org/alias/baharak-rastegari" - name: "Anne Condon" link: "https://researchr.org/alias/anne-condon" year: "2005" doi: "http://dx.doi.org/10.1007/11557067_28" links: doi: "http://dx.doi.org/10.1007/11557067_28" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/RastegariC05" cites: 0 citedby: 0 pages: "341-352" booktitle: "Algorithms in Bioinformatics, 5th International Workshop, WABI 2005, Mallorca, Spain, October 3-6, 2005, Proceedings" editor: - name: "Rita Casadio" link: "https://researchr.org/alias/rita-casadio" - name: "Gene Myers" link: "https://researchr.org/alias/gene-myers" volume: "3692" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "3-540-29008-7" kind: "inproceedings" key: "RastegariC05" - title: "GLL Parsing" author: - name: "Elizabeth Scott" link: "https://researchr.org/alias/elizabeth-scott" - name: "Adrian Johnstone" link: "http://www.cs.rhul.ac.uk/~adrian/" year: "2010" doi: "http://dx.doi.org/10.1016/j.entcs.2010.08.041" links: doi: "http://dx.doi.org/10.1016/j.entcs.2010.08.041" dblp: "http://dblp.uni-trier.de/rec/bibtex/journals/entcs/ScottJ10" tags: - "parsing" researchr: "https://researchr.org/publication/ScottJ10-GLL" cites: 0 citedby: 0 journal: "Electronic Notes in Theoretical Computer Science" volume: "253" number: "7" pages: "177-189" kind: "article" key: "ScottJ10-GLL" - title: "Generalized Parsing and Term Rewriting: Semantics Driven Disambiguation" author: - name: "Mark G. J. van den Brand" link: "http://www.win.tue.nl/~mvdbrand/" - name: "Steven Klusener" link: "http://www.cs.vu.nl/~steven/" - name: "Leon Moonen" link: "http://simula.no/~leonm/" - name: "Jurgen J. Vinju" link: "http://homepages.cwi.nl/~jurgenv/" year: "2003" doi: "http://www1.elsevier.com/gej-ng/31/29/23/133/52/show/Products/notes/index.htt#008" abstract: "Generalized parsing technology provides the power and flexibility to attack real-world parsing applications. However, many programming languages have syntactical ambiguities that can only be solved using semantical analysis. In this paper we propose to apply the paradigm of term rewriting to filter ambiguities based on semantical information. We start with the definition of a representation of ambiguous derivations. Then we extend term rewriting with means to handle such derivations. Finally, we apply these tools to some real world examples, namely C and COBOL. The resulting architecture is simple and efficient as compared to semantic directed parsing. " links: doi: "http://www1.elsevier.com/gej-ng/31/29/23/133/52/show/Products/notes/index.htt#008" tags: - "programming languages" - "semantics" - "rule-based" - "program analysis" - "disambiguation" - "architecture" - "term rewriting" - "analysis" - "graph-rewriting" - "C++" - "programming paradigms" - "programming" - "rewriting" - "Cobol" - "parsing" researchr: "https://researchr.org/publication/BrandKMV03" cites: 0 citedby: 0 journal: "Electronic Notes in Theoretical Computer Science" volume: "82" number: "3" pages: "575-591" kind: "article" key: "BrandKMV03" - title: "Language Prototyping. An Algebraic Specification Approach" year: "1996" month: "September" tags: - "algebraic specification" - " algebra" - "systematic-approach" researchr: "https://researchr.org/publication/DHP%3A1996" cites: 0 citedby: 2 editor: - name: "Arie van Deursen" link: "http://www.st.ewi.tudelft.nl/~arie/" - name: "Jan Heering" link: "http://homepages.cwi.nl/~jan/" - name: "Paul Klint" link: "http://homepages.cwi.nl/~paulk/" volume: "5" series: "AMAST Series in Computing" address: "Singapore" publisher: "World Scientific" kind: "book" key: "DHP:1996" - title: "An Earley-Type Parsing Algorithm for Tree Adjoining Grammars" author: - name: "Yves Schabes" link: "https://researchr.org/alias/yves-schabes" - name: "Aravind K. Joshi" link: "https://researchr.org/alias/aravind-k.-joshi" year: "1988" tags: - "parsing algorithm" - "parsing" - "grammar" researchr: "https://researchr.org/publication/SchabesJ88" cites: 0 citedby: 0 pages: "258-269" booktitle: "ACL" kind: "inproceedings" key: "SchabesJ88" - title: "Syntax Definition for Language Prototyping" author: - name: "Eelco Visser" link: "http://eelcovisser.org" year: "1997" month: "September" abstract: "Language prototyping is the activity of designing and testing definitions of new or existing computer languages. An important aspect of a language definition is the definition of its syntax. The subject of this thesis are new formalisms and techniques that support the development and prototyping of syntax definitions. There are four main subjects: (1) Techniques for parsing and disambiguation of context-free languages. (2) Design and implementation of a new syntax definition formalism. (3) Design of a multi-level algebraic specification formalism. (4) Study of polymorphic syntax definition. " tags: - "syntax definition" - "SDF" - "syntax definition formalism" - "disambiguation" - "testing" - "language design" - "graph-rewriting" - "algebraic specification" - " algebra" - "context-aware" - "rewriting" - "parsing" - "design" - "scannerless parsing" - "ASF+SDF" - "SGLR" researchr: "https://researchr.org/publication/Visser97" cites: 0 citedby: 6 school: "University of Amsterdam" advisor: - name: "Paul Klint" link: "http://homepages.cwi.nl/~paulk/" kind: "phdthesis" key: "Visser97" - title: "A model of extensible language systems" author: - name: "Notley, M. G." link: "https://researchr.org/alias/notley%2C-m.-g." year: "1971" doi: "http://doi.acm.org/10.1145/800006.807977" links: doi: "http://doi.acm.org/10.1145/800006.807977" tags: - "meta-model" - "modeling language" - "language modeling" - "Meta-Environment" - "extensible language" researchr: "https://researchr.org/publication/807977" cites: 0 citedby: 0 booktitle: "Proceedings of the international symposium on Extensible languages" address: "New York, NY, USA" publisher: "ACM" kind: "inproceedings" key: "807977" - title: "Parser Generation for Interactive Environments" author: - name: "Jan Rekers" link: "http://www.cwi.nl" year: "1992" month: "January" links: "url": "https://homepages.cwi.nl/~paulk/dissertations/Rekers.pdf" tags: - "GLR parsing" - "GLR" - "Meta-Environment" - "parsing" researchr: "https://researchr.org/publication/Rekers1992" cites: 0 citedby: 3 school: "University of Amsterdam" address: "Amsterdam, The Netherlands" advisor: - name: "Paul Klint" link: "http://homepages.cwi.nl/~paulk/" kind: "phdthesis" key: "Rekers1992" - title: "An Efficient Probabilistic Context-Free Parsing Algorithm that Computes Prefix Probabilities" author: - name: "Andreas Stolcke" link: "https://researchr.org/alias/andreas-stolcke" year: "1995" tags: - "parsing algorithm" - "context-aware" - "parsing" researchr: "https://researchr.org/publication/Stolcke95" cites: 0 citedby: 0 journal: "Computational Linguistics" volume: "21" number: "2" pages: "165-201" kind: "article" key: "Stolcke95" - title: "Error recovery in parsing expression grammars through labeled failures and its implementation based on a parsing machine" author: - name: "Sérgio Queiroz de Medeiros" link: "https://researchr.org/alias/s%C3%A9rgio-queiroz-de-medeiros" - name: "Fabio Mascarenhas" link: "https://researchr.org/alias/fabio-mascarenhas" year: "2018" doi: "https://doi.org/10.1016/j.jvlc.2018.10.003" links: doi: "https://doi.org/10.1016/j.jvlc.2018.10.003" dblp: "http://dblp.uni-trier.de/rec/bibtex/journals/vlc/MedeirosM18" researchr: "https://researchr.org/publication/MedeirosM18-VLC" cites: 0 citedby: 0 journal: "Journal of Computer Languages" volume: "49" pages: "17-28" kind: "article" key: "MedeirosM18-VLC" - title: "Blackbox: a large scale repository of novice programmers' activity" author: - name: "Neil Christopher Charles Brown" link: "https://researchr.org/alias/neil-christopher-charles-brown" - name: "Michael Kölling" link: "https://researchr.org/alias/michael-k%C3%B6lling" - name: "David McCall" link: "https://researchr.org/alias/david-mccall" - name: "Ian Utting" link: "https://researchr.org/alias/ian-utting" year: "2014" doi: "http://doi.acm.org/10.1145/2538862.2538924" links: doi: "http://doi.acm.org/10.1145/2538862.2538924" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/sigcse/BrownKMU14" researchr: "https://researchr.org/publication/BrownKMU14" cites: 0 citedby: 0 pages: "223-228" booktitle: "The 45th ACM Technical Symposium on Computer Science Education, SIGCSE '14, Atlanta, GA, USA - March 05 - 08, 2014" editor: - name: "J. D. Dougherty" link: "https://researchr.org/alias/j.-d.-dougherty" - name: "Kris Nagel" link: "https://researchr.org/alias/kris-nagel" - name: "Adrienne Decker" link: "https://researchr.org/alias/adrienne-decker" - name: "Kurt Eiselt" link: "https://researchr.org/alias/kurt-eiselt" publisher: "ACM" isbn: "978-1-4503-2605-6" kind: "inproceedings" key: "BrownKMU14" - title: "Don't Panic! Better, Fewer, Syntax Errors for LR Parsers" author: - name: "Lukas Diekmann" link: "https://researchr.org/alias/lukas-diekmann" - name: "Laurence Tratt" link: "https://researchr.org/alias/laurence-tratt" year: "2019" doi: "https://doi.org/10.4230/LIPIcs.ECOOP.2020.6" links: doi: "https://doi.org/10.4230/LIPIcs.ECOOP.2020.6" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/ecoop/DiekmannT19" researchr: "https://researchr.org/publication/DiekmannT20" cites: 0 citedby: 0 booktitle: "34th European Conference on Object-Oriented Programming, ECOOP 2020, November 15-17, 2020, Berlin, Germany (Virtual Conference)" editor: - name: "Robert Hirschfeld" link: "https://researchr.org/alias/robert-hirschfeld" - name: "Tobias Pape" link: "https://researchr.org/alias/tobias-pape" volume: "166" series: "LIPIcs" publisher: "Schloss Dagstuhl - Leibniz-Zentrum für Informatik" isbn: "978-3-95977-154-2" kind: "inproceedings" key: "DiekmannT20" - title: "Parse Table Composition" author: - name: "Martin Bravenboer" link: "http://martin.bravenboer.name/" - name: "Eelco Visser" link: "http://eelcovisser.org" year: "2009" doi: "http://dx.doi.org/10.1007/978-3-642-00434-6_6" abstract: "Module systems, separate compilation, deployment of binary components, and dynamic linking have enjoyed wide acceptance in programming languages and systems. In contrast, the syntax of languages is usually defined in a non-modular way, cannot be compiled separately, cannot easily be combined with the syntax of other languages, and cannot be deployed as a component for later composition. Grammar formalisms that do support modules use whole program compilation. Current extensible compilers focus on source-level extensibility, which requires users to compile the compiler with a specific configuration of extensions. A compound parser needs to be generated for every combination of extensions. The generation of parse tables is expensive, which is a particular problem when the composition configuration is not fixed to enable users to choose language extensions. In this paper we introduce an algorithm for parse table composition to support separate compilation of grammars to parse table components. Parse table components can be composed (linked) efficiently at runtime, i.e. just before parsing. While the worst-case time complexity of parse table composition is exponential (like the complexity of parse table generation itself), for realistic language combination scenarios involving grammars for real languages, our parse table composition algorithm is an order of magnitude faster than computation of the parse table for the combined grammars. " links: doi: "http://dx.doi.org/10.1007/978-3-642-00434-6_6" tags: - "parsing algorithm" - "programming languages" - "deployment" - "syntax definition" - "SDF" - "composition" - "source-to-source" - "parse table composition" - "compiler" - "programming" - "language composition" - "parsing" - "extensible language" - "ASF+SDF" - "open-source" - "grammar" - "domain-specific language" researchr: "https://researchr.org/publication/BravenboerV08" cites: 0 citedby: 0 pages: "74-94" booktitle: "Software Language Engineering, First International Conference, SLE 2008, Toulouse, France, September 29-30, 2008. Revised Selected Papers" editor: - name: "Dragan Gasevic" link: "http://www.sfu.ca/~dgasevic/" - name: "Ralf Lämmel" link: "http://www.uni-koblenz.de/~laemmel/Site/Home.html" - name: "Eric {Van Wyk}" link: "http://www-users.cs.umn.edu/~evw/" volume: "5452" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "978-3-642-00433-9" kind: "inproceedings" key: "BravenboerV08" - title: "A short presentation of the main features of AEPL - an extensible programming language" author: - name: "Katzenelson, J." link: "https://researchr.org/alias/katzenelson%2C-j." - name: "Milgrom, E." link: "https://researchr.org/alias/milgrom%2C-e." year: "1971" doi: "http://doi.acm.org/10.1145/800006.807975" links: doi: "http://doi.acm.org/10.1145/800006.807975" tags: - "programming languages" - "e-science" - "programming" - "extensible language" researchr: "https://researchr.org/publication/807975" cites: 0 citedby: 0 booktitle: "Proceedings of the international symposium on Extensible languages" address: "New York, NY, USA" publisher: "ACM" kind: "inproceedings" key: "807975" - title: "A process-activation based parsing algorithm for the development of natural language grammars" author: - name: "Massimo Marino" link: "https://researchr.org/alias/massimo-marino" year: "1988" tags: - "parsing algorithm" - "rule-based" - "parsing" - "grammar" researchr: "https://researchr.org/publication/Marino88" cites: 0 citedby: 0 pages: "390-395" booktitle: "COLING" kind: "inproceedings" key: "Marino88" - title: "RASCAL: A Domain Specific Language for Source Code Analysis and Manipulation" author: - name: "Paul Klint" link: "http://homepages.cwi.nl/~paulk/" - name: "Tijs van der Storm" link: "http://homepages.cwi.nl/~storm/" - name: "Jurgen J. Vinju" link: "http://homepages.cwi.nl/~jurgenv/" year: "2009" doi: "http://doi.ieeecomputersociety.org/10.1109/SCAM.2009.28" abstract: "Many automated software engineering tools require tight integration of techniques for source code analysis and manipulation. State-of-the-art tools exist for both, but the domains have remained notoriously separate because different computational paradigms fit each domain best. This impedance mismatch hampers the development of new solutions because the desired functionality and scalability can only be achieved by repeated and ad hoc integration of different techniques. Rascal is a domain-specific language that takes away most of this boilerplate by integrating source code analysis and manipulation at the conceptual, syntactic, semantic and technical level. We give an overview of the language and assess its merits by implementing a complex refactoring." links: doi: "http://doi.ieeecomputersociety.org/10.1109/SCAM.2009.28" tags: - "refactoring" - "language engineering" - "software language engineering" - "points-to analysis" - "domain analysis" - "analysis" - "source-to-source" - "software engineering" - "open-source" - "domain-specific language" researchr: "https://researchr.org/publication/KlintSV09" cites: 0 citedby: 1 pages: "168-177" booktitle: "Ninth IEEE International Working Conference on Source Code Analysis and Manipulation, SCAM 2009, Edmonton, Alberta, Canada, September 20-21, 2009" publisher: "IEEE Computer Society" isbn: "978-0-7695-3793-1" kind: "inproceedings" key: "KlintSV09" - title: "Red Shift: procedural shift-reduce parsing (vision paper)" author: - name: "Nicolas Laurent" link: "https://researchr.org/alias/nicolas-laurent" year: "2017" doi: "http://doi.acm.org/10.1145/3136014.3136036" links: doi: "http://doi.acm.org/10.1145/3136014.3136036" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/sle/Laurent17" researchr: "https://researchr.org/publication/Laurent17" cites: 0 citedby: 0 pages: "38-42" booktitle: "Proceedings of the 10th ACM SIGPLAN International Conference on Software Language Engineering, SLE 2017, Vancouver, BC, Canada, October 23-24, 2017" editor: - name: "Benoît Combemale" link: "https://researchr.org/alias/beno%C3%AEt-combemale" - name: "Marjan Mernik" link: "https://researchr.org/alias/marjan-mernik" - name: "Bernhard Rumpe" link: "http://www.se-rwth.de/~rumpe/" publisher: "ACM" isbn: "978-1-4503-5525-4" kind: "inproceedings" key: "Laurent17" - title: "Repleo: a syntax-safe template engine" author: - name: "Jeroen Arnoldus" link: "http://www.repleo.nl/" - name: "Jeanot Bijpost" link: "https://researchr.org/alias/jeanot-bijpost" - name: "Mark G. J. van den Brand" link: "http://www.win.tue.nl/~mvdbrand/" year: "2007" doi: "http://doi.acm.org/10.1145/1289971.1289977" abstract: "Templates are a very common solution to generate code. They are used for different tasks like rendering webpages, creating Java Beans and so on. Most template systems have no notion of the object language and just generate text. The drawback of this approach is the possibility to generate syntactical incorrect code. This can lead to all kinds of annoying errors. In this paper we present an approach for a syntax safe template engine. Syntax safety guarantees that the generated code can be correctly parsed. To ensure this we use the object language grammar to evaluate the template." links: doi: "http://doi.acm.org/10.1145/1289971.1289977" tags: - "Java" - "template engine" - "Meta-Environment" - "parsing" - "systematic-approach" - "meta-objects" - "grammar" researchr: "https://researchr.org/publication/ArnoldusBB07" cites: 0 citedby: 1 pages: "25-32" booktitle: "Generative Programming and Component Engineering, 6th International Conference, GPCE 2007" editor: - name: "Charles Consel" link: "https://researchr.org/alias/charles-consel" - name: "Julia L. Lawall" link: "http://www.diku.dk/hjemmesider/ansatte/julia/" address: "Salzburg, Austria" publisher: "ACM" isbn: "978-1-59593-855-8" kind: "inproceedings" key: "ArnoldusBB07" - title: "A Modification of the Earley-Shieber Algorithm for Direct Parsing of ID/LP Grammars" author: - name: "James Kilbury" link: "https://researchr.org/alias/james-kilbury" year: "1984" tags: - "parsing algorithm" - "parsing" - "grammar" researchr: "https://researchr.org/publication/Kilbury84" cites: 0 citedby: 0 pages: "39-48" booktitle: "GWAI-84, 8th German Workshop on Artificial Intelligence, Wingst/Stade, Germany, October 8-12, 1984, Proceedings" editor: - name: "Joachim Laubsch" link: "https://researchr.org/alias/joachim-laubsch" volume: "103" series: "Informatik-Fachberichte" publisher: "Springer" isbn: "3-540-15669-0" kind: "inproceedings" key: "Kilbury84" - title: "A Polynomial-Time Parsing Algorithm for K-Depth Languages" author: - name: "Alessandra Cherubini" link: "https://researchr.org/alias/alessandra-cherubini" - name: "Pierluigi San Pietro" link: "https://researchr.org/alias/pierluigi-san-pietro" year: "1996" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/CherubiniP96" cites: 0 citedby: 0 journal: "J. Comput. Syst. Sci." volume: "52" number: "1" pages: "61-79" kind: "article" key: "CherubiniP96" - title: "XAspects: an extensible system for domain-specific aspect languages" author: - name: "Shonle, Macneil" link: "https://researchr.org/alias/shonle%2C-macneil" - name: "Lieberherr, Karl" link: "https://researchr.org/alias/lieberherr%2C-karl" - name: "Shah, Ankit" link: "https://researchr.org/alias/shah%2C-ankit" year: "2003" doi: "http://doi.acm.org/10.1145/949344.949349" links: doi: "http://doi.acm.org/10.1145/949344.949349" tags: - "extensible language" - "domain-specific language" researchr: "https://researchr.org/publication/949349" cites: 0 citedby: 0 booktitle: "OOPSLA '03: Companion of the 18th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications" address: "New York, NY, USA" publisher: "ACM" isbn: "1-58113-751-6" kind: "inproceedings" key: "949349" - title: "Parsing the Wall Street Journal with the Inside-Outside Algorithm" author: - name: "Yves Schabes" link: "https://researchr.org/alias/yves-schabes" - name: "Michal Roth" link: "https://researchr.org/alias/michal-roth" - name: "Randy Osborne" link: "https://researchr.org/alias/randy-osborne" year: "1993" doi: "http://acl.ldc.upenn.edu/E/E93/E93-1040.pdf" links: doi: "http://acl.ldc.upenn.edu/E/E93/E93-1040.pdf" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/SchabesRO93" cites: 0 citedby: 0 pages: "341-347" booktitle: "EACL" kind: "inproceedings" key: "SchabesRO93" - title: "Evaluating and comparing language workbenches: Existing results and benchmarks for the future" author: - name: "Sebastian Erdweg" link: "http://www.informatik.uni-marburg.de/~seba/" - name: "Tijs van der Storm" link: "http://homepages.cwi.nl/~storm/" - name: "Markus Völter" link: "http://www.voelter.de/" - name: "Laurence Tratt" link: "https://researchr.org/alias/laurence-tratt" - name: "Remi Bosman" link: "https://researchr.org/alias/remi-bosman" - name: "William R. Cook" link: "http://www.cs.utexas.edu/~wcook/" - name: "Albert Gerritsen" link: "https://researchr.org/alias/albert-gerritsen" - name: "Angelo Hulshout" link: "https://researchr.org/alias/angelo-hulshout" - name: "Steven Kelly" link: "http://www.metacase.com/stevek.html" - name: "Alex Loh" link: "https://researchr.org/alias/alex-loh" - name: "Gabriël Konat" link: "http://nl.linkedin.com/in/gabrielkonat" - name: "Pedro J. Molina" link: "https://researchr.org/alias/pedro-j.-molina" - name: "Martin Palatnik" link: "https://researchr.org/alias/martin-palatnik" - name: "Risto Pohjonen" link: "https://researchr.org/alias/risto-pohjonen" - name: "Eugen Schindler" link: "https://researchr.org/alias/eugen-schindler" - name: "Klemens Schindler" link: "https://researchr.org/alias/klemens-schindler" - name: "Riccardo Solmi" link: "https://researchr.org/alias/riccardo-solmi" - name: "Vlad A. Vergu" link: "https://researchr.org/alias/vlad-a.-vergu" - name: "Eelco Visser" link: "http://eelcovisser.org" - name: "Kevin van der Vlist" link: "https://researchr.org/alias/kevin-van-der-vlist" - name: "Guido Wachsmuth" link: "https://www.linkedin.com/in/guidowachsmuth/" - name: "Jimi van der Woning" link: "https://researchr.org/alias/jimi-van-der-woning" year: "2015" doi: "http://dx.doi.org/10.1016/j.cl.2015.08.007" abstract: "Language workbenches are environments for simplifying the creation and use of computer languages. The annual Language Workbench Challenge (LWC) was launched in 2011 to allow the many academic and industrial researchers in this area an opportunity to quantitatively and qualitatively compare their approaches. We first describe all four LWCs to date, before focussing on the approaches used, and results generated, during the third LWC. We give various empirical data for ten approaches from the third LWC. We present a generic feature model within which the approaches can be understood and contrasted. Finally, based on our experiences of the existing LWCs, we propose a number of benchmark problems for future LWCs." links: doi: "http://dx.doi.org/10.1016/j.cl.2015.08.007" dblp: "http://dblp.uni-trier.de/rec/bibtex/journals/cl/ErdwegSVTBCGH0L15" researchr: "https://researchr.org/publication/ErdwegSVTBCGH0L15" cites: 0 citedby: 0 journal: "Computer Languages, Systems \\& Structures" volume: "44" pages: "24-47" kind: "article" key: "ErdwegSVTBCGH0L15" - title: "Stratego/XT 0.17. A language and toolset for program transformation" author: - name: "Martin Bravenboer" link: "http://martin.bravenboer.name/" - name: "Karl Trygve Kalleberg" link: "http://www.ii.uib.no/~karltk/" - name: "Rob Vermaas" link: "https://researchr.org/profile/robvermaas/publications" - name: "Eelco Visser" link: "http://eelcovisser.org" year: "2008" doi: "http://dx.doi.org/10.1016/j.scico.2007.11.003" abstract: "Stratego/XT is a language and toolset for program transformation. The Stratego language provides rewrite rules for expressing basic transformations, programmable rewriting strategies for controlling the application of rules, concrete syntax for expressing the patterns of rules in the syntax of the object language, and dynamic rewrite rules for expressing context-sensitive transformations, thus supporting the development of transformation components at a high level of abstraction. The XT toolset offers a collection of flexible, reusable transformation components, and tools for generating such components from declarative specifications. Complete program transformation systems are composed from these components." links: doi: "http://dx.doi.org/10.1016/j.scico.2007.11.003" "technical report (pdf)": "http://swerl.tudelft.nl/twiki/pub/Main/TechnicalReports/TUD-SERG-2008-011.pdf" "stratego/xt": "http://strategoxt.org" tags: - "control systems" - "programming languages" - "object-oriented programming" - "concrete object syntax" - "reusable components" - "rule-based" - "completeness" - "meta programming" - "pattern language" - "graph transformation" - "Stratego/XT" - "transformation language" - "reuse" - "graph-rewriting" - "rules" - "transformation system" - "DSL" - "programming" - "subject-oriented programming" - "context-aware" - "abstraction" - "Meta-Environment" - "rewriting" - "rewriting strategies" - "feature-oriented programming" - "concrete syntax" - "meta-objects" - "transformation" - "Stratego" - "program transformation" researchr: "https://researchr.org/publication/BravenboerKVV08" cites: 0 citedby: 7 journal: "Science of Computer Programming" volume: "72" number: "1-2" pages: "52-70" kind: "article" key: "BravenboerKVV08" - title: "A tabular parsing algorithm with error recovery" author: - name: "Frank Hadlock" link: "https://researchr.org/alias/frank-hadlock" year: "1995" doi: "http://doi.acm.org/10.1145/1122018.1122074" links: doi: "http://doi.acm.org/10.1145/1122018.1122074" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/Hadlock95" cites: 0 citedby: 0 pages: "275-276" booktitle: "Proceedings of the 33th Annual Southeast Regional Conference, 1995, Clemson, South Carolina, USA, March 17-18, 1995" editor: - name: "Robert Geist" link: "https://researchr.org/alias/robert-geist" publisher: "ACM" kind: "inproceedings" key: "Hadlock95" - title: "Scannerless NSLR(1) Parsing of Programming Languages" author: - name: "Daniel J. Salomon" link: "https://researchr.org/alias/daniel-j.-salomon" - name: "Gordon V. Cormack" link: "https://researchr.org/alias/gordon-v.-cormack" year: "1989" tags: - "programming languages" - "programming" - "parsing" - "scannerless parsing" researchr: "https://researchr.org/publication/SalomonC89" cites: 0 citedby: 0 pages: "170-178" booktitle: "PLDI" kind: "inproceedings" key: "SalomonC89" - title: "Average profile and limiting distribution for a phrase size in the Lempel-Ziv parsing algorithm" author: - name: "Guy Louchard" link: "https://researchr.org/alias/guy-louchard" - name: "Wojciech Szpankowski" link: "https://researchr.org/alias/wojciech-szpankowski" year: "1995" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/LouchardS95" cites: 0 citedby: 0 journal: "IEEE Transactions on Information Theory" volume: "41" number: "2" pages: "478-488" kind: "article" key: "LouchardS95" - title: "Breaking parsers: mutation-based generation of programs with guaranteed syntax errors" author: - name: "Moeketsi Raselimo" link: "https://researchr.org/alias/moeketsi-raselimo" - name: "Jan Taljaard" link: "https://researchr.org/alias/jan-taljaard" - name: "Bernd Fischer" link: "https://researchr.org/alias/bernd-fischer" year: "2019" doi: "https://doi.org/10.1145/3357766.3359542" links: doi: "https://doi.org/10.1145/3357766.3359542" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/sle/RaselimoTF19" researchr: "https://researchr.org/publication/RaselimoTF19" cites: 0 citedby: 0 pages: "83-87" booktitle: "Proceedings of the 12th ACM SIGPLAN International Conference on Software Language Engineering, SLE 2019, Athens, Greece, October 20-22, 2019" editor: - name: "Oscar Nierstrasz" link: "https://researchr.org/alias/oscar-nierstrasz" - name: "Jeff Gray" link: "https://researchr.org/alias/jeff-gray" - name: "Bruno C. D. S. Oliveira" link: "https://researchr.org/alias/bruno-c.-d.-s.-oliveira" publisher: "ACM" isbn: "978-1-4503-6981-7" kind: "inproceedings" key: "RaselimoTF19" - title: "Locating and Parsing Bibliographical References in HTML Medical Articles" author: - name: "Jie Zou" link: "https://researchr.org/alias/jie-zou" - name: "Daniel X. Le" link: "https://researchr.org/alias/daniel-x.-le" - name: "George R. Thoma" link: "https://researchr.org/alias/george-r.-thoma" year: "2009" abstract: "Bibliographical references that appear in journal articles can provide valuable hints for subsequent information extraction. We describe our statistical machine learning algorithms for locating and parsing such references from HTML medical journal articles. Reference locating identifies the reference sections and then decomposes them into individual references. We formulate reference locating as a two-class classification problem based on text and geometric features. An evaluation conducted on 500 articles from 100 journals achieves near perfect precision and recall rates for locating references. Reference parsing is to identify components, e.g. author, article title, journal title etc., from each individual reference. We implement and compare two reference parsing algorithms. One relies on sequence statistics and trains a Conditional Random Field. The other focuses on local feature statistics and trains a Support Vector Machine to classify each individual word, and then a search algorithm systematically corrects low confidence labels if the label sequence violates a set of predefined rules. The overall performance of these two reference parsing algorithms is about the same: above 99% accuracy at the word level, and over 97% accuracy at the chunk level." tags: - "parsing algorithm" - "rule-based" - "classification" - "bibliography" - "machine learning" - "rules" - "search" - "parsing" - "systematic-approach" researchr: "https://researchr.org/publication/Zou2009" cites: 0 citedby: 0 kind: "inproceedings" key: "Zou2009" - title: "An Efficient Extension of Earley s Algorithm for Parsing Multidimensional Structures" author: - name: "Xu Hongxia" link: "https://researchr.org/alias/xu-hongxia" - name: "Zhang Li" link: "https://researchr.org/alias/zhang-li" year: "2008" doi: "http://dx.doi.org/10.1109/CSSE.2008.1392" links: doi: "http://dx.doi.org/10.1109/CSSE.2008.1392" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/HongxiaL08" cites: 0 citedby: 0 pages: "780-783" booktitle: "International Conference on Computer Science and Software Engineering, CSSE 2008, Volume 2: Software Engineering, December 12-14, 2008, Wuhan, China" publisher: "IEEE Computer Society" isbn: "978-0-7695-3336-0" kind: "inproceedings" key: "HongxiaL08" - title: "A Polynomial Parsing Algorithm for the Topological Model: Synchronizing Constituent and Dependency Grammars, Illustrated by German Word Order Phenomena" author: - name: "Kim Gerdes" link: "https://researchr.org/alias/kim-gerdes" - name: "Sylvain Kahane" link: "https://researchr.org/alias/sylvain-kahane" year: "2006" doi: "http://acl.ldc.upenn.edu/P/P06/P06-1138.pdf" links: doi: "http://acl.ldc.upenn.edu/P/P06/P06-1138.pdf" tags: - "parsing algorithm" - "synchronization" - "parsing" - "grammar" researchr: "https://researchr.org/publication/GerdesK06" cites: 0 citedby: 0 booktitle: "ACL 2006, 21st International Conference on Computational Linguistics and 44th Annual Meeting of the Association for Computational Linguistics, Proceedings of the Conference, Sydney, Australia, 17-21 July 2006" publisher: "The Association for Computer Linguistics" kind: "inproceedings" key: "GerdesK06" - title: "On-Line Longest Fragment First Parsing Algorithm" author: - name: "Hideo Nagumo" link: "https://researchr.org/alias/hideo-nagumo" - name: "Mi Lu" link: "https://researchr.org/alias/mi-lu" - name: "Karan L. Watson" link: "https://researchr.org/alias/karan-l.-watson" year: "1996" doi: "http://dx.doi.org/10.1016/0020-0190(96)00066-X" links: doi: "http://dx.doi.org/10.1016/0020-0190(96)00066-X" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/NagumoLW96" cites: 0 citedby: 0 journal: "Inf. Process. Lett." volume: "59" number: "2" pages: "91-96" kind: "article" key: "NagumoLW96" - title: "Babel, an application of extensible compilers" author: - name: "Scowen, R. S." link: "https://researchr.org/alias/scowen%2C-r.-s." year: "1971" doi: "http://doi.acm.org/10.1145/800006.807971" links: doi: "http://doi.acm.org/10.1145/800006.807971" tags: - "compiler" researchr: "https://researchr.org/publication/807971" cites: 0 citedby: 0 booktitle: "Proceedings of the international symposium on Extensible languages" address: "New York, NY, USA" publisher: "ACM" kind: "inproceedings" key: "807971" - title: "Lazy functional incremental parsing" author: - name: "Jean-Philippe Bernardy" link: "https://researchr.org/alias/jean-philippe-bernardy" year: "2009" doi: "http://doi.acm.org/10.1145/1596638.1596645" links: doi: "http://doi.acm.org/10.1145/1596638.1596645" tags: - "laziness" - "Haskell" - "parsing" - "incremental" researchr: "https://researchr.org/publication/Bernardy09" cites: 0 citedby: 0 pages: "49-60" booktitle: "Proceedings of the 2nd ACM SIGPLAN Symposium on Haskell, Haskell 2009, Edinburgh, Scotland, UK, 3 September 2009" editor: - name: "Stephanie Weirich" link: "https://researchr.org/alias/stephanie-weirich" publisher: "ACM" isbn: "978-1-60558-508-6" kind: "inproceedings" key: "Bernardy09" - title: "Recognition is not parsing - SPPF-style parsing from cubic recognisers" author: - name: "Elizabeth Scott" link: "https://researchr.org/alias/elizabeth-scott" - name: "Adrian Johnstone" link: "http://www.cs.rhul.ac.uk/~adrian/" year: "2010" doi: "http://dx.doi.org/10.1016/j.scico.2009.07.001" links: doi: "http://dx.doi.org/10.1016/j.scico.2009.07.001" tags: - "parsing" researchr: "https://researchr.org/publication/ScottJ10" cites: 0 citedby: 0 journal: "Science of Computer Programming" volume: "75" number: "1-2" pages: "55-70" kind: "article" key: "ScottJ10" - title: "A New Parallel Algorithm for Generalized LR Parsing" author: - name: "Hiroaki Numazaki" link: "https://researchr.org/alias/hiroaki-numazaki" - name: "Hozumi Tanaka" link: "https://researchr.org/alias/hozumi-tanaka" year: "1990" doi: "http://acl.ldc.upenn.edu/C/C90/C90-2053.pdf" links: doi: "http://acl.ldc.upenn.edu/C/C90/C90-2053.pdf" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/NumazakiT90" cites: 0 citedby: 0 pages: "305-310" booktitle: "COLING" kind: "inproceedings" key: "NumazakiT90" - title: "A context sensitive tabular parsing algorithm" author: - name: "Frank Hadlock" link: "https://researchr.org/alias/frank-hadlock" year: "1990" doi: "http://doi.acm.org/10.1145/98949.99012" links: doi: "http://doi.acm.org/10.1145/98949.99012" tags: - "parsing algorithm" - "context-aware" - "parsing" researchr: "https://researchr.org/publication/Hadlock90" cites: 0 citedby: 0 pages: "111-117" booktitle: "Proceedings of the 28th Annual Southeast Regional Conference, 1990, Greenville, South Carolina, USA, April 18-20, 1990" editor: - name: "A. Joe Turner" link: "https://researchr.org/alias/a.-joe-turner" publisher: "ACM" isbn: "0-89791-356-6" kind: "inproceedings" key: "Hadlock90" - title: "A Chart-Parsing Algorithm for Efficient Semantic Analysis" author: - name: "Pascal Vaillant" link: "https://researchr.org/alias/pascal-vaillant" year: "2002" doi: "http://acl.ldc.upenn.edu/C/C02/C02-1023.pdf" links: doi: "http://acl.ldc.upenn.edu/C/C02/C02-1023.pdf" tags: - "parsing algorithm" - "analysis" - "parsing" - "Pascal" researchr: "https://researchr.org/publication/Vaillant02-0" cites: 0 citedby: 0 booktitle: "COLING" kind: "inproceedings" key: "Vaillant02-0" - title: "Fast Stochastic Context-Free Parsing: A Stochastic Version of the Valiant Algorithm" author: - name: "José-Miguel Benedí" link: "https://researchr.org/alias/jos%C3%A9-miguel-bened%C3%AD" - name: "Joan-Andreu Sánchez" link: "https://researchr.org/alias/joan-andreu-s%C3%A1nchez" year: "2007" doi: "http://dx.doi.org/10.1007/978-3-540-72847-4_12" links: doi: "http://dx.doi.org/10.1007/978-3-540-72847-4_12" tags: - "parsing algorithm" - "context-aware" - "parsing" researchr: "https://researchr.org/publication/BenediS07" cites: 0 citedby: 0 pages: "80-88" booktitle: "Pattern Recognition and Image Analysis, Third Iberian Conference, IbPRIA 2007, Girona, Spain, June 6-8, 2007, Proceedings, Part I" editor: - name: "Joan Martí" link: "https://researchr.org/alias/joan-mart%C3%AD" - name: "José-Miguel Benedí" link: "https://researchr.org/alias/jos%C3%A9-miguel-bened%C3%AD" - name: "Ana Maria Mendonça" link: "https://researchr.org/alias/ana-maria-mendon%C3%A7a" - name: "Joan Serrat" link: "https://researchr.org/alias/joan-serrat" volume: "4477" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "978-3-540-72846-7" kind: "inproceedings" key: "BenediS07" - title: "Domain-specific languages and program generation with Meta-AspectJ" author: - name: "Shan Shan Huang" link: "http://www.freeflygeek.com/" - name: "David Zook" link: "https://researchr.org/alias/david-zook" - name: "Yannis Smaragdakis" link: "http://smaragd.org" year: "2008" doi: "http://doi.acm.org/10.1145/1416563.1416566" abstract: "Meta-AspectJ (MAJ) is a language for generating AspectJ programs using code templates. MAJ itself is an extension of Java, so users can interleave arbitrary Java code with AspectJ code templates. MAJ is a structured metaprogramming tool: a well-typed generator implies a syntactically correct generated program. MAJ promotes a methodology that combines aspect-oriented and generative programming. A valuable application is in implementing small domain-specific language extensions as generators using unobtrusive annotations for syntax extension and AspectJ as a back-end. The advantages of this approach are twofold. First, the generator integrates into an existing software application much as a regular API or library, instead of as a language extension. Second, a mature language implementation is easy to achieve with little effort since AspectJ takes care of the low-level issues of interfacing with the base Java language. In addition to its practical value, MAJ offers valuable insights to metaprogramming tool designers. It is a mature metaprogramming tool for AspectJ (and, by extension, Java): a lot of emphasis has been placed on context-sensitive parsing and error reporting. As a result, MAJ minimizes the number of metaprogramming (quote/unquote) operators and uses type inference to reduce the need to remember type names for syntactic entities." links: doi: "http://doi.acm.org/10.1145/1416563.1416566" tags: - "generative programming" - "programming languages" - "AspectJ" - "object-oriented programming" - "type inference" - "rule-based" - "Java" - "meta programming" - "meta-model" - "little language" - "code generation" - "aspect oriented programming" - "programming" - "subject-oriented programming" - "context-aware" - "Meta-Environment" - "parsing" - "systematic-approach" - "feature-oriented programming" - "meta-objects" - "domain-specific language" researchr: "https://researchr.org/publication/HuangZS08" cites: 0 citedby: 0 journal: "ACM Transactions on Software Engineering Methodology" volume: "18" number: "2" kind: "article" key: "HuangZS08" - title: "On the complexity and performance of parsing with derivatives" author: - name: "Michael D. Adams" link: "https://researchr.org/alias/michael-d.-adams" - name: "Celeste Hollenbeck" link: "https://researchr.org/alias/celeste-hollenbeck" - name: "Matthew Might" link: "https://researchr.org/alias/matthew-might" year: "2016" doi: "http://doi.acm.org/10.1145/2908080.2908128" links: doi: "http://doi.acm.org/10.1145/2908080.2908128" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/pldi/0001HM16" researchr: "https://researchr.org/publication/AdamsHM16" cites: 0 citedby: 0 pages: "224-236" booktitle: "Proceedings of the 37th ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2016, Santa Barbara, CA, USA, June 13-17, 2016" editor: - name: "Chandra Krintz" link: "https://researchr.org/alias/chandra-krintz" - name: "Emery Berger" link: "https://researchr.org/alias/emery-berger" publisher: "ACM" isbn: "978-1-4503-4261-2" kind: "inproceedings" key: "AdamsHM16" - title: "Active LeZi: An Incremental Parsing Algorithm for Sequential Prediction" author: - name: "Karthik Gopalratnam" link: "https://researchr.org/alias/karthik-gopalratnam" - name: "Diane J. Cook" link: "https://researchr.org/alias/diane-j.-cook" year: "2003" tags: - "parsing algorithm" - "parsing" - "incremental" researchr: "https://researchr.org/publication/GopalratnamC03" cites: 0 citedby: 0 pages: "38-42" booktitle: "Proceedings of the Sixteenth International Florida Artificial Intelligence Research Society Conference, May 12-14, 2003, St. Augustine, Florida, USA" editor: - name: "Ingrid Russell" link: "https://researchr.org/alias/ingrid-russell" - name: "Susan M. Haller" link: "https://researchr.org/alias/susan-m.-haller" publisher: "AAAI Press" isbn: "1-57735-177-0" kind: "inproceedings" key: "GopalratnamC03" - title: "Towards Zero-Overhead Disambiguation of Deep Priority Conflicts" author: - name: "Luis Eduardo de Souza Amorim" link: "https://www.linkedin.com/profile/view?id=136481548" - name: "Michael J. Steindorfer" link: "http://michael.steindorfer.name" - name: "Eelco Visser" link: "http://eelcovisser.org" year: "2018" doi: "https://doi.org/10.22152/programming-journal.org/2018/2/13" abstract: "Context Context-free grammars are widely used for language prototyping and implementation. They allow formalizing the syntax of domain-specific or general-purpose programming languages concisely and declaratively. However, the natural and concise way of writing a context-free grammar is often ambiguous. Therefore, grammar formalisms support extensions in the form of declarative disambiguation rules to specify operator precedence and associativity, solving ambiguities that are caused by the subset of the grammar that corresponds to expressions. Inquiry Implementing support for declarative disambiguation within a parser typically comes with one or more of the following limitations in practice: a lack of parsing performance, or a lack of modularity (i.e., disallowing the composition of grammar fragments of potentially different languages). The latter subject is generally addressed by scannerless generalized parsers. We aim to equip scannerless generalized parsers with novel disambiguation methods that are inherently performant, without compromising the concerns of modularity and language composition. Approach In this paper, we present a novel low-overhead implementation technique for disambiguating deep associativity and priority conflicts in scannerless generalized parsers with lightweight data-dependency. Knowledge Ambiguities with respect to operator precedence and associativity arise from combining the various operators of a language. While shallow conflicts can be resolved efficiently by one-level tree patterns, deep conflicts require more elaborate techniques, because they can occur arbitrarily nested in a tree. Current state-of-the-art approaches to solving deep priority conflicts come with a severe performance overhead. Grounding We evaluated our new approach against state-of-the-art declarative disambiguation mechanisms. By parsing a corpus of popular open-source repositories written in Java and OCaml, we found that our approach yields speedups of up to 1.73x over a grammar rewriting technique when parsing programs with deep priority conflicts—with a modest overhead of 1–2 % when parsing programs without deep conflicts. Importance A recent empirical study shows that deep priority conflicts are indeed wide-spread in real-world programs. The study shows that in a corpus of popular OCaml projects on Github, up to 17 % of the source files contain deep priority conflicts. However, there is no solution in the literature that addresses efficient disambiguation of deep priority conflicts, with support for modular and composable syntax definitions." links: doi: "https://doi.org/10.22152/programming-journal.org/2018/2/13" dblp: "http://dblp.uni-trier.de/rec/bibtex/journals/programming/AmorimSV18" "pdf": "https://arxiv.org/pdf/1803.10215v1" researchr: "https://researchr.org/publication/AmorimSV18" cites: 0 citedby: 0 journal: "Programming Journal" volume: "2" number: "3" pages: "13" kind: "article" key: "AmorimSV18" - title: "The hierarchical language system" author: - name: "Terashima, Nobuyoshi" link: "https://researchr.org/alias/terashima%2C-nobuyoshi" year: "1977" doi: "http://doi.acm.org/10.1145/954604.954613" links: doi: "http://doi.acm.org/10.1145/954604.954613" researchr: "https://researchr.org/publication/954613" cites: 0 citedby: 0 journal: "SIGPLAN Not." volume: "12" number: "9" kind: "article" key: "954613" - title: "Library-based model-driven software development with SugarJ" author: - name: "Sebastian Erdweg" link: "http://www.informatik.uni-marburg.de/~seba/" - name: "Lennart C. L. Kats" link: "http://www.lclnet.nl/" - name: "Tillmann Rendel" link: "http://www.informatik.uni-marburg.de/~rendel/" - name: "Christian Kästner" link: "http://wwwiti.cs.uni-magdeburg.de/~ckaestne/" - name: "Klaus Ostermann" link: "http://www.informatik.uni-marburg.de/~kos/" - name: "Eelco Visser" link: "http://eelcovisser.org" year: "2011" doi: "http://doi.acm.org/10.1145/2048147.2048156" abstract: "SugarJ is a Java-based programming language that provides extensible surface syntax, static analyses, and IDE support. SugarJ extensions are organized as libraries; conventional import statements suffice to activate and compose language extensions. We demonstrate how programmers can use SugarJ to modularly extend Java's syntax, semantic analyses and IDE support." links: doi: "http://doi.acm.org/10.1145/2048147.2048156" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/oopsla/ErdwegKRKOV11" researchr: "https://researchr.org/publication/ErdwegKRKOV11-mdsd" cites: 0 citedby: 0 pages: "17-18" booktitle: "Companion to the 26th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2011, part of SPLASH 2011, Portland, OR, USA, October 22 - 27, 2011" editor: - name: "Cristina Videira Lopes" link: "https://researchr.org/alias/cristina-videira-lopes" - name: "Kathleen Fisher" link: "https://researchr.org/alias/kathleen-fisher" publisher: "ACM" isbn: "978-1-4503-0942-4" kind: "inproceedings" key: "ErdwegKRKOV11-mdsd" - title: "NEM-XML: A Fast Non-extractive XML Parsing Algorithm" author: - name: "Yunsong Zhang" link: "https://researchr.org/alias/yunsong-zhang" - name: "Lei Zhao" link: "https://researchr.org/alias/lei-zhao" - name: "Jiwen Yang" link: "https://researchr.org/alias/jiwen-yang" - name: "Liying Yu" link: "https://researchr.org/alias/liying-yu" year: "2009" doi: "http://doi.ieeecomputersociety.org/10.1109/MUE.2009.66" links: doi: "http://doi.ieeecomputersociety.org/10.1109/MUE.2009.66" tags: - "parsing algorithm" - "XML" - "XML Schema" - "parsing" researchr: "https://researchr.org/publication/ZhangZYY09" cites: 0 citedby: 0 pages: "347-350" booktitle: "2009 Third International Conference on Multimedia and Ubiquitous Engineering, MUE 2009, Qingdao, China, June 4-6, 2009" publisher: "IEEE Computer Society" isbn: "978-0-7695-3658-3" kind: "inproceedings" key: "ZhangZYY09" - title: "Verifiable Parse Table Composition for Deterministic Parsing" author: - name: "August Schwerdfeger" link: "https://researchr.org/alias/august-schwerdfeger" - name: "Eric {Van Wyk}" link: "http://www-users.cs.umn.edu/~evw/" year: "2009" doi: "http://dx.doi.org/10.1007/978-3-642-12107-4_15" links: doi: "http://dx.doi.org/10.1007/978-3-642-12107-4_15" tags: - "composition" - "parsing" researchr: "https://researchr.org/publication/SchwerdfegerW09-SLE" cites: 0 citedby: 1 pages: "184-203" booktitle: "Software Language Engineering, Second International Conference, SLE 2009, Denver, CO, USA, October 5-6, 2009, Revised Selected Papers" editor: - name: "Mark G. J. van den Brand" link: "http://www.win.tue.nl/~mvdbrand/" - name: "Dragan Gasevic" link: "http://www.sfu.ca/~dgasevic/" - name: "Jeffrey G. Gray" link: "http://www.gray-area.org/" volume: "5969" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "978-3-642-12106-7" kind: "inproceedings" key: "SchwerdfegerW09-SLE" - title: "Reliable and automatic composition of language extensions to C: the ableC extensible language framework" author: - name: "Ted Kaminski" link: "https://researchr.org/alias/ted-kaminski" - name: "Lucas Kramer" link: "https://researchr.org/alias/lucas-kramer" - name: "Travis Carlson" link: "https://researchr.org/alias/travis-carlson" - name: "Eric {Van Wyk}" link: "http://www-users.cs.umn.edu/~evw/" year: "2017" doi: "http://doi.acm.org/10.1145/3138224" links: doi: "http://doi.acm.org/10.1145/3138224" dblp: "http://dblp.uni-trier.de/rec/bibtex/journals/pacmpl/KaminskiKCW17" researchr: "https://researchr.org/publication/KaminskiKCW17" cites: 0 citedby: 0 journal: "Proceedings of the ACM on Programming Languages" volume: "1" number: "OOPSLA" kind: "article" key: "KaminskiKCW17" - title: "Declarative specification of template-based textual editors" author: - name: "Tobi Vollebregt" link: "http://www.tobivollebregt.nl/" - name: "Lennart C. L. Kats" link: "http://www.lclnet.nl/" - name: "Eelco Visser" link: "http://eelcovisser.org" year: "2012" doi: "http://doi.acm.org/10.1145/2427048.2427056" abstract: "Syntax discoverability has been a crucial advantage of structure editors for new users of a language. Despite this advantage, structure editors have not been widely adopted. Based on immediate parsing and analyses, modern textual code editors are also increasingly syntax-aware: structure and textual editors are converging into a new editing paradigm that combines text and templates. Current text-based language workbenches require redundant specification of the ingredients for a template-based editor, which is detrimental to the quality of syntactic completion, as consistency and completeness of the definition cannot be guaranteed. In this paper we describe the design and implementation of a specification language for syntax definition based on templates. It unifies the specification of parsers, unparsers and template-based editors. We evaluate the template language by application to two domain-specific languages used for tax benefits and mobile applications. " links: doi: "http://doi.acm.org/10.1145/2427048.2427056" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/ldta/VollebregtKV12" researchr: "https://researchr.org/publication/VollebregtKV12" cites: 0 citedby: 0 pages: "1-7" booktitle: "International Workshop on Language Descriptions, Tools, and Applications, LDTA '12, Tallinn, Estonia, March 31 - April 1, 2012" editor: - name: "Anthony Sloane" link: "https://researchr.org/alias/anthony-sloane" - name: "Suzana Andova" link: "https://researchr.org/alias/suzana-andova" publisher: "ACM" isbn: "978-1-4503-1536-4" kind: "inproceedings" key: "VollebregtKV12" - title: "Meta-programming with Concrete Object Syntax" author: - name: "Eelco Visser" link: "http://eelcovisser.org" year: "2002" doi: "https://doi.org/10.1007/3-540-45821-2_19" abstract: "Meta programs manipulate structured representations, i.e., abstract syntax trees, of programs. The conceptual distance between the concrete syntax meta-programmers use to reason about programs and the notation for abstract syntax manipulation provided by general purpose (meta-) programming languages is too great for many applications. In this paper it is shown how the syntax definition formalism SDF can be employed to fit any meta-programming language with concrete syntax notation for composing and analyzing object programs. As a case study, the addition of concrete syntax to the program transformation language Stratego is presented. The approach is then generalized to arbitrary meta-languages. " links: doi: "https://doi.org/10.1007/3-540-45821-2_19" tags: - "programming languages" - "model-to-model transformation" - "object-oriented programming" - "concrete object syntax" - "syntax definition" - "meta programming" - "case study" - "SDF" - "meta-model" - "abstract syntax" - "Stratego/XT" - "transformation language" - "source-to-source" - "model transformation" - "programming" - "subject-oriented programming" - "Meta-Environment" - "parsing" - "scannerless parsing" - "systematic-approach" - "ASF+SDF" - "feature-oriented programming" - "concrete syntax" - "meta-objects" - "transformation" - "Stratego" - "program transformation" researchr: "https://researchr.org/publication/Visser02" cites: 23 citedby: 6 pages: "299-315" booktitle: "Generative Programming and Component Engineering, ACM SIGPLAN/SIGSOFT Conference, GPCE 2002, Pittsburgh, PA, USA, October 6-8, 2002, Proceedings" editor: - name: "Don S. Batory" link: "http://www.cs.utexas.edu/~dsb/" - name: "Charles Consel" link: "https://researchr.org/alias/charles-consel" - name: "Walid Taha" link: "http://www.cs.rice.edu/~taha/" volume: "2487" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "3-540-44284-7" kind: "inproceedings" key: "Visser02" - title: "Code Generation by Model Transformation" author: - name: "Zef Hemel" link: "http://zef.me" - name: "Lennart C. L. Kats" link: "http://www.lclnet.nl/" - name: "Eelco Visser" link: "http://eelcovisser.org" year: "2008" doi: "http://dx.doi.org/10.1007/978-3-540-69927-9_13" abstract: "The realization of model-driven software development requires effective techniques for implementing code generators. In this paper, we present a case study of code generation by model transformation with Stratego, a high-level transformation language based on the paradigm of rewrite rules with programmable strategies that integrates model-to-model, model-to-code, and code-to-code transformations. The use of concrete object syntax guarantees syntactic correctness of code patterns, and enables the subsequent transformation of generated code. The composability of strategies supports two dimensions of transformation modularity. Vertical modularity is achieved by designing a generator as a pipeline of model-to-model transformations that gradually transforms a high-level input model to an implementation. Horizontal modularity is achieved by supporting the definition of plugins which implement all aspects of a language feature. We discuss the application of these techniques in the implementation of WebDSL, a domain-specific language for dynamic web applications with a rich data model. " links: doi: "http://dx.doi.org/10.1007/978-3-540-69927-9_13" successor: "https://researchr.org/publication/HemelKGV10" "technical report (pdf)": "http://swerl.tudelft.nl/twiki/pub/Main/TechnicalReports/TUD-SERG-2008-012.pdf" tags: - "programming languages" - "model-to-model transformation" - "object-oriented programming" - "WebDSL" - "concrete object syntax" - "rule-based" - "transformation engineering" - "syntax definition" - "meta programming" - "data-flow language" - "pattern language" - "case study" - "graph transformation" - "meta-model" - "modeling language" - "modeling" - "language engineering" - "transformation language" - "software language engineering" - "language modeling" - "web engineering" - "data-flow programming" - "model-driven development" - "data-flow" - "source-to-source" - "graph-rewriting" - "software engineering" - "rules" - "model-driven engineering" - "C++" - "programming paradigms" - "code generation" - "object-role modeling" - "aspect oriented programming" - "model transformation" - "web applications" - "DSL" - "subject-oriented programming" - "Meta-Environment" - "rewriting" - "rewriting strategies" - "feature-oriented programming" - "concrete syntax" - "open-source" - "meta-objects" - "transformation" - "Stratego" - "program transformation" - "domain-specific language" researchr: "https://researchr.org/publication/HemelKV08" cites: 0 citedby: 3 pages: "183-198" booktitle: "Theory and Practice of Model Transformations, First International Conference, ICMT 2008, Zürich, Switzerland, July 1-2, 2008, Proceedings" editor: - name: "Antonio Vallecillo" link: "http://www.lcc.uma.es/~av/" - name: "Jeffrey G. Gray" link: "http://www.gray-area.org/" - name: "Alfonso Pierantonio" link: "http://www.di.univaq.it/alfonso" volume: "5063" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "978-3-540-69926-2" kind: "inproceedings" key: "HemelKV08" - title: "Pure and declarative syntax definition: paradise lost and regained" author: - name: "Lennart C. L. Kats" link: "http://www.lclnet.nl/" - name: "Eelco Visser" link: "http://eelcovisser.org" - name: "Guido Wachsmuth" link: "https://www.linkedin.com/in/guidowachsmuth/" year: "2010" doi: "http://doi.acm.org/10.1145/1869459.1869535" abstract: "Syntax definitions are pervasive in modern software systems, and serve as the basis for language processing tools like parsers and compilers. Mainstream parser generators pose restrictions on syntax definitions that follow from their implementation algorithm. They hamper evolution, maintainability, and compositionality of syntax definitions. The pureness and declarativity of syntax definitions is lost. We analyze how these problems arise for different aspects of syntax definitions, discuss their consequences for language engineers, and show how the pure and declarative nature of syntax definitions can be regained." links: doi: "http://doi.acm.org/10.1145/1869459.1869535" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/oopsla/KatsVW10" "pdf (tech report)": "http://swerl.tudelft.nl/twiki/pub/Main/TechnicalReports/TUD-SERG-2010-019.pdf" tags: - "parsing algorithm" - "syntax definition" - "composition" - "software evolution" - "C++" - "compiler" - "parsing" researchr: "https://researchr.org/publication/KatsVW10" cites: 0 citedby: 1 pages: "918-932" booktitle: "Proceedings of the 25th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2010, October 17-21, 2010, Reno/Tahoe, Nevada, USA" editor: - name: "William R. Cook" link: "http://www.cs.utexas.edu/~wcook/" - name: "Siobhán Clarke" link: "https://www.cs.tcd.ie/Siobhan.Clarke/" - name: "Martin C. Rinard" link: "https://researchr.org/alias/martin-c.-rinard" address: "Reno/Tahoe, Nevada" publisher: "ACM" isbn: "978-1-4503-0203-6" kind: "inproceedings" key: "KatsVW10" - title: "Generating safe template languages" author: - name: "Florian Heidenreich" link: "http://fheidenreich.de/work/" - name: "Jendrik Johannes" link: "http://jjohannes.de" - name: "Mirko Seifert" link: "http://www1.inf.tu-dresden.de/~ms72/" - name: "Christian Wende" link: "http://st.inf.tu-dresden.de" - name: "Marcel Böhme" link: "http://www.comp.nus.edu.sg/~mboehme" year: "2009" doi: "http://doi.acm.org/10.1145/1621607.1621624" links: doi: "http://doi.acm.org/10.1145/1621607.1621624" researchr: "https://researchr.org/publication/HeidenreichJSWB09" cites: 0 citedby: 0 pages: "99-108" booktitle: "Generative Programming and Component Engineering, 8th International Conference, GPCE 2009, Denver, Colorado, USA, October 4-5, 2009, Proceedings" editor: - name: "Jeremy G. Siek" link: "http://homes.soic.indiana.edu/jsiek/" - name: "Bernd Fischer" link: "http://www.ecs.soton.ac.uk/people/bf" publisher: "ACM" isbn: "978-1-60558-494-2" kind: "inproceedings" key: "HeidenreichJSWB09" - title: "Grammar-based whitebox fuzzing" author: - name: "Patrice Godefroid" link: "https://researchr.org/alias/patrice-godefroid" - name: "Adam Kiezun" link: "https://researchr.org/alias/adam-kiezun" - name: "Michael Y. Levin" link: "https://researchr.org/alias/michael-y.-levin" year: "2008" doi: "http://doi.acm.org/10.1145/1375581.1375607" abstract: "Whitebox fuzzing is a form of automatic dynamic test generation, based on symbolic execution and constraint solving, designed for security testing of large applications. Unfortunately, the current effectiveness of whitebox fuzzing is limited when testing applications with highly-structured inputs, such as compilers and interpreters. These applications process their inputs in stages, such as lexing, parsing and evaluation. Due to the enormous number of control paths in early processing stages, whitebox fuzzing rarely reaches parts of the application beyond those first stages. In this paper, we study how to enhance whitebox fuzzing of complex structured-input applications with a grammar-based specification of their valid inputs. We present a novel dynamic test generation algorithm where symbolic execution directly generates grammar-based constraints whose satisfiability is checked using a custom grammar-based constraint solver. We have implemented this algorithm and evaluated it on a large security-critical application, the JavaScript interpreter of Internet Explorer 7 (IE7). Results of our experiments show that grammar-based whitebox fuzzing explores deeper program paths and avoids dead-ends due to non-parsable inputs. Compared to regular whitebox fuzzing, grammar-based whitebox fuzzing increased coverage of the code generation module of the IE7 JavaScript interpreter from 53% to 81% while using three times fewer tests." links: doi: "http://doi.acm.org/10.1145/1375581.1375607" tags: - "parsing algorithm" - "JavaScript" - "rule-based" - "test coverage" - "interpreter" - "testing" - "constraints" - "code generation" - "security" - "compiler" - "parsing" - "coverage" - "grammar" researchr: "https://researchr.org/publication/GodefroidKL08" cites: 0 citedby: 0 pages: "206-215" booktitle: "Proceedings of the ACM SIGPLAN 2008 Conference on Programming Language Design and Implementation, Tucson, AZ, USA, June 7-13, 2008" editor: - name: "Rajiv Gupta" link: "https://researchr.org/alias/rajiv-gupta" - name: "Saman P. Amarasinghe" link: "https://researchr.org/alias/saman-p.-amarasinghe" publisher: "ACM" isbn: "978-1-59593-860-2" kind: "inproceedings" key: "GodefroidKL08" - title: "Interactive Disambiguation of Meta Programs with Concrete Object Syntax" author: - name: "Lennart C. L. Kats" link: "http://www.lclnet.nl/" - name: "Karl Trygve Kalleberg" link: "http://www.ii.uib.no/~karltk/" - name: "Eelco Visser" link: "http://eelcovisser.org" year: "2010" doi: "http://dx.doi.org/10.1007/978-3-642-19440-5_22" abstract: "In meta-programming with concrete object syntax, meta programs can be written using the concrete syntax of manipulated programs. Quotations of concrete syntax fragments and anti-quotations for meta-level expressions and variables are used to manipulate the abstract representation of programs. These small, isolated fragments are often ambiguous and must be explicitly disambiguated with quotation tags or types, using names from the non-terminals of the object language syntax. Discoverability of these names has been an open issue, as they depend on the (grammar) implementation and are not part of the concrete syntax of a language. Based on advances in interactive development environments, we introduce interactive disambiguation to address this issue, providing real-time feedback and proposing quick fixes in case of ambiguities. " links: doi: "http://dx.doi.org/10.1007/978-3-642-19440-5_22" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/sle/KatsKV10" tags: - "programming languages" - "object-oriented programming" - "concrete object syntax" - "rule-based" - "meta programming" - "meta-model" - "abstract syntax" - "tagging" - "disambiguation" - "model-driven development" - "source-to-source" - "C++" - "programming" - "subject-oriented programming" - "Meta-Environment" - "feature-oriented programming" - "concrete syntax" - "open-source" - "meta-objects" - "grammar" researchr: "https://researchr.org/publication/KatsKV10-SLE" cites: 0 citedby: 0 pages: "327-336" booktitle: "Software Language Engineering - Third International Conference, SLE 2010, Eindhoven, The Netherlands, October 12-13, 2010, Revised Selected Papers" editor: - name: "Brian A. Malloy" link: "https://researchr.org/alias/brian-a.-malloy" - name: "Steffen Staab" link: "https://researchr.org/alias/steffen-staab" - name: "Mark van den Brand" link: "https://researchr.org/alias/mark-van-den-brand" volume: "6563" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "978-3-642-19439-9" kind: "inproceedings" key: "KatsKV10-SLE" - title: "A Hierarchical and Multi-Model Based Algorithm for Lead Detection and News Program Narrative Parsing" author: - name: "Jin-Hau Kuo" link: "https://researchr.org/alias/jin-hau-kuo" - name: "Jen-Bin Kuo" link: "https://researchr.org/alias/jen-bin-kuo" - name: "Hsuan-Wei Chen" link: "https://researchr.org/alias/hsuan-wei-chen" - name: "Ja-Ling Wu" link: "https://researchr.org/alias/ja-ling-wu" year: "2005" doi: "http://doi.ieeecomputersociety.org/10.1109/AINA.2005.27" links: doi: "http://doi.ieeecomputersociety.org/10.1109/AINA.2005.27" tags: - "parsing algorithm" - "rule-based" - "parsing" researchr: "https://researchr.org/publication/KuoKCW05" cites: 0 citedby: 0 pages: "511-514" booktitle: "19th International Conference on Advanced Information Networking and Applications (AINA 2005), 28-30 March 2005, Taipei, Taiwan" publisher: "IEEE Computer Society" isbn: "0-7695-2249-1" kind: "inproceedings" key: "KuoKCW05" - title: "Declarative specification of indentation rules: a tooling perspective on parsing and pretty-printing layout-sensitive languages" author: - name: "Luis Eduardo de Souza Amorim" link: "https://www.linkedin.com/profile/view?id=136481548" - name: "Michael J. Steindorfer" link: "http://michael.steindorfer.name" - name: "Sebastian Erdweg" link: "http://www.informatik.uni-marburg.de/~seba/" - name: "Eelco Visser" link: "http://eelcovisser.org" year: "2018" doi: "https://doi.org/10.1145/3276604.3276607" abstract: " In layout-sensitive languages, the indentation of an expression or statement can influence how a program is parsed. While some of these languages (e.g., Haskell and Python) have been widely adopted, there is little support for software language engineers in building tools for layout-sensitive languages. As a result, parsers, pretty-printers, program analyses, and refactoring tools often need to be handwritten, which decreases the maintainability and extensibility of these tools. Even state-of-the-art language workbenches have little support for layout-sensitive languages, restricting the development and prototyping of such languages. In this paper, we introduce a novel approach to declarative specification of layout-sensitive languages using layout declarations. Layout declarations are high-level specifications of indentation rules that abstract from low-level technicalities. We show how to derive an efficient layout-sensitive generalized parser and a corresponding pretty-printer automatically from a language specification with layout declarations. We validate our approach in a case-study using a syntax definition for the Haskell programming language, investigating the performance of the generated parser and the correctness of the generated pretty-printer against 22191 Haskell files. " links: doi: "https://doi.org/10.1145/3276604.3276607" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/sle/AmorimSEV18" researchr: "https://researchr.org/publication/AmorimSEV18" cites: 0 citedby: 0 pages: "3-15" booktitle: "Proceedings of the 11th ACM SIGPLAN International Conference on Software Language Engineering, SLE 2018, Boston, MA, USA, November 05-06, 2018" editor: - name: "David Pearce 0005" link: "https://researchr.org/alias/david-pearce-0005" - name: "Tanja Mayerhofer" link: "https://researchr.org/alias/tanja-mayerhofer" - name: "Friedrich Steimann" link: "http://www.fernuni-hagen.de/ps/team/friedrich.steimann.shtml" publisher: "ACM" isbn: "978-1-4503-6029-6" kind: "inproceedings" key: "AmorimSEV18" - title: "The project" author: - name: "Claus Brabrand" link: "https://researchr.org/alias/claus-brabrand" - name: "Anders Møller" link: "https://researchr.org/alias/anders-m%C3%B8ller" - name: "Michael I. Schwartzbach" link: "http://www.brics.dk/~mis/" year: "2002" doi: "http://doi.acm.org/10.1145/514183.514184" links: doi: "http://doi.acm.org/10.1145/514183.514184" researchr: "https://researchr.org/publication/BrabrandMS02" cites: 0 citedby: 1 journal: "ACM Trans. Internet Techn." volume: "2" number: "2" pages: "79-114" kind: "article" key: "BrabrandMS02" - title: "META II a syntax-oriented compiler writing language" author: - name: "Schorre, D. V." link: "https://researchr.org/alias/schorre%2C-d.-v." year: "1964" doi: "http://doi.acm.org/10.1145/800257.808896" links: doi: "http://doi.acm.org/10.1145/800257.808896" tags: - "meta-model" - "writing" - "compiler" - "Meta-Environment" - "meta-objects" researchr: "https://researchr.org/publication/808896" cites: 0 citedby: 0 booktitle: "Proceedings of the 1964 19th ACM national conference" address: "New York, NY, USA" publisher: "ACM" kind: "inproceedings" key: "808896" - title: "Concrete syntax for objects: domain-specific language embedding and assimilation without restrictions" author: - name: "Martin Bravenboer" link: "http://martin.bravenboer.name/" - name: "Eelco Visser" link: "http://eelcovisser.org" year: "2004" doi: "http://doi.acm.org/10.1145/1028976.1029007" abstract: "Application programmer's interfaces give access to domain knowledge encapsulated in class libraries without providing the appropriate notation for expressing domain composition. Since object-oriented languages are designed for extensibility and reuse, the language constructs are often sufficient for expressing domain abstractions at the semantic level. However, they do not provide the right abstractions at the syntactic level. In this paper we describe MetaBorg, a method for providing concrete syntax for domain abstractions to application programmers. The method consists of embedding domain-specific languages in a general purpose host language and assimilating the embedded domain code into the surrounding host code. Instead of extending the implementation of the host language, the assimilation phase implements domain abstractions in terms of existing APIs leaving the host language undisturbed. Indeed, MetaBorg can be considered a method for promoting APIs to the language level. The method is supported by proven and available technology, i.e. the syntax definition formalism SDF and the program transformation language and toolset Stratego/XT. We illustrate the method with applications in three domains: code generation, XML generation, and user-interface construction." links: doi: "http://doi.acm.org/10.1145/1028976.1029007" tags: - "programming languages" - "object-oriented programming" - "concrete object syntax" - "syntax definition" - "meta programming" - "assimilation" - "SDF" - "XML" - "XML Schema" - "Stratego/XT" - "transformation language" - "composition" - "MetaBorg" - "language design" - "reuse" - "code generation" - "subject-oriented programming" - "abstraction" - "Meta-Environment" - "extensible language" - "ASF+SDF" - "feature-oriented programming" - "concrete syntax" - "meta-objects" - "transformation" - "Stratego" - "program transformation" - "domain-specific language" researchr: "https://researchr.org/publication/BravenboerV04" cites: 51 citedby: 8 pages: "365-383" booktitle: "Proceedings of the 19th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2004" editor: - name: "John M. Vlissides" link: "https://researchr.org/alias/john-m.-vlissides" - name: "Douglas C. Schmidt" link: "https://researchr.org/alias/douglas-c.-schmidt" address: "Vancouver, BC, Canada" publisher: "ACM" isbn: "1-58113-831-8" kind: "inproceedings" key: "BravenboerV04" - title: "A recognition and parsing algorithm for arbitrary conjunctive grammars" author: - name: "Alexander Okhotin" link: "https://researchr.org/alias/alexander-okhotin" year: "2003" doi: "http://dx.doi.org/10.1016/S0304-3975(02)00853-8" links: doi: "http://dx.doi.org/10.1016/S0304-3975(02)00853-8" tags: - "parsing algorithm" - "parsing" - "grammar" researchr: "https://researchr.org/publication/Okhotin03%3A4" cites: 0 citedby: 0 journal: "Theoretical Computer Science" volume: "302" number: "1-3" pages: "365-399" kind: "article" key: "Okhotin03:4" - title: "" year: "1998" doi: "http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.25.1364" note: "(this shouldn't be a \"misc\" publication)" links: doi: "http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.25.1364" researchr: "https://researchr.org/publication/deleted" cites: 0 citedby: 0 kind: "misc" key: "deleted" - title: "UniParse: A universal graph-based parsing toolkit" author: - name: "Daniel Varab" link: "https://researchr.org/alias/daniel-varab" - name: "Natalie Schluter" link: "https://researchr.org/alias/natalie-schluter" year: "2019" doi: "https://aclweb.org/anthology/W19-6149/" links: doi: "https://aclweb.org/anthology/W19-6149/" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/nodalida/VarabS19" researchr: "https://researchr.org/publication/VarabS19" cites: 0 citedby: 0 pages: "406-410" booktitle: "Proceedings of the 22nd Nordic Conference on Computational Linguistics, NoDaLiDa 2019, Turku, Finland, September 30 - October 2, 2019" editor: - name: "Mareike Hartmann" link: "https://researchr.org/alias/mareike-hartmann" - name: "Barbara Plank" link: "https://researchr.org/alias/barbara-plank" publisher: "Linköping University Electronic Press" isbn: "978-91-7929-995-8" kind: "inproceedings" key: "VarabS19" - title: "Concrete syntax for data objects in functional languages" author: - name: "Aasa, Annika" link: "https://researchr.org/alias/aasa%2C-annika" - name: "Petersson, Kent" link: "https://researchr.org/alias/petersson%2C-kent" - name: "Synek, Dan" link: "https://researchr.org/alias/synek%2C-dan" year: "1988" doi: "http://doi.acm.org/10.1145/62678.62688" links: doi: "http://doi.acm.org/10.1145/62678.62688" tags: - "concrete object syntax" - "data-flow language" - "data-flow" - "Meta-Environment" - "concrete syntax" - "meta-objects" researchr: "https://researchr.org/publication/62688" cites: 0 citedby: 0 booktitle: "LFP '88: Proceedings of the 1988 ACM conference on LISP and functional programming" address: "New York, NY, USA" publisher: "ACM" isbn: "0-89791-273-X" kind: "inproceedings" key: "62688" - title: "Faster Scannerless GLR Parsing" author: - name: "Giorgios R. Economopoulos" link: "http://users.ecs.soton.ac.uk/gre/" - name: "Paul Klint" link: "http://homepages.cwi.nl/~paulk/" - name: "Jurgen J. Vinju" link: "http://homepages.cwi.nl/~jurgenv/" year: "2009" doi: "http://dx.doi.org/10.1007/978-3-642-00722-4_10" abstract: "Analysis and renovation of large software portfolios requires syntax analysis of multiple, usually embedded, languages and this is beyond the capabilities of many standard parsing techniques. The traditional separation between lexer and parser falls short due to the limitations of tokenization based on regular expressions when handling multiple lexical grammars. In such cases scannerless parsing provides a viable solution. It uses the power of context-free grammars to be able to deal with a wide variety of issues in parsing lexical syntax. However, it comes at the price of less efficiency. The structure of tokens is obtained using a more powerful but more time and memory intensive parsing algorithm. Scannerless grammars are also more non-deterministic than their tokenized counterparts, increasing the burden on the parsing algorithm even further. In this paper we investigate the application of the Right-Nulled Generalized LR parsing algorithm (RNGLR) to scannerless parsing. We adapt the Scannerless Generalized LR parsing and filtering algorithm (SGLR) to implement the optimizations of RNGLR. We present an updated parsing and filtering algorithm, called SRNGLR, and analyze its performance in comparison to SGLR on ambiguous grammars for the programming languages C, Java, Python, SASL, and C++. Measurements show that SRNGLR is on average 33% faster than SGLR, but is 95% faster on the highly ambiguous SASL grammar. For the mainstream languages C, C++, Java and Python the average speedup is 16%. " links: doi: "http://dx.doi.org/10.1007/978-3-642-00722-4_10" tags: - "parsing algorithm" - "programming languages" - "GLR parsing" - "optimization" - "rule-based" - "Java" - "program analysis" - "lexical syntax" - "embedded software" - "scannerless" - "GLR" - "analysis" - "C++" - "programming" - "context-aware" - "program optimization" - "parsing" - "scannerless parsing" - "SGLR" - "grammar" researchr: "https://researchr.org/publication/EconomopoulosKV09" cites: 0 citedby: 0 pages: "126-141" booktitle: "Compiler Construction, 18th International Conference, CC 2009, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009, York, UK, March 22-29, 2009. Proceedings" editor: - name: "Oege de Moor" link: "http://progtools.comlab.ox.ac.uk/members/oege" - name: "Michael I. Schwartzbach" link: "http://www.brics.dk/~mis/" volume: "5501" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "978-3-642-00721-7" kind: "inproceedings" key: "EconomopoulosKV09" - title: "A new implementation of the Ziv-Lempel incremental parsing algorithm" author: - name: "Tsutomu Kawabata" link: "https://researchr.org/alias/tsutomu-kawabata" - name: "Hirosuke Yamamoto" link: "https://researchr.org/alias/hirosuke-yamamoto" year: "1991" tags: - "parsing algorithm" - "parsing" - "incremental" researchr: "https://researchr.org/publication/KawabataY91" cites: 0 citedby: 0 journal: "IEEE Transactions on Information Theory" volume: "37" number: "5" pages: "1439" kind: "article" key: "KawabataY91" - title: "A Practical GLR Parser Generator for Software Reverse Engineering" author: - name: "Teng Geng" link: "https://researchr.org/alias/teng-geng" - name: "Fu Xu" link: "https://researchr.org/alias/fu-xu" - name: "Han-mei" link: "https://researchr.org/alias/han-mei" - name: "Wei Meng" link: "https://researchr.org/alias/wei-meng" - name: "Zhibo Chen" link: "https://researchr.org/alias/zhibo-chen" - name: "Changqing Lai" link: "https://researchr.org/alias/changqing-lai" year: "2014" doi: "http://dx.doi.org/10.4304/jnw.9.3.769-776" links: doi: "http://dx.doi.org/10.4304/jnw.9.3.769-776" dblp: "http://dblp.uni-trier.de/rec/bibtex/journals/jnw/GengXMMCL14" researchr: "https://researchr.org/publication/GengXMMCL14" cites: 0 citedby: 0 journal: "JNW" volume: "9" number: "3" pages: "769-776" kind: "article" key: "GengXMMCL14" - title: "A new parallel LR parsing algorithm" author: - name: "Kenneth J. Hendrickson" link: "https://researchr.org/alias/kenneth-j.-hendrickson" year: "1995" doi: "http://doi.acm.org/10.1145/315891.315992" links: doi: "http://doi.acm.org/10.1145/315891.315992" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/Hendrickson95" cites: 0 citedby: 0 pages: "277-281" booktitle: "SAC" kind: "inproceedings" key: "Hendrickson95" - title: "Default disambiguation for online parsers" author: - name: "Lukas Diekmann" link: "https://researchr.org/alias/lukas-diekmann" - name: "Laurence Tratt" link: "https://researchr.org/alias/laurence-tratt" year: "2019" doi: "https://doi.org/10.1145/3357766.3359530" links: doi: "https://doi.org/10.1145/3357766.3359530" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/sle/DiekmannT19" researchr: "https://researchr.org/publication/DiekmannT19" cites: 0 citedby: 0 pages: "88-99" booktitle: "Proceedings of the 12th ACM SIGPLAN International Conference on Software Language Engineering, SLE 2019, Athens, Greece, October 20-22, 2019" editor: - name: "Oscar Nierstrasz" link: "https://researchr.org/alias/oscar-nierstrasz" - name: "Jeff Gray" link: "https://researchr.org/alias/jeff-gray" - name: "Bruno C. D. S. Oliveira" link: "https://researchr.org/alias/bruno-c.-d.-s.-oliveira" publisher: "ACM" isbn: "978-1-4503-6981-7" kind: "inproceedings" key: "DiekmannT19" - title: "Incremental packrat parsing" author: - name: "Patrick Dubroy" link: "https://researchr.org/alias/patrick-dubroy" - name: "Alessandro Warth" link: "https://researchr.org/alias/alessandro-warth" year: "2017" doi: "http://doi.acm.org/10.1145/3136014.3136022" links: doi: "http://doi.acm.org/10.1145/3136014.3136022" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/sle/DubroyW17" researchr: "https://researchr.org/publication/DubroyW17" cites: 0 citedby: 0 pages: "14-25" booktitle: "Proceedings of the 10th ACM SIGPLAN International Conference on Software Language Engineering, SLE 2017, Vancouver, BC, Canada, October 23-24, 2017" editor: - name: "Benoît Combemale" link: "https://researchr.org/alias/beno%C3%AEt-combemale" - name: "Marjan Mernik" link: "https://researchr.org/alias/marjan-mernik" - name: "Bernhard Rumpe" link: "http://www.se-rwth.de/~rumpe/" publisher: "ACM" isbn: "978-1-4503-5525-4" kind: "inproceedings" key: "DubroyW17" - title: "An Efficient Chart-based Algorithm for Partial-Parsing of Unrestricted Texts" author: - name: "David D. McDonald" link: "https://researchr.org/alias/david-d.-mcdonald" year: "1992" doi: "http://acl.ldc.upenn.edu/A/A92/A92-1027.pdf" links: doi: "http://acl.ldc.upenn.edu/A/A92/A92-1027.pdf" tags: - "parsing algorithm" - "rule-based" - "parsing" researchr: "https://researchr.org/publication/McDonald92%3A0" cites: 0 citedby: 0 pages: "193-200" booktitle: "ANLP" kind: "inproceedings" key: "McDonald92:0" - title: "An Efficient All-Parses Systolic Algorithm for General Context-Free Parsing" author: - name: "Oscar H. Ibarra" link: "https://researchr.org/alias/oscar-h.-ibarra" - name: "Michael A. Palis" link: "https://researchr.org/alias/michael-a.-palis" year: "1989" tags: - "parsing algorithm" - "context-aware" - "parsing" researchr: "https://researchr.org/publication/IbarraP89" cites: 0 citedby: 0 pages: "403-419" booktitle: "Algorithms and Data Structures, Workshop WADS 89, Ottawa, Canada, August 17-19, 1989, Proceedings" editor: - name: "Frank K. H. A. Dehne" link: "https://researchr.org/alias/frank-k.-h.-a.-dehne" - name: "Jörg-Rüdiger Sack" link: "https://researchr.org/alias/j%C3%B6rg-r%C3%BCdiger-sack" - name: "Nicola Santoro" link: "https://researchr.org/alias/nicola-santoro" volume: "382" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "3-540-51542-9" kind: "inproceedings" key: "IbarraP89" - title: "Parsing Nucleic Acid Pseudoknotted Secondary Structure: Algorithm and Applications" author: - name: "Baharak Rastegari" link: "https://researchr.org/alias/baharak-rastegari" - name: "Anne Condon" link: "https://researchr.org/alias/anne-condon" year: "2007" doi: "http://dx.doi.org/10.1089/cmb.2006.0108" links: doi: "http://dx.doi.org/10.1089/cmb.2006.0108" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/RastegariC07" cites: 0 citedby: 0 journal: "Journal of Computational Biology" volume: "14" number: "1" pages: "16-32" kind: "article" key: "RastegariC07" - title: "Composable and compilable macros:: you want it when?" author: - name: "Matthew Flatt" link: "http://www.cs.utah.edu/~mflatt/" year: "2002" doi: "http://doi.acm.org/10.1145/581478.581486" links: doi: "http://doi.acm.org/10.1145/581478.581486" tags: - "macros" - "compiler" researchr: "https://researchr.org/publication/581486" cites: 0 citedby: 0 booktitle: "ICFP '02: Proceedings of the seventh ACM SIGPLAN international conference on Functional programming" address: "New York, NY, USA" publisher: "ACM" isbn: "1-58113-487-8" kind: "inproceedings" key: "581486" - title: "Implementing multi-stage languages using ASTs, Gensym, and reflection" author: - name: "Calcagno, Cristiano" link: "https://researchr.org/alias/calcagno%2C-cristiano" - name: "Walid Taha" link: "http://www.cs.rice.edu/~taha/" - name: "Huang, Liwen" link: "https://researchr.org/alias/huang%2C-liwen" - name: "Xavier Leroy" link: "http://pauillac.inria.fr/~xleroy/" year: "2003" tags: - "reflection" researchr: "https://researchr.org/publication/954190" cites: 0 citedby: 0 booktitle: "GPCE '03: Proceedings of the 2nd international conference on Generative programming and component engineering" address: "New York, NY, USA" publisher: "Springer-Verlag New York, Inc." isbn: "3-540-20102-5" kind: "inproceedings" key: "954190" - title: "Component-based LR parsing" author: - name: "Xiaoqing Wu" link: "https://researchr.org/alias/xiaoqing-wu" - name: "Barrett R. Bryant" link: "http://www.cis.uab.edu/bryant" - name: "Jeffrey G. Gray" link: "http://www.gray-area.org/" - name: "Marjan Mernik" link: "http://lpm.uni-mb.si/mernik/" year: "2010" doi: "http://dx.doi.org/10.1016/j.cl.2009.01.002" abstract: "A language implementation with proper compositionality enables a compiler developer to divide-and-conquer the complexity of building a large language by constructing a set of smaller languages. Ideally, these small language implementations should be independent of each other such that they can be designed, implemented and debugged individually, and later be reused in different applications (e.g., building domain-specific languages). However, the language composition offered by several existing parser generators resides at the grammar level, which means all the grammar modules need to be composed together and all corresponding ambiguities have to be resolved before generating a single parser for the language. This produces tight coupling between grammar modules, which harms information hiding and affects independent development of language features. To address this problem, we have developed a novel parsing algorithm that we call Component-based LR (CLR) parsing, which provides code-level compositionality for language development by producing a separate parser for each grammar component. In addition to shift and reduce actions, the algorithm extends general LR parsing by introducing switch and return actions to empower the parsing action to jump from one parser to another. Our experimental evaluation demonstrates that CLR increases the comprehensibility, reusability, changeability and independent development ability of the language implementation. Moreover, the loose coupling among parser components enables CLR to describe grammars that contain LR parsing conflicts or require ambiguous token definitions, such as island grammars and embedded languages." links: doi: "http://dx.doi.org/10.1016/j.cl.2009.01.002" dblp: "http://dblp.uni-trier.de/rec/bibtex/journals/cl/WuBGM10" tags: - "parsing algorithm" - "reusable components" - "rule-based" - "design complexity" - "composition" - "language design" - "reuse" - "information hiding" - "debugging" - "compiler" - "parsing" - "grammar" - "domain-specific language" researchr: "https://researchr.org/publication/WuBGM10" cites: 38 citedby: 0 journal: "Computer Languages, Systems \\& Structures" volume: "36" number: "1" pages: "16-33" kind: "article" key: "WuBGM10" - title: "An Optimal Parallel Algorithm for Arithmetic Expression Parsing" author: - name: "Weian Deng" link: "https://researchr.org/alias/weian-deng" - name: "S. Sitharama Iyengar" link: "https://researchr.org/alias/s.-sitharama-iyengar" year: "1992" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/DengI92" cites: 0 citedby: 0 pages: "212-215" booktitle: "Proceedings of the 6th International Parallel Processing Symposium, Beverly Hills, CA, USA, March 1992" editor: - name: "Viktor K. Prasanna" link: "https://researchr.org/alias/viktor-k.-prasanna" - name: "Larry H. Canter" link: "https://researchr.org/alias/larry-h.-canter" publisher: "IEEE Computer Society" isbn: "0-8186-2672-0" kind: "inproceedings" key: "DengI92" - title: "Syntax error recovery in parsing expression grammars" author: - name: "Sérgio Medeiros" link: "https://researchr.org/alias/s%C3%A9rgio-medeiros" - name: "Fabio Mascarenhas" link: "https://researchr.org/alias/fabio-mascarenhas" year: "2018" doi: "http://doi.acm.org/10.1145/3167132.3167261" links: doi: "http://doi.acm.org/10.1145/3167132.3167261" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/sac/MedeirosM18" researchr: "https://researchr.org/publication/MedeirosM18" cites: 0 citedby: 0 pages: "1195-1202" booktitle: "Proceedings of the 33rd Annual ACM Symposium on Applied Computing, SAC 2018, Pau, France, April 09-13, 2018" editor: - name: "Hisham M. Haddad" link: "https://researchr.org/alias/hisham-m.-haddad" - name: "Roger L. Wainwright" link: "https://researchr.org/alias/roger-l.-wainwright" - name: "Richard Chbeir" link: "https://researchr.org/alias/richard-chbeir" publisher: "ACM" kind: "inproceedings" key: "MedeirosM18" - title: "GLL Parsing" author: - name: "Elizabeth Scott" link: "https://researchr.org/alias/elizabeth-scott" - name: "Adrian Johnstone" link: "http://www.cs.rhul.ac.uk/~adrian/" year: "2009" tags: - "parsing" researchr: "https://researchr.org/publication/sj09gll" cites: 0 citedby: 1 booktitle: "Workshop on Language Descriptions, Tools and Applications (LDTA'09)" kind: "inproceedings" key: "sj09gll" - title: "An Efficient Augmented-Context-Free Parsing Algorithm" author: - name: "Masaru Tomita" link: "https://researchr.org/alias/masaru-tomita" year: "1987" tags: - "parsing algorithm" - "context-aware" - "parsing" researchr: "https://researchr.org/publication/Tomita87" cites: 0 citedby: 0 journal: "Computational Linguistics" volume: "13" number: "1-2" pages: "31-46" kind: "article" key: "Tomita87" - title: "The Spoofax language workbench: rules for declarative specification of languages and IDEs" author: - name: "Lennart C. L. Kats" link: "http://www.lclnet.nl/" - name: "Eelco Visser" link: "http://eelcovisser.org" year: "2010" doi: "https://doi.org/10.1145/1869459.1869497" abstract: "Spoofax is a language workbench for efficient, agile development of textual domain-specific languages with state-of-the-art IDE support. Spoofax integrates language processing techniques for parser generation, meta-programming, and IDE development into a single environment. It uses concise, declarative specifications for languages and IDE services. In this paper we describe the architecture of Spoofax and introduce idioms for high-level specifications of language semantics using rewrite rules, showing how analyses can be reused for transformations, code generation, and editor services such as error marking, reference resolving, and content completion. The implementation of these services is supported by language-parametric editor service classes that can be dynamically loaded by the Eclipse IDE, allowing new languages to be developed and used side-by-side in the same Eclipse environment." links: doi: "https://doi.org/10.1145/1869459.1869497" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/oopsla/KatsV10" "acm dl": "https://doi.org/10.1145/1932682.1869497" tags: - "programming languages" - "model-to-model transformation" - "workbench" - "semantics" - "rule-based" - "Eclipse" - "meta programming" - "model editor" - "graph transformation" - "meta-model" - "transformation language" - "architecture" - "reuse" - "model-driven development" - "graph-rewriting" - "rules" - "C++" - "code completion" - "code generation" - "model transformation" - "programming" - "language workbench" - "Spoofax" - "Meta-Environment" - "rewriting" - "parsing" - "meta-objects" - "transformation" - "program transformation" - "domain-specific language" researchr: "https://researchr.org/publication/KatsV10" cites: 0 citedby: 2 pages: "444-463" booktitle: "Proceedings of the 25th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2010, October 17-21, 2010, Reno/Tahoe, Nevada, USA" editor: - name: "William R. Cook" link: "http://www.cs.utexas.edu/~wcook/" - name: "Siobhán Clarke" link: "https://www.cs.tcd.ie/Siobhan.Clarke/" - name: "Martin C. Rinard" link: "https://researchr.org/alias/martin-c.-rinard" address: "Reno/Tahoe, Nevada" publisher: "ACM" isbn: "978-1-4503-0203-6" kind: "inproceedings" key: "KatsV10" - title: "Deep priority conflicts in the wild: a pilot study" author: - name: "Luis Eduardo de Souza Amorim" link: "https://www.linkedin.com/profile/view?id=136481548" - name: "Michael J. Steindorfer" link: "http://michael.steindorfer.name" - name: "Eelco Visser" link: "http://eelcovisser.org" year: "2017" doi: "http://doi.acm.org/10.1145/3136014.3136020" abstract: " Context-free grammars are suitable for formalizing the syntax of programming languages concisely and declaratively. Thus, such grammars are often found in reference manuals of programming languages, and used in language workbenches for language prototyping. However, the natural and concise way of writing a context-free grammar is often ambiguous. Safe and complete declarative disambiguation of operator precedence and associativity conflicts guarantees that all ambiguities arising from combining the operators of the language are resolved. Ambiguities can occur due to shallow conflicts, which can be captured by one-level tree patterns, and deep conflicts, which require more elaborate techniques. Approaches to solve deep priority conflicts include grammar transformations, which may result in large unambiguous grammars, or may require adapted parser technologies to include data-dependency tracking at parse time. In this paper we study deep priority conflicts \"in the wild\". We investigate the efficiency of grammar transformations to solve deep priority conflicts by using a lazy parse table generation technique. On top of lazily-generated parse tables, we define metrics, aiming to answer how often deep priority conflicts occur in real-world programs and to what extent programmers explicitly disambiguate programs themselves. By applying our metrics to a small corpus of popular open-source repositories we found that in OCaml, up to 17% of the source files contain deep priority conflicts. " links: doi: "http://doi.acm.org/10.1145/3136014.3136020" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/sle/AmorimSV17" researchr: "https://researchr.org/publication/AmorimSV17" cites: 0 citedby: 0 pages: "55-66" booktitle: "Proceedings of the 10th ACM SIGPLAN International Conference on Software Language Engineering, SLE 2017, Vancouver, BC, Canada, October 23-24, 2017" editor: - name: "Benoît Combemale" link: "https://researchr.org/alias/beno%C3%AEt-combemale" - name: "Marjan Mernik" link: "https://researchr.org/alias/marjan-mernik" - name: "Bernhard Rumpe" link: "http://www.se-rwth.de/~rumpe/" publisher: "ACM" isbn: "978-1-4503-5525-4" kind: "inproceedings" key: "AmorimSV17" - title: "A New Top-Down Parsing Algorithm for Left-Recursive DCGs" author: - name: "Mark-Jan Nederhof" link: "https://researchr.org/alias/mark-jan-nederhof" year: "1993" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/Nederhof93" cites: 0 citedby: 0 pages: "108-122" booktitle: "Programming Language Implementation and Logic Programming, 5th International Symposium, PLILP 93, Tallinn, Estonia, August 25-27, 1993, Proceedings" editor: - name: "Maurice Bruynooghe" link: "https://researchr.org/alias/maurice-bruynooghe" - name: "Jaan Penjam" link: "https://researchr.org/alias/jaan-penjam" volume: "714" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "3-540-57186-8" kind: "inproceedings" key: "Nederhof93" - title: "Faster general parsing through context-free memoization" author: - name: "Grzegorz Herman" link: "https://researchr.org/alias/grzegorz-herman" year: "2020" doi: "https://doi.org/10.1145/3385412.3386032" links: doi: "https://doi.org/10.1145/3385412.3386032" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/pldi/Herman20" researchr: "https://researchr.org/publication/Herman20" cites: 0 citedby: 0 pages: "1022-1035" booktitle: "Proceedings of the 41st ACM SIGPLAN International Conference on Programming Language Design and Implementation, PLDI 2020, London, UK, June 15-20, 2020" editor: - name: "Alastair F. Donaldson" link: "https://researchr.org/alias/alastair-f.-donaldson" - name: "Emina Torlak" link: "https://researchr.org/alias/emina-torlak" publisher: "ACM" isbn: "978-1-4503-7613-6" kind: "inproceedings" key: "Herman20" - title: "An Efficient Parsing Algorithm for Tree Adjoining Grammars" author: - name: "Karin Harbusch" link: "https://researchr.org/alias/karin-harbusch" year: "1990" tags: - "parsing algorithm" - "parsing" - "grammar" researchr: "https://researchr.org/publication/Harbusch90" cites: 0 citedby: 0 pages: "284-291" booktitle: "ACL" kind: "inproceedings" key: "Harbusch90" - title: "Designing Syntax Embeddings and Assimilations for Language Libraries" author: - name: "Martin Bravenboer" link: "http://martin.bravenboer.name/" - name: "Eelco Visser" link: "http://eelcovisser.org" year: "2007" doi: "http://dx.doi.org/10.1007/978-3-540-69073-3_5" abstract: "Language libraries extend regular libraries with domain-specific notation. More precisely, a language library is a combination of a domain-specific language embedded in the general-purpose host language, a regular library implementing the underlying functionality, and an assimilation transformation that maps embedded DSL fragments to host language code. While the basic architecture for realizing language libraries is the same for all applications, there are many design choices to be made in the design of a particular combination of library, guest language syntax, host language, and assimilation. In this paper, we give an overview of the design space for syntax embeddings and assimilations for the realization of language libraries. " links: doi: "http://dx.doi.org/10.1007/978-3-540-69073-3_5" technicalreport: "https://researchr.org/publication/TUD-SERG-2008-042" tags: - "syntax embedding" - "syntax definition" - "assimilation" - "transformation language" - "architecture" - "language design" - "DSL" - "language libraries" - "design" - "transformation" - "domain-specific language" researchr: "https://researchr.org/publication/BravenboerV07" cites: 24 citedby: 1 pages: "34-46" booktitle: "Models in Software Engineering, Workshops and Symposia at MoDELS 2007, Nashville, TN, USA, September 30 - October 5, 2007, Reports and Revised Selected Papers" editor: - name: "Holger Giese" link: "https://researchr.org/alias/holger-giese" volume: "5002" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "978-3-540-69069-6" kind: "inproceedings" key: "BravenboerV07" - title: "Improved GLR Parsing Algorithm" author: - name: "Miao Li" link: "https://researchr.org/alias/miao-li" - name: "ZhiGuo Wei" link: "https://researchr.org/alias/zhiguo-wei" - name: "Jian Zhang" link: "https://researchr.org/alias/jian-zhang" - name: "ZeLin Hu" link: "https://researchr.org/alias/zelin-hu" year: "2005" doi: "http://dx.doi.org/10.1007/11538356_18" links: doi: "http://dx.doi.org/10.1007/11538356_18" tags: - "parsing algorithm" - "GLR parsing" - "GLR" - "parsing" researchr: "https://researchr.org/publication/LiWZH05" cites: 0 citedby: 0 pages: "169-178" booktitle: "Advances in Intelligent Computing, International Conference on Intelligent Computing, ICIC 2005, Hefei, China, August 23-26, 2005, Proceedings, Part II" editor: - name: "De-Shuang Huang" link: "https://researchr.org/alias/de-shuang-huang" - name: "Xiao-Ping Zhang" link: "https://researchr.org/alias/xiao-ping-zhang" - name: "Guang-Bin Huang" link: "https://researchr.org/alias/guang-bin-huang" volume: "3645" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "3-540-28227-0" kind: "inproceedings" key: "LiWZH05" - title: "A graded bibliography on macro systems and extensible languages" author: - name: "Metzner, John R." link: "https://researchr.org/alias/metzner%2C-john-r." year: "1979" doi: "http://doi.acm.org/10.1145/954051.954056" links: doi: "http://doi.acm.org/10.1145/954051.954056" tags: - "bibliography" - "macros" - "extensible language" researchr: "https://researchr.org/publication/954056" cites: 0 citedby: 0 journal: "SIGPLAN Not." volume: "14" number: "1" kind: "article" key: "954056" - title: "Barista: An implementation framework for enabling new tools, interaction techniques and views in code editors" author: - name: "Andrew Jensen Ko" link: "https://researchr.org/alias/andrew-jensen-ko" - name: "Brad A. Myers" link: "http://www.cs.cmu.edu/~bam/" year: "2006" doi: "http://doi.acm.org/10.1145/1124772.1124831" abstract: " Recent advances in programming environments have focused on improving programmer productivity by utilizing the inherent structure in computer programs. However, because these environments represent code as plain text, it is difficult and sometimes impossible to embed interactive tools, annotations, and alternative views in the code itself. Barista is an implementation framework that enables the creation of such user interfaces by simplifying the implementation of editors that represent code internally as an abstract syntax tree and maintain a corresponding, fully structured visual representation on-screen. Barista also provides designers of editors with a standard text-editing interaction technique that closely mimics that of conventional text editors, overcoming a central usability issue of previous structured code editors. " links: doi: "http://doi.acm.org/10.1145/1124772.1124831" tags: - "meta programming" - "model editor" - "meta-model" - "abstract syntax" - "human-computer interaction" - "programming" - "Meta-Environment" researchr: "https://researchr.org/publication/KoM06" cites: 19 citedby: 1 pages: "387-396" booktitle: "Proceedings of the 2006 Conference on Human Factors in Computing Systems, CHI 2006, Montréal, Québec, Canada, April 22-27, 2006" editor: - name: "Rebecca E. Grinter" link: "https://researchr.org/alias/rebecca-e.-grinter" - name: "Tom Rodden" link: "https://researchr.org/alias/tom-rodden" - name: "Paul M. Aoki" link: "https://researchr.org/alias/paul-m.-aoki" - name: "Edward Cutrell" link: "https://researchr.org/alias/edward-cutrell" - name: "Robin Jeffries" link: "https://researchr.org/alias/robin-jeffries" - name: "Gary M. Olson" link: "https://researchr.org/alias/gary-m.-olson" publisher: "ACM" isbn: "1-59593-372-7" kind: "inproceedings" key: "KoM06" - title: "Parsing with first-class derivatives" author: - name: "Jonathan Immanuel Brachthäuser" link: "https://researchr.org/alias/jonathan-immanuel-brachth%C3%A4user" - name: "Tillmann Rendel" link: "https://researchr.org/alias/tillmann-rendel" - name: "Klaus Ostermann" link: "https://researchr.org/alias/klaus-ostermann" year: "2016" doi: "http://doi.acm.org/10.1145/2983990.2984026" links: doi: "http://doi.acm.org/10.1145/2983990.2984026" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/oopsla/BrachthauserRO16" researchr: "https://researchr.org/publication/BrachthauserRO16" cites: 0 citedby: 0 pages: "588-606" booktitle: "Proceedings of the 2016 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2016, part of SPLASH 2016, Amsterdam, The Netherlands, October 30 - November 4, 2016" editor: - name: "Eelco Visser" link: "http://eelcovisser.org" - name: "Yannis Smaragdakis" link: "https://researchr.org/alias/yannis-smaragdakis" publisher: "ACM" isbn: "978-1-4503-4444-9" kind: "inproceedings" key: "BrachthauserRO16" - title: "Deuce: a lightweight user interface for structured editing" author: - name: "Brian Hempel" link: "https://researchr.org/alias/brian-hempel" - name: "Justin Lubin" link: "https://researchr.org/alias/justin-lubin" - name: "Grace Lu" link: "https://researchr.org/alias/grace-lu" - name: "Ravi Chugh" link: "https://researchr.org/alias/ravi-chugh" year: "2018" doi: "http://doi.acm.org/10.1145/3180155.3180165" links: doi: "http://doi.acm.org/10.1145/3180155.3180165" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/icse/HempelLLC18" researchr: "https://researchr.org/publication/HempelLLC18" cites: 0 citedby: 0 pages: "654-664" booktitle: "Proceedings of the 40th International Conference on Software Engineering, ICSE 2018, Gothenburg, Sweden, May 27 - June 03, 2018" editor: - name: "Michel Chaudron" link: "https://researchr.org/alias/michel-chaudron" - name: "Ivica Crnkovic" link: "https://researchr.org/alias/ivica-crnkovic" - name: "Marsha Chechik" link: "https://researchr.org/alias/marsha-chechik" - name: "Mark Harman" link: "https://researchr.org/alias/mark-harman" publisher: "ACM" kind: "inproceedings" key: "HempelLLC18" - title: "Comparison of Syntactic Error Handling in LR Parsers" author: - name: "Pierpaolo Degano" link: "https://researchr.org/alias/pierpaolo-degano" - name: "Corrado Priami" link: "https://researchr.org/alias/corrado-priami" year: "1995" tags: - "parsing" researchr: "https://researchr.org/publication/DeganoP95" cites: 0 citedby: 0 journal: "Software: Practice and Experience" volume: "25" number: "6" pages: "657-679" kind: "article" key: "DeganoP95" - title: "An Efficient Context-Free Parsing Algorithm" author: - name: "Jay Earley" link: "https://researchr.org/alias/jay-earley" year: "1970" doi: "https://doi.org/10.1145/362007.362035" links: doi: "https://doi.org/10.1145/362007.362035" tags: - "parsing algorithm" - "context-aware" - "parsing" researchr: "https://researchr.org/publication/Earley70%3A0" cites: 0 citedby: 0 journal: "Communications of the ACM" volume: "13" number: "2" pages: "94-102" kind: "article" key: "Earley70:0" - title: "Preventing injection attacks with syntax embeddings" author: - name: "Martin Bravenboer" link: "http://martin.bravenboer.name/" - name: "Eelco Dolstra" link: "https://researchr.org/profile/eelcodolstra/publications" - name: "Eelco Visser" link: "http://eelcovisser.org" year: "2010" doi: "http://dx.doi.org/10.1016/j.scico.2009.05.004" abstract: "Software written in one language often needs to construct sentences in another language, such as SQL queries, XML output, or shell command invocations. This is almost always done using unhygienic string manipulation, the concatenation of constants and client-supplied strings. A client can then supply specially crafted input that causes the constructed sentence to be interpreted in an unintended way, leading to an injection attack. We describe a more natural style of programming that yields code that is impervious to injections by construction. Our approach embeds the grammars of the guest languages (e.g. SQL) into that of the host language (e.g. Java) and automatically generates code that maps the embedded language to constructs in the host language that reconstruct the embedded sentences, adding escaping functions where appropriate. This approach is generic, meaning that it can be applied with relative ease to any combination of context-free host and guest languages." links: doi: "http://dx.doi.org/10.1016/j.scico.2009.05.004" dblp: "http://dblp.uni-trier.de/rec/bibtex/journals/scp/BravenboerDV10" technicalreport: "https://researchr.org/publication/preprint-BravenboerDV-SCP-2009" tags: - "injection attack" researchr: "https://researchr.org/publication/BravenboerDV10" cites: 0 citedby: 0 journal: "Science of Computer Programming" volume: "75" number: "7" pages: "473-495" kind: "article" key: "BravenboerDV10" - title: "Algorithm Recognition for Programming Tutoring Based on Flow Graph Parsing" author: - name: "Seokwon Kim" link: "https://researchr.org/alias/seokwon-kim" - name: "Jin Hyung Kim" link: "https://researchr.org/alias/jin-hyung-kim" year: "1996" tags: - "parsing algorithm" - "rule-based" - "data-flow programming" - "data-flow" - "graph-rewriting" - "programming" - "rewriting" - "parsing" researchr: "https://researchr.org/publication/KimK96%3A3" cites: 0 citedby: 0 journal: "Appl. Intell." volume: "6" number: "2" pages: "153-164" kind: "article" key: "KimK96:3" - title: "Towards automatic error recovery in parsing expression grammars" author: - name: "Sérgio Queiroz de Medeiros" link: "https://researchr.org/alias/s%C3%A9rgio-queiroz-de-medeiros" - name: "Fabio Mascarenhas" link: "https://researchr.org/alias/fabio-mascarenhas" year: "2018" doi: "https://doi.org/10.1145/3264637.3264638" links: doi: "https://doi.org/10.1145/3264637.3264638" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/sblp/MedeirosM18" researchr: "https://researchr.org/publication/MedeirosM18-SBLP" cites: 0 citedby: 0 pages: "3-10" booktitle: "Proceedings of the XXII Brazilian Symposium on Programming Languages, SBLP 2018, Sao Carlos, Brazil, September 20-21, 2018" editor: - name: "Carlos Camarão" link: "https://researchr.org/alias/carlos-camar%C3%A3o" - name: "Martin Sulzmann" link: "https://researchr.org/alias/martin-sulzmann" publisher: "ACM" isbn: "978-1-4503-6480-5" kind: "inproceedings" key: "MedeirosM18-SBLP" - title: "A Transformational Derivation of a Parsing Algorithm in a High-Level Language" author: - name: "Edith Deak" link: "https://researchr.org/alias/edith-deak" year: "1981" tags: - "parsing algorithm" - "transformation language" - "parsing" - "transformation" researchr: "https://researchr.org/publication/Deak81" cites: 0 citedby: 0 journal: "IEEE Trans. Software Eng." volume: "7" number: "1" pages: "23-31" kind: "article" key: "Deak81" - title: "R3: Repeatability, reproducibility and rigor" author: - name: "Vitek, Jan" link: "https://researchr.org/alias/vitek%2C-jan" - name: "Kalibera, Tomas" link: "https://researchr.org/alias/kalibera%2C-tomas" year: "2012" researchr: "https://researchr.org/publication/VitekK12r3" cites: 0 citedby: 0 journal: "ACM SIGPLAN Notices" volume: "47" number: "4a" pages: "30-36" kind: "article" key: "VitekK12r3" - title: "Maya: multiple-dispatch syntax extension in Java" author: - name: "Baker, Jason" link: "https://researchr.org/alias/baker%2C-jason" - name: "Hsieh, Wilson C." link: "https://researchr.org/alias/hsieh%2C-wilson-c." year: "2002" doi: "http://doi.acm.org/10.1145/512529.512562" links: doi: "http://doi.acm.org/10.1145/512529.512562" tags: - "Java" - "C++" researchr: "https://researchr.org/publication/512562" cites: 0 citedby: 0 booktitle: "PLDI '02: Proceedings of the ACM SIGPLAN 2002 Conference on Programming language design and implementation" address: "New York, NY, USA" publisher: "ACM" isbn: "1-58113-463-0" kind: "inproceedings" key: "512562" - title: "Scannerless Generalized-LR Parsing" author: - name: "Eelco Visser" link: "http://eelcovisser.org" year: "1997" month: "July" abstract: "Current deterministic parsing techniques have a number of problems. These include the limitations of parser generators for deterministic languages and the complex interface between scanner and parser. Scannerless parsing is a parsing technique in which lexical and context-free syntax are integrated into one grammar and are all handled by a single context-free analysis phase. This approach has a number of advantages including discarding of the scanner and lexical disambiguation by means of the context in which a lexical token occurs, Scannerless parsing generates a number of interesting problems as well. Integrated grammars do not fit the requirements of the conventional deterministic parsing techniques. A plain context-free grammar formalism leads to unwieldy grammars. if all lexical information is included. Lexical disambiguation needs to be reformulated for use in context-free parsing. The scannerless generalized-LR parsing approach presented in this paper solves these problems. Grammar normalization is used to support an expressive grammar formalism without complicating the underlying machinery. Follow restrictions are used to express longest match lexical disambiguation. Reject productions are used to express the prefer keywords rule for lexical disambiguation. The SLR parser generation algorithm is adapted to implement disambiguation by general priority and associativity declarations and to interpret follow restrictions. Generalized-LR parsing is used to provide dynamic lookahead and to support parsing of arbitrary context-free grammars including ambiguous ones. An adaptation of the GLR algorithm supports the interpretation of grammars with reject productions. " tags: - "parsing algorithm" - "GLR parsing" - "rule-based" - "SDF" - "lexical syntax" - "disambiguation" - "GLR" - "analysis" - "rules" - "context-aware" - "parsing" - "scannerless parsing" - "systematic-approach" - "ASF+SDF" - "SGLR" - "grammar" researchr: "https://researchr.org/publication/Visser97-SGLR" cites: 0 citedby: 6 institution: "Programming Research Group, University of Amsterdam" number: "P9707" kind: "techreport" key: "Visser97-SGLR" - title: "A Parallel Parsing Algorithm for Arbitrary Context-Free Grammars" author: - name: "Dong-Yul Ra" link: "https://researchr.org/alias/dong-yul-ra" - name: "Jong-Hyun Kim" link: "https://researchr.org/alias/jong-hyun-kim" year: "1996" doi: "http://dx.doi.org/10.1016/0020-0190(96)00023-3" links: doi: "http://dx.doi.org/10.1016/0020-0190(96)00023-3" tags: - "parsing algorithm" - "context-aware" - "parsing" - "grammar" researchr: "https://researchr.org/publication/RaK96" cites: 0 citedby: 0 journal: "Inf. Process. Lett." volume: "58" number: "2" pages: "87-96" kind: "article" key: "RaK96" - title: "The Java syntactic extender (JSE)" author: - name: "Bachrach, Jonthan" link: "https://researchr.org/alias/bachrach%2C-jonthan" - name: "Playford, Keith" link: "https://researchr.org/alias/playford%2C-keith" year: "2001" doi: "http://doi.acm.org/10.1145/504282.504285" links: doi: "http://doi.acm.org/10.1145/504282.504285" tags: - "Java" researchr: "https://researchr.org/publication/504285" cites: 0 citedby: 2 booktitle: "OOPSLA '01: Proceedings of the 16th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications" address: "New York, NY, USA" publisher: "ACM" isbn: "1-58113-335-9" kind: "inproceedings" key: "504285" - title: "Parser-directed fuzzing" author: - name: "Björn Mathis" link: "https://researchr.org/alias/bj%C3%B6rn-mathis" - name: "Rahul Gopinath" link: "https://rahul.gopinath.org" - name: "Michaël Mera" link: "https://researchr.org/alias/micha%C3%ABl-mera" - name: "Alexander Kampmann" link: "https://researchr.org/alias/alexander-kampmann" - name: "Matthias Höschele" link: "https://researchr.org/alias/matthias-h%C3%B6schele" - name: "Andreas Zeller" link: "https://researchr.org/alias/andreas-zeller" year: "2019" doi: "https://doi.org/10.1145/3314221.3314651" links: doi: "https://doi.org/10.1145/3314221.3314651" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/pldi/MathisGMKHZ19" researchr: "https://researchr.org/publication/MathisGMKHZ19" cites: 0 citedby: 0 pages: "548-560" booktitle: "Proceedings of the 40th ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2019, Phoenix, AZ, USA, June 22-26, 2019" editor: - name: "Kathryn S. McKinley" link: "https://researchr.org/alias/kathryn-s.-mckinley" - name: "Kathleen Fisher" link: "https://researchr.org/alias/kathleen-fisher" publisher: "ACM" isbn: "978-1-4503-6712-7" kind: "inproceedings" key: "MathisGMKHZ19" - title: "Automated evaluation of syntax error recovery" author: - name: "Maartje de Jonge" link: "https://researchr.org/profile/maartjedejonge/publications" - name: "Eelco Visser" link: "http://eelcovisser.org" year: "2012" doi: "http://doi.acm.org/10.1145/2351676.2351736" abstract: "Evaluation of parse error recovery techniques is an open problem. The community lacks objective standards and methods to measure the quality of recovery results. This paper proposes an automated technique for recovery evaluation that offers a solution for two main problems in this area. First, a representative testset is generated by a mutation based fuzzing technique that applies knowledge about common syntax errors. Secondly, the quality of the recovery results is automatically measured using an oracle-based evaluation technique. We evaluate the validity of our approach by comparing results obtained by automated evaluation with results obtained by manual inspection. The evaluation shows a clear correspondence between our quality metric and human judgement. " links: doi: "http://doi.acm.org/10.1145/2351676.2351736" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/kbse/JongeV12" technicalreport: "https://researchr.org/publication/DeJongeVisser2012-TR" researchr: "https://researchr.org/publication/JongeV12" cites: 0 citedby: 0 pages: "322-325" booktitle: "IEEE/ACM International Conference on Automated Software Engineering, ASE'12, Essen, Germany, September 3-7, 2012" editor: - name: "Michael Goedicke" link: "https://researchr.org/alias/michael-goedicke" - name: "Tim Menzies" link: "https://researchr.org/alias/tim-menzies" - name: "Motoshi Saeki" link: "https://researchr.org/alias/motoshi-saeki" publisher: "ACM" isbn: "978-1-4503-1204-2" kind: "inproceedings" key: "JongeV12" - title: "Incremental Parsing with the Perceptron Algorithm" author: - name: "Michael Collins" link: "https://researchr.org/alias/michael-collins" - name: "Brian Roark" link: "https://researchr.org/alias/brian-roark" year: "2004" doi: "http://acl.ldc.upenn.edu/acl2004/main/pdf/338_pdf_2-col.pdf" links: doi: "http://acl.ldc.upenn.edu/acl2004/main/pdf/338_pdf_2-col.pdf" tags: - "parsing algorithm" - "parsing" - "incremental" researchr: "https://researchr.org/publication/CollinsR04" cites: 0 citedby: 0 pages: "111-118" booktitle: "ACL" kind: "inproceedings" key: "CollinsR04" - title: "Lightweight multi-language syntax transformation with parser parser combinators" author: - name: "Rijnard van Tonder" link: "https://researchr.org/alias/rijnard-van-tonder" - name: "Claire Le Goues" link: "https://researchr.org/alias/claire-le-goues" year: "2019" doi: "https://doi.org/10.1145/3314221.3314589" links: doi: "https://doi.org/10.1145/3314221.3314589" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/pldi/TonderG19" researchr: "https://researchr.org/publication/TonderG19" cites: 0 citedby: 0 pages: "363-378" booktitle: "Proceedings of the 40th ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2019, Phoenix, AZ, USA, June 22-26, 2019" editor: - name: "Kathryn S. McKinley" link: "https://researchr.org/alias/kathryn-s.-mckinley" - name: "Kathleen Fisher" link: "https://researchr.org/alias/kathleen-fisher" publisher: "ACM" isbn: "978-1-4503-6712-7" kind: "inproceedings" key: "TonderG19" - title: "Fast Parsing for Boolean Grammars: A Generalization of Valiant s Algorithm" author: - name: "Alexander Okhotin" link: "https://researchr.org/alias/alexander-okhotin" year: "2010" doi: "http://dx.doi.org/10.1007/978-3-642-14455-4_31" links: doi: "http://dx.doi.org/10.1007/978-3-642-14455-4_31" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/dlt/Okhotin10" tags: - "parsing algorithm" - "parsing" - "grammar" researchr: "https://researchr.org/publication/Okhotin10-2" cites: 0 citedby: 0 pages: "340-351" booktitle: "Developments in Language Theory, 14th International Conference, DLT 2010, London, ON, Canada, August 17-20, 2010. Proceedings" editor: - name: "Yuan Gao" link: "https://researchr.org/alias/yuan-gao" - name: "Hanlin Lu" link: "https://researchr.org/alias/hanlin-lu" - name: "Shinnosuke Seki" link: "https://researchr.org/alias/shinnosuke-seki" - name: "Sheng Yu" link: "https://researchr.org/alias/sheng-yu" volume: "6224" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "978-3-642-14454-7" kind: "inproceedings" key: "Okhotin10-2" - title: "Incremental Analysis of real Programming Languages" author: - name: "Tim A. Wagner" link: "https://researchr.org/alias/tim-a.-wagner" - name: "Susan L. Graham" link: "https://researchr.org/alias/susan-l.-graham" year: "1997" tags: - "programming languages" - "program analysis" - "analysis" - "programming" - "incremental" researchr: "https://researchr.org/publication/WagnerG97" cites: 0 citedby: 1 pages: "31-43" booktitle: "PLDI" kind: "inproceedings" key: "WagnerG97" - title: "An Optimal Parallel Parsing Algorithm for a Class of Block Structured Languages" author: - name: "Dilip Sarkar" link: "https://researchr.org/alias/dilip-sarkar" - name: "Narsingh Deo" link: "https://researchr.org/alias/narsingh-deo" year: "1987" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/SarkarD87%3A0" cites: 0 citedby: 0 pages: "585-588" booktitle: "ICPP" kind: "inproceedings" key: "SarkarD87:0" - title: "An Improved Left-Corner Parsing Algorithm" author: - name: "Kenneth M. Ross" link: "https://researchr.org/alias/kenneth-m.-ross" year: "1982" doi: "http://acl.ldc.upenn.edu/C/C82/C82-1054.pdf" links: doi: "http://acl.ldc.upenn.edu/C/C82/C82-1054.pdf" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/Ross82" cites: 0 citedby: 0 pages: "333-338" booktitle: "COLING" kind: "inproceedings" key: "Ross82" - title: "An Efficient Japanese Parsing Algorithm for Computer-Assisted Language Learning" author: - name: "Chi-Hong Leung" link: "https://researchr.org/alias/chi-hong-leung" - name: "Wun-Na Yung" link: "https://researchr.org/alias/wun-na-yung" year: "2003" doi: "http://csdl.computer.org/comp/proceedings/icalt/2003/1967/00/19670456.pdf" links: doi: "http://csdl.computer.org/comp/proceedings/icalt/2003/1967/00/19670456.pdf" tags: - "parsing algorithm" - "parsing" researchr: "https://researchr.org/publication/LeungY03" cites: 0 citedby: 0 pages: "456" booktitle: "2003 IEEE International Conference on Advanced Learning Technologies (ICALT 2003), 9-11 July 2003, Athens, Greece" publisher: "IEEE Computer Society" isbn: "0-7695-1967-9" kind: "inproceedings" key: "LeungY03" - title: "CPEG: a typed tree construction from parsing expression grammars with regex-like captures" author: - name: "Daisuke Yamaguchi" link: "https://researchr.org/alias/daisuke-yamaguchi" - name: "Kimio Kuramitsu" link: "https://researchr.org/alias/kimio-kuramitsu" year: "2019" doi: "https://doi.org/10.1145/3297280.3297433" links: doi: "https://doi.org/10.1145/3297280.3297433" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/sac/YamaguchiK19" researchr: "https://researchr.org/publication/YamaguchiK19" cites: 0 citedby: 0 pages: "1526-1533" booktitle: "Proceedings of the 34th ACM/SIGAPP Symposium on Applied Computing, SAC 2019, Limassol, Cyprus, April 8-12, 2019" editor: - name: "Chih-Cheng Hung" link: "https://researchr.org/alias/chih-cheng-hung" - name: "George A. Papadopoulos" link: "https://researchr.org/alias/george-a.-papadopoulos" publisher: "ACM" isbn: "978-1-4503-5933-7" kind: "inproceedings" key: "YamaguchiK19" - title: "Preventing injection attacks with syntax embeddings" author: - name: "Martin Bravenboer" link: "http://martin.bravenboer.name/" - name: "Eelco Dolstra" link: "https://researchr.org/profile/eelcodolstra/publications" - name: "Eelco Visser" link: "http://eelcovisser.org" year: "2007" doi: "http://doi.acm.org/10.1145/1289971.1289975" abstract: "Software written in one language often needs to construct sentences in another language, such as SQL queries, XML output, or shell command invocations. This is almost always done using unhygienic string manipulation, the concatenation of constants and client-supplied strings. A client can then supply specially crafted input that causes the constructed sentence to be interpreted in an unintended way, leading to an injection attack. We describe a more natural style of programming that yields code that is impervious to injections by construction. Our approach embeds the grammars of the guest languages (e.g., SQL) into that of the host language (e.g., Java) and automatically generates code that maps the embedded language to constructs in the host language that reconstruct the embedded sentences, adding escaping functions where appropriate. This approach is generic, meaning that it can be applied with relative ease to any combination of host and guest languages." links: doi: "http://doi.acm.org/10.1145/1289971.1289975" successor: "https://researchr.org/publication/BravenboerDV10" tags: - "programming languages" - "syntax embedding" - "Java" - "preventing injection attacks" - "generic programming" - "injection attack" - "SDF" - "XML" - "embedded software" - "XML Schema" - "SQL" - "security" - "language embedding" - "DSL" - "programming" - "systematic-approach" - "ASF+SDF" - "grammar" - "query language" researchr: "https://researchr.org/publication/BravenboerDV07" cites: 0 citedby: 4 pages: "3-12" booktitle: "Generative Programming and Component Engineering, 6th International Conference, GPCE 2007" editor: - name: "Charles Consel" link: "https://researchr.org/alias/charles-consel" - name: "Julia L. Lawall" link: "http://www.diku.dk/hjemmesider/ansatte/julia/" address: "Salzburg, Austria" publisher: "ACM" isbn: "978-1-59593-855-8" kind: "inproceedings" key: "BravenboerDV07"