Passer au contenu

/ Research

Je donne

Rechercher

Natural Sciences and Engineering; Applied Sciences

Stefan Monnier

Langages de programmation

Professeur agrégé

Faculté des arts et des sciences - Département d'informatique et de recherche opérationnelle

André-Aisenstadt, room 2341

514 343-6111 #30437

stefan.monnier@umontreal.ca

Secondary number: 514 343-6111 #47617 (Travail 1)
Secondary email: monnier@iro.umontreal.ca (Travail)

Profile

Research expertise

I'm interested in pushing the limits of strongly typed programming languages so as to be able to use in circumstances where they are currently inapplicable. For example, designing advanced type systems that make it possible to write secure low-level code such as automatic memory management. More generally I'm interested in type systems that enable the programmer to explain to the compiler, via type annotations, why his program is correct.

For more information…

Affiliations and responsabilities

Research affiliations

  • Membre du McGill's Computation and Logic (Complogic) Group

Teaching and supervision

Student supervision

Theses and dissertation supervision (Papyrus Institutional Repository)

2023

Amélioration des messages d'erreurs Typer par algorithme génétique

Graduate : Fall, Ismaïla
Cycle : Master's
Grade : M. Sc.
2023

Gestion manuelle et sécuritaire de la mémoire en Typer

Graduate : Génier, Simon
Cycle : Master's
Grade : M. Sc.
2022

Computation over partial information : a principled approach to accurate partial evaluation

Graduate : Sabourin, Ian
Cycle : Master's
Grade : M. Sc.
2022

Développement d’un serveur LSP pour Typer

Graduate : Soilihi, Ben Soilihi Boina
Cycle : Master's
Grade : M. Sc.
2017

Implémentation d'un langage fonctionnel orienté vers la méta programmation

Graduate : Delaunay, Pierre
Cycle : Master's
Grade : M. Sc.
2016

Abitbol : un langage sur mesure pour la métaprogrammation

Graduate : Archambault-Bouffard, Vincent
Cycle : Master's
Grade : M. Sc.
2012

A Compiler for the dependently typed language Beluga

Graduate : Ferreira Ruiz, Francisco
Cycle : Master's
Grade : M. Sc.
2011

Simulateur compilé d’une description multi-langage des systèmes hétérogènes

Graduate : Dubois, Mathieu
Cycle : Doctoral
Grade : Ph. D.
2010

A Type-Preserving Compiler from System F to Typed Assembly Language

Graduate : Guillemette, Louis-Julien
Cycle : Doctoral
Grade : Ph. D.
2009

Inférence statique et par contraintes des relations de composition dans des programmes Java

Graduate : Habti, Norddin
Cycle : Master's
Grade : M. Sc.
2006

Conception d'un langage de programmation pour applications distribuées

Graduate : Germain, Guillaume
Cycle : Master's
Grade : M. Sc.

Projects

Research projects

2018 - 2025

Typer: An exocompiler to program with dependent types

Lead researcher : Stefan Monnier
Funding sources: CRSNG/Conseil de recherches en sciences naturelles et génie du Canada (CRSNG)
Grant programs: PVX20965-(RGP) Programme de subvention à la découverte individuelle ou de groupe
2021 - 2024

Fondements logiques pour la meta-programmation avec typage sur

Lead researcher : Brigitte Pientka
Co-researchers : Stefan Monnier
Funding sources: FRQNT/Fonds de recherche du Québec - Nature et technologies (FQRNT)
Grant programs: PV113724-(PR) Projets de recherche en équipe (et possibilité d'équipement la première année)
2020 - 2021

Supplément COVID-19 CRSNG_Typer: An exocompiler to program with dependent types

Lead researcher : Stefan Monnier
Funding sources: CRSNG/Conseil de recherches en sciences naturelles et génie du Canada (CRSNG)
Grant programs: PVXXXXXX-Supplément à l’appui des étudiants, des stagiaires postdoctoraux et du personnel de soutien à la recherche COVID-19
2012 - 2019

TYPER : A LISP APPROACH TO DEPENDENT TYPES

Lead researcher : Stefan Monnier
Funding sources: CRSNG/Conseil de recherches en sciences naturelles et génie du Canada (CRSNG)
Grant programs: PVX20965-(RGP) Programme de subvention à la découverte individuelle ou de groupe

Outreach

Publications and presentations

Disciplines

  • Computer Science

Areas of expertise

  • Proof assistants
  • Compiling
  • Memory management
  • Functional programming
  • Type system
  • Dependent type
  • Computer security
  • Functional programming language