Computer Science – Programming Languages
Scientific paper
2011-06-08
Computer Science
Programming Languages
17 pages. Corrected typos
Scientific paper
The Java programming language contains many features that aid component-based software development (CBSD), such as interfaces, visibility levels, and strong support for encapsulation. However, component evolution often causes so-called breaking changes, largely because of the rigidity of component interconnections in the form of explicit method calls and field accesses. We present a Java extension, Poplar, which we are currently developing. In Poplar, inter-component dependencies are expressed using declarative queries; concrete linking code, generated using a planning algorithm, replaces these at compile time. Poplar includes a minimal specification language based on typestate-like protocols and labels, and a lightweight effect system, which ensures the absence of unwanted interference between hand-written code and generated code. We give several examples of fully automatic component integration using Poplar, and demonstrate its potential to simplify object-oriented software development greatly through evolvable and statically checkable integration links.
Honiden Shinichi
Nyström-Persson Johan
No associations
LandOfFree
Poplar: A Java Extension for Evolvable Component Integration does not yet have a rating. At this time, there are no reviews or comments for this scientific paper.
If you have personal experience with Poplar: A Java Extension for Evolvable Component Integration, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Poplar: A Java Extension for Evolvable Component Integration will most certainly appreciate the feedback.
Profile ID: LFWR-SCP-O-320086