summaryrefslogtreecommitdiff
path: root/Doc/ref
diff options
context:
space:
mode:
authorAndrew M. Kuchling <amk@amk.ca>2005-12-04 16:07:15 +0000
committerAndrew M. Kuchling <amk@amk.ca>2005-12-04 16:07:15 +0000
commit80e4657c2d9c426d892ca870d66f9d506ea95faa (patch)
treec82cbc56706705b5b1ecc48578ad01e568d983fa /Doc/ref
parent3049b1602d23caf7944af6095a46f3757c66faba (diff)
downloadcpython-80e4657c2d9c426d892ca870d66f9d506ea95faa.tar.gz
Add placeholder section on old and new-style classes
Diffstat (limited to 'Doc/ref')
-rw-r--r--Doc/ref/ref3.tex13
1 files changed, 13 insertions, 0 deletions
diff --git a/Doc/ref/ref3.tex b/Doc/ref/ref3.tex
index f53d42594c..9eba78fe0d 100644
--- a/Doc/ref/ref3.tex
+++ b/Doc/ref/ref3.tex
@@ -1031,7 +1031,20 @@ by the built-in \function{classmethod()} constructor.
\end{description} % Types
+%=========================================================================
+\section{New-style and classic classes}
+Classes and instances come in two flavours: old-style or classic, and new-style.
+
+Old-style classes were the only flavour of class available before Python 2.1. While they supported multiple inheritance, the rules for resolving names were chosen for ease of implementation. These rules turn out to make multiple inheritance hard to use in certain situations.
+
+New-style classes were introduced in Python 2.1, and change the method resolution order to make multiple inheritance more usable.
+
+The plan is to eventually drop old-style classes, leaving only the semantics of new-style classes. This change will probably only be feasible in Python 3.0.
+
+
+
+%=========================================================================
\section{Special method names\label{specialnames}}
A class can implement certain operations that are invoked by special