Building Extensible Software:
A Programming Language Perspective
Matthias Felleisen
Why does abstraction matter in software engineering?
What is the key to re-use? What is extensibility or
black-box re-use? What kind of programming protocols
(patterns) implement extensible systems? How can
programming languages support extensibility? These
and other questions arose from work on DrScheme, a
programming environment for introductory programming.
The talk will present partial answers and suggestions
for software engineers and language implementors.
matthias@ccs.neu.edu