2005
DOI: 10.1002/smr.320
|View full text |Cite
|
Sign up to set email alerts
|

KERIS: evolving software with extensible modules

Abstract: We present the programming language KERIS, an extension of Java with explicit support for software evolution. KERIS introduces extensible modules as the basic building blocks for software. Modules are composed hierarchically, explicitly revealing the architecture of systems. A distinct feature of the module design is that modules do not get linked manually. Instead, the wiring of modules gets inferred. The module assembly and refinement mechanism of KERIS is not restricted to the unanticipated extensibility of… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
15
0

Year Published

2005
2005
2014
2014

Publication Types

Select...
5
3
1

Relationship

2
7

Authors

Journals

citations
Cited by 18 publications
(16 citation statements)
references
References 38 publications
(43 reference statements)
0
15
0
Order By: Relevance
“…ML modules, as well as other component formalisms [1,30,42,51] introduce separate layers that distinguish between components and their constituents. This approach might have some advantages in that each formalism can be tailored to its specific needs, and that programmers receive good syntactic guidance.…”
Section: Related Workmentioning
confidence: 99%
“…ML modules, as well as other component formalisms [1,30,42,51] introduce separate layers that distinguish between components and their constituents. This approach might have some advantages in that each formalism can be tailored to its specific needs, and that programmers receive good syntactic guidance.…”
Section: Related Workmentioning
confidence: 99%
“…Typical component-oriented programming languages like ArchJava [1], Jiazzi [30], and ComponentJ [42] are statically typed and do provide good support for creating and composing generic software components, but their type systems are not expressive enough to fully isolate reentrant systems. The module system of Keris [51] can enforce a strict separation of multiple reentrant instances of a compiler, but without support for first-class modules it requires that the number of simultaneously running compiler instances is known statically.…”
Section: State Of the Artmentioning
confidence: 99%
“…Keris [13] is essentially a flavor of Java, and is strikingly similar to Object Teams, but at the least does not support implicit inheritance or class overriding. MultiJava [1] allows for open classes, but may be difficult to implement and lacks community support for such software.…”
Section: Resultsmentioning
confidence: 99%