Strategic polymorphism requires just two combinators!

dc.creatorLaemmel, Ralf
dc.creatorVisser, Joost
dc.date2002-12-19
dc.date.accessioned2026-07-07T03:19:18Z
dc.date.available2026-07-07T03:19:18Z
dc.descriptionIn previous work, we introduced the notion of functional strategies: first-class generic functions that can traverse terms of any type while mixing uniform and type-specific behaviour. Functional strategies transpose the notion of term rewriting strategies (with coverage of traversal) to the functional programming paradigm. Meanwhile, a number of Haskell-based models and combinator suites were proposed to support generic programming with functional strategies. In the present paper, we provide a compact and matured reconstruction of functional strategies. We capture strategic polymorphism by just two primitive combinators. This is done without commitment to a specific functional language. We analyse the design space for implementational models of functional strategies. For completeness, we also provide an operational reference model for implementing functional strategies (in Haskell). We demonstrate the generality of our approach by reconstructing representative fragments of the Strafunski library for functional strategies.
dc.descriptionA preliminary version of this paper was presented at IFL 2002, and included in the informal preproceedings of the workshop
dc.identifierhttps://arxiv.org/abs/cs/0212048
dc.identifierhttp://arxiv.org/abs/cs/0212048
dc.identifier.urihttp://salesiana.dossiersoluciones.com/handle/123456789/31406
dc.subjectProgramming Languages
dc.subjectD.1.1; D.3.3; I.1.3
dc.titleStrategic polymorphism requires just two combinators!
dc.typetext

Files

Collections