From: Chuck E. <ChuckEsterbrook@StockAlerts.com> - 2002-03-16 03:57:15
|
On Friday 15 March 2002 07:15 pm, Tripp Lilley wrote: > I'm planning on converting wholesale to Python 2.2. While I'm doing > so, I'm going to spend some head-time getting to know iterators, > generators, the new attributes stuff, and so on. > > What are you feelings on making MK require 2.2? One of the things I > don't like about it right now is the impedance mismatch between how > MK objects behave and how pure Python objects behave. I -think- > (though I haven't explored it fully) that some of 2.2's features > could lessen, if not eliminate, this mismatch. > > Since MK's thoroughly advertised as being alpha right now anyway, > and, to the best of my knowledge, you, me, and Geoff are the only > people with actual serious production apps running on top of it, I > think now would be the most appropriate time for me to take on such a > project. I've considered the same thing, but mostly regarding properties. I'm not touching generators any time soon and iterators are pure frosting that we can get around to whenever. I don't think iterators will actually shorten your code. eg, you'll still have pretty much the same for loops. BUT Python 2.2 has more caveats about its new features than I can fit in my head. It also has some bugs that have been mentioned on their site, but I don't remember them off the top of my head. And Guido has admitted that the syntaxes for things like invoking super and specifying properties are less than ideal. For the first time, I'm actually skipping a Python version. I prefer to wait for the next one hoping that bugs, caveats and syntactic ugliness get reduced. I would make the same recommendation to you, but it's your call. There's no reason we couldn't enhance MK to support 2.0 through 2.2 as Python seems flexible enough for that sort of thing. But frankly, 2.2 isn't exactly a pot of honey. Just a step in the right direction. BTW There are more MK users coming out of the woodwork on the mailing list, and had I thought of it, I would have marked it beta for the last release. Also, I plan that a future version of Webware would use the attributes/properties style rather than the current all-methods style. Such a change would come with a script to update existing sites. We have, of course, big juicy projects to develop and test such a script with. :-) self.store.model.klass('foo') self.session['foo'] I CCed webware-devel as these seem like thoughts to be shared. -Chuck |
From: Tavis R. <ta...@re...> - 2002-03-16 04:05:35
|
On Friday 15 March 2002 19:51, Chuck Esterbrook wrote: > Also, I plan that a future version of Webware would use the > attributes/properties style rather than the current all-methods > style. Such a change would come with a script to update existing > sites. We have, of course, big juicy projects to develop and test > such a script with. :-) I hope you'll wait until the properties thing is implemented a bit better in Python, and without all the caveats. I started implementing a version of the experimental webware codebase I'm working that used properties, but it was a nightmare. It broke so many subtle and unexpected things that I wouldn't recommend changing any existing large python project to properties yet. Tavis |
From: Tripp L. <tr...@hf...> - 2002-03-16 04:12:13
|
On Fri, 15 Mar 2002, Tavis Rudd wrote: > I hope you'll wait until the properties thing is implemented a bit > better in Python, and without all the caveats. I started > implementing a version of the experimental webware codebase I'm > working that used properties, but it was a nightmare. It broke so > many subtle and unexpected things that I wouldn't recommend changing > any existing large python project to properties yet. I'll keep it in mind. I'm basically on the cusp of a wholesale rewrite of my project, anyway, so I'm not too worried about breaking things. We shall see what happens :) |
From: Tripp L. <tr...@hf...> - 2002-03-16 04:11:09
|
On Fri, 15 Mar 2002, Chuck Esterbrook wrote: > BUT Python 2.2 has more caveats about its new features than I can fit > in my head. It also has some bugs that have been mentioned on their > site, but I don't remember them off the top of my head. And Guido has > admitted that the syntaxes for things like invoking super and > specifying properties are less than ideal. > > For the first time, I'm actually skipping a Python version. I prefer to > wait for the next one hoping that bugs, caveats and syntactic ugliness > get reduced. I think what I'll probably do at this point is wade through the 2.2 new stuff tutorials and docs, play with some concepts, and possibly do an "experimental" branch of MK. If my experimental branch turns out to be partly or wholly useful, we can tackle integration piecemeal down the road. That way, I can concentrate first and foremost on the features I need for the Monkey, and defer any sort of compatibility until after I've worked out the ideological and technical kinks :) And if Python 3.0 comes out in the meantime, I can migrate it before it's integrated into the mainline :) |
From: <ir...@ms...> - 2002-03-16 05:40:12
|
On Fri, Mar 15, 2002 at 11:11:23PM -0500, Tripp Lilley wrote: > On Fri, 15 Mar 2002, Chuck Esterbrook wrote: > > > BUT Python 2.2 has more caveats about its new features than I can fit > > in my head. It also has some bugs that have been mentioned on their > > site, but I don't remember them off the top of my head. And Guido has > > admitted that the syntaxes for things like invoking super and > > specifying properties are less than ideal. > > > > For the first time, I'm actually skipping a Python version. I prefer to > > wait for the next one hoping that bugs, caveats and syntactic ugliness > > get reduced. > > I think what I'll probably do at this point is wade through the 2.2 new > stuff tutorials and docs, play with some concepts, and possibly do an > "experimental" branch of MK. If my experimental branch turns out to be > partly or wholly useful, we can tackle integration piecemeal down the > road. Just keep in mind that properties themselves might change, and then you'll have to update your application again. The same for slots and the super() call. The developers themselves aren't fully satisfied with the current APIs, and the features haven't been widely used enough to be sure all the potential bugs are ironed out. So if you program with them at this point, you're essentially beta testing them. Generators are prob'ly more stable, and iterators definitely are since they're heavily used now in the Python core. -- -Mike (Iron) Orr, ir...@ms... (if mail problems: ms...@oz...) http://iron.cx/ English * Esperanto * Russkiy * Deutsch * Espan~ol |
From: Tripp L. <tl...@pe...> - 2002-03-16 07:32:02
|
On Fri, 15 Mar 2002, Mike Orr wrote: > Just keep in mind that properties themselves might change, and then > you'll have to update your application again. The same for slots and > the super() call. The developers themselves aren't fully satisfied with > the current APIs, and the features haven't been widely used enough to > be sure all the potential bugs are ironed out. So if you program with > them at this point, you're essentially beta testing them. "We biologists have a special word for 'stable'. It is 'dead'." At this point, I'm running development versions of damned near everything :) As long as I have a snapshot that I can continue to use, I can weather the API changes until they stabilize, and, in the meantime, start fleshing out my ideas of how to use the concepts. I tend to rewrite things every 6-9 months, anyway, just to fuck with myself. I'd rather rewrite than maintain, any day :) |
From: Chuck E. <ChuckEsterbrook@StockAlerts.com> - 2002-03-16 17:37:25
|
On Friday 15 March 2002 11:32 pm, Tripp Lilley wrote: > I tend to rewrite things every 6-9 months, anyway, just to fuck with > myself. I'd rather rewrite than maintain, any day :) Must be nice to have that kind of free time. :-) Well you've beened warned 4 times in 4 messages... Mwuhahahahaha! Ahem. Excuse me... -Chuck |