FPCA '89 Proceedings of the fourth international conference on Functional programming languages and computer architecture
Notions of computation and monads
Information and Computation
Imperative functional programming
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
ESOP '94 Selected papers of ESOP '94, the 5th European symposium on Programming
PolyP—a polytypic programming language extension
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Polytypic data conversion programs
Science of Computer Programming
The Functional Imperative: Shape!
ESOP '98 Proceedings of the 7th European Symposium on Programming: Programming Languages and Systems
Internal Iteration Externalized
ECOOP '99 Proceedings of the 13th European Conference on Object-Oriented Programming
PLILP '96 Proceedings of the 8th International Symposium on Programming Languages: Implementations, Logics, and Programs
Calculating Functional Programs
Revised Lectures from the International Summer School and Workshop on Algebraic and Coalgebraic Methods in the Mathematics of Program Construction
Proceedings of the 1992 Glasgow Workshop on Functional Programming
Merging Monads and Folds for Functional Programming
Advanced Functional Programming, First International Spring School on Advanced Functional Programming Techniques-Tutorial Text
Applicative programming with effects
Journal of Functional Programming
Combining datatypes and effects
AFP'04 Proceedings of the 5th international conference on Advanced Functional Programming
Design patterns as higher-order datatype-generic programs
Proceedings of the 2006 ACM SIGPLAN workshop on Generic programming
An object-oriented approach to datatype-generic programming
Proceedings of the 2006 ACM SIGPLAN workshop on Generic programming
Bialgebra views: a way for polytypic programming to cohabit with data abstraction
Proceedings of the ACM SIGPLAN workshop on Generic programming
A pattern for almost compositional functions
Journal of Functional Programming
The essence of the iterator pattern
Journal of Functional Programming
SSDGP'06 Proceedings of the 2006 international conference on Datatype-generic programming
Lightweight polymorphic effects
ECOOP'12 Proceedings of the 26th European conference on Object-Oriented Programming
Hi-index | 0.00 |
The ITERATOR pattern gives a clean interface for element-by-element access to a collection. Imperative iterations using the pattern have two simultaneous aspects: mapping and accumulating. Various existing functional iterations model one or other of these, but not both simultaneously. We argue that McBride and Paterson's idioms, and in particular the corresponding traverse operator, do exactly this, and therefore capture the essence of the ITERATOR pattern. We present some axioms for traversal, and illustrate with a simple example, the repmin problem.