InDubio: a combinator library to disambiguate ambiguous grammars

Detalhes bibliográficos
Autor(a) principal: Macedo, José Nuno
Data de Publicação: 2020
Outros Autores: Saraiva, João
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