Generic programming

R Backhouse, P Jansson, J Jeuring… - … Third International School …, 1999 - Springer
The development of science proceeds in a cycle of activities, the so-called abstraction-
specialisation cycle. Abstraction is the process of seeking patterns or commonalities, which …

Compositional explanation of types and algorithmic debugging of type errors

O Chitil - Proceedings of the sixth ACM SIGPLAN international …, 2001 - dl.acm.org
The type systems of most typed functional programming languages are based on the
Hindley-Milner type system. A practical problem with these type systems is that it is often …

[PDF][PDF] Systematic search for lambda expressions.

S Katayama - Trends in functional programming, 2005 - Citeseer
This paper presents a system for searching for desired small functional programs by just
generating a sequence of type-correct programs in a systematic and exhaustive manner and …

Tupling calculation eliminates multiple data traversals

Z Hu, H Iwasaki, M Takeichi, A Takano - ACM Sigplan Notices, 1997 - dl.acm.org
Tupling is a well-known transformation tactic to obtain new efficient recursive functions by
grou** some recursive functions into a tuple. It may be applied to eliminate multiple …

The under-appreciated unfold

J Gibbons, G Jones - Proceedings of the third ACM SIGPLAN …, 1998 - dl.acm.org
Folds are appreciated by functional programmers. Their dual, unfolds, are not new, but they
are not nearly as well appreciated. We believe they deserve better. To illustrate, we present …

Parallelization in calculational forms

Z Hu, M Takeichi, WN Chin - Proceedings of the 25th ACM SIGPLAN …, 1998 - dl.acm.org
The problems involved in develo** efficient parallel programs have proved harder than
those in develo** efficient sequential ones, both for programmers and for compilers …

The transformational approach to database engineering

JL Hainaut - International Summer School on Generative and …, 2005 - Springer
In the database engineering realm, the merits of transformational approaches, that can
produce in a systematic way correct, compilable and efficient database structures from …

An analytical inductive functional programming system that avoids unintended programs

S Katayama - Proceedings of the ACM SIGPLAN 2012 workshop on …, 2012 - dl.acm.org
Inductive functional programming (IFP) is a research field extending from software science to
artificial intelligence that deals with functional program synthesis based on generalization …

The Long Way to Deforestation: A Type Inference and Elaboration Technique for Removing Intermediate Data Structures

Y Chen, L Parreaux - Proceedings of the ACM on Programming …, 2024 - dl.acm.org
Deforestation is a compiler optimization that removes intermediate data structure allocations
from functional programs to improve their efficiency. This is an old idea, but previous …

Generic program transformation

O De Moor, G Sittampalam - International School on Advanced Functional …, 1998 - Springer
When writing a program, especially in a high level language such as Haskell, the
programmer is faced with a tension between abstraction and efficiency. A program that is …