Paper accepted at IEEE SCAM 2018

Our paper entitled, “A Tool for Optimizing Java 8 Stream Software via Automated Refactoring,” has been accepted in the Engineering Track of the 18th IEEE International Working Conference on Source Code Analysis and Manipulation (SCAM 2018), to be held in Madrid, Spain in September. An abstract of the paper is listed below: Continue Reading →

Reviewer for the IEEE Transactions on Software Engineering (TSE)

I am pleased to announce that I have been asked to review for the  IEEE Transactions on Software Engineering (TSE) journal! TSE is a leading Software Engineering research journal published bimonthly.

Program committee (PC) member for the ESEC/FSE 2018 Demonstrations Track

I am pleased to announce that I have been graciously invited to participate as a program committee (PC) member of the Demonstrations Track of the 26th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE’18)! The submission deadline is June 29, 2018.

Optimize Java 8 Streams Refactoring Tool Demonstration on YouTube

At WAPI 2018

Raffi @ WAPI 2018
Raffi at WAPI 2018 in Gothenburg, Sweden.

Presenting our poster on Java 8 Stream refactoring at ICSE 2018

Raffi @ ICSE 2018
Raffi at ICSE 2018 in Gothenburg, Sweden.

ICSE 2018 poster now available

Our ICSE 2018 poster entitled, “Towards safe refactoring for intelligent parallelization of Java 8 Streams,” is now available.

Received PSC-CUNY Enhanced Research Award

I am pleased to announce that I have recently received a PSC-CUNY Enhanced Research Award for a project entitled, “Analyses and Automated Refactorings for Imperative Programs that Use Functional Features.” The award amount is $12,000 and will help support students and travel. The award program is an internal funding mechanism to help promote research at CUNY. A brief abstract of the proposal is listed below:

Imperative programming uses statements to alter a program’s state, whereas functional programming avoids mutating existing data. With the recent popularity rise of functional programming, imperative languages are increasingly incorporating new functional features, enabling developers not previously familiar with functional programming to enjoy many of its benefits. Despite the advantages, however, issues arise from the interplay between the two paradigms, particular regarding involving MapReduce-style operations. This project will address these problems by formulating a theoretical foundation for the analysis and refactoring of hybrid functional/imperative programs and subsequently used to identify code that may safely be refactored for performance gains. Based on typestate analysis, it will determine when it is advantageous and safe to run hybrid code in parallel via a novel ordering inference approach that the PI will introduce. This work will advance the state-of-the-art in program analysis and automated refactoring for this mixed paradigm.

Frequently used internal APIs in JDT UI

For jdt.ui internal usage, here’s a list of helper classes that are frequently used: Continue Reading →

Now taking applications for the Hunter College Cyber Security Summer Camp 2018

I am pleased to announce that our Cyber Security Summer Camp 2018 at Hunter College is now taking applications! The two-week instructional camp will be taught by myself and Prof. Debroy. The camp is free to attend and includes a stipend among other benefits.

Hunter College Cyber Security Summer Camp 2018 is a FREE, two-week, full-day summer program providing an introduction to cyber security.

The program is open to all Hunter non-CS women students who will be sophomores in Fall 2018. No background or experience in cyber security or computer programming is needed in order to apply, only your interest and enthusiasm.

via Hunter College Cyber Security Summer Camp 2018 – August 6-17, 2018 (not including weekends)