About Richard

Richard Townsend is an Assistant Teaching Professor in the Computer Science Department at Tufts University.  He specializes in Programming Languages and Compilers (which is reflected in his teaching), but he also enjoys teaching Intro CS and Computer Organization courses. Richard is the Founding Director of the Emerging Scholars Program in the Computer Science Dept. at Tufts University.

While earning his PhD at Columbia University, his research focused 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 revolved around his research group's project: an optimizing Haskell-to-SystemVerilog compiler.




Room 230, Halligan Hall

161 College Ave

Medford, MA 02155



Research Interests

Functional Languages

  • Modeling specialized hardware with Haskell

  • Exploring semantic connections between functional languages and hardware specifications

2013 - 2019

Columbia University

Ph.D. in Computer Science


  • Program optimization via semantics-preserving transformations

  • Transformations to bridge the gap from pure functional languages to logical circuits

2013 - 2015

Columbia University

M.S. in Computer Science

2009 - 2013

Oberlin College

B.A. in Computer Science