{"id":"https://openalex.org/W2300107049","doi":"https://doi.org/10.1145/2892208.2892234","title":"Iguana: a practical data-dependent parsing framework","display_name":"Iguana: a practical data-dependent parsing framework","publication_year":2016,"publication_date":"2016-03-14","ids":{"openalex":"https://openalex.org/W2300107049","doi":"https://doi.org/10.1145/2892208.2892234","mag":"2300107049"},"language":"en","primary_location":{"id":"doi:10.1145/2892208.2892234","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2892208.2892234","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 25th International Conference on Compiler Construction","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"https://ir.cwi.nl/pub/25126/25126.pdf","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5088372860","display_name":"Abdolkarim Afroozeh","orcid":"https://orcid.org/0000-0002-9548-8285"},"institutions":[{"id":"https://openalex.org/I1341640284","display_name":"Centrum Wiskunde & Informatica","ror":"https://ror.org/00x7ekv49","country_code":"NL","type":"facility","lineage":["https://openalex.org/I1341640284","https://openalex.org/I2800991832"]}],"countries":["NL"],"is_corresponding":true,"raw_author_name":"Ali Afroozeh","raw_affiliation_strings":["CWI, Netherlands"],"affiliations":[{"raw_affiliation_string":"CWI, Netherlands","institution_ids":["https://openalex.org/I1341640284"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5067533405","display_name":"Anastasia Izmaylova","orcid":null},"institutions":[{"id":"https://openalex.org/I1341640284","display_name":"Centrum Wiskunde & Informatica","ror":"https://ror.org/00x7ekv49","country_code":"NL","type":"facility","lineage":["https://openalex.org/I1341640284","https://openalex.org/I2800991832"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Anastasia Izmaylova","raw_affiliation_strings":["CWI, Netherlands"],"affiliations":[{"raw_affiliation_string":"CWI, Netherlands","institution_ids":["https://openalex.org/I1341640284"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5088372860"],"corresponding_institution_ids":["https://openalex.org/I1341640284"],"apc_list":null,"apc_paid":null,"fwci":0.4431,"has_fulltext":true,"cited_by_count":8,"citation_normalized_percentile":{"value":0.77861788,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":96},"biblio":{"volume":null,"issue":null,"first_page":"267","last_page":"268"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.9969000220298767,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.9969000220298767,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10181","display_name":"Natural Language Processing Techniques","score":0.9944999814033508,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9779999852180481,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8420910835266113},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.8183746337890625},{"id":"https://openalex.org/keywords/l-attributed-grammar","display_name":"L-attributed grammar","score":0.6819429397583008},{"id":"https://openalex.org/keywords/parsing","display_name":"Parsing","score":0.602103590965271},{"id":"https://openalex.org/keywords/tree-adjoining-grammar","display_name":"Tree-adjoining grammar","score":0.5680012106895447},{"id":"https://openalex.org/keywords/s-attributed-grammar","display_name":"S-attributed grammar","score":0.5525811910629272},{"id":"https://openalex.org/keywords/rule-based-machine-translation","display_name":"Rule-based machine translation","score":0.5169848203659058},{"id":"https://openalex.org/keywords/parsing-expression-grammar","display_name":"Parsing expression grammar","score":0.4828129708766937},{"id":"https://openalex.org/keywords/context-free-grammar","display_name":"Context-free grammar","score":0.41737908124923706},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.3913475573062897},{"id":"https://openalex.org/keywords/natural-language-processing","display_name":"Natural language processing","score":0.35497137904167175}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8420910835266113},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.8183746337890625},{"id":"https://openalex.org/C67621940","wikidata":"https://www.wikidata.org/wiki/Q3113340","display_name":"L-attributed grammar","level":4,"score":0.6819429397583008},{"id":"https://openalex.org/C186644900","wikidata":"https://www.wikidata.org/wiki/Q194152","display_name":"Parsing","level":2,"score":0.602103590965271},{"id":"https://openalex.org/C134083981","wikidata":"https://www.wikidata.org/wiki/Q1754022","display_name":"Tree-adjoining grammar","level":4,"score":0.5680012106895447},{"id":"https://openalex.org/C147547768","wikidata":"https://www.wikidata.org/wiki/Q3113342","display_name":"S-attributed grammar","level":3,"score":0.5525811910629272},{"id":"https://openalex.org/C53893814","wikidata":"https://www.wikidata.org/wiki/Q7378909","display_name":"Rule-based machine translation","level":2,"score":0.5169848203659058},{"id":"https://openalex.org/C146810361","wikidata":"https://www.wikidata.org/wiki/Q32271","display_name":"Parsing expression grammar","level":5,"score":0.4828129708766937},{"id":"https://openalex.org/C97212296","wikidata":"https://www.wikidata.org/wiki/Q338047","display_name":"Context-free grammar","level":3,"score":0.41737908124923706},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.3913475573062897},{"id":"https://openalex.org/C204321447","wikidata":"https://www.wikidata.org/wiki/Q30642","display_name":"Natural language processing","level":1,"score":0.35497137904167175}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1145/2892208.2892234","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2892208.2892234","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 25th International Conference on Compiler Construction","raw_type":"proceedings-article"},{"id":"pmh:cwi:oai:cwi.nl:25126","is_oa":true,"landing_page_url":"https://ir.cwi.nl/pub/25126","pdf_url":"https://ir.cwi.nl/pub/25126/25126.pdf","source":{"id":"https://openalex.org/S4306401843","display_name":"Data Archiving and Networked Services (DANS)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I1322597698","host_organization_name":"Royal Netherlands Academy of Arts and Sciences","host_organization_lineage":["https://openalex.org/I1322597698"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"info:eu-repo/semantics/conferencepaper"}],"best_oa_location":{"id":"pmh:cwi:oai:cwi.nl:25126","is_oa":true,"landing_page_url":"https://ir.cwi.nl/pub/25126","pdf_url":"https://ir.cwi.nl/pub/25126/25126.pdf","source":{"id":"https://openalex.org/S4306401843","display_name":"Data Archiving and Networked Services (DANS)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I1322597698","host_organization_name":"Royal Netherlands Academy of Arts and Sciences","host_organization_lineage":["https://openalex.org/I1322597698"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"info:eu-repo/semantics/conferencepaper"},"sustainable_development_goals":[{"id":"https://metadata.un.org/sdg/16","score":0.6899999976158142,"display_name":"Peace, Justice and strong institutions"}],"awards":[],"funders":[],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W2300107049.pdf","grobid_xml":"https://content.openalex.org/works/W2300107049.grobid-xml"},"referenced_works_count":10,"referenced_works":["https://openalex.org/W1964494435","https://openalex.org/W1992491745","https://openalex.org/W2001404404","https://openalex.org/W2011166386","https://openalex.org/W2139935350","https://openalex.org/W2204818078","https://openalex.org/W2293874255","https://openalex.org/W2579796627","https://openalex.org/W6687916439","https://openalex.org/W6732336541"],"related_works":["https://openalex.org/W2153803459","https://openalex.org/W4285260839","https://openalex.org/W1507356070","https://openalex.org/W2086184235","https://openalex.org/W1991242135","https://openalex.org/W1594645538","https://openalex.org/W2768697761","https://openalex.org/W2063432095","https://openalex.org/W20454899","https://openalex.org/W74037770"],"abstract_inverted_index":{"Data-dependent":[0,42],"grammars":[1,4,43,71,84],"extend":[2],"context-free":[3,30],"with":[5,17],"arbitrary":[6],"computation,":[7],"variable":[8],"binding,":[9],"and":[10,20,37,130,147,191,200,204],"constraints.":[11],"These":[12,141],"features":[13,68,116,201],"provide":[14],"the":[15,18,27,108,152,164,198],"user":[16,165],"freedom":[19],"power":[21],"to":[22,114,138,150,166,180],"express":[23],"syntactic":[24,124],"constructs":[25,143,171],"outside":[26],"realm":[28],"of":[29,59,69,107,117,154,202],"grammars,":[31,119],"e.g.,":[32,78,126],"indentation":[33,131],"rules":[34],"in":[35,40,74,81],"Haskell":[36],"type":[38],"definitions":[39],"C.":[41],"have":[44,85,177],"been":[45],"recently":[46],"presented":[47],"by":[48],"Jim":[49],"et":[50],"al.":[51],"as":[52,136,187],"a":[53,62,100,145],"grammar":[54,161],"formalism":[55],"that":[56],"enables":[57],"construction":[58],"parsers":[60],"from":[61],"rich":[63],"format":[64],"specification.":[65],"Although":[66],"some":[67],"data-dependent":[70,83,101,118,139,160],"are":[72,134],"available":[73],"current":[75,208],"parsing":[76,102,110],"tools,":[77],"semantic":[79],"predicates":[80],"ANTLR,":[82],"not":[86],"yet":[87],"fully":[88],"found":[89],"their":[90],"way":[91,149],"into":[92],"practice.":[93],"In":[94,112,193],"this":[95,194],"paper":[96,195],"we":[97,196],"present":[98],"Iguana,":[99,203],"framework,":[103],"implemented":[104,135],"on":[105,206],"top":[106],"GLL":[109],"algorithm.":[111],"addition":[113],"basic":[115],"Iguana":[120,179],"also":[121],"provides":[122],"high-level":[123,142,170],"constructs,":[125],"for":[127],"operator":[128],"precedence":[129],"rules,":[132],"which":[133],"desugaring":[137],"grammars.":[140],"enable":[144],"concise":[146],"declarative":[148],"define":[151],"syntax":[153],"programming":[155,184],"languages.":[156],"Moreover,":[157],"Iguana's":[158],"extensible":[159],"API":[162],"allows":[163],"easily":[167],"add":[168],"new":[169],"or":[172],"modify":[173],"existing":[174],"ones.":[175],"We":[176],"used":[178],"parse":[181],"various":[182],"real":[183],"languages,":[185],"such":[186],"OCaml,":[188],"Haskell,":[189],"Java,":[190],"C#.":[192],"describe":[197],"architecture":[199],"report":[205],"its":[207],"implementation":[209],"status.":[210]},"counts_by_year":[{"year":2025,"cited_by_count":2},{"year":2023,"cited_by_count":1},{"year":2022,"cited_by_count":1},{"year":2021,"cited_by_count":1},{"year":2020,"cited_by_count":2},{"year":2018,"cited_by_count":1}],"updated_date":"2026-03-09T08:58:05.943551","created_date":"2025-10-10T00:00:00"}
