zbMATH — the first resource for mathematics

Declarative programming with function patterns. (English) Zbl 1156.68339
Hill, Patricia (ed.), Logic based program synthesis and transformation. 15th international symposium, LOPSTR 2005, London, UK, September 7–9, 2005. Revised selected papers. Berlin: Springer (ISBN 978-3-540-32654-0/pbk). Lecture Notes in Computer Science 3901, 6-22 (2006).
Summary: We propose an extension of functional logic languages that allows the definition of operations with patterns containing other defined operation symbols. Such “function patterns” have many advantages over traditional constructor patterns. They allow a direct representation of specifications as declarative programs, provide better abstractions of patterns as first-class objects, and support the high-level programming of queries and transformation of complex structures. Moreover, they avoid known problems that occur in traditional programs using strict equality. We define their semantics via a transformation into standard functional logic programs. Since this transformation might introduce an infinite number of rules, we suggest an implementation that can be easily integrated with existing functional logic programming systems.
For the entire collection see [Zbl 1150.68001].

68N30 Mathematical aspects of software engineering (specification, verification, metrics, requirements, etc.)
68N17 Logic programming
68N18 Functional programming and lambda calculus
Full Text: DOI