Author: larry Date: Mon May 21 08:22:06 2007 New Revision: 14398 Modified: doc/trunk/design/syn/S12.pod
Log: Dehuffmanized "super" to "nonfinal" for clarity and parsimony. Modified: doc/trunk/design/syn/S12.pod ============================================================================== --- doc/trunk/design/syn/S12.pod (original) +++ doc/trunk/design/syn/S12.pod Mon May 21 08:22:06 2007 @@ -12,9 +12,9 @@ Maintainer: Larry Wall <[EMAIL PROTECTED]> Date: 27 Oct 2004 - Last Modified: 19 May 2007 + Last Modified: 21 May 2007 Number: 12 - Version: 51 + Version: 52 =head1 Overview @@ -1649,7 +1649,7 @@ =head1 Open vs Closed Classes -By default, all classes in Perl are non-final ("super"), which means +By default, all classes in Perl are non-final, which means you can potentially derive from them. They are also open, which means you can add more methods to them, though you have to be explicit that that is what you're doing: @@ -1672,16 +1672,16 @@ which means that at the end of the main compilation (C<CHECK> time) the optimizer is allowed to look for candidate classes to close or finalize. But anyone (including the main application) can request -that any class stay open or super, and the class closer/finalizer +that any class stay open or nonfinal, and the class closer/finalizer must honor that. - use class :open<Mammal Insect> :super<Str> + use class :open<Mammal Insect> :nonfinal<Str> These properties may also be specified on the class definition: class Mammal is open {...} class Insect is open {...} - class Str is super {...} + class Str is nonfinal {...} or by lexically scoped pragma around the class definition: @@ -1691,7 +1691,7 @@ class Insect {...} } { - use class :super; + use class :nonfinal; class Str {...} }