Abstract
Early generic concepts in programming languages were mixed-type arithmetic (e.g., “+” used with any combination of fixed- and floating-point numbers) and “print” functions which could be applied to any of a language's objects. Generic concepts reduce the number of terms which must be remembered and permit considerable condensation of language design. Three different paths in the development of generic-concept languages have been followed by APL, Algol 68, and object-oriented languages such as SIMULA 67 and Smalltalk. APL was the earliest and one of the most interesting applications of generic-concept methods, but now makes the weakest use of these ideas.
My talk will use slides and movies to show how the message-object programming system Smalltalk makes use of generic concepts embedded in class descriptions to give rise to a wide variety of simply programmed dynamic simulations including graphic animation, music synthesis, document layout and retrieval, and APL-like calculation features. Many of these systems have been brought to life by child and adult novice programmers.
A short list of references is given for those wishing more introductory information about Smalltalk.
- 1 A. C. Kay. "Microelectronics and the Personal Computer". Scientific American, vol. 237 (September 1977), pp. 230-244.Google ScholarCross Ref
- 2 D. Ingalls. "The Smalltalk-76 Programming System, Design and Implementation." Proceedings, Fifth Annual Symposium on Principles of Programming Languages. Google ScholarDigital Library
- 3 A. C. Kay and A. Goldberg. Personal Dynamic Media Xerox Palo Alto Research Center. 1975. Also, excerpts in IEEE Computer, March 1977.Google Scholar
Index Terms
- Generic programming: APL and Smalltalk
Recommendations
Generic programming: APL and Smalltalk
APL '81: Proceedings of the international conference on APLEarly generic concepts in programming languages were mixed-type arithmetic (e.g., “+” used with any combination of fixed- and floating-point numbers) and “print” functions which could be applied to any of a language's objects. Generic concepts reduce ...
A comparative study of language support for generic programming
OOPSLA '03: Proceedings of the 18th annual ACM SIGPLAN conference on Object-oriented programing, systems, languages, and applicationsMany modern programming languages support basic generic programming, sufficient to implement type-safe polymorphic containers. Some languages have moved beyond this basic support to a broader, more powerful interpretation of generic programming, and ...
Evolution of Generic Programming in OOPLs
Generic Programming enables program constructs to be reused in a variety of situations. In programming languages, idea of generic programming is being opted through a variety of generic mechanisms. Generic mechanisms are either directly applied to pre-...
Comments