Martín Abadi, Luca Cardelli, Benjamin C. Pierce & Gordon D. Plotkin (1991):
Dynamic Typing in a Statically Typed Language.
ACM Trans. Program. Lang. Syst. 13(2),
pp. 237–268,
doi:10.1145/103135.103138.
Thorsten Altenkirch, Neil Ghani, Peter Hancock, Conor McBride & Peter Morris (2015):
Indexed containers.
Journal of Functional Programming 25,
pp. e5,
doi:10.1017/S095679681500009X.
Thorsten Altenkirch, Conor Mcbride & Peter Morris (2007):
Generic Programming with Dependent Types.
In: Proceedings of the 2006 International Conference on Datatype-generic Programming,
SSDGP'06.
Springer-Verlag,
Berlin, Heidelberg,
pp. 209–257,
doi:10.1007/978-3-540-76786-2_4.
Available at http://dl.acm.org/citation.cfm?id=1782894.1782898.
Patrick Bahr & Tom Hvitved (2011):
Compositional Data Types.
In: Proceedings of the Seventh ACM SIGPLAN Workshop on Generic Programming,
WGP '11.
ACM,
New York, NY, USA,
pp. 83–94,
doi:10.1145/2036918.2036930.
Björn Bringert & Aarne Ranta (2006):
A Pattern for Almost Compositional Functions.
SIGPLAN Not. 41(9),
pp. 216–226,
doi:10.1145/1160074.1159834.
Luca Cardelli (1985):
Amber.
In: Combinators and Functional Programming Languages, Thirteenth Spring School of the LITP, Val d'Ajol, France, May 6-10, 1985, Proceedings,
pp. 21–47,
doi:10.1007/3-540-17184-3_38.
James Cheney & Ralf Hinze (2002):
A Lightweight Implementation of Generics and Dynamics.
In: Proceedings of the 2002 ACM SIGPLAN Workshop on Haskell,
Haskell '02.
ACM,
New York, NY, USA,
pp. 90–104,
doi:10.1145/581690.581698.
Roman Cheplyaka (2013):
Generalizing generic fold.
https://ro-che.info/articles/2013-03-11-generalizing-gfoldl, http://hackage.haskell.org/package/traverse-with-class.
Blog article.
Grégoire Henry, Michel Mauny, Emmanuel Chailloux & Pascal Manoury (2012):
Typing Unmarshalling Without Marshalling Types.
In: Proceedings of the 17th ACM SIGPLAN International Conference on Functional Programming,
ICFP '12.
ACM,
New York, NY, USA,
pp. 287–298,
doi:10.1145/2364527.2364569.
Ralf Hinze (2004):
Generics for the masses.
In: Kathleen Fisher: Proceedings of the ninth ACM SIGPLAN international conference on Functional Programming (ICFP '04).
ACM,
New York, NY, USA,
pp. 236–243,
doi:10.1145/1016850.1016882.
Ralf Hinze & Johan Jeuring (2003):
Generic Haskell: Applications.
In: Roland Backhouse & Jeremy Gibbons: Generic Programming: Advanced Lectures,
Lecture Notes in Computer Science 2793.
Springer Berlin / Heidelberg,
pp. 57–96,
doi:10.1007/978-3-540-45191-4_2.
Ralf Hinze & Johan Jeuring (2003):
Generic Haskell: Practice and Theory.
In: Roland Backhouse & Jeremy Gibbons: Generic Programming, Advanced Lectures 2793.
Springer-Verlag,
pp. 1–56,
doi:10.1007/978-3-540-45191-4_1.
Ralf Hinze, Johan Jeuring & Andres Löh (2007):
Comparing Approaches to Generic Programming in Haskell.
In: Proceedings of the 2006 International Conference on Datatype-generic Programming,
SSDGP'06.
Springer-Verlag,
Berlin, Heidelberg,
pp. 72–149,
doi:10.1007/978-3-540-76786-2_2.
Available at http://dl.acm.org/citation.cfm?id=1782894.1782896.
Ralf Hinze & Andres Löh (2006):
``Scrap Your Boilerplate'' Revolutions.
In: Proceedings of the 8th International Conference on Mathematics of Program Construction,
MPC'06.
Springer-Verlag,
Berlin, Heidelberg,
pp. 180–208,
doi:10.1007/11783596_13.
Ralf Hinze & Andres Löh (2009):
Generic Programming in 3D.
Science of Computer Programming 74(8),
pp. 590–628,
doi:10.1016/j.scico.2007.10.006.
Ralf Hinze, Andres Löh & Bruno C.d.S. Oliveira (2006):
``Scrap Your Boilerplate'' Reloaded.
In: Masami Hagiya & Philip Wadler: Proceedings of the Eighth International Symposium on Functional and Logic Programming (FLOPS 2006),
Lecture Notes in Computer Science 3945.
Springer Berlin / Heidelberg,
pp. 13–29,
doi:10.1007/11737414_3.
Patrik Jansson & Johan Jeuring (1997):
PolyP – a Polytypic Programming Language Extension.
In: Proceedings of the 24th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages,
POPL '97.
ACM,
New York, NY, USA,
pp. 470–482,
doi:10.1145/263699.263763.
Patrik Jansson, Johan Jeuring & Lambert Meertens (1999):
Generic programming: An introduction.
In: 3rd International Summer School on Advanced Functional Programming.
Springer-Verlag,
pp. 28–115,
doi:10.1007/10704973_2.
Vesa A.J. Karvonen (2007):
Generics for the Working ML'er.
In: Proceedings of the 2007 Workshop on Workshop on ML,
ML '07.
ACM,
New York, NY, USA,
pp. 71–82,
doi:10.1145/1292535.1292547.
Ralf Lämmel & Simon Peyton Jones (2005):
Scrap Your Boilerplate with Class: Extensible Generic Functions.
SIGPLAN Not. 40(9),
pp. 204–215,
doi:10.1145/1090189.1086391.
Ralf Lämmel & Simon Peyton Jones (2003):
Scrap Your Boilerplate: A Practical Design Pattern for Generic Programming.
In: Proceedings of the 2003 ACM SIGPLAN International Workshop on Types in Languages Design and Implementation,
TLDI '03.
ACM,
New York, NY, USA,
pp. 26–37,
doi:10.1145/604174.604179.
Xavier Leroy, Damien Doligez, Alain Frisch, Jacques Garrigue, Didier Rémy & Jérôme Vouillon (2017):
The OCaml system, release 4.06, Documentation and user\begingroupłet [Pleaseinsert\PrerenderUnicode’intopreamble]s manual.
INRIA.
Available at http://caml.inria.fr/pub/docs/manual-ocaml/extn.html#sec261.
Xavier Leroy & Michel Mauny (1993):
Dynamics in ML.
Journal of Functional Programming 3(4),
pp. 431–463,
doi:10.1017/S0956796800000848.
José Pedro Magalhães, Atze Dijkstra, Johan Jeuring & Andres Löh (2010):
A Generic Deriving Mechanism for Haskell.
In: Proceedings of the Third ACM Haskell Symposium on Haskell,
Haskell '10.
ACM,
New York, NY, USA,
pp. 37–48,
doi:10.1145/1863523.1863529.
José Pedro Magalhães & Johan Jeuring (2011):
Generic Programming for Indexed Datatypes.
In: Proceedings of the Seventh ACM SIGPLAN Workshop on Generic Programming,
WGP '11.
ACM,
New York, NY, USA,
pp. 37–46,
doi:10.1145/2036918.2036924.
Conor Mcbride & Ross Paterson (2008):
Applicative Programming with Effects.
J. Funct. Program. 18(1),
pp. 1–13,
doi:10.1017/S0956796807006326.
Lambert Meertens (1992):
Paramorphisms.
Formal Aspects of Computing 4(5),
pp. 413–424,
doi:10.1007/BF01211391.
Neil Mitchell & Colin Runciman (2007):
Uniform Boilerplate and List Processing.
In: Proceedings of the ACM SIGPLAN Workshop on Haskell Workshop,
Haskell '07.
ACM,
New York, NY, USA,
pp. 49–60,
doi:10.1145/1291201.1291208.
Ulf Norell & Patrik Jansson (2004):
Polytypic Programming in Haskell.
In: Proceedings of the 15th International Conference on Implementation of Functional Languages,
IFL'03.
Springer-Verlag,
Berlin, Heidelberg,
pp. 168–184,
doi:10.1007/978-3-540-27861-0_11.
Russell O'Connor (2011):
Functor is to Lens as Applicative is to Biplate: Introducing Multiplate.
CoRR abs/1103.2841.
Available at http://arxiv.org/abs/1103.2841.
Bruno C. d. S. Oliveira & Jeremy Gibbons (2005):
TypeCase: A Design Pattern for Type-indexed Functions.
In: Proceedings of the 2005 ACM SIGPLAN Workshop on Haskell,
Haskell '05.
ACM,
New York, NY, USA,
pp. 98–109,
doi:10.1145/1088348.1088358.
Alexey Rodriguez, Johan Jeuring, Patrik Jansson, Alex Gerdes, Oleg Kiselyov & Bruno C. d. S. Oliveira (2008):
Comparing Libraries for Generic Programming in Haskell.
SIGPLAN Not. 44(2),
pp. 111–122,
doi:10.1145/1543134.1411301.
Wouter Swierstra (2008):
Data types à la carte.
J. Funct. Program. 18(4),
pp. 423–436,
doi:10.1017/S0956796808006758.
Philip Wadler (1992):
The Essence of Functional Programming.
In: Proceedings of the 19th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages,
POPL '92.
ACM,
New York, NY, USA,
pp. 1–14,
doi:10.1145/143165.143169.
Stephanie Weirich (2006):
RepLib: A Library for Derivable Type Classes.
In: Proceedings of the 2006 ACM SIGPLAN Workshop on Haskell,
Haskell '06.
ACM,
New York, NY, USA,
pp. 1–12,
doi:10.1145/1159842.1159844.
Leo White, Frédéric Bour & Jeremy Yallop (2014):
Modular implicits.
In: Proceedings ML Family/OCaml Users and Developers workshops, ML/OCaml 2014, Gothenburg, Sweden, September 4-5, 2014.,
pp. 22–63,
doi:10.4204/EPTCS.198.2.
Jeremy Yallop (2007):
Practical Generic Programming in OCaml.
In: Proceedings of the 2007 Workshop on Workshop on ML,
ML '07.
ACM,
New York, NY, USA,
pp. 83–94,
doi:10.1145/1292535.1292548.
Jeremy Yallop (2016):
Staging Generic Programming.
In: Proceedings of the 2016 ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation,
PEPM '16.
ACM,
New York, NY, USA,
pp. 85–96,
doi:10.1145/2847538.2847546.
Jeremy Yallop & Leo White (2014):
Functional and Logic Programming: 12th International Symposium, FLOPS 2014, Kanazawa, Japan, June 4-6, 2014. Proceedings, chapter Lightweight Higher-Kinded Polymorphism,
pp. 119–135.
Springer International Publishing,
Cham,
doi:10.1007/978-3-319-07151-0_8.