Tyler wrote:
> So why not use the "function()" style for this. Why do you need a
> specially named "new" method? This isn't class based programming.
> Pretending that it is only deceives the reader about very important
> architectural differences in the model of computation.
I have to put in an objection to this argument (if not to its
conclusions). Python has demonstrated dramatically that if you provide
to programmers a "class based" model which is actually implemented in
the language itself on top of a more flexible model, that large amounts
of programmers can happily adopt the class based model without ever
thinking about the underlying stuff, and those few programmers who want
to use the underlying stuff can do so without disrupting the lives of
the others.
It has been a huge win in Python, and the notion that we should force
programmers to adopt a non-class-based model for their own good is
antithetical to the kind of mainstream success that you aim for.
Regards,
Zooko