Professor Cartwright’s principal research interests are programming language design and implementation, program specification, program testing and analysis, and software engineering. In 2016, he was invited to create a language for a new research initiative, Rice University Computing at the Margins.
He is also engaged in four major research projects: (i) NextGen: compatibly extending the Java programming language to support first class genericity; (ii) Soft Typing: developing program analysis tools for Java that use precise type inference to help programmers debug and optimize programs; (iii) Dr Java: constructing production quality pedagogic programming environments for Java using Extreme Programming; and (iv) DrHJ: creating an extension of DrJava called DrHJ to support Habanero Java, an extension of Java with facilities for expressing task-level parallelism, developed by his colleague Vivek Sarkar.