@inproceedings{Gibbons2005:DesignOOPSLA, title = "Design Patterns as Higher-Order Datatype-Generic Programs", author = "Jeremy Gibbons", year = "2005", address = "San Diego", booktitle = "Object-Oriented Programming: Systems, Languages, Applications", month = "oct", note = "A revision of \cite{Gibbons2005:DesignECOOP}", url = "http://www.oopsla.org/2005/ShowEvent.do?id=121", }