@InProceedings{haftmann2007typeclasses,
  author    = {Haftmann, Florian and Wenzel, Makarius},
  title     = {Constructive Type Classes in {Isabelle}},
  booktitle = {Types for Proofs and Programs: International Workshop, TYPES 2006, Nottingham, UK, April 18-21, 2006, Revised Selected Papers},
  year      = {2007},
  editor    = {Altenkirch, Thorsten and McBride, Conor},
  pages     = {160--174},
  address   = {Berlin, Heidelberg},
  publisher = {Springer Berlin Heidelberg},
  doi       = {10.1007/978-3-540-74464-1_11},
  isbn      = {978-3-540-74464-1},
  url       = {https://doi.org/10.1007/978-3-540-74464-1_11},
}

@InProceedings{wenzel1997typeclasses,
  author    = {Wenzel, Markus},
  title     = {Type classes and overloading in higher-order logic},
  booktitle = {Theorem Proving in Higher Order Logics: 10th International Conference, TPHOLs '97 Murray Hill, NJ, USA, August 19--22, 1997 Proceedings},
  year      = {1997},
  editor    = {Gunter, Elsa L. and Felty, Amy},
  pages     = {307--322},
  address   = {Berlin, Heidelberg},
  publisher = {Springer Berlin Heidelberg},
  doi       = {10.1007/BFb0028402},
  isbn      = {978-3-540-69526-4},
  url       = {https://doi.org/10.1007/BFb0028402},
}

@InProceedings{haftmann2010codegeneration,
  author    = {Haftmann, Florian and Nipkow, Tobias},
  title     = {Code Generation via Higher-Order Rewrite Systems},
  booktitle = {Functional and Logic Programming: 10th International Symposium, FLOPS 2010, Sendai, Japan, April 19-21, 2010. Proceedings},
  year      = {2010},
  editor    = {Blume, Matthias and Kobayashi, Naoki and Vidal, Germ{\'a}n},
  pages     = {103--117},
  address   = {Berlin, Heidelberg},
  publisher = {Springer Berlin Heidelberg},
  doi       = {10.1007/978-3-642-12251-4_9},
  isbn      = {978-3-642-12251-4},
  url       = {https://doi.org/10.1007/978-3-642-12251-4_9},
}