I'm a fifth-year graduate student in Computer Science at Cornell University. I'm interested in programming languages as a medium for human thought, expression and interaction with our existing (and developing) systems.

I previously studied Computer Science and Electrical Engineering at Lafayette College, a small liberal arts college in Pennsylvania.


Merlin: A Language for Provisioning Network Resources

Robert Soulé Shrutarshi Basu, Parisa Jalili Marandi, Fernando Pedone, Robert Kleinberg, Emin Gün Sirer, Nate Foster

10th International Conference on emerging Networking EXperiments and Technologies (CoNEXT ’14)

Managing the Network with Merlin

Robert Soulé Shrutarshi Basu, Robert Kleinberg, Emin Gün Sirer, Nate Foster

Proceedings of the Twelfth ACM Workshop on Hot Topics in Networks (HotNets-XII)

Exploring the impact of context sensitivity on blended analysis

Marc Fisher II, Bruno Dufour, Shrutarshi Basu and Barbara G. Ryder.

Proceedings of the 26th IEEE International Conference on Software Maintenance (ICSM 2010).

Application of formal grammars to the study of complex patterns and evolving systems

Shrutarshi Basu, Rhodes Baker and Khine Lin.

Proceedings of the National Conference on Undergraduate Research, 2009.


SpecNetKAT: Specification Preserving transformation of NetKAT programs

January 2016 -- Now

Software-Defined Networking has promised to herald a new era of programmable, commoditized networking infrastructure. However, there are still large legacy networks in operation with predefined topologies and policies and limited or non-existent SDN support. Thus, to make the most of their networks, administrators today must figure out how best to combine the flexibility of SDN-enabled edge switches and a rigid, existing forwarding fabric. SpecNetKAT allows users to write policies for a network assuming pervasive SDN capabilities. A compiler then rewrites such policies to work on an immutable fabric and an SDN-enabled edge, while preserving certain user-specified properties.

Merlin: Unified Management for Heterogenous Networks

March 2013 -- September 2014

Modern networks are composed of many devices and must satisfy the needs of many users. Merlin is a project to develop high-level abstractions for programming such networks. The core of Merlin is a program that multiple administrators to control networks composed of heterogenous devices like switches, middleboxes and end-hosts.

Freon: Controlling the Network From the Edge

February 2012 -- March 2013

A novel architecture for datacenter network management using end hosts to perform the majority of the packet processing work. A component of the Frenetic project.

Proctor: An Actor library for Ruby

January -- May 2011

Threaded, concurrent Actors in Ruby using a prototype-based programming style. Makes extensive use of Ruby's metaprogramming abilities