Utilize este identificador para referenciar este registo: https://hdl.handle.net/1822/40556

Registo completo
Campo DCValorIdioma
dc.contributor.authorZhu, Zirunpor
dc.contributor.authorKo, Hsiang-Shangpor
dc.contributor.authorMartins, Pedro Miguel Ribeiropor
dc.contributor.authorSaraiva, João Alexandrepor
dc.contributor.authorHu, Zhenjiangpor
dc.date.accessioned2016-02-25T17:48:59Z-
dc.date.available2016-02-25T17:48:59Z-
dc.date.issued2015-07-24-
dc.identifier.citationZhu, Z., Ko, H. S., Martins, P., Saraiva, J., & Hu, Z. (2015). BiYacc: roll your parser and reflective printer into one. In Proceedings of 4th International Workshop on Bidirectional Transformations co-located with Software Technologies: Applications and Foundations (STAF 2015) (pp. 43-50)por
dc.identifier.issn1613-0073-
dc.identifier.urihttps://hdl.handle.net/1822/40556-
dc.descriptionIn: A. Cunha, E. Kindler (eds.): Proceedings of the Fourth International Workshop on Bidirectional Transformations (Bx 2015), L’Aquila, Italy, July 24, 2015, published at http://ceur-ws.orgpor
dc.description.abstractLanguage designers usually need to implement parsers and printers. Despite being two related programs, in practice they are designed and implemented separately. This approach has an obvious disadvantage: as a language evolves, both its parser and printer need to be separately revised and kept synchronised. Such tasks are routine but complicated and error-prone. To facilitate these tasks, we propose a language called BiYacc, whose programs denote both a parser and a printer. In essence, BiYacc is a domain-specific language for writing putback-based bidirectional transformations — the printer is a putback transformation, and the parser is the corresponding get transformation. The pairs of parsers and printers generated by BiYacc are thus always guaranteed to satisfy the usual round-trip properties. The highlight that distinguishes this reflective printer from others is that the printer — being a putback transformation — accepts not only an abstract syntax tree but also a string, and produces an updated string consistent with the given abstract syntax tree. We can thus make use of the additional input string, with mechanisms such as simultaneous pattern matching on the view and the source, to provide users with full control over the printing-strategies.por
dc.description.sponsorshipJSPS -Japan Society for the Promotion of Science(25240009)por
dc.language.isoengpor
dc.publisherCEUR-Wspor
dc.rightsopenAccesspor
dc.titleBiYacc: Roll your parser and reflective printer into onepor
dc.typeconferencePaperpor
dc.peerreviewedyespor
dc.relation.publisherversionhttp://ceur-ws.org/Vol-1396/por
dc.comments2597por
sdum.publicationstatuspublishedpor
oaire.citationStartPage43por
oaire.citationEndPage50por
oaire.citationConferencePlaceL'Aquila, Italypor
oaire.citationTitle4th International Workshop on Bidirectional Transformations co-located with Software Technologies: Applications and Foundations (STAF 2015)por
oaire.citationVolume1396por
dc.subject.fosCiências Naturais::Ciências da Computação e da Informaçãopor
sdum.journalCEUR Workshop Proceedingspor
sdum.conferencePublication4th International Workshop on Bidirectional Transformations co-located with Software Technologies: Applications and Foundations (STAF 2015)por
Aparece nas coleções:HASLab - Artigos em atas de conferências nacionais (texto completo)

Ficheiros deste registo:
Ficheiro Descrição TamanhoFormato 
2597.pdf248,76 kBAdobe PDFVer/Abrir

Partilhe no FacebookPartilhe no TwitterPartilhe no DeliciousPartilhe no LinkedInPartilhe no DiggAdicionar ao Google BookmarksPartilhe no MySpacePartilhe no Orkut
Exporte no formato BibTex mendeley Exporte no formato Endnote Adicione ao seu ORCID