Karl Lieberherr

Karl J. Lieberherr is a professor of Computer Science at Northeastern University, in Boston.

He did his studies at ETH Zurich, obtaining an M.S. in 1973 and a Ph.D. in 1977.

He wrote the first book about adaptive programming. The work on this theme was one of several secondary influences on the development of aspect-oriented programming.

Adaptive programming tries to create applications that are easy to maintain and evolve, creating a new abstraction layer in the design and implementation of Object-Oriented Applications. This concept takes encapsulation to a new level allowing changes in the way an object works without changing the interface with other objects. This technique solves the situations where an object takes assumptions about how other objects work and a change in this object takes down that assumption creating a chain effect in the rest of the system.

Aspect oriented programming affects the way an application is created. Following the directives of this concept, one could create separate objects that treat data and process in a separated way. This allows a flexible application that can change and evolve easily.