|
ABSTRACT
This paper reports ongoing research at the IBM Research Center on the development of a language with extensible parameterized types and generic operators for computational algebra. The language provides an abstract data type mechanism for defining algorithms which work in as general a setting as possible. The language is based on the notions of domains and categories. Domains represent algebraic structures. Categories designate collections of domains having common operations with stated mathematical properties. Domains and categories are computed objects which may be dynamically assigned to variables, passed as arguments, and returned by functions. Although the language has been carefully tailored for the application of algebraic computation, it actually provides a very general abstract data type mechanism. Our notion of a category to group domains with common properties appears novel among programming languages (cf. image functor of RUSSELL) and leads to a very powerful notion of abstract algorithms missing from other work on data types known to the authors.
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.
| |
1
|
Reference Manual for the Ada Programming Language, U.S. Dept. of Defense, July 1980, (reprinted November 1980).
|
 |
2
|
James W. Thatcher , Eric G. Wagner , Jesse B. Wright, Data type specification: Parameterization and the power of specification techniques, Proceedings of the tenth annual ACM symposium on Theory of computing, p.119-132, May 01-03, 1978, San Diego, California, United States
[doi> 10.1145/800133.804340]
|
| |
3
|
Burstall, R. M. and Goguen, J. A., "Putting Theories Together to Make Specifications", Proceedings of the 5th International Joint Conference on Artificial Intelligence, pp. 1045-1056, August, 1977.
|
| |
4
|
|
| |
5
|
Cohn, P. M., Universal Algebra, Harper and Row, New York, 1965
|
| |
6
|
Davenport, J. H. and Jenks, R. D., "SCRATCHPAD/370: Modes and Domains" (privately circulated).
|
 |
7
|
|
| |
8
|
Demers, A., and Donahue, J., Revised Report on Russell, TR 79-389 Dept. of Computer Science, Cornell U., September 1979.
|
 |
9
|
|
 |
10
|
|
| |
11
|
|
| |
12
|
B Liskov , E Moss , A Snyder , R Atkinson , J C. Schaffert , T Bloom , R Scheifler, CLU reference manual, Springer-Verlag New York, Inc., New York, NY, 1984
|
 |
13
|
|
| |
14
|
Wulf, W.A., London, R.L., and Shaw, M., "An introduction to the construction and verification of Alphard programs", IEEE Trans. on Software Eng. SE-2,4, pp. 253-265, Dec. 1976.
|
 |
15
|
|
CITED BY 13
|
|
|
|
|
Martin Odersky , Philip Wadler , Martin Wehr, A second look at overloading, Proceedings of the seventh international conference on Functional programming languages and computer architecture, p.135-146, June 26-28, 1995, La Jolla, California, United States
|
|
|
|
|
|
S. K. Abdali , Guy W. Cherry , Neil Soiffer, An object-oriented approach to algebra system design, Proceedings of the fifth ACM symposium on Symbolic and algebraic computation, p.24-30, July 21-23, 1986, Waterloo, Ontario, Canada
|
|
|
|
|
|
|
|
|
D. Kapur , D. R. Musser , A. A. Stepanov, Operators and algebraic structures, Proceedings of the 1981 conference on Functional programming languages and computer architecture, p.59-64, October 18-22, 1981, Portsmouth, New Hampshire, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|