Stéphane ,
i found some amazing stuff for you in Squeak. Look for senders of: #isKindOf:orOf: and if you not yet fully amazed , then look at senders of #ownerThatIsA: Amazing! 2009/6/29 Igor Stasenko <[hidden email]>: > 2009/6/29 Stéphane Rollandin <[hidden email]>: >>>>> - Not backward compatible >>> >>> because, unfortunately, it is a main obstacle for moving forward. >>> Or maybe not? Maybe we should start making amazing stuff right now? >> >> I am doing amazing stuff with Squeak right now. I have been doing so for >> years. >> > > Then we're putting different meaning in an 'amazing' word. > I can do amazing stuff, but its often requires hacks, workarounds and > other different gotchas, > which i hate to put into my code. And after all of that, fairly, i > can't call it amazing anymore. Can you? > >> Now that Pharo provides the non-backward compatible way, which is fine, I >> don't understand why the question arises for Squeak once again. Pharo is the >> solution, isn't it ? (and I mean it). >> > > You may feel content about code, which rots there for years, and > no-one even cares rewriting/optimizing/making it better. > But i don't. I don't like sitting on the gas canister and hoping that > next spark will not blow it up. > >> Stef >> > > > -- > Best regards, > Igor Stasenko AKA sig. > -- Best regards, Igor Stasenko AKA sig. |
Igor Stasenko a écrit :
> Stéphane , > i found some amazing stuff for you in Squeak. > > Look for senders of: > > #isKindOf:orOf: > > and if you not yet fully amazed , then look at senders of > > #ownerThatIsA: > > Amazing! that's cool. how boring life would be with non-amazing software :) now, seriously: I never said things should not be cleaned up. my view about backward compatibility and progress is quite balanced, to me. I'm sorry I can't make it convincing, and sorry to end up being considered as an extremist opposed to any change. Stef |
Hi Stéphane,
2009/6/29 Stéphane Rollandin <[hidden email]>: > now, seriously: I never said things should not be cleaned up. my view about > backward compatibility and progress is quite balanced, to me. I'm sorry I > can't make it convincing, and sorry to end up being considered as an > extremist opposed to any change. before things get heated: I really don't think anyone seriously takes this view. :-) (I, for one, certainly don't.) Best, Michael |
In reply to this post by Stéphane Rollandin
2009/6/29 Stéphane Rollandin <[hidden email]>:
> Igor Stasenko a écrit : >> >> Stéphane , >> i found some amazing stuff for you in Squeak. >> >> Look for senders of: >> >> #isKindOf:orOf: >> >> and if you not yet fully amazed , then look at senders of >> >> #ownerThatIsA: >> >> Amazing! > > that's cool. how boring life would be with non-amazing software :) > > > now, seriously: I never said things should not be cleaned up. my view about > backward compatibility and progress is quite balanced, to me. I'm sorry I > can't make it convincing, and sorry to end up being considered as an > extremist opposed to any change. > Be sure, i'm not an extremist as well. But sometimes we need a more bold words to convince people abandon their fears & jump in into a hot & fresh boiling soup :) Every surgeon knows, that in order to force the bones to accrete correctly, you have to break them again. > Stef > -- Best regards, Igor Stasenko AKA sig. |
> Be sure, i'm not an extremist as well.
> But sometimes we need a more bold words to convince people abandon > their fears & jump in into a hot & fresh boiling soup :) > Every surgeon knows, that in order to force the bones to accrete > correctly, you have to break them again. I'm not driven by fear. Stef |
2009/6/29 Stéphane Rollandin <[hidden email]>:
>> Be sure, i'm not an extremist as well. >> But sometimes we need a more bold words to convince people abandon >> their fears & jump in into a hot & fresh boiling soup :) >> Every surgeon knows, that in order to force the bones to accrete >> correctly, you have to break them again. > > I'm not driven by fear. > I know you not. Do not interpret my words literally :) > Stef > > > -- Best regards, Igor Stasenko AKA sig. |
In reply to this post by Stéphane Rollandin
BTW you did not answer this question: now that Pharo has taken the
non-backward compatibility road, why is the question again arising for Squeak ? people have choice, now. Stef |
2009/6/29 Stéphane Rollandin <[hidden email]>:
> BTW you did not answer this question: now that Pharo has taken the > non-backward compatibility road, why is the question again arising for > Squeak ? > Simply because: " Every surgeon knows, that in order to force the bones to accrete correctly, you have to break them again. " So, each time i thinking about potential changes in Squeak to improve it, guess what? It doesn't makes sense to do that w/o cardinal changes in some classes/protocols. Maybe it is my personal style/perception, who knows, maybe i'm too focused on cleaning stuff. But it will be last day of my life as programmer, if i start using #isKindOf:orOf: or similar stuff. Or start using stuff which using #isKindOf:orOf: . > people have choice, now. > > Stef > -- Best regards, Igor Stasenko AKA sig. |
> Maybe it is my personal style/perception, who knows, maybe i'm too
> focused on cleaning stuff. But it will be last day of my life as > programmer, if i start using #isKindOf:orOf: or similar stuff. Or > start using stuff which using #isKindOf:orOf: . I hereby grant you my permission to kill #isKindOf:orOf: and all of its friends and family. Stef |
In reply to this post by Igor Stasenko
Igor Stasenko wrote:
> Stéphane , > i found some amazing stuff for you in Squeak. > > Look for senders of: > > #isKindOf:orOf: > > and if you not yet fully amazed , then look at senders of > > #ownerThatIsA: > > Amazing! It would be useful if you stopped being so polemic. You are not making any point that I can see. Cheers, - Andreas > 2009/6/29 Igor Stasenko <[hidden email]>: >> 2009/6/29 Stéphane Rollandin <[hidden email]>: >>>>>> - Not backward compatible >>>> because, unfortunately, it is a main obstacle for moving forward. >>>> Or maybe not? Maybe we should start making amazing stuff right now? >>> I am doing amazing stuff with Squeak right now. I have been doing so for >>> years. >>> >> Then we're putting different meaning in an 'amazing' word. >> I can do amazing stuff, but its often requires hacks, workarounds and >> other different gotchas, >> which i hate to put into my code. And after all of that, fairly, i >> can't call it amazing anymore. Can you? >> >>> Now that Pharo provides the non-backward compatible way, which is fine, I >>> don't understand why the question arises for Squeak once again. Pharo is the >>> solution, isn't it ? (and I mean it). >>> >> You may feel content about code, which rots there for years, and >> no-one even cares rewriting/optimizing/making it better. >> But i don't. I don't like sitting on the gas canister and hoping that >> next spark will not blow it up. >> >>> Stef >>> >> >> -- >> Best regards, >> Igor Stasenko AKA sig. >> > > > |
In reply to this post by Stéphane Rollandin
2009/6/29 Stéphane Rollandin <[hidden email]>:
>> Maybe it is my personal style/perception, who knows, maybe i'm too >> focused on cleaning stuff. But it will be last day of my life as >> programmer, if i start using #isKindOf:orOf: or similar stuff. Or >> start using stuff which using #isKindOf:orOf: . > > I hereby grant you my permission to kill #isKindOf:orOf: and all of its > friends and family. > Wellcome ... http://lists.gforge.inria.fr/pipermail/pharo-project/2008-November/003603.html http://lists.gforge.inria.fr/pipermail/pharo-project/2009-January/004623.html to Pharo! Muhahaha :)))) > > Stef > > > -- Best regards, Igor Stasenko AKA sig. |
On 29.06.2009, at 10:11, Igor Stasenko wrote:
> 2009/6/29 Stéphane Rollandin <[hidden email]>: >>> Maybe it is my personal style/perception, who knows, maybe i'm too >>> focused on cleaning stuff. But it will be last day of my life as >>> programmer, if i start using #isKindOf:orOf: or similar stuff. Or >>> start using stuff which using #isKindOf:orOf: . >> >> I hereby grant you my permission to kill #isKindOf:orOf: and all of >> its >> friends and family. >> > > Wellcome ... > > http://lists.gforge.inria.fr/pipermail/pharo-project/2008-November/003603.html > http://lists.gforge.inria.fr/pipermail/pharo-project/2009-January/004623.html > > to Pharo! > > Muhahaha :)))) I don't think that is what Stéphane meant. "Refactoring is making changes to a body of code in order to improve its internal structure, without changing its external behavior." -- M. Fowler Refactoring is Good. We should do more of it in Squeak. Replace use of #isKindOf:orOf: with a more sensible design. Yay! Ripping out stuff breaking features for a million users is not. Now Pharo does not have millions of users to care about yet, they are making a new system with a different focus. Great for them. But this does not really apply to Squeak. - Bert - |
> Ripping out stuff breaking features for a million users is not. Now
> Pharo does not have millions of users to care about yet, they are making > a new system with a different focus. Great for them. But this does not > really apply to Squeak. right. BTW I can see Pharo having exactly the same debate in a couple of years ahead, especially if it tries to keep both its research-oriented and professionnal-status aims at the same time. it will have its own backward compatibility to maintain after a while; at the moment it's all new and bright and pink... we all know how it goes. Stef |
In reply to this post by Stéphane Rollandin
On Jun 29, 2009, at 3:10 AM, Stéphane Rollandin wrote: > now, seriously: I never said things should not be cleaned up. my > view about backward compatibility and progress is quite balanced, to > me. I'm sorry I can't make it convincing, and sorry to end up being > considered as an extremist opposed to any change. > > Stef I applaud your efforts - all of you - on the creation side. I abandoned my Python base this last year because I got tired of the language changing. This system was the result of 10 years of part- time development. I like most of the changes to the language over the years, especially as they firmed up the OO aspects (names spaces, etc.), I just simply got tired of rewriting my code every time a new version came out and I wanted to utilize the features. And sometimes that was because some 3rd party library wasn't being ported to the new version and I was forced to adopt a new library. (Sure, I am being a little dramatic, as not every change was so radical as to require rewrites.) I had some interest in C++ in the mid-1980's... but I did not like that the language definition kept changing (in that era). Fortunately I discovered smalltalk and objective-c around that time. Although, because of the lack of stable (multi-platform) support for objective- C, my shop ended up rolling our own dynamic messaging system (change- notification manager, and all the bells and whistles) in straight-up C... because we knew we would always be able to compile C. For people to get serious about building large apps in Pharo -- and the following may not be one's goal, depending on who we are talking about -- it MUST have a stable interface (set of methods) to some core classes. Ideally, the core environment should have the minimal interface that is guaranteed not to change. The implementation can be whatever fulfills the behavioral requirements best at the time; the end user (a programmer) does not care, so long as a given interface provides a predictable behavior across versions. Is this a good time to talk about packages and namespaces? As a user (programmer), it would be nice to be able to specify which extensions (or behavioral overrides) to the core classes to enable. Ideally these extension sets/definitions could co-exist in the same image... but that is NOT required to provide the capability. It seems that a such capabilities would allow one to clean up the core, without abandoning existing interfaces; and hence, without completely breaking legacy code, e.g. to have #isKindOf:orOf: perhaps you need to import, or load the package KitchenSink. It *seems* that such capabilities could help bridge any future gaps between Squeak & Pharo, for example. Of course, having these capabilities is one thing, and going through and scrubbing the code is another. Which, aside from the effort, still requires a committee to decide what is core (and to be permanently supported) and what is not. -- back to broad adoption issues... Speed/performance is also important in order to make Pharo appeal to a broader audience. Xupery might solve the problem. (I assume the C code generated has been highly optimized -- does any person "in the know" believe there is an opportunity for improving the C code?) -- [Did I write something like this last week? I think i did, and then deleted it -- if this is a repeat, my apologies.] Pharo is great. And for my development, I simply do not perform the updates very often, because I do not want to risk entering a debugging cycle on things that currently work. But the momentum is exciting and is part of the attraction! With appreciation, Cam |
Free forum by Nabble | Edit this page |