Eclipse plugin for reactive programming.
Bachelor Thesis, Master Thesis
Reactive programming is a recent programming paradigm that specifically supports the development of reactive applications. It provides dedicated language abstractions, like signals and events, that overcome the disadvantages of the traditional Observer pattern.
Previous research on reactive programming has greatly improved the abstractions available to the developer. Other research areas focused on non-functional properties, like proving safety or time-bound execution of reactive applications.
Interestingly, supporting reactive applications with dedicated tools and programming environments is a mostly unexplored area. However, the field is extremely promising, since reactive applications exhibit regular patterns that can be easily exploitable by the IDE.
The candidate will design and implement a programming environment in the Eclipse framework that supports the development of reactive applications. The thesis will be part of the reactive programming project in the context of the PACE project (http://www.pace-erc.eu/).
Expected gain of knowledge
The candidate will acquire skills in the development of Eclipse plugins and more generally in the field IDEs and of toold supporting the development process. The candidate will learn the principles of reactive programming.
- Sirish Chandrasekaran, Owen Cooper, Amol Deshpande, Michael J. Franklin, Joseph M. Hellerstein, Wei Hong, Sailesh Krishnamurthy, Samuel R. Madden, Fred Reiss, and Mehul A. Shah.: Flapjax: A Programming Language for Ajax Applications.. ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages & Applications, 2009
- Guido Salvaneschi, Mira Mezini: Reactive Behavior in Object-oriented Applications: An Analysis and a Research Roadmap. In Proceedings of the 11th annual international conference on Aspect-oriented Software Development, MODULARITY AOSD 2013