Richard Townsend
Assistant Teaching Professor

Research:
functional languages, compilers for embedded systems, program analysis and optimization, embedded domain-specific languages
Biography:
Richard Townsend received his Ph.D. at Columbia University studying programming languages and compilers under Stephen A. Edwards and Martha A. Kim. His research focuses on the use of functional languages and high-level optimizations to translate recursive algorithms with irregular memory access patterns into efficient hardware designs. This work revolves around his research group's current project: an optimizing Haskell-to-SystemVerilog compiler. In 2019, he made the transition from researcher to instructor as an assistant teaching professor with the Tufts Department of Computer Science, where he pursues his passion of teaching computer science.
Education:
Ph.D., Computer Science, Columbia University, 2019
M.Phil., Computer Science, Columbia University, 2016
M.S., Computer Science, Columbia University, 2015
B.S., Computer Science, Oberlin College, 2013
Professional Memberships:
Association for Computing Machinery (ACM)