• Documents
  • Authors
  • Tables
  • Other Seers ▼
    RefSeer AckSeer CollabSeer SeerSeer
  • Log in
  • Sign up
  • MetaCart

CiteSeerX logo

Advanced Search Include Citations
Advanced Search Include Citations | Disambiguate

First-class rules and generic traversal (2001)

by E Dolstra, E Visser
Add To MetaCart

Tools

Sorted by:
Results 1 - 3 of 3

The essence of strategic programming

by Ralf Lämmel, Eelco Visser, Joost Visser - Draft , 2002
"... Abstract. Strategic programming is generic programming with the use of strategies. A strategy is a generic data-processing action which can traverse into heterogeneous data structures while mixing uniform and type-specific behaviour. With strategic programming, one gains full control over the applic ..."
Abstract - Cited by 9 (0 self) - Add to MetaCart
Abstract. Strategic programming is generic programming with the use of strategies. A strategy is a generic data-processing action which can traverse into heterogeneous data structures while mixing uniform and type-specific behaviour. With strategic programming, one gains full control over the application of basic actions, most notably full traversal control. Using a combinator style, traversal schemes can be defined, and actual traversals are obtained by passing the problem-specific ingredients as parameters to suitable schemes. The prime application domain for strategic programming is program transformation and analysis. In this paper, we provide a language-independent definition that generalises over existing incarnations of this idiom in term rewriting, functional programming, and object-oriented programming.

The Essence of Strategic Programming An inquiry into trans-paradigmatic genericity

by Ralf Lämmel, Eelco Visser, Joost Visser , 2002
"... Strategic programming is an idiom for generic programming where the concept of a strategy plays a central role. A strategy is a generic, dataprocessing action. Strategies are rst-class citizens as witnessed by a combinator style. Two important characteristics of strategies are that they can traverse ..."
Abstract - Cited by 2 (2 self) - Add to MetaCart
Strategic programming is an idiom for generic programming where the concept of a strategy plays a central role. A strategy is a generic, dataprocessing action. Strategies are rst-class citizens as witnessed by a combinator style. Two important characteristics of strategies are that they can traverse into compound data, and that they can be customized by type-specic actions. We provide a general denition of strategic programming, and we demonstrate how this idiom can be realized inside several programming language paradigms.

Yet Another Generic Haskell

by Ralf Lämmel, Joost Visser
"... In previous work, we invented the notion of functional strategies, that is, first-class generic functions which can traverse into terms of any type while mixing uniform and type-specific behaviour. In the present paper, we reconstruct functional strategies in Haskell in an extremely compact style re ..."
Abstract - Add to MetaCart
In previous work, we invented the notion of functional strategies, that is, first-class generic functions which can traverse into terms of any type while mixing uniform and type-specific behaviour. In the present paper, we reconstruct functional strategies in Haskell in an extremely compact style relying on just two combinators: adhoc for type-based function dispatch, and hfoldr for folding over constructor applications. This reconstruction constitutes yet another way to turn Haskell into a (more) generic programming language. Our approach is lightweight (both for language users and implementors) , highly expressive, well-founded, and has already proven its value in important application domains.
The National Science Foundation
  • About CiteSeerX
  • Submit Documents
  • Privacy Policy
  • Help
  • Data
  • Source
  • Contact Us

Developed at and hosted by The College of Information Sciences and Technology

© 2007-2010 The Pennsylvania State University