Computer Science Department , MS Thesis Presentation , Gregory Conrad " ReArch: A Reactive Approach to Application Architecture Supporting Side Effects"
3:00 pm to 4:00 pm
Gregory Conrad
MSCS Student
WPI Computer Science Department
Friday, December 8, 2023
Time: 3:00 PM – 4:00 PM
Location: Fuller Labs 141
Advisor: Prof. George Heineman
Reader: Prof. Joshua Cuneo
Abstract:
Modern application development encompasses a wide range of areas, spanning from high-level user-interface markup to low-level server and systems programming. These applications employ various multiparadigm techniques, predominantly drawing from architectural patterns rooted in Object-Oriented Programming
and to a lesser extent, Functional Programming. Although several architectural patterns emerge,
they often fall under just one Software Engineering subdiscipline, including State Management (SM), Component-Based Software Engineering (CBSE), and Incremental Computation (IC).
However, these subdisciplines often remain isolated from each other, resulting in applications that rely on software libraries and frameworks that adhere to a singular approach. We introduce ReArch, a reactive and highly functional approach for designing an application architecture that provides a solution to SM, CBSE, and IC.
ReArch includes novel innovations that support the composition of application code and arbitrary side effects,
all while keeping application code functionally pure.
ReArch has already been used to develop multiple production-grade applications across a variety of application domains, demonstrating its wide applicability. Going forward, ReArch will continue to provide applications with loose code coupling, maintainability, and testability by design.