TY - GEN
T1 - Towards transitory encapsulation
AU - Fleissner, Sebastian
PY - 2015/10/25
Y1 - 2015/10/25
N2 - Encapsulation and information hiding are essential and fundamental to object-oriented and aspect-oriented programming languages. These principles ensure that one part of a program does not depend on assumptions on the internal structure and logic of other parts of the program. While this assumption allows for clearly defined modules, interfaces and interaction protocols when software is initially developed, it is possible that rigid encapsulation causes problems, such as brittleness, as software changes and evolves over time. We suggest that, just as the strength of type systems have relaxed over time, perhaps structural boundaries could, too be relaxed. Perhaps there could be a new kind of flexible encapsulation: one that allows non-permanent and flexible boundaries between program parts.
AB - Encapsulation and information hiding are essential and fundamental to object-oriented and aspect-oriented programming languages. These principles ensure that one part of a program does not depend on assumptions on the internal structure and logic of other parts of the program. While this assumption allows for clearly defined modules, interfaces and interaction protocols when software is initially developed, it is possible that rigid encapsulation causes problems, such as brittleness, as software changes and evolves over time. We suggest that, just as the strength of type systems have relaxed over time, perhaps structural boundaries could, too be relaxed. Perhaps there could be a new kind of flexible encapsulation: one that allows non-permanent and flexible boundaries between program parts.
KW - Flexible encapsulation
UR - http://www.scopus.com/inward/record.url?scp=84960356934&partnerID=8YFLogxK
U2 - 10.1145/2814189.2817274
DO - 10.1145/2814189.2817274
M3 - Conference contribution
T3 - SPLASH Companion 2015 - Companion Proceedings of the 2015 ACM SIGPLAN International Conference on Systems, Programming, Languages and Applications: Software for Humanity
SP - 42
EP - 43
BT - SPLASH Companion 2015 - Companion Proceedings of the 2015 ACM SIGPLAN International Conference on Systems, Programming, Languages and Applications
A2 - Eugster, Patrick
A2 - Aldrich, Jonathan
PB - Association for Computing Machinery, Inc
T2 - ACM SIGPLAN International Conference on Systems, Programming, Languages and Applications: Software for Humanity, SPLASH 2015
Y2 - 25 October 2015 through 30 October 2015
ER -