Design and Implementation fo Modular Languages Supporting Information Hiding
Christian S. Collberg and Magnus G. Krampell
Department of Computer Sciences,
Lund University,
S-221 00 Lund, Sweden.
collberg@dna.lth.se
Abstract
In this paper we discuss the design of a module-concept
for high-level systems programming languages. In particular
we show that a modular language that fully supports
Parnas' principle of information hiding while at the
same time maintaining module independence cannot be
translated using standard techniques. We propose an
alternative translation process, based on module binding
partially at the intermediate code level, which allows the
design of modular languages where implementation details of
all types of objects exported from a module may be safely
hidden. We also show that this translation process will make
important language constructions such as inline subprograms,
iterators, and generic units efficiently implementable without
introducing any module interdependence. This in turn will reduce
the amount of recompilation necessary when exported objects
are changed.
Back to Collberg's Research Page
Back to Collberg's Home Page