Hesam Samimi

Ph.D. Student
UCLA Computer Science Department
hesamcs.ucla.edu


Advisor

My advisor is Todd Millstein.

Research

In the field of Programming Languages, I am interested in finding practical applications of Constraint Solvers, Decision Procedures, and Declarative Programming in Software Engineering in the context of development, testing, debugging, reliability, and education. More generally, I am interested in applying these tools in performing Static and Dynamic Program Analyses: Verification, Synthesis, and Program Repair. My longer-term goal is to contribute towards the design of programming language frameworks that allow programs to be specified in as elegant, declarative, and in domain-specific forms as possible, yet be practical enough to have impact in the software community.

Projects

MockSpecs Declarative Mocking
              Mocking functionality and data using executable specifications and constraint solving for development and testing

Plan B Falling Back on Executable Specifications
              Automatic recovery from method failures by direct execution of specifications via a constraint solver
              PBnJ: Implementation of Plan B in Java

PHPRepair Automated Repair of HTML Generation Errors in PHP Applications Using String Constraint Solving
              An automatic, dynamic, test-based approach to fix HTML generation bugs in PHP programs

Sketch# Specification-Based Program Sketching
              Implementation of the Sketching program synthesis method on top of Spec# specification language

CoopLangs Cooperating Languages
              An integrated programming environment based on relations and an extensible set of hosted languages and constraint
              solvers to solve problems in a domain-specific manner

JOHN An educational programming language integrating Automated Planning
              Project Wiki

Publications

Declarative Mocking
Hesam Samimi, Rebecca Hicks, Ari Fogel, Todd Millstein
International Symposium on Software Testing and Analysis 2013 (ISSTA'13)

Automated Repair of HTML Generation Errors in PHP Applications Using String Constraint Solving
Hesam Samimi, Max Schaefer, Shay Artzi, Todd Millstein, Frank Tip, Laurie Hendren
International Conference on Software Engineering 2012 (ICSE'12) [pdf]

Specification-Based Sketching with Sketch#
Hesam Samimi, Kaushik Rajan
International Workshop on Formal Techniques for Java-like Programs 2011 (FTfJP'11) [pdf]

Falling Back on Executable Specifications
Hesam Samimi, Ei Darli Aung, Todd Millstein
European Conference on Object-Oriented Programming 2010 (ECOOP'10) [pdf]

Other

CamlQuiz OCaml Quiz with Instant Feedback

DollarAMeal.org Sharing the Joy of Deliciousness