Proceedings of the Eleventh ACM SIGPLAN International Conference on Functional Programming 2006
DOI: 10.1145/1159803.1159834
|View full text |Cite
|
Sign up to set email alerts
|

A pattern for almost compositional functions

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
22
0

Year Published

2007
2007
2014
2014

Publication Types

Select...
3
1
1

Relationship

1
4

Authors

Journals

citations
Cited by 13 publications
(22 citation statements)
references
References 12 publications
0
22
0
Order By: Relevance
“…These are well-documented and have the best-maintained implementations of the traversal-centric approaches. Other similar approaches include Smash (Kiselyov, 2006), Alloy (Brown & Sampson, 2009), Compos (Bringert &Ranta, 2008), andMultiplate (O'Connor, 2011). We already mentioned Alloy for its emphasis on selective traversal.…”
Section: Approaches To Strategic and Generic Programmingmentioning
confidence: 99%
“…These are well-documented and have the best-maintained implementations of the traversal-centric approaches. Other similar approaches include Smash (Kiselyov, 2006), Alloy (Brown & Sampson, 2009), Compos (Bringert &Ranta, 2008), andMultiplate (O'Connor, 2011). We already mentioned Alloy for its emphasis on selective traversal.…”
Section: Approaches To Strategic and Generic Programmingmentioning
confidence: 99%
“…Thus the overall system written in Haskell provides linearization and parsing via the GF grammar, and abstract syntax trees can be manipulated as Haskell data objects. In particular, the technique of almost compositional functions [23] is available, which makes it easy for Haskell programmers to implement conversions such as the ones in Section 5.3. The same technique is available for Java as well, and provides the easy way for Java programmers to use GF for building natural language interfaces to Java programs.…”
Section: Beyond the Baseline Translations: Easy Improvementsmentioning
confidence: 99%
“…Note that this is a well-known way to implement generic functions, derived from how generic functions are implemented in PolyP. Now, using fmap, we define the compos operator of Bringert and Ranta (2006), which applies a function to the immediate subtrees of a value. A pattern functor abstracts precisely over those subtrees, so we use Regular to define compos generically:…”
Section: Generic Mapmentioning
confidence: 99%
“…Libraries that provide generic traversal combinators, such as Strafunski (Lämmel and Visser 2002), Scrap Your Boilerplate (Lämmel and Peyton Jones 2003), Uniplate (Mitchell and Runciman 2007), a pattern for almost compositional functions (Bringert and Ranta 2006), and probably more, can be used to define rewrite rules in the form of functions. This has the disadvantages we describe in Section 2, the most important of which is that it is impossible to document, test, and analyse rewrite rules.…”
Section: Related Workmentioning
confidence: 99%