Re: [Pharo-project] A contorted way of making things work :)
Well, the assignment within the and: block says it all⦠Fernando On Sat, Dec 22, 2012 at 2:57 AM, Igor Stasenko <siguctua@gmail.com> wrote:
StringMorph>>boundsForBalloon "Some morphs have bounds that are way too big. This is a contorted way of making things work okay in PluggableListMorphs, whose list elements historically have huge widths"
| ownerOwner | ^ ((owner notNil and: [(ownerOwner := owner owner) notNil]) and: [ownerOwner isKindOf: PluggableListMorph]) ifTrue: [self boundsInWorld intersect: ownerOwner boundsInWorld] ifFalse: [super boundsForBalloon]
-- Best regards, Igor Stasenko.
On Sat, 22 Dec 2012, Fernando Olivero wrote:
Well, the assignment within the and: block says it allâ¦
Yeah, blame and flame everyone who doesn't write code the way you do... But before you do that, tell me what's wrong with that assignment. Levente
Fernando
On Sat, Dec 22, 2012 at 2:57 AM, Igor Stasenko <siguctua@gmail.com> wrote: StringMorph>>boundsForBalloon     "Some morphs have bounds that are way too big.  This is a contorted way of making things work okay in PluggableListMorphs, whose list elements historically have huge widths"
    | ownerOwner |     ^ ((owner notNil and: [(ownerOwner := owner owner) notNil]) and:             [ownerOwner isKindOf: PluggableListMorph])         ifTrue:             [self boundsInWorld intersect: ownerOwner boundsInWorld]         ifFalse:             [super boundsForBalloon]
-- Best regards, Igor Stasenko.
On 22 December 2012 13:56, Levente Uzonyi <leves@elte.hu> wrote:
On Sat, 22 Dec 2012, Fernando Olivero wrote:
Well, the assignment within the and: block says it allâ¦
Yeah, blame and flame everyone who doesn't write code the way you do... But before you do that, tell me what's wrong with that assignment.
No need to take it so seriously. I do not know what's wrong with assignment, but taking special action depending on specific class of outer morph smells bad. I'm not saying that i know the right solution to deal with such situation, but apparently it should not be like that.
Levente
Fernando
On Sat, Dec 22, 2012 at 2:57 AM, Igor Stasenko <siguctua@gmail.com> wrote: StringMorph>>boundsForBalloon "Some morphs have bounds that are way too big. This is a contorted way of making things work okay in PluggableListMorphs, whose list elements historically have huge widths"
| ownerOwner | ^ ((owner notNil and: [(ownerOwner := owner owner) notNil]) and: [ownerOwner isKindOf: PluggableListMorph]) ifTrue: [self boundsInWorld intersect: ownerOwner boundsInWorld] ifFalse: [super boundsForBalloon]
-- Best regards, Igor Stasenko.
-- Best regards, Igor Stasenko.
On 2012-12-22, at 09:56, Levente Uzonyi <leves@elte.hu> wrote:
On Sat, 22 Dec 2012, Fernando Olivero wrote:
Well, the assignment within the and: block says it allâ¦
Yeah, blame and flame everyone who doesn't write code the way you do... But before you do that, tell me what's wrong with that assignment.
why do I always have the impression you're at extinction when I read an email from you? I know I can be very annoying as well :D but you should consider a friendlier tone ;)
On Sat, 22 Dec 2012, Camillo Bruni wrote:
On 2012-12-22, at 09:56, Levente Uzonyi <leves@elte.hu> wrote:
On Sat, 22 Dec 2012, Fernando Olivero wrote:
Well, the assignment within the and: block says it allâ¦
Yeah, blame and flame everyone who doesn't write code the way you do... But before you do that, tell me what's wrong with that assignment.
why do I always have the impression you're at extinction when I read an email from you? I know I can be very annoying as well :D but you
If I understand correctly what you're trying to say, then the reason why I don't write mails here more often is because it's pointless.
should consider a friendlier tone ;)
Do you think my question would have been answered if I were using a friendlier tone? I doubt it. Do you think the mail I was replying to was friendlier than mine? I doubt it. Levente
Yeah, blame and flame everyone who doesn't write code the way you do... But before you do that, tell me what's wrong with that assignment.
why do I always have the impression you're at extinction when I read an email from you? I know I can be very annoying as well :D but you
If I understand correctly what you're trying to say, then the reason why I don't write mails here more often is because it's pointless.
should consider a friendlier tone ;)
Do you think my question would have been answered if I were using a friendlier tone? I doubt it. Do you think the mail I was replying to was friendlier than mine? I doubt it.
Levente We do not consider you as a asshole or whatever. I personally always consider what you are writing with interest and you do not need to write it in a blunt way for that. I do not know why you think that sending emails here is pointless but this is not true. We value feedback, questions and remarks of people. My objective is to build an ecosystem where people can make business and invent their future, no more. Now for this exact point, morphic has some dark corners and we should address them one by one and we will. Now if certain invariants would be clear and respected the code would be in general much nicer. Stef
Is there a list of the pitfalls of morphic somewhere ? ________________________________ From: Stéphane Ducasse <stephane.ducasse@inria.fr> To: Pharo-project@lists.gforge.inria.fr Sent: Sunday, 23 December 2012, 17:19 Subject: Re: [Pharo-project] A contorted way of making things work :)
Yeah, blame and flame everyone who doesn't write code the way you do... But before you do that, tell me what's wrong with that assignment.
why do I always have the impression you're at extinction when I read an email from you? I know I can be very annoying as well :D but you
If I understand correctly what you're trying to say, then the reason why I don't write mails here more often is because it's pointless.
should consider a friendlier tone ;)
Do you think my question would have been answered if I were using a friendlier tone? I doubt it. Do you think the mail I was replying to was friendlier than mine? I doubt it.
Levente We do not consider you as a asshole or whatever. I personally always consider what you are writing with interest and you do not need to write it in a blunt way for that. I do not know why you think that sending emails here is pointless but this is not true. We value feedback, questions and remarks of people. My objective is to build an ecosystem where people can make business and invent their future, no more. Now for this exact point, morphic has some dark corners and we should address them one by one and we will. Now if certain invariants would be clear and respected the code would be in general much nicer. Stef
On 23 December 2012 16:54, dimitris chloupis <thekilon@yahoo.co.uk> wrote:
Is there a list of the pitfalls of morphic somewhere ?
How dare you! :) Of course there's no such thing. Morphic was developed on premise that you are clever enough to understand it by reading code. P.S. Don't think that i want to blame anyone, or discourage from using it. Morphic based on a very good concepts. And i really like it. But then, lack of documentation, lack of systematic approach and no review process has led it to what we have now. -- Best regards, Igor Stasenko.
On Dec 23, 2012, at 5:09 PM, Igor Stasenko wrote:
On 23 December 2012 16:54, dimitris chloupis <thekilon@yahoo.co.uk> wrote:
Is there a list of the pitfalls of morphic somewhere ?
How dare you! :)
Of course there's no such thing.
- global positioning - too many responsibilities for example handMorph - too many duplicated logic (border is one) - isKindOf: usage
Morphic was developed on premise that you are clever enough to understand it by reading code.
P.S. Don't think that i want to blame anyone, or discourage from using it. Morphic based on a very good concepts. And i really like it. But then, lack of documentation, lack of systematic approach and no review process has led it to what we have now.
This is why we should start to systematically rethink it and clean it. :)
What is 'morphic 3' in cuis? Could it be ported to pharo? On 23 December 2012 16:26, Stéphane Ducasse <stephane.ducasse@inria.fr> wrote:
On Dec 23, 2012, at 5:09 PM, Igor Stasenko wrote:
On 23 December 2012 16:54, dimitris chloupis <thekilon@yahoo.co.uk> wrote:
Is there a list of the pitfalls of morphic somewhere ?
How dare you! :)
Of course there's no such thing.
- global positioning - too many responsibilities for example handMorph - too many duplicated logic (border is one) - isKindOf: usage
Morphic was developed on premise that you are clever enough to understand it by reading code.
P.S. Don't think that i want to blame anyone, or discourage from using it. Morphic based on a very good concepts. And i really like it. But then, lack of documentation, lack of systematic approach and no review process has led it to what we have now.
This is why we should start to systematically rethink it and clean it. :)
On 24 December 2012 02:27, Peter H. Meadows <peter.h.meadows@googlemail.com> wrote:
What is 'morphic 3' in cuis? Could it be ported to pharo?
Morphic 3 is a grand project pursued mainly by Juan. Once it will be released to public, we will see. -- Best regards, Igor Stasenko.
On 24/12/2012 02:03, Igor Stasenko wrote:
On 24 December 2012 02:27, Peter H. Meadows <peter.h.meadows@googlemail.com> wrote:
What is 'morphic 3' in cuis? Could it be ported to pharo?
Morphic 3 is a grand project pursued mainly by Juan. Once it will be released to public, we will see.
I believe the most recent Cuis has started this by changing all coordinates to parent relative Floats and also by expunging bounds and fullBounds.
Cuis 4.1 was released last Tuesday, 18th Dec. Juan Vuletich writes on the Cuis mailing list "Cuis 4.1 is available at http://www.jvuletich.org/Cuis/Index.html . Biggest news is in the Morph hierarchy. Ivars 'bounds' and 'fullBounds' are gone! All coordinates are now Float and relative to the owner morph. This is part of the transition to Morphic 3. The drawing engine is still BitBlt and the UI is not scalable yet, but Morphic 3 is now much closer." After this effort of Juan, Morphic is much easier to understand. It is fun to play with Cuis and assumingly a source of ideas to apply to Pharo as well. It would be interesting to know from Juan how he managed to get rid of the instance variables 'bounds' and 'fullBounds' --Hannes On 12/24/12, Douglas Brebner <squeaklists@fang.demon.co.uk> wrote:
On 24/12/2012 02:03, Igor Stasenko wrote:
On 24 December 2012 02:27, Peter H. Meadows <peter.h.meadows@googlemail.com> wrote:
What is 'morphic 3' in cuis? Could it be ported to pharo?
Morphic 3 is a grand project pursued mainly by Juan. Once it will be released to public, we will see.
I believe the most recent Cuis has started this by changing all coordinates to parent relative Floats and also by expunging bounds and fullBounds.
participants (9)
-
Camillo Bruni -
dimitris chloupis -
Douglas Brebner -
Fernando Olivero -
H. Hirzel -
Igor Stasenko -
Levente Uzonyi -
Peter H. Meadows -
Stéphane Ducasse