C3 linearization

C3 linearization

The C3 superclass linearization is an algorithm used primarily to obtain a consistent linearization of a multiple inheritance hierarchy in object-oriented programming. This linearization is used to resolve the order in which methods should be inherited, and is often termed "MRO" for Method Resolution Order. The name C3 refers to the three important properties of the resulting linearization: a consistent extended precedence graph, preservation of local precedence order, and monotonicity. It was first published at the 1996 OOPSLA conference, in a paper entitled "A Monotonic Superclass Linearization for Dylan" [cite conference
date = 1996-06-28
title = A Monotonic Superclass Linearization for Dylan
url = http://www.webcom.com/haahr/dylan/linearization-oopsla96.html
booktitle = OOPSLA '96 Conference Proceedings
pages = 69–82
publisher = ACM Press
doi = 10.1145/236337.236343
id = ISBN 0-89791-788-X
] . Subsequently, it has been chosen as the default algorithm for method resolution in Python 2.3, Perl 6, and Parrot. It is also available as an alternative, non-default MRO in the core of Perl 5 starting with version 5.10.0. An extension implementation for earlier versions of Perl 5 named [http://search.cpan.org/dist/Class-C3 Class::C3] exists on CPAN.

References

External links

* [http://www.python.org/download/releases/2.3/mro/ Python 2.3's use of C3 MRO]
* [http://use.perl.org/~autrijus/journal/25768 Perl6 will use C3 MRO]
* [http://aspn.activestate.com/ASPN/Mail/Message/perl6-internals/2746631 Parrot uses C3 MRO]
* [http://search.cpan.org/dist/perl/lib/mro.pm C3 MRO available in Perl 5.10]
* [http://search.cpan.org/dist/Class-C3/ Perl 5 extension for C3 MRO on CPAN]


Wikimedia Foundation. 2010.

Игры ⚽ Нужна курсовая?

Look at other dictionaries:

  • linearization — linearization. См. линеаризация. (Источник: «Англо русский толковый словарь генетических терминов». Арефьев В.А., Лисовенко Л.А., Москва: Изд во ВНИРО, 1995 г.) …   Молекулярная биология и генетика. Толковый словарь.

  • Linearization — In mathematics and its applications, linearization refers to finding the linear approximation to a function at a given point. In the study of dynamical systems, linearization is a method for assessing the local stability of an equilibrium point… …   Wikipedia

  • linearization — linearizacija statusas T sritis automatika atitikmenys: angl. linearization vok. Linearisierung, f rus. линеаризация, f pranc. linéarisation, f …   Automatikos terminų žodynas

  • linearization — noun see linearize …   New Collegiate Dictionary

  • linearization — See linearize. * * * …   Universalium

  • linearization — noun a) The modification of a system such that its output is linearly dependent on its input b) A linear approximation of a non linear system See Also: linearize …   Wiktionary

  • Linearization — Линеаризация …   Краткий толковый словарь по полиграфии

  • linearization — lin·ear·iza·tion …   English syllables

  • linearization — ˌlinēərə̇ˈzāshən noun ( s) 1. : the process of linearizing or the condition of being linear 2. : a thing made linear * * * linearīzāˈtion or linearīsāˈtion noun • • • Main Entry: ↑ …   Useful english dictionary

  • Feedback linearization — is a common approach used in controlling nonlinear systems. The approach involves coming up with a transformation of the nonlinear system into an equivalent linear system through a change of variables and a suitable control input. Feedback… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”