Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Generative programming: methods, tools, and applications
Generative programming: methods, tools, and applications
The boost graph library: user guide and reference manual
The boost graph library: user guide and reference manual
Visitor combination and traversal control
OOPSLA '01 Proceedings of the 16th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Scrap your boilerplate: a practical design pattern for generic programming
Proceedings of the 2003 ACM SIGPLAN international workshop on Types in languages design and implementation
The Essence of the Visitor Pattern
COMPSAC '98 Proceedings of the 22nd International Computer Software and Applications Conference
The Lambda library: unnamed functions in C++
Software—Practice & Experience
Concept-controlled polymorphism
Proceedings of the 2nd international conference on Generative programming and component engineering
Functional programming with the FC++ library
Journal of Functional Programming
Scrap more boilerplate: reflection, zips, and generalised casts
Proceedings of the ninth ACM SIGPLAN international conference on Functional programming
Scrap your boilerplate with class: extensible generic functions
Proceedings of the tenth ACM SIGPLAN international conference on Functional programming
Conference record of the 33rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Concepts: linguistic support for generic programming in C++
Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
“Scrap your boilerplate” reloaded
FLOPS'06 Proceedings of the 8th international conference on Functional and Logic Programming
“Scrap your boilerplate” revolutions
MPC'06 Proceedings of the 8th international conference on Mathematics of Program Construction
A comparison of c++ concepts and haskell type classes
Proceedings of the 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
LEESA: Embedding Strategic and XPath-Like Object Structure Traversals in C++
DSL '09 Proceedings of the IFIP TC 2 Working Conference on Domain-Specific Languages
Generic programming with c++ concepts and haskell type classes: A comparison
Journal of Functional Programming
Programming errors in traversal programs over structured data
Science of Computer Programming
Hi-index | 0.00 |
"Scrap Your Boilerplate" (SYB) is a well studied and widely used design pattern for generic traversal in the Haskell language, but almost unknown to generic programmers in C++. This paper shows that SYB can be implemented in C++. It identifies the features and idioms of C++ that correspond to the Haskell constructs that implement SYB, or can be used to emulate them, and provides a prototype C++ implementation.