A Semantic Framework for Understanding the Behavior of Modules and Classes in Programming Languages
Recent trends in programming language design and implementation are aimed at integrating the two most important constructs to combat complexity: modules and classes. Both constructs provide encapsulation, a cornerstone of reliable programming. These constructs differ in their approach to building hi...
Saved in:
Main Authors: | , |
---|---|
Format: | text |
Language: | English |
Published: |
Institutional Knowledge at Singapore Management University
1994
|
Subjects: | |
Online Access: | https://ink.library.smu.edu.sg/sis_research/2242 https://ink.library.smu.edu.sg/context/sis_research/article/3242/viewcontent/JMLC94.pdf |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Institution: | Singapore Management University |
Language: | English |
Summary: | Recent trends in programming language design and implementation are aimed at integrating the two most important constructs to combat complexity: modules and classes. Both constructs provide encapsulation, a cornerstone of reliable programming. These constructs differ in their approach to building hierarchies: modules define visibility of components while classes define visibility of functionality. How can modules and classes be effectively integrated within a simple programming language? This question captures the essence of developing semantics of these constructs to ensure that they interact in a meaningful way. This paper develops a formal denotational semantic framework for understanding the interaction between classes and modules within programming languages. This semantic framework is developed incrementally; beginning with a base object oriented language with support for classes, objects, message passing and inheritance; and followed by extensions that support modules. These extensions consider |
---|