Welcome!
To use the personalized features of this site, please log in or register.
If you have forgotten your username or password, we can help.
My Menu
Saved Items

An application framework for module composition tools

Guruduth BanavarContact Information and Gary LindstromContact Information

(1)  IBM TJ Watson Research Center, 30 Saw Mill River Road, 10532 Hawthorne, NY, USA
(2)  Department of Computer Science, University of Utah, 84112 Salt Lake City, UT, USA
Abstract
This paper shows that class inheritance, viewed as a mechanism for composing self-referential namespaces, is a broadly applicable concept. We show that several kinds of software artifacts can be modeled as self-referential namespaces, and software tools based on a model of composition of namespaces can effectively manage these artifacts. We describe four such tools: an interpreter for compositionally modular Scheme, a compositional linker for object files, a compositional interface definition language, and a compositional document processing tool. We show that these tools benefit significantly from incorporating inheritance-based reuse. Furthermore, the implementation of these tools share much in common since they are based on the same underlying model. We describe a reusable OO framework for efficiently constructing such tools. Three of the above tools were built by directly reusing the application framework, and the fourth evolved in parallel with it. We provide reuse statistics and experiences with the development of our framework and its completions.
This research was sponsored by the Defense Advanced Research Projects Agency under contract number DABT63-94-C-0058, and by the Office of Naval Research under grant number N00014-95-1-0737.

Contact Information Guruduth Banavar
Email: banavar@watson.ibm.com

Contact Information Gary Lindstrom
Email: lindstrom@cs.utah.edu
Fulltext Preview (Small, Large)
Image of the first page of the fulltext

References secured to subscribers.



Export this chapter
Export this chapter as RIS | Text
 
Remote Address: 38.107.191.109 • Server: mpweb23
HTTP User Agent: CCBot/1.0 (+http://www.commoncrawl.org/bot.html)