Prospective Students

First of all, thanks for your interest. I include some useful information below if you are interested in pursuing a Ph.D. program under my supervision.

Can I send you an email?

  • Yes, but I don't reply to generic inquiry emails.
  • If you feel like sending me an email, please include the following details:
    • Your CV and transcript
    • Tell me about which research directions and/or papers of mine excite you most, and what you would like to do in that direction.
    • If you're interested in PL but beyond my existing research directions: I'm open to new directions, so tell me about your research interests, and send me either your one representative paper or one paper that you recently read and excited you, and we can see if we can be a good fit.
  • Sending an email will not increase your chance of getting accepted, but provides an opportunity for me to look at your application materials earlier.
  • You may also consider applying directly to UofT. Be sure to mention my name in your application.

What research background should I have?

  • Programming languages research experience will be a plus but not a requisite.
  • It's more important to have a strong theoretical and computational background and be self-motivated.
  • If you're interested in machine learning, see below.

I'm more interested in machine learning; can I still apply?

  • Yes, if you're interested in the intersection between machine learning and programming languages.
  • It's worth checking out Symposium on Machine Programming.
  • UofT is the origin of deep learning, and offers a world-class machine learning environment, with collaborations with Google Brain, the Vector Institute, etc.

What's your advising style?

  • To me, the ultimate goal of a Ph.D. program is to train you into an independent researcher.
    So typically you will have one starting project in the beginning, and gradually you will learn how to propose problems.
    If you feel like it, you're also encouraged to explore freely in the community from the beginning.
  • I am open to co-advising; let me know if there is another professor in the department you would like to work with together.
  • I consider you as an advisee, a collaborator, and a friend.

About Toronto

  • Toronto is a metropolitan and diverse city, with endless exciting things to offer (restaurants, bars, shows, etc.), and low crime.
  • Lots of big tech companies and opportunities: Google, Meta, Microsoft, Amazon, Apple, etc.
  • Also great natures to explore: High Park, Cherry Beach, Scarborough Bluffs, etc.

About the University of Toronto

  • We are the top-1 Computer Science department in Canada, #12 worldwide (QS Ranking).
  • We have a big department, with a number of amazing faculties in programming languages and many wonderful faculties in other areas. It's easy to collaborate across groups and directions.
  • The Ph.D. application process is competitive.