Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
Hridesh Rajan, Associate Professor of Computer Science, Iowa State University
[go: Go Back, main page]

Department of Computer Science

Hridesh Rajan

Got a question?

Got a question or comment? Contact me at (515) 294-6168 or hridesh@cs.iastate.edu.

picture

Associate Professor of Computer Science

Ph.D., University of Virginia, 2005
M.S., University of Virginia, 2004
B.Tech., Institute of Technology, BHU, 2000

Voice: +1-515-294-6168
E-mail: hridesh@iastate.edu
Office: 101 Atanasoff Hall
Office Hours: Monday 3:30-5:00pm

Research Theme and Goals

My research aims to improve software quality and programmer productivity by development and refinement of modularization techniques. I have contributed to design, semantics, and implementation of aspect-oriented language features, where my main goal has been to improve the regularity, orthogonality, and conceptual integrity of aspect language features (see the Eos and Nu projects for details). I have also contributed to improving modular reasoning about aspect-oriented programs (see the Ptolemy project for details).

Most of my current efforts are directed towards the design, semantics, and implementation of the Panini language. The main goal of Panini's design is to address problems with explicit concurrency features such as data races, deadlocks and non-deterministic semantics. Key idea is to design programming language features and software design practices that exploit common interaction patterns available in good, modular software design to expose potential concurrency implicitly and safely. In that sense, Panini's design reconciles modularity and concurrency goals.

Recent Ideas and Results

  • Panini project, where our aim is to achieve a synergy between modularity and concurrency goals such that if programmers structure their system to improve modularity in its design, they get concurrency for free. To that end, in our GPCE'10 paper we describe a language-based approach that helps software system using event-driven style. Our Onward!'10 paper describes implicitly concurrent version of well-known Gang-of-Four design patterns. Use of our design pattern framework implicitly exposes concurrency in program design.
  • Translucid contracts that allows programmers to write modular specification of aspect-oriented interfaces and that allows one to modularly reason about control effects in aspect-oriented programs. More details in our AOSD'11 paper and from the Ptolemy project's web-page that also has download for our compiler.

A detailed list of my publications is available here.

Major Awards and Honors

Research and Educational Projects

Programming Language Design for Improved Modularity

Modularity in Program Verification

Program Optimization

More information about my research and educational projects and publications is available from the links on the left that point to the web pages of the Laboratory for Software Design.

Recent Professional Services

Funding