Research interests
I am interested in functional programming languages, particularly Haskell. My research as a PhD student focuses on datatype-generic programming, and the efforts to bring it into real-life usage. Currently I am focusing on how to make generic programs more efficient, since typically generic programs are not as fast as type-specific hand-written code.
All my publications are also available in a single BibTeX file.
Drafts
- Martijn van Steenbergen, José Pedro Magalhães, and Johan Jeuring. Generic selections of subexpressions. Accepted for publication in the Workshop on Generic Programming 2010. [ pdf ]
- José Pedro Magalhães, Atze Dijkstra, Johan Jeuring, and Andres Löh. A generic deriving mechanism for Haskell. Accepted for publication in the Haskell Symposium 2010. [ code ] [ pdf ]
Refereed publications
2010
- Thomas van Noort, Alexey Rodriguez Yakushev, Stefan Holdermans, Johan Jeuring, Bastiaan Heeren, and José Pedro Magalhães. A Lightweight Approach to Datatype-generic Rewriting. Accepted for publication in the Journal of Functional Programming special issue on Generic Programming. [ bib ] [ pdf ]
- José Pedro Magalhães, Stefan Holdermans, Johan Jeuring and Andres Löh. Optimizing Generics Is Easy! In Proceedings of the 2010 ACM SIGPLAN workshop on Partial Evaluation and Program Manipulation (PEPM'2010), pp. 33-42, ACM, 2010. [ bib ] [ color pdf ] [ greyscale pdf ]
2009
- Johan Jeuring, José Pedro Magalhães and Bastiaan Heeren. Generic Programming for Domain Reasoners. To appear in Proceedings of the 10th Symposium on Trends in Functional Programming (TFP'2009), 2009. [ bib ] [ pdf ]
- Johan Jeuring, Sean Leather, José Pedro Magalhães, and Alexey Rodriguez Yakushev. Libraries for generic programming in Haskell. In Pieter Koopman, Rinus Plasmeijer, and Doaitse Swierstra, editors, Proceedings of the Sixth Advanced Functional Programming School, AFP'08, May 19-24 2008, Center Parcs "Het Heijderbos", The Netherlands, LNCS 5832, pages 165–229, 2009, Springer-Verlag. [ bib ] [ springerlink.com ] [ pdf ]
- Rene Klein Gunnewiek, Robert-Paul Berretty, Bart Barenbrug and José Pedro Magalhães. Coherent Spatial and Temporal Occlusion Generation. In Proceedings of the SPIE Volume 7237, Stereoscopic Displays and Applications XX, 2009. [ bib ] [ spiedl.aip.org ] [ pdf ]
2007
- José Pedro Correia, José Pedro Magalhães, and Jorge Sousa Pinto. Formally verifying imperative programs. In P. Henriques, V. Santos, and S. Sousa, editors, Proceedings of the Conference on Compilers, Related Technologies and Applications (CoRTA'2007), pages 74–85, 2007. [ bib ] [ pdf ]
Reports
2010
- Thomas van Noort, Alexey Rodriguez Yakushev, Stefan Holdermans, Johan Jeuring, Bastiaan Heeren, and José Pedro Magalhães. A Lightweight Approach to Datatype-generic Rewriting. Technical Report UU-CS-2010-008, Department of Information and Computing Sciences, Utrecht University, 2010. [ bib ] [ cs.uu.nl ] [ pdf ]
2009
- José Pedro Magalhães, Stefan Holdermans, Johan Jeuring and Andres Löh. Optimizing Generics Is Easy! Technical Report UU-CS-2009-022, Department of Information and Computing Sciences, Utrecht University, 2009. [ bib ] [ cs.uu.nl ] [ pdf ]
- Johan Jeuring, José Pedro Magalhães and Bastiaan Heeren. Generic Programming for Domain Reasoners. Technical Report UU-CS-2009-016, Department of Information and Computing Sciences, Utrecht University, 2009. [ bib ] [ cs.uu.nl ] [ pdf ]
2008
- Johan Jeuring, Sean Leather, José Pedro Magalhães, and Alexey Rodriguez Yakushev. Libraries for generic programming in Haskell. Technical Report UU-CS-2008-025, Department of Information and Computing Sciences, Utrecht University, 2008. [ bib ] [ cs.uu.nl ] [ pdf ]
2007
- José Pedro Magalhães. Occluded video retrieval—using temporal information for automatic generation of an occlusion layer from 2D content for 3D rendering, 2007. Final internship report, Minho University (confidential until 2012). [ bib ]
Code
I am the maintainer (possibly with other people) of the following projects:- Scrap Your Boilerplate (SYB): a popular generic programming library in Haskell. [ homepage ] [ package ] [ darcs ] [ bug tracker ]
- Instant generics: a generic programming library with a sum of products view in Haskell. [ homepage ] [ package ] [ svn ]
- Guarded rewriting: a generic rewriting library supporting preconditions. [ homepage ] [ package ] [ svn ]
- Regular: a generic programming library for regular datatypes in Haskell. [ homepage ] [ package ] [ svn ]
- Regular-extras: additional functions for Regular. [ homepage ] [ package ] [ svn ]
- Rewriting: a generic rewriting library for regular datatypes. [ homepage ] [ package ] [ svn ]
- Multirec: a generic programming library for families of recursive datatypes in Haskell. [ homepage ] [ package ] [ svn ]
Talks
2010
- Optimizing Generics Is Easy! Partial Evaluation and Program Manipulation (PEPM) 2010, 18/01/2010. [ pdf ]
- Optimizing Generics Is Easy! Dutch Functional Programming day 2010, 08/01/2010. [ pdf ]
2009
- Generic Programming: what, why and how. 5th Dutch Haskell Users' Group meeting, 11/09/2009. [ pdf ] [ m4v ] [ vimeo.com ]
- Generic Programming: what, why and how. Utrecht Summer School in Applied Functional Programming 2009, 28/08/2009. [ pdf ]
- Generic Programming for Domain Reasoners. Trends in Functional Programming (TFP) 2009, 03/06/2009. [ pdf ]
2008
- Why Generic Programming Matters. Presented at IPA Fall Days 2008. [ pdf ]
Event organization
2010
- Local organizer of the 22nd Symposium on Implementation and Application of Functional Languages, IFL'2010, September 1–3, Alphen aan den Rijn, the Netherlands
2009
- Local organizer of the 5th Haskell Hackathon, Hac5, April 17–19, Universiteit Utrecht, the Netherlands
Event participation
2010
- Oregon Programming Languages Summer School: Logic, Languages, Compilation, and Verification, June 15–25, University of Oregon, Eugene, Oregon, United States of America
- IPA Spring Days on Multi-Core Computing, April 21–23, Oisterwijk, the Netherlands
- Spring School on Generic and Indexed Programming, March 22–26, University of Oxford, Oxford, United Kingdom
- Dutch Functional Programming day 2010, FP-dag'2010, January 8, Radboud Universiteit Nijmegen, the Netherlands
2009
- IPA Fall Days on Quantitative Methods for Embedded Systems, November 23–27, Noordwijk aan Zee, the Netherlands
2008
- IPA Fall Days on Software Analysis, November 24–28, Nunspeet, the Netherlands
- IPA Course on Formal Methods, June 23–27, Technische Universiteit Eindhoven, the Netherlands
- Sixth International Summer School on Advanced Functional Programming, May 19–24, Center Parcs "Het Heijderbos", the Netherlands
Teaching
2009
- Master course Generic Programming (assistant) at Universiteit Utrecht
2008
- Master course Generic Programming (assistant) at Universiteit Utrecht
![Validate my RSS feed [Valid RSS]](http://dreixel.net/images/valid-rss.png)