|
Re: Production Pyrex Re: Pyrex at Pycon: msg#00001python.pyrex
Greg Ewing wrote: ... Fair enough. I think you for your honesty in addition to your hard work on Pyrex and your generosity in sharing it with us. I won't push you to accept such a big job but I will disagree with you that Pyrex is any more or less of an experiment than any other open source project. I wouldn't really feel comfortable being BDFL of someone I guess this is where we disagree. As BDFL of your Pyrex or the SourceForge Pyrex or any other open source project, you will make mistakes. Probably bad ones. Python's original type system (everything's an instance!) was a bad mistake that Guido is still digging himself out of. And then there is the division mistake. And the string module. And the old scoping... And... At Pycon, I learned why C has x.y and x->y syntaxes when Pyrex is more elegant in only having one. Andrew Koenig says that the reason was that in the early days, C did no type checking on the -> operator. You could reference a ".foo" member on an integer if you wanted. So instead of deciding whether to dereference before accessing the member based on type, it asked the user to inform it. The other side effect of this typelenessness was that two structs could not have the same member name so you had to prefix them. "Beguiled by the example of PL/I, early C did not tie structure point-ers firmly to the structures they pointed to, and permitted programmers to write pointer->member almost without regard to the type of pointer; such an expression wastaken uncritically as a reference to a region of memory designated by the pointer, while the member name specified only an offset and a type." * http://216.239.53.104/search?q=cache:3Jh1QG8Vqu0J:www.lysator.liu.se/c/chistory.ps+c+struct+typeless+member+prefix&hl=en&ie=UTF-8 PHP totally revamped its object structure between 4 and 5. And I don't think it is any secret how radical the changes between Perl 4, 5 and 6 were. And then there is Apache 1 and 2. And what's left in Linux 2.6 of Linux 1.0? Remember dynamic scope in Lisp? I believe that every open source project is an experiment. Every non-derivative programming language is an experiment. Every one has tons of mistakes that will need to be fixed in the long run. That's why I'm not afraid of making a production branch of Pyrex knowing that one day we'll look back and think that today's Pyrex is hopelessly naive or wrong in some way. The more users Pyrex has, the more feedback you'll get and the sooner you'll uncover the mistakes. >>In the early days of Python, Guido did 95% of the implementation. > > > Pyrex is still very much in that stage, or even earlier > (i.e. 100% implementation). It hasn't even reached version > 1.0 yet, remember! From my point of view, Pyrex is more mature than Python 1.0, PHP 1.0, Perl 1.0, C 1.0, Linux 1.0. Given this I don't know how you will be able to decide when you are ready to call Pyrex 1.0 and allow other committers. But its your language: I presume you have some particular feature set in mind for 1.0. Paul Prescod |
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| Previous by Date: | Re: Production Pyrex Re: Pyrex at Pycon: 00001, Greg Ewing |
|---|---|
| Next by Date: | SystemError: error return without exception set: 00001, Gary Bishop |
| Previous by Thread: | Re: Production Pyrex Re: Pyrex at Pyconi: 00001, Greg Ewing |
| Next by Thread: | Re: Production Pyrex Re: Pyrex at Pycon: 00001, Greg Ewing |
| Indexes: | [Date] [Thread] [Top] [All Lists] |
| News | FAQ | advertise |