<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META NAME="Generator" CONTENT="MS Exchange Server version 6.5.7651.59">
<TITLE>RE: [Python-3000] Compiling the PEP 3115 metaclass syntax</TITLE>
</HEAD>
<BODY>
<!-- Converted from text/plain format -->

<P><FONT SIZE=2>Guido van Rossum wrote:<BR>
&gt; The PEP proposes that the class statement accepts<BR>
&gt; keyword arguments, *args, and **kwds syntax as well<BR>
&gt; as positional bases. This is a bit messy to compile<BR>
&gt; and execute, but we already have this, of course, in<BR>
&gt; the code for calling regular functions.<BR>
&gt;<BR>
&gt; So I think it would be acceptable to this into a<BR>
&gt; call to a new (hidden) built-in function, named<BR>
&gt; __build_class__. Then that this class definition:<BR>
&gt;<BR>
&gt;&nbsp;&nbsp; class C(A, B, metaclass=M, other=42, *more_bases,<BR>
&gt; *more_kwds):<BR>
&gt;&nbsp;&nbsp;&nbsp; ...<BR>
&gt;<BR>
&gt; would translate into this:<BR>
&gt;<BR>
&gt;&nbsp;&nbsp; C = __build_class__(&lt;func&gt;, 'C', A, B, metaclass=M,<BR>
&gt; other=42, *more_bases, *more_kwds)<BR>
<BR>
This sounds familiar ;)<BR>
<A HREF="http://mail.python.org/pipermail/python-dev/2004-March/043562.html">http://mail.python.org/pipermail/python-dev/2004-March/043562.html</A><BR>
<BR>
Why not just call that function &quot;class&quot; and get it over with? ;)<BR>
<BR>
<BR>
Robert Brewer<BR>
System Architect<BR>
Amor Ministries<BR>
fumanchu@amor.org</FONT>
</P>

</BODY>
</HTML>