Advanced PhD students should pick the themes that represent central inspirations and prerequisites for their dissertation research.

Young PhD students tend to have a rough direction for their dissertation in mind. They should consider two approaches to picking themes. First, they may wish to consider strengthening their understanding of the niche in which they wish to work, especially some of old pieces of work that are often overlooked and under-appreciated. Second, they may wish to look into completely alternative areas to broaden their perspective of our research area.

MS and undergraduate students should pursue one of the following alternatives:
  • One possibility is to allow curiosity to guide the choice. Here are some examples, formulated as questions:

    • how did HL type inference come about, succeed and fail?

    • does garbage collection work? work well?

    • what is the background of Rust’s ownership/affine type system?

  • Another one is to study the evolution of a programming language itself.

    You may have to access these proceedings with your Northeastern/CCIS credentials. Proceedings of previous HOPL conferences are rarely of interest, though I know of some exceptions. The ACM organizes a conference entitled "History of Programming Languages" every ten to fifteen years. I was on the program committee for the 2020 version—an undertaking of three-and-a-half years—and the proceedings explain the themes of several highly interesting languages. Picking one of those is entirely feasible.

    Warning Some of these papers are essentially short books.

    Young PhD students may also wish to check one of these papers.