People
Faculty Members
Karl J. Lieberherr |
![]() |
Professor Lieberherr focuses on software and hardware design languages and tools, object-oriented software, and algorithms. He codeveloped the theory of P-optimal algorithms for NP-complete problems. He was also the principal designer and implementer of the hardware-description language Zeus, which influenced the design of VHDL.
Professor Lieberherr joined Northeastern University in 1985 and established the Demeter research group. At that time, Demeter/Flavors was an object-oriented programming tool using class diagrams also acting as grammars defining application-specific languages. This separation of structure and grammar from the methods continued in later incarnations, Demeter/C++ and Demeter/Java. Today, Demeter/Java has building blocks for structure/grammar, behavior, synchronization, and data transfer, plus a generic weaver that compiles them.
Professor Lieberherr's observations about structure and structure-shy implementation of behavior led him to adaptive programming (AP), which makes programs both simpler and more powerful. AP helps control tangling between structure and behavior, and prevents unnecessary duplication of structural information. Aspect-oriented programming (AOP), a generalization of AP that Lieberherr's group developed with Xerox PARC, also controls tangling, using cross-cutting building blocks but not traversal strategy graphs. Most recently, Professor Lieberherr's work has involved adaptive plug-and-play components (APPC), which combine ideas of clever composition from the Rondo system with AP.
Professor Lieberherr serves on the advisory board of Tendril Software, Inc., a company commercializing some of the Demeter ideas.
Career Publication Highlights
Lieberherr, Karl J. 1996. Adaptive object-oriented software: The Demeter method with propagation patterns. Boston: PWS Publishing Company.
Lieberherr, Karl J., and Ian Holland. 1989. Assuring good style for object-oriented programs. IEEE Software (September): 38-48.
Lieberherr, Karl J., and Ernst Specker. 1981. Complexity of partial satisfaction. Journal of the ACM 28, no. 2:411-421
