MetaCart Sign in to MyCiteSeerX

Include Citations | Advanced Search | Help

Disambiguated Search | Include Citations | Advanced Search | Help

Pure Pattern Calculus (2005) [46 citations — 11 self]

Abstract:

The pure pattern calculus generalises the pure lambda-calculus by basing computation on pattern-matching instead of beta-reduction. The simplicity and power of the calculus derive from allowing any term to be a pattern. As well as supporting a uniform approach to functions, it supports a uniform approach to data structures which underpins two new forms of polymorphism. Path polymorphism supports searches or queries along all paths through an arbitrary data structure. Pattern polymorphism supports the dynamic creation and evaluation of patterns, so that queries can be customised in reaction to new information about the structures to be encountered. In combination, these features provide a natural account of tasks such as programming with XML paths.

Citations

243 The Lambda Calculus, Its Syntax and Semantics, volume 103 – Barendregt - 1984
77 Polytypic programming – Jeuring, Jansson - 1996
76 Proving properties of programs by structural induction – Burstall - 1969
50 The rewriting calculus – Cirstea, Kirchner - 2001
31 Pure Patterns Type Systems – Barthe, Cirstea, et al. - 2003
26 Shapely types and shape polymorphism – Jay, Cockett
16 Oege de Moor, and Paul Hoogendijk. Generic functional programming with types and relations – Bird
6 Programming with heterogeneous structures: Manipulating xml data using bondi – Huang, Jay, et al. - 2006
5 Methods as pattern-matching functions – Jay - 2004
2 Expression reduction systems with patterns – Forest, Kesner - 2003
2 Dealing with complex patterns in xml processing – Huang, Jay, et al. - 2005
1 Higher-order patterns. Available as www-staff.it. uts.edu.au/~cbj/Publications/higher_order_patterns.pdf – Jay - 2004