An efficient implementation of SELF a dynamically-typed object-oriented language based on prototypes
OOPSLA '89 Conference proceedings on Object-oriented programming systems, languages and applications
Software engineering: the production of quality software (2nd ed.)
Software engineering: the production of quality software (2nd ed.)
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Software architecture: perspectives on an emerging discipline
Software architecture: perspectives on an emerging discipline
N degrees of separation: multi-dimensional separation of concerns
Proceedings of the 21st international conference on Software engineering
Zones, contracts and absorbing changes: an approach to software evolution
Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Software Maintenance Management
Software Maintenance Management
IBM Systems Journal
Hi-index | 0.00 |
This position paper takes the view that modern programming languages, their tools and software architectures do not adequately support the programmer in their day-to-day task of evolving large, long-lived, distributed systems. Evolving programs is the dominant cost on these kinds of system projects and the programmer is not as well supported in this task as they should be. This is argued by presenting what these three technologies do well and less well at code development time and at system run-time. We discuss the various degrees of support that are offered and then describe what can be improved for the tractable problems and what can be done for a particular intractable problem.