File Download

There are no files associated with this item.

  Links for fulltext
     (May Require Subscription)
Supplementary

Conference Paper: Type-safe modular parsing

TitleType-safe modular parsing
Authors
Issue Date2017
PublisherAssociation for Computing Machinery (ACM).
Citation
Proceedings of the 10th ACM SIGPLAN International Conference on Software Language Engineering (SLE 2017), Vancouver, BC, Canada, 23-24 October 2017, p. 2-13 How to Cite?
AbstractOver the years a lot of effort has been put on solving extensibility problems, while retaining important software engineering properties such as modular type-safety and separate compilation. Most previous work focused on operations that traverse and process extensible Abstract Syntax Tree (AST) structures. However, there is almost no work on operations that build such extensible ASTs, including parsing. This paper investigates solutions for the problem of modular parsing. We focus on semantic modularity and not just syntactic modularity. That is, the solutions should not only allow complete parsers to be built out of modular parsing components, but also enable the parsing components to be modularly type-checked and separately compiled. We present a technique based on parser combinators that enables modular parsing. Interestingly, the modularity requirements for modular parsing rule out several existing parser combinator approaches, which rely on some non-modular techniques. We show that Packrat parsing techniques, provide solutions for such modularity problems, and enable reasonable performance in a modular setting. Extensibility is achieved using multiple inheritance and Object Algebras. To evaluate the approach we conduct a case study based on the 'Types and Programming Languages' interpreters. The case study shows the effectiveness at reusing parsing code from existing interpreters, and the total parsing code is 69% shorter than an existing code base using a non-modular parsing approach.
DescriptionIn SPLASH '17: The ACM SIGPLAN Conference on Systems, Programming, Languages and Applications: Software for Humanity
Persistent Identifierhttp://hdl.handle.net/10722/301306
ISBN
ISI Accession Number ID

 

DC FieldValueLanguage
dc.contributor.authorZhang, H-
dc.contributor.authorLi, H-
dc.contributor.authorDos Santos Oliveira, BC-
dc.date.accessioned2021-07-27T08:09:10Z-
dc.date.available2021-07-27T08:09:10Z-
dc.date.issued2017-
dc.identifier.citationProceedings of the 10th ACM SIGPLAN International Conference on Software Language Engineering (SLE 2017), Vancouver, BC, Canada, 23-24 October 2017, p. 2-13-
dc.identifier.isbn9781450355254-
dc.identifier.urihttp://hdl.handle.net/10722/301306-
dc.descriptionIn SPLASH '17: The ACM SIGPLAN Conference on Systems, Programming, Languages and Applications: Software for Humanity-
dc.description.abstractOver the years a lot of effort has been put on solving extensibility problems, while retaining important software engineering properties such as modular type-safety and separate compilation. Most previous work focused on operations that traverse and process extensible Abstract Syntax Tree (AST) structures. However, there is almost no work on operations that build such extensible ASTs, including parsing. This paper investigates solutions for the problem of modular parsing. We focus on semantic modularity and not just syntactic modularity. That is, the solutions should not only allow complete parsers to be built out of modular parsing components, but also enable the parsing components to be modularly type-checked and separately compiled. We present a technique based on parser combinators that enables modular parsing. Interestingly, the modularity requirements for modular parsing rule out several existing parser combinator approaches, which rely on some non-modular techniques. We show that Packrat parsing techniques, provide solutions for such modularity problems, and enable reasonable performance in a modular setting. Extensibility is achieved using multiple inheritance and Object Algebras. To evaluate the approach we conduct a case study based on the 'Types and Programming Languages' interpreters. The case study shows the effectiveness at reusing parsing code from existing interpreters, and the total parsing code is 69% shorter than an existing code base using a non-modular parsing approach.-
dc.languageeng-
dc.publisherAssociation for Computing Machinery (ACM).-
dc.relation.ispartofProceedings of the 10th ACM SIGPLAN International Conference on Software Language Engineering-
dc.titleType-safe modular parsing-
dc.typeConference_Paper-
dc.identifier.emailDos Santos Oliveira, BC: bruno@cs.hku.hk-
dc.identifier.authorityDos Santos Oliveira, BC=rp01786-
dc.description.naturelink_to_subscribed_fulltext-
dc.identifier.doi10.1145/3136014.3136016-
dc.identifier.scopuseid_2-s2.0-85037159324-
dc.identifier.hkuros323719-
dc.identifier.spage2-
dc.identifier.epage13-
dc.identifier.isiWOS:000455795800002-
dc.publisher.placeNew York, NY-

Export via OAI-PMH Interface in XML Formats


OR


Export to Other Non-XML Formats