InDubio: a combinator library to disambiguate ambiguous grammars
| Autor(a) principal: | |
|---|---|
| Data de Publicação: | 2020 |
| Outros Autores: | |
| Idioma: | eng |
| Título da fonte: | Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) |
| Texto Completo: | http://hdl.handle.net/1822/68608 |
Resumo: | First Online: 29 September 2020 |
| id |
RCAP_5c9d40656d236d5a6b2d87fe502c8885 |
|---|---|
| oai_identifier_str |
oai:repositorium.sdum.uminho.pt:1822/68608 |
| network_acronym_str |
RCAP |
| network_name_str |
Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) |
| repository_id_str |
https://opendoar.ac.uk/repository/7160 |
| spelling |
InDubio: a combinator library to disambiguate ambiguous grammarsCombinatorsDisambiguation filtersParsingScience & TechnologyFirst Online: 29 September 2020To infer an abstract model from source code is one of the main tasks of most software quality analysis methods. Such abstract model is called Abstract Syntax Tree and the inference task is called parsing. A parser is usually generated from a grammar specification of a (programming) language and it converts source code of that language into said abstract tree representation. Then, several techniques traverse this tree to assess the quality of the code (for example by computing source code metrics), or by building new data structures (e.g, flow graphs) to perform further analysis (such as, code cloning, dead code, etc). Parsing is a well established technique. In recent years, however, modern languages are inherently ambiguous which can only be fully handled by ambiguous grammars. In this setting disambiguation rules, which are usually included as part of the grammar specification of the ambiguous language, need to be defined. This approach has a severe limitation: disambiguation rules are not first class citizens. Parser generators offer a small set of rules that can not be extended or changed. Thus, grammar writers are not able to manipulate nor define a new specific rule that the language he is considering requires. In this paper we present a tool, name InDubio, that consists of an extensible combinator library of disambiguation filters together with a generalized parser generator for ambiguous grammars. InDubio defines a set of basic disambiguation rules as abstract syntax tree filters that can be combined into more powerful rules. Moreover, the filters are independent of the parser generator and parsing technology, and consequently, they can be easily extended and manipulated. This paper presents InDubio in detail and also presents our first experimental results.- (undefined)SpringerUniversidade do MinhoMacedo, José NunoSaraiva, João20202020-01-01T00:00:00Zconference paperinfo:eu-repo/semantics/publishedVersionapplication/pdfhttp://hdl.handle.net/1822/68608engMacedo J.N., Saraiva J. (2020) InDubio: A Combinator Library to Disambiguate Ambiguous Grammars. In: Gervasi O. et al. (eds) Computational Science and Its Applications – ICCSA 2020. ICCSA 2020. Lecture Notes in Computer Science, vol 12252. Springer, Cham. https://doi.org/10.1007/978-3-030-58811-3_71978-3-030-58810-60302-974310.1007/978-3-030-58811-3_71978-3-030-58811-3https://link.springer.com/chapter/10.1007%2F978-3-030-58811-3_71info:eu-repo/semantics/openAccessreponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiainstacron:RCAAP2024-05-11T05:40:31Zoai:repositorium.sdum.uminho.pt:1822/68608Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireinfo@rcaap.ptopendoar:https://opendoar.ac.uk/repository/71602025-05-28T15:26:16.907247Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiafalse |
| dc.title.none.fl_str_mv |
InDubio: a combinator library to disambiguate ambiguous grammars |
| title |
InDubio: a combinator library to disambiguate ambiguous grammars |
| spellingShingle |
InDubio: a combinator library to disambiguate ambiguous grammars Macedo, José Nuno Combinators Disambiguation filters Parsing Science & Technology |
| title_short |
InDubio: a combinator library to disambiguate ambiguous grammars |
| title_full |
InDubio: a combinator library to disambiguate ambiguous grammars |
| title_fullStr |
InDubio: a combinator library to disambiguate ambiguous grammars |
| title_full_unstemmed |
InDubio: a combinator library to disambiguate ambiguous grammars |
| title_sort |
InDubio: a combinator library to disambiguate ambiguous grammars |
| author |
Macedo, José Nuno |
| author_facet |
Macedo, José Nuno Saraiva, João |
| author_role |
author |
| author2 |
Saraiva, João |
| author2_role |
author |
| dc.contributor.none.fl_str_mv |
Universidade do Minho |
| dc.contributor.author.fl_str_mv |
Macedo, José Nuno Saraiva, João |
| dc.subject.por.fl_str_mv |
Combinators Disambiguation filters Parsing Science & Technology |
| topic |
Combinators Disambiguation filters Parsing Science & Technology |
| description |
First Online: 29 September 2020 |
| publishDate |
2020 |
| dc.date.none.fl_str_mv |
2020 2020-01-01T00:00:00Z |
| dc.type.driver.fl_str_mv |
conference paper |
| dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
| status_str |
publishedVersion |
| dc.identifier.uri.fl_str_mv |
http://hdl.handle.net/1822/68608 |
| url |
http://hdl.handle.net/1822/68608 |
| dc.language.iso.fl_str_mv |
eng |
| language |
eng |
| dc.relation.none.fl_str_mv |
Macedo J.N., Saraiva J. (2020) InDubio: A Combinator Library to Disambiguate Ambiguous Grammars. In: Gervasi O. et al. (eds) Computational Science and Its Applications – ICCSA 2020. ICCSA 2020. Lecture Notes in Computer Science, vol 12252. Springer, Cham. https://doi.org/10.1007/978-3-030-58811-3_71 978-3-030-58810-6 0302-9743 10.1007/978-3-030-58811-3_71 978-3-030-58811-3 https://link.springer.com/chapter/10.1007%2F978-3-030-58811-3_71 |
| dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
| eu_rights_str_mv |
openAccess |
| dc.format.none.fl_str_mv |
application/pdf |
| dc.publisher.none.fl_str_mv |
Springer |
| publisher.none.fl_str_mv |
Springer |
| dc.source.none.fl_str_mv |
reponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia instacron:RCAAP |
| instname_str |
FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia |
| instacron_str |
RCAAP |
| institution |
RCAAP |
| reponame_str |
Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) |
| collection |
Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) |
| repository.name.fl_str_mv |
Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia |
| repository.mail.fl_str_mv |
info@rcaap.pt |
| _version_ |
1833595313772822528 |