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.