Purely functional data structures
Purely functional data structures
ACM Transactions on Programming Languages and Systems (TOPLAS)
The Design of a Pretty-printing Library
Advanced Functional Programming, First International Spring School on Advanced Functional Programming Techniques-Tutorial Text
Pretty printing with lazy dequeues
ACM Transactions on Programming Languages and Systems (TOPLAS)
Attribute grammars fly first-class: how to do aspect oriented programming in Haskell
Proceedings of the 14th ACM SIGPLAN international conference on Functional programming
Shortcut fusion rules for the derivation of circular and higher-order programs
Higher-Order and Symbolic Computation
Correct-by-construction pretty-printing
Proceedings of the 2013 ACM SIGPLAN workshop on Dependently-typed programming
Generating attribute grammar-based bidirectional transformations from rewrite rules
Proceedings of the ACM SIGPLAN 2014 Workshop on Partial Evaluation and Program Manipulation
Hi-index | 0.00 |
We present two implementations of Oppen's pretty-printing algorithm in Haskell that meet the efficiency of Oppen's imperative solution but have a simpler and a clear structure. We start with an implementation that uses lazy evaluation to simulate two co-operating processes. Then we present an implementation that uses higher-order functions for delimited continuations to simulate co-routines with explicit scheduling.