| Toward a formal theory of extensible software |
| Full text |
Pdf
(862 KB)
|
| Source
|
Foundations of Software Engineering
archive
Proceedings of the 6th ACM SIGSOFT international symposium on Foundations of software engineering
table of contents
Lake Buena Vista, Florida, United States
Pages: 88 - 98
Year of Publication: 1998
ISBN:1-58113-108-9
Also published in ...
|
|
Authors
|
|
| Sponsors |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 1, Downloads (12 Months): 26, Citation Count: 3
|
|
|
ABSTRACT
As software projects continue to grow in scale and scope, it becomes important to reuse software. An important kind of reuse is extensibility, i.e., the extension of software without accessing existing code to edit or copy it. In this paper, we propose a rigorous, semantics-based definition of software extensibility. Then we illustrate the utility of our definitions by applying them to several programs. The examination shows how programming style affects extensibility and also drives the creation of a variant of an existing design pattern. We consider programs in both object-oriented and functional languages to prove the robustness of our definitions.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
2
|
|
 |
3
|
|
| |
4
|
Brown, K. G. Design reverse-engineering and automated design pattern detection in smalltalk. Master' s thesis, North Carolina State University, 1996.
|
| |
5
|
|
| |
6
|
Drossopoulou, S. and S. Eisenbach. Java is type safeprobably. In European Conference on Object-Oriented Programming, pages 389-418, 1997.
|
 |
7
|
|
| |
8
|
|
| |
9
|
|
| |
10
|
|
| |
11
|
Findler, R. B. Modular abstract interpreters. Unpublished manuscript, Carnegie Mellon University, June 1995.
|
 |
12
|
Matthew Flatt , Shriram Krishnamurthi , Matthias Felleisen, Classes and mixins, Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.171-183, January 19-21, 1998, San Diego, California, United States
[doi> 10.1145/268946.268961]
|
 |
13
|
|
| |
14
|
Frappier, hiI., A. h&li and R. Ben Ayed. A relational calculus for software reuse. In IJCAI Workshop on Formal Approaches to the Reuse of Plans, Proofs and Programs, 1995.
|
| |
15
|
|
| |
16
|
|
 |
17
|
Paul Hudak , Simon Peyton Jones , Philip Wadler , Brian Boutel , Jon Fairbairn , Joseph Fasel , María M. Guzmán , Kevin Hammond , John Hughes , Thomas Johnsson , Dick Kieburtz , Rishiyur Nikhil , Will Partain , John Peterson, Report on the programming language Haskell: a non-strict, purely functional language version 1.2, ACM SIGPLAN Notices, v.27 n.5, p.1-164, May 1992
[doi> 10.1145/130697.130699]
|
| |
18
|
|
 |
19
|
|
| |
20
|
|
 |
21
|
Sheng Liang , Paul Hudak , Mark Jones, Monad transformers and modular interpreters, Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.333-343, January 23-25, 1995, San Francisco, California, United States
[doi> 10.1145/199448.199528]
|
| |
22
|
McIhoy, M. D. Mass produced software components. In Naur, P. and B. Randell, editors, Report on a Conference of the NATO Science Committee, pages 138-150, October 1968.
|
| |
23
|
|
| |
24
|
|
| |
25
|
|
| |
26
|
Nierstrasz, O., J.-G. Schneider and M. Lumpe. Formalizing composable software systems - a research agenda. In IFIP Workshop on Formal Methods for Open Object-based Distributed Systems, 1996.
|
| |
27
|
|
| |
28
|
Pouhn, J. S. Measuring Software Reuse: Principies, Practices, and Economic Models. Addison-Wesley, 1997.
|
| |
29
|
|
| |
30
|
|
| |
31
|
|
| |
32
|
|
CITED BY 3
|
|
L. Charest , M. Reid , E. Aboulhamid , G. Bois, A methodology for interfacing open source systemC with a third party software, Proceedings of the conference on Design, automation and test in Europe, p.16, March 2001, Munich, Germany
|
|
|
Seung Chan Slim Lim , Peter Lucas, JDA: a step towards large-scale reuse on the web, Companion to the 21st ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications, October 22-26, 2006, Portland, Oregon, USA
|
|
|
|
|