Didier RÉMY
56, rue de la Tombe Issoire
F-75 014 Paris
Phone: 33-1-4335 3773
Born on April 8th, 1963.
French citizen.
Curriculum Vitæ
Rocquencourt, May 2011
Current position
Senior Researcher at INRIA-Rocquencourt.
Interests
Design and formalization of programming languages.
In particular:
type systems and type inference,
modularity,
object-oriented languages,
concurrent and distributed languages,
operational semantics.
Education
Habilitation dissertation, University of Paris 7,
1998.
PhD (thèse de doctorat) in Computer Science, University of Paris 7, 1990
(advisor: Gérard Huet)
Undergraduate studies at École Polytechnique (Engineer
degree), 1983–1986.
Research experience
2006 - now
Senior research scientist
(directeur de recherche) at INRIA Rocquencourt,
in the project-team Gallium.
1998 - 2005
Senior research scientist
(directeur de recherche) at INRIA Rocquencourt,
in the project-team Cristal.
1991 - 1998
Junior research scientist
(chargé de recherche) at INRIA Rocquencourt
in the project-team Cristal.
1990 - 1991
Post-doc at University of Pennsylvania in Carl Gunter and Val Tannen’s group.
1987 - 1990
PhD Student at INRIA Rocquencourt
in the project-team Formel
under Gérard Huet’s supervision.
Teaching Experience
2008 - 2010
Taught Functional programming and type systems to graduate students
of the Parisian Master of Research in Computer Science (MPRI).
1998 - 2006
Professor at École Polytechnique: taught
Modularity and object-oriented programming,
Compilation, and
Understanding and programming operating systems
to last year students.
1992 - 1998
Associate Professor at École Polytechnique: taught
Programming and Algorithms to first year students;
Languages and Compilation to second year students.
1996
Taught
Object-oriented languages to first-year students
of École Normale Supérieure:.
1995 - 1997
Taught Type systems and operational semantics to graduate students
of École Normale Supérieure, École Polytechnique, and Universities of
Paris 6 and Paris 7.
1993 - 1995
Taught Type systems and operational semantics
to graduate level of University of Paris 7.
Committee member for his
PhD dissertation, École Polytechnique (2006)
Fabien Dagnat
Reviewer for his
PhD dissertation, Institut National Polytechnique de Toulouse (2001)
Maribel Fernandez
Reviewer for her
Habilitation dissertation, Univ. de Paris 11 (2000)
Mina Abdiche
Reviewer for her
PhD dissertation, Univ. de Paris 11 (2000)
Silvano Dal Zillio
Reviewer for his
PhD dissertation, Univ. de Nice-Sophia Antipoli (1999)
Camille Le Moniès de Sagazan
Reviewer for his
PhD dissertation, Univ. Paul Sabatier (1995)
Beppe Castagna
Reviewer for his
PhD dissertation, Univ. Paris 7 (1994)
Lucky Chillan
Committee member for his
PhD dissertation, Univ. Paris 7 (1993)
Journal editing
Member of the editorial board of
Journal of Functional Programming
2002–2011.
Program committees
International Conference on Functional Programming (ICFP),
Baltimore, USA, September 2010.
European Symposium On Programming (ESOP),
Paphos, Cyprus, March 2010.
ACM SIGPLAN Workshop on Types in Language Design and Implementation (TLDI),
Savannah, Georgia, USA, January 2009.
ACM SIGPLAN Workshop on ML,
Victoria, British Columbia, Canada, September 2008.
European Symposium On Programming (ESOP),
Vienna, Austria, April 2006.
Foundations and Developments of Object-Oriented Languages (FOOL/WOOD),
Charleston USA, January 2006.
Journées Francophones des Langages Applicatifs (JFLA),
France, 2005.
Programming Language Design and Implementation (PLDI),
Washington DC, USA, June 2004.
European Symposium On Programming (ESOP),
France, April 2002.
(Member of the steering
committee)
International Conference on Functional Programming (ICFP).
(1997–2000)
(Member of the steering
committee)
Foundations of Object Oriented Programming (FOOL).
(1998–2001)
(General Chair)
International Conference on Functional Programming (ICFP), September 1999.
Principle Of Programming Languages (POPL), San Antonio, Texas, USA,
January 1999.
(Program Chair)
Workshop on Foundations of Object-Oriented Languages (FOOL),
San Diego, USA, January 1998.
Workshop on Foundations of Object-Oriented Languages (FOOL),
New Brunswick, USA, July 1996.
International Conference on Functional Programming (ICFP),
Philadelphia, USA, May 1996 .
European Symposium On Programming (ESOP),
Sweden, April 1996.
Journées Francophones des Langages Applicatifs (JFLA),
Montreal, Canada, 1996.
(Program Chair)
Workshop on ML and its Applications,
Orlando, USA, June 1994.
Software development
Author of WhizzyTEX —an gnu-emacs mode for WYSIWYG incremental
previewing LATEX documents while editing.
One of the main contributors to Active-DVI an OCaml DVI previewer.
Indirect contributions to the OCaml implementation, in particular its
object-oriented layer, but also its typechecker, and the addition of
polymorphic methods.
ML-ART:
Prototype extension of Caml-Light with extensible records,
universal and existential types, and programmable class-based objects.
Other activities
Member of IFIP Working Group 2.8 (Functional Programming).
General (and local) chair of the PLI’99 symposium in Paris in Sep 1999
collocating the two major conferences ICFP’99 and PPDF’99 and a dozen of
workshop.
François Pottier and Didier Rémy.
The essence of ML type inference.
In Benjamin C. Pierce, editor, Advanced Topics in Types and
Programming Languages, chapter 10, pages 389–489. MIT Press, 2005.
Jacques Garrigue and Didier Rémy.
Extending ML with semi-explicit higher-order polymorphism.
Information and Computation, 155(1/2):134–169, 1999.
A preliminary version appeared in TACS’97.
Didier Rémy and Jérôme Vouillon.
Objective ML: An effective object-oriented extension to ML.
Theory And Practice of Object Systems, 4(1):27–50, 1998.
A preliminary version appeared in the proceedings of the 24th ACM
Conference on Principles of Programming Languages, 1997.
Martín Abadi, Luca Cardelli, Benjamin C. Pierce, and Didier Rémy.
Dynamic typing in polymorphic languages.
Journal of Functional Programming, 5(1):111–130, January 1995.
Also appeared as SRC Research Report 120. Preliminary version
appeared in the Proceedings of the ACM SigPlan Workshop on ML and its
Applications, June 1992.
Didier Rémy.
Type inference for records in a natural extension of ML.
In Carl A. Gunter and John C. Mitchell, editors, Theoretical
Aspects Of Object-Oriented Programming. Types, Semantics and Language
Design. MIT Press, 1993.
Didier Rémy.
Typing record concatenation for free.
In Carl A. Gunter and John C. Mitchell, editors, Theoretical
Aspects Of Object-Oriented Programming. Types, Semantics and Language
Design. MIT Press, 1993.
Didier Rémy and Boris Yakobowski.
A church-style intermediate language for MLF.
In Matthias Blume, Naoki Kobayashi, and German Vidal, editors, Functional and Logic Programming, volume 6009 of Lecture Notes in
Computer Science, pages 24–39. Springer Berlin / Heidelberg, 2010.
Benoît Montagu and Didier Rémy.
Modeling abstract types in modules with open existential types.
In Proceedings of the 36th ACM Symposium on Principles of
Programming Languages (POPL’09), pages 354–365, Savannah, GA, USA, January
2009.
Didier Rémy and Boris Yakobowski.
Efficient Type Inference for the MLF language: a graphical
and constraints-based approach.
In The 13th ACM SIGPLAN International Conference on Functional
Programming (ICFP’08), pages 63–74, Victoria, BC, Canada, September 2008.
Didier Rémy.
Simple, partial type-inference for System F based on
type-containment.
In Proceedings of the tenth International Conference on
Functional Programming, September 2005.
Roberto Di Cosmo, François Pottier, and Didier Rémy.
Subtyping recursive types modulo associative commutative products.
In Seventh International Conference on Typed Lambda Calculi and
Applications (TLCA’05), Nara, Japan, April 2005.
Didier Le Botlan and Didier Rémy.
MLF: Raising ML to the power of System F.
In Proceedings of the Eighth ACM SIGPLAN International
Conference on Functional Programming, pages 27–38, August 2003.
Cédric Fournet, Luc Maranget, Cosimo Laneve, and Didier Rémy.
Inheritance in the join calculus.
In Foundations of Software Technology and Theoretical Computer
Science, volume 1974 of Lecture Notes in Computer Science. Springer,
December 2000.
Didier Rémy.
From classes to objects via subtyping.
In European Symposium On Programming, volume 1381 of Lecture Notes in Computer Science. Springer, March 1998.
Jacques Garrigue and Didier Rémy.
Extending ML with semi-explicit higher-order polymorphism.
In International Symposium on Theoretical Aspects of Computer
Software, volume 1281 of Lecture Notes in Computer Science, pages
20–46. Springer, September 1997.
Didier Rémy and Jérôme Vouillon.
Objective ML: A simple object-oriented extension of ml.
In Proceedings of the 24th ACM Conference on Principles of
Programming Languages, pages 40–53, Paris, France, January 1997.
Cédric Fournet, Luc Maranget, Cosimo Laneve, and Didier Rémy.
Implicit typing à la ML for the join-calculus.
In 8th International Conference on Concurrency Theory
(CONCUR’97), volume 1243 of Lecture Notes in Computer Science, pages
196–212, Warsaw, Poland, 1997. Springer.
Cédric Fournet, Georges Gonthier, Jean-Jacques Lévy, Luc Maranget, and
Didier Rémy.
A calculus of mobile agents.
In 7th International Conference on Concurrency Theory
(CONCUR’96), volume 1119 of Lecture Notes in Computer Science, pages
406–421, Pisa, Italy, August 26-29 1996. Springer.
Carl A. Gunter, Didier Rémy, and Jon G. Riecke.
A generalization of exceptions and control in ML.
In Proc. ACM Conf. on Functional Programming and Computer
Architecture, June 1995.
Didier Rémy.
Programming objects with ML-ART: An extension to ML with abstract
and record types.
In Masami Hagiya and John C. Mitchell, editors, International
Symposium on Theoretical Aspects of Computer Software, number 789 in Lecture
Notes in Computer Science, pages 321–346, Sendai, Japan, April 1994.
Springer-Verlag.
Didier Rémy.
Records and variants as a natural extension of ML.
In Sixteenth Annual Symposium on Principles Of Programming
Languages, 1989.
See also [7].
Didier Rémy and Boris Yakobowski.
A graphical presentation of MLF types with a linear-time
unification algorithm.
In Proceedings of the 2007 ACM SIGPLAN International Workshop on
Types in Languages Design and Implementation (TLDI’07), pages 27–38, Nice,
France, January 2007. ACM Press.
Didier Rémy and Boris Yakobowski.
A graphical presentation of MLF types with a linear-time
incremental unification algorithm.
Extended version of [27], July
2006.
Didier Rémy.
A case study of typechecking with constrained types: Typing record
concatenation.
Presented at the workshop on Advances in types for computer science
at the Newton Institute, Cambridge, UK, August 1995.
Didier Rémy.
Better subtypes and row variables for record types.
Presented at the workshop on Advances in types for computer science
at the Newton Institute, Cambridge, UK, August 1995.
Benjamin C. Pierce, Didier Rémy, and David N. Turner.
A typed higher-order programming language based on the pi-calculus.
A preliminary version was presented at the Workshop on Type Theory
and its Application to Computer Systems, Kyoto University, July 1993.
Carl A. Gunter and Didier Rémy.
A proof-theoretic assessment of runtime type errors.
Research Report 11261-921230-43TM, AT&T Bell Laboratories, 600
Mountain Ave, Murray Hill, NJ 07974-2070, 1993.
Didier Rémy.
Efficient representation of extensible records.
In Proceedings of the 1992 workshop on ML and its
Applications, page 12, San Francisco, USA, June 1992.
Didier Rémy.
Extending ML type system with a sorted equational theory.
Research Report 1766, Institut National de Recherche en Informatique
et Automatisme, Rocquencourt, BP 105, 78 153 Le Chesnay Cedex, France, 1992.
Didier Rémy.
Syntactic theories and the algebra of record terms.
Research Report 1869, Institut National de Recherche en Informatique
et Automatisme, Rocquencourt, BP 105, 78 153 Le Chesnay Cedex, France, 1993.
Didier Rémy.
Type inference for records in a natural extension of ML.
Research Report 1431, Institut National de Recherche en Informatique
et Automatisme, Rocquencourt, BP 105, 78 153 Le Chesnay Cedex, France, May
1991.
See also [7] and [25].
Didier Rémy.
Algèbres Touffues. Application au Typage Polymorphe des
Objets Enregistrements dans les Langages Fonctionnels.
Thèse de doctorat, Université de Paris 7, 1990.