Abstract
Object-oriented languages with multiple inheritance and automatic conflict resolution typically use a linearization of superclasses to determine which version of a property to inherit when several superclasses provide definitions. Recent work has defined several desirable characteristics for linearizations, the most important being monotonicity, which prohibits inherited properties from skipping over direct superclasses. Combined with Dylan's sealing mechanism, a monotonic linearization enables some compile-time method selection that would otherwise be impossible in the absence of a closed-world assumption.The Dylan linearization is monotonic, easily described, strictly observes local precedence order, and produces the same ordering as CLOS when that is monotonic. We present an implementation based on merging and a survey of class heterarchies from several large programs, analyzing where commonly used linearizations differ.
- Apple 92 Apple Computer, Inc. Dylan: an object-orienteddynamic language. 1992.Google Scholar
- Apple 94 Apple Computer, Inc. Dylan Interim Reference Manual. 1994.Google Scholar
- Baker 91 Henry G. Baker. CLOStrophobia: Its Etiology and Treatment. ACM OOPS Messenger 2(4), October 1991. Google Scholar
Digital Library
- DHHM 92 R. Ducournau, M. Habib, M. Huchard, and M.L. Mugnier. Monotonic Conflict Resolution Mechanisms for inheritance. OOPSLA '92 Proceedings, October 1992. Google Scholar
Digital Library
- DHHM 94 R. Ducournau, M. Habib, M. Huchard, and M.L. Mugnier. Proposal for a Monotonic Multiple Inheritance Linearization. OOPSLA '94 Proceedings, October 1994. Google Scholar
Digital Library
- ES 90 Margaret A. Ellis and Bjarne Stroustrup. The Annotated C++ Reference Manual. Addison-Wesley, 1990. Google Scholar
Digital Library
- KdRB 91 Gregor Kiczales, Jim des Rivi~res, and Daniel G. Bobrow. The Art of the Metaobject Protocol. MIT Press, 1991. Google Scholar
Digital Library
- MY 94 Scott McKay, William York, et. al. Common Lisp Interface Manager (CLIM II) Specification. 1994.Google Scholar
- Meyer 88 Bertrand Meyer. Object-oriented Software Construction. Prentice Hall, 1988. Google Scholar
Digital Library
- Moon 86 David A. Moon. Object-oriented Programming with Flavors. OOPSLA '86 Proceedings, November 1986. Google Scholar
Digital Library
- SB 86 Mark Stefik and Daniel G. Bobrow. Object-Oriented Programming: Themes and Variations. AI Magazine 6(4), 1986. Google Scholar
Digital Library
- Shalit 96 Andrew L.M. Shalit, Dytan Reference Manual. Addison-Wesley, 1996. Available as http : //www. cambridge, apple, com/dylan/drm/drm-i .html on the World Wide Web.Google Scholar
- Steele 90 Guy L. Steele, Jr. Common Lisp." the Language (2nd edition). Digital Press, 1990. Google Scholar
Digital Library
Index Terms
A monotonic superclass linearization for Dylan
Recommendations
A monotonic superclass linearization for Dylan
OOPSLA '96: Proceedings of the 11th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applicationsObject-oriented languages with multiple inheritance and automatic conflict resolution typically use a linearization of superclasses to determine which version of a property to inherit when several superclasses provide definitions. Recent work has ...
Proposal for a monotonic multiple inheritance linearization
OOPSLA '94: Proceedings of the ninth annual conference on Object-oriented programming systems, language, and applicationsPrevious studies concerning multiple inheritance convinced us that a better analysis of conflict resolution mechanisms was necessary. In [DHHM92], we stated properties that a sound mechanism has to respect. Among them, a monotonicity principle plays a ...
Approximate Feedback Linearization: A Homotopy Operator Approach
In this paper, we present an approach for finding feedback linearizable systems that approximate a given single-input nonlinear system on a given compact region of the state space. First, we show that if the system is close to being involutive, ...






Comments