Filters








3 Hits in 1.3 sec

FliPpr: A System for Deriving Parsers from Pretty-Printers

Kazutaka Matsuda, Meng Wang
2018 New generation computing  
In this paper, we propose FliPpr, which is a program transformation system that uses program inversion to produce a CFG parser from a pretty-printer.  ...  When implementing a programming language, we often write a parser and a pretty-printer.  ...  In this section, we demonstrate the feasibility of this goal by writing a pretty-printer for FliPpr Core in FliPpr, which, if fed to the FliPpr system, will generate a parser for the core language.  ... 
doi:10.1007/s00354-018-0033-7 fatcat:iz7xihmkjzcphdli6yahqua3cq

FliPpr: A Prettier Invertible Printing System [chapter]

Kazutaka Matsuda, Meng Wang
2013 Lecture Notes in Computer Science  
In this paper, we propose FliPpr, which is a program transformation system that uses program inversion to produce a CFG parser from a pretty-printer.  ...  When implementing a programming language, we often write a parser and a pretty-printer.  ...  We also thank Janis Voigtländer and Akimasa Morihata for their insightful comments on deforestation. This work was partially supported by JSPS KAKENHI Grant Number 24700020.  ... 
doi:10.1007/978-3-642-37036-6_6 fatcat:ysgmebgasvbinmhbnwapobhstm

Embedding invertible languages with binders: a case of the FliPpr language

Kazutaka Matsuda, Meng Wang
2018 Proceedings of the 11th ACM SIGPLAN International Symposium on Haskell - Haskell 2018  
We consider FliPpr, an invertible pretty-printing system, as a representative of such languages, and show that Atkey et al.'s unembedding technique can be used to address the problem.  ...  Together with a reformulation of FliPpr, our embedding achieves a high level of interoperability with the host language Haskell, which is not found in any other invertible languages.  ...  Acknowledgments The work was partially supported by JSPS KAKENHI Grant Numbers 15K15966 and 15H02681, and by Royal Society International Exchanges Grant: Bidirectional Compiler for Software Evolution,  ... 
doi:10.1145/3242744.3242758 dblp:conf/haskell/MatsudaW18 fatcat:5y5xb3gi2rd6tjz3zqrpxhhueq