Research

At Harvard SEAS, Nada Amin and her team explore new ways of programming that are easier, faster, safer.

For safer, we look at systems and formalisms based on types and verification.

For faster, we look at meta-programming techniques including generative programming and reflection to collapse levels of interpretations as well as move between different views of the same program in a way that helps optimizations, understanding and modifications.

For easier, our goal is to enable a greater number of people to manipulate computer programs (static) and processes (dynamic) in a robust way. To this end, we look at combining Machine Learning and Programming Languages to enable the creation of neuro-symbolic systems that can move back and forth between learnable (neural) and interpretable (symbolic) representations of a system.

We are always looking for new application domains in which to evaluate programming techniques.

Teaching

  • Spring 2021: CS 152 Programming Languages
  • Fall 2020: CS 252R  PL/AI Graduate Seminar
  • Spring 2020: CS 152 Programming Languages
  • Fall 2019: CS 252R PL/HCI Graduate Seminar

Team

We are part of Harvard PL and lead the metareflection.club and the Harvard/MIT Initiative on Programming Microfluidics.

Joining

If you're an undergraduate at Harvard, I am happy to brainstorm and supervise a research project or thesis around common interests. This could range from theory (a type system for 'X') to implementation (a domain-specific language for 'X'). I value previous experience in software engineering, machine learning, functional programming, logic programming, and your chosen domains of application.

If you're a prospective PhD student, please apply to SEAS and mention me in your application.

If you're a current researcher (PhD student, postdoc, faculty, ...), I am open to collaboration and co-supervision opportunities.

If you're a member at large, I am happy to engage in mentoring time allowing.

I do not sign NDAs.

Publications

Projects

Code

About: CV, Contact