Re: [Pharo-dev] Quitting the community

2014-08-19 Thread p...@highoctane.be
Sure but the new thing was NewValueHolder.

ValueHolder per se doesn't look like impacted.

Well I saw some OldValueHolder proposal but it seemed strange to me.

How would you name the new thing?

Is there some pattern for that kind of case?

Phil

Le 19 août 2014 07:52, Eliot Miranda eliot.mira...@gmail.com a écrit :

 It is well to remember Marshall McLuhan, The Medium is the Message, the
thesis of which is that the nature of any medium has more importance than
the content if that medium in shaping its effects in the users of that
medium.

 On the medium side, email is devoid of nuance, unless smattered with
emoticons, themselves a very limited sub-medium that many of us employ only
partially.  It is /so/ common to see an escalation of hurt emerge from an
email thread started by a misreading of an email that imputed offense when
none was intended.

 On the message side, names are important.  Sentences become
incomprehensible if nouns are arbitrarily rebound.  ValueHolder may not be
the greatest name, just as apareille a photo is clumsier than camera, but
we can't just change them to frotboggle or bungswallop just because they
sound more poetic.  ReactiveVariable is criticizes me on the basis that it
is an object that contains a variable, not a variable itself, and garner
misleading, /and/ that it is a renaming of an (albeit imperfectly) already
named concept, ValueHolder, and if one doesn't want to unnecessarily break
others' understanding and much older Pharo and non-Pharo code that uses it
one is better leaving sleeping dogs lie.

 HTH
 Eliot (phone)

 On Aug 18, 2014, at 8:38 AM, Benjamin 
benjamin.vanryseghem.ph...@gmail.com wrote:

  Hello guys,
 
  I am sending this email to explain why I am quiting the Pharo community,
  as well as the Smalltalk community.
 
  I can not bear Stephane Ducasse's behavior anymore whether at a public
  level or a private level.
 
  It seems that his ego is preventing him from being able to have a
discussion
  without overreacting, being agressive, or insulting.
 
  I can not approve how Stephane is constantly talking behind my back to
unleash
  his irrationnal wrath and to provide his very own version of the facts.
 
  I can not see how this can lead to a peaceful and respectful community
  where we can all have fun building a future.
 
  Therefore I will not be part of this project anymore, since the way
Stephane
  is acting is taking away all the fun I can have interacting with all of
you.
 
  It was a hard decision to take, but I can not be part of a community led
  by someone whose behaviour is going against all my principles.
 
  I wish to all of you to have fun, and keep me in touch
  if you want to have a beer someday ;)
 
  Ben



Re: [Pharo-dev] Quitting the community

2014-08-19 Thread Pavel Krivanek
So why not simply ReactiveValueHolder? Who will look for ValueHolder
will find it, who will look for reactive variables will find it and it
well describes the purpose of the class ;-)

Cheers,
-- Pavel



2014-08-19 9:25 GMT+02:00 p...@highoctane.be p...@highoctane.be:
 Sure but the new thing was NewValueHolder.

 ValueHolder per se doesn't look like impacted.

 Well I saw some OldValueHolder proposal but it seemed strange to me.

 How would you name the new thing?

 Is there some pattern for that kind of case?

 Phil

 Le 19 août 2014 07:52, Eliot Miranda eliot.mira...@gmail.com a écrit :



 It is well to remember Marshall McLuhan, The Medium is the Message, the
 thesis of which is that the nature of any medium has more importance than
 the content if that medium in shaping its effects in the users of that
 medium.

 On the medium side, email is devoid of nuance, unless smattered with
 emoticons, themselves a very limited sub-medium that many of us employ only
 partially.  It is /so/ common to see an escalation of hurt emerge from an
 email thread started by a misreading of an email that imputed offense when
 none was intended.

 On the message side, names are important.  Sentences become
 incomprehensible if nouns are arbitrarily rebound.  ValueHolder may not be
 the greatest name, just as apareille a photo is clumsier than camera, but we
 can't just change them to frotboggle or bungswallop just because they sound
 more poetic.  ReactiveVariable is criticizes me on the basis that it is an
 object that contains a variable, not a variable itself, and garner
 misleading, /and/ that it is a renaming of an (albeit imperfectly) already
 named concept, ValueHolder, and if one doesn't want to unnecessarily break
 others' understanding and much older Pharo and non-Pharo code that uses it
 one is better leaving sleeping dogs lie.

 HTH
 Eliot (phone)

 On Aug 18, 2014, at 8:38 AM, Benjamin
 benjamin.vanryseghem.ph...@gmail.com wrote:

  Hello guys,
 
  I am sending this email to explain why I am quiting the Pharo community,
  as well as the Smalltalk community.
 
  I can not bear Stephane Ducasse's behavior anymore whether at a public
  level or a private level.
 
  It seems that his ego is preventing him from being able to have a
  discussion
  without overreacting, being agressive, or insulting.
 
  I can not approve how Stephane is constantly talking behind my back to
  unleash
  his irrationnal wrath and to provide his very own version of the facts.
 
  I can not see how this can lead to a peaceful and respectful community
  where we can all have fun building a future.
 
  Therefore I will not be part of this project anymore, since the way
  Stephane
  is acting is taking away all the fun I can have interacting with all of
  you.
 
  It was a hard decision to take, but I can not be part of a community led
  by someone whose behaviour is going against all my principles.
 
  I wish to all of you to have fun, and keep me in touch
  if you want to have a beer someday ;)
 
  Ben




Re: [Pharo-dev] Quitting the community

2014-08-19 Thread p...@highoctane.be
ReactiveHolder ?

Phil



On Tue, Aug 19, 2014 at 7:52 AM, Eliot Miranda eliot.mira...@gmail.com
wrote:

 It is well to remember Marshall McLuhan, The Medium is the Message, the
 thesis of which is that the nature of any medium has more importance than
 the content if that medium in shaping its effects in the users of that
 medium.

 On the medium side, email is devoid of nuance, unless smattered with
 emoticons, themselves a very limited sub-medium that many of us employ only
 partially.  It is /so/ common to see an escalation of hurt emerge from an
 email thread started by a misreading of an email that imputed offense when
 none was intended.

 On the message side, names are important.  Sentences become
 incomprehensible if nouns are arbitrarily rebound.  ValueHolder may not be
 the greatest name, just as apareille a photo is clumsier than camera, but
 we can't just change them to frotboggle or bungswallop just because they
 sound more poetic.  ReactiveVariable is criticizes me on the basis that it
 is an object that contains a variable, not a variable itself, and garner
 misleading, /and/ that it is a renaming of an (albeit imperfectly) already
 named concept, ValueHolder, and if one doesn't want to unnecessarily break
 others' understanding and much older Pharo and non-Pharo code that uses it
 one is better leaving sleeping dogs lie.

 HTH
 Eliot (phone)

 On Aug 18, 2014, at 8:38 AM, Benjamin 
 benjamin.vanryseghem.ph...@gmail.com wrote:

  Hello guys,
 
  I am sending this email to explain why I am quiting the Pharo community,
  as well as the Smalltalk community.
 
  I can not bear Stephane Ducasse's behavior anymore whether at a public
  level or a private level.
 
  It seems that his ego is preventing him from being able to have a
 discussion
  without overreacting, being agressive, or insulting.
 
  I can not approve how Stephane is constantly talking behind my back to
 unleash
  his irrationnal wrath and to provide his very own version of the facts.
 
  I can not see how this can lead to a peaceful and respectful community
  where we can all have fun building a future.
 
  Therefore I will not be part of this project anymore, since the way
 Stephane
  is acting is taking away all the fun I can have interacting with all of
 you.
 
  It was a hard decision to take, but I can not be part of a community led
  by someone whose behaviour is going against all my principles.
 
  I wish to all of you to have fun, and keep me in touch
  if you want to have a beer someday ;)
 
  Ben




[Pharo-dev] example custom mouse events

2014-08-19 Thread Ben Coman


It took a bit of hunting around to discover how to use the custom hooks 
for mouse event, and I needed to make some examples to prove how it 
worked.  I thought others might find this interesting.  It just outputs 
to Transcript for each of the following events.  Check the class 
comments for usage.


* handlesMouseDown - mouseDown, mouseUp, mouseMove, startDrag, click, 
doubleClick, doubleClickTimeout.

* handlesMouseStillDown - mouseStillDown.
* handlesMouseOver - mouseEnter, mouseLeave.
* handlesMouseOverDragging - mouseEnterDragging, mouseLeaveDragging.

Anyone know anything more to add?

cheers -ben


ExampleMouseEvents-BenComan.1.mcz
Description: Binary data


[Pharo-dev] I want to remove zeroconf for 1.2, 1.3 and 1.4

2014-08-19 Thread Esteban Lorenzano
Hi, 

right now there zeroconf scripts for pharo 1.2-1.4 that I do  not think anyone 
is using it. 
Can I remove them?

cheers, 
Esteban


Re: [Pharo-dev] [Esug-list] Quitting the community

2014-08-19 Thread Maarten Mostert
No great things are achieved without great characters, Stephan has been doing a 
great long term effort of maintaining research budgets for Smalltalk and 
pushing a viable open source solution for it while the situation was pretty 
difficult. Like many of us he has some rough edges to and we shouldn’t  forget 
that each of us is driven by ambition, fear and frustration.
I really respect Stephan, but I also sympathise with you as I did with Janko 
some month’s ago. Nobody cares about any details, what we do care about however 
is that you would be lost for Smalltalk after such a great job 

There is so much more to Smalltalk then just Pharo and some of these move 
considerably ….

Hope you reconsider at least that part of your decision.

Take care,

@+Maarten,


On 18 Aug 2014, at 11:36, Tudor Girba tu...@tudorgirba.com wrote:

 Hi Ben,
 
 Thanks for letting us know.
 
 I am sorry you feel this way, but I believe your presentation of the 
 situation is both unfair and unfortunate. You are obviously referring to 
 issues that are of personal nature, and as outsiders we are left with only an 
 ugly feeling without being able to either understand or fix anything.
 
 I was actually having fun until your email, and as far as I can tell, others 
 were having fun as well. I am not sure what the intention of your email was, 
 but at least for me, your mail did manage to spoil the fun for a second.
 
 I appreciate the work you put in Pharo, I respect your decision, but I do not 
 sympathize with your behavior.
 
 Good luck,
 Doru
 
 
 
 
 On Mon, Aug 18, 2014 at 8:38 AM, Benjamin 
 benjamin.vanryseghem.ph...@gmail.com wrote:
 Hello guys,
 
 I am sending this email to explain why I am quiting the Pharo community,
 as well as the Smalltalk community.
 
 I can not bear Stephane Ducasse's behavior anymore whether at a public
 level or a private level.
 
 It seems that his ego is preventing him from being able to have a discussion
 without overreacting, being agressive, or insulting.
 
 I can not approve how Stephane is constantly talking behind my back to unleash
 his irrationnal wrath and to provide his very own version of the facts.
 
 I can not see how this can lead to a peaceful and respectful community
 where we can all have fun building a future.
 
 Therefore I will not be part of this project anymore, since the way Stephane
 is acting is taking away all the fun I can have interacting with all of you.
 
 It was a hard decision to take, but I can not be part of a community led
 by someone whose behaviour is going against all my principles.
 
 I wish to all of you to have fun, and keep me in touch
 if you want to have a beer someday ;)
 
 Ben
 
 
 
 -- 
 www.tudorgirba.com
 
 Every thing has its own flow
 ___
 Esug-list mailing list
 esug-l...@lists.esug.org
 http://lists.esug.org/mailman/listinfo/esug-list_lists.esug.org



Re: [Pharo-dev] I want to remove zeroconf for 1.2, 1.3 and 1.4

2014-08-19 Thread Max Leske
I don’t need them.

On 19.08.2014, at 11:17, Esteban Lorenzano esteba...@gmail.com wrote:

 Hi, 
 
 right now there zeroconf scripts for pharo 1.2-1.4 that I do  not think 
 anyone is using it. 
 Can I remove them?
 
 cheers, 
 Esteban




Re: [Pharo-dev] I want to remove zeroconf for 1.2, 1.3 and 1.4

2014-08-19 Thread Yuriy Tymchuk
+1 

On 19 Aug 2014, at 11:16, Max Leske maxle...@gmail.com wrote:

 I don’t need them.
 
 On 19.08.2014, at 11:17, Esteban Lorenzano esteba...@gmail.com wrote:
 
 Hi, 
 
 right now there zeroconf scripts for pharo 1.2-1.4 that I do  not think 
 anyone is using it. 
 Can I remove them?
 
 cheers, 
 Esteban
 
 




Re: [Pharo-dev] Stack size for compiled methods (issue 13854 Crash/hang on array access)

2014-08-19 Thread Nicolai Hess
Thank you eliot,


2014-08-19 7:29 GMT+02:00 Eliot Miranda eliot.mira...@gmail.com:

 Hi Nicolai,

  the stack starts as deep as the method's number of temporaries,


ok,


 which is the sum of the number of arguments


ok,


 plus the number of temporary variables that can exist in the stack


ok (what does can exist in the stack mean? They always do?)


 plus one if there are any closed-over temporary variables that need to be
 in an indirection vector.  Then as execution proceeds the receiver and
 arguments are pushed on the stack, and are replaced by intermediate results
 by sends it by the create array bytecode.


So, for a method with no blocks, the stack is just the number of
temporaries plus the number of args for the message send with the maximum
number of args?


 Any blocks within the method start with the sum of their number of
 arguments, their number of copied values (temp values they access
 read-only) plus their local temporaries.


But this is not just added to the stack size, right?
I have a method with 9 local temporaris and a block in this method with 8
local temporaries and the frameSize is still 16, (with the old compiler/ 56
with the new compiler).
So, method and block local temporaries not just sum up?
I tried different variations
- numberOfMethod temps smaller/equal/greater numberOfBlockTemp
- no/some/all method temporaries are accessed in the block closure.

But I can not see a pattern :)




 In the method and each block scope stack depth is the hence the sum of the
 number of temporaries plus the max execution depth. And the method's depth
 is the max of the method and that of any blocks within it.


What is the execution depth of a method ? The number of nested blocks?


 Then if that depth is 17 or greater it gets the LargeFrame flag set which
 means the VM allocates a 56 slot context, the compiler raising an error if
 the depth is greater than 56.

 HTH
 Eliot (phone)


Here are two carefully handcrafted methods :)


fooSmall
|t1 t2 t3 t4 t5 t6 t7 t8|
t1:=1.
t2:=2.
t3:=3.
t4:=4.
t5:=5.
t6:=6.
t7:=7.
t8:= 8.
t1:=[:i | |b1 b2 b3 b4 c1 c2 c3 c4 x|
b1:=1. b2:=2. b3:=3. b4:=4.
c1:=1. c2:=2. c3:=3. c4:=4.
x:=1.
x+t1 + b1+b2+b3+b4 + c1 + c2 + c3 + c4] value:1.
^ t1 + t2 + t3 + t4 + t5 + t6 + t7 + t8


fooLarge
|t1 t2 t3 t4 t5 t6 t7|
t1:=1.
t2:=2.
t3:=3.
t4:=4.
t5:=5.
t6:=6.
t7:=7.
t1:=[:i | |b1 b2 b3 b4 c1 c2 c3 c4 x|
b1:=1. b2:=2. b3:=3. b4:=4.
c1:=1. c2:=2. c3:=3. c4:=4.
x:=1.
x+t1 +t2 + t3 + t4 + t5+ b1+b2+b3+b4 + c1 + c2 + c3 + c4] value:1.
^ t1 + t2 + t3 + t4 + t5 + t6 + t7



They differ only in the number of tempraries (t1-t8 / t1-t7) and the number
of copied values for the block closure (1 / 5).

with the old compiler:
fooSmall frameSize - 16
fooLarge frameSize - 56



the opal compiler computes the opposite sizes
fooSmall frameSize - 56
fooLarge frameSize - 16


I am confused.





 On Aug 18, 2014, at 11:32 PM, Nicolai Hess nicolaih...@web.de wrote:

  Hi,
 
  on what depends the stack size for a compiled method?
  I try to figure out, why the old compiler and the opal compile generate
 different
  compiled method headers.
  I think this comes from a wrong stack size computed by opal, but I can
 not figure
  out how the stack size is computed.
 
  Old Compiler
  PolygonMorph#lineSegmentsDo:
  header - primitive: 0
   numArgs: 1
   numTemps: 3
   numLiterals: 23
   frameSize: 56
 
  Opal compiler:
  PolygonMorph#lineSegmentsDo:
  header - primitive: 0
   numArgs: 1
   numTemps: 3
   numLiterals: 23
   frameSize: 16
 



Re: [Pharo-dev] I want to remove zeroconf for 1.2, 1.3 and 1.4

2014-08-19 Thread Tudor Girba
+100


On Tue, Aug 19, 2014 at 11:37 AM, Yuriy Tymchuk yuriy.tymc...@me.com
wrote:

 +1

 On 19 Aug 2014, at 11:16, Max Leske maxle...@gmail.com wrote:

  I don’t need them.
 
  On 19.08.2014, at 11:17, Esteban Lorenzano esteba...@gmail.com wrote:
 
  Hi,
 
  right now there zeroconf scripts for pharo 1.2-1.4 that I do  not think
 anyone is using it.
  Can I remove them?
 
  cheers,
  Esteban
 
 





-- 
www.tudorgirba.com

Every thing has its own flow


Re: [Pharo-dev] I want to remove zeroconf for 1.2, 1.3 and 1.4

2014-08-19 Thread Esteban Lorenzano
ah, I also will add zeroconf for pharo-minimal :P

On 19 Aug 2014, at 11:37, Yuriy Tymchuk yuriy.tymc...@me.com wrote:

 +1 
 
 On 19 Aug 2014, at 11:16, Max Leske maxle...@gmail.com wrote:
 
 I don’t need them.
 
 On 19.08.2014, at 11:17, Esteban Lorenzano esteba...@gmail.com wrote:
 
 Hi, 
 
 right now there zeroconf scripts for pharo 1.2-1.4 that I do  not think 
 anyone is using it. 
 Can I remove them?
 
 cheers, 
 Esteban
 
 
 
 




Re: [Pharo-dev] I want to remove zeroconf for 1.2, 1.3 and 1.4

2014-08-19 Thread p...@highoctane.be
Centos ?
Le 19 août 2014 13:19, Esteban Lorenzano esteba...@gmail.com a écrit :

 ah, I also will add zeroconf for pharo-minimal :P

 On 19 Aug 2014, at 11:37, Yuriy Tymchuk yuriy.tymc...@me.com wrote:

  +1
 
  On 19 Aug 2014, at 11:16, Max Leske maxle...@gmail.com wrote:
 
  I don’t need them.
 
  On 19.08.2014, at 11:17, Esteban Lorenzano esteba...@gmail.com wrote:
 
  Hi,
 
  right now there zeroconf scripts for pharo 1.2-1.4 that I do  not
 think anyone is using it.
  Can I remove them?
 
  cheers,
  Esteban
 
 
 
 





Re: [Pharo-dev] I want to remove zeroconf for 1.2, 1.3 and 1.4

2014-08-19 Thread Esteban Lorenzano
is different problem. 
most probably we will not have zeroconf for centos anytime soon. 
but we will have builds for centos compatible vms (downloadable, but not 
zercoconf), that’s for sure :)

(yeah, I know, I promised that to you like months ago, but I’ve been busy. I 
can just say the issue it is finally arriving to the top of the stack :P)

Esteban

On 19 Aug 2014, at 12:20, p...@highoctane.be wrote:

 Centos ?
 
 Le 19 août 2014 13:19, Esteban Lorenzano esteba...@gmail.com a écrit :
 ah, I also will add zeroconf for pharo-minimal :P
 
 On 19 Aug 2014, at 11:37, Yuriy Tymchuk yuriy.tymc...@me.com wrote:
 
  +1
 
  On 19 Aug 2014, at 11:16, Max Leske maxle...@gmail.com wrote:
 
  I don’t need them.
 
  On 19.08.2014, at 11:17, Esteban Lorenzano esteba...@gmail.com wrote:
 
  Hi,
 
  right now there zeroconf scripts for pharo 1.2-1.4 that I do  not think 
  anyone is using it.
  Can I remove them?
 
  cheers,
  Esteban
 
 
 
 
 
 



Re: [Pharo-dev] Stack size for compiled methods (issue 13854 Crash/hang on array access)

2014-08-19 Thread Craig Latta

Hoi Eliot--

 [great explanation of method/block stack depth]

 Cool, is this viewable from an in-system tool somewhere (even if
only a documentation method in a class browser)?


 thanks,

-C

--
Craig Latta
netjam.org
+31   6 2757 7177 (SMS ok)
+ 1 415  287 3547 (no SMS)




Re: [Pharo-dev] I want to remove zeroconf for 1.2, 1.3 and 1.4

2014-08-19 Thread p...@highoctane.be
On Tue, Aug 19, 2014 at 1:24 PM, Esteban Lorenzano esteba...@gmail.com
wrote:

 is different problem.
 most probably we will not have zeroconf for centos anytime soon.
 but we will have builds for centos compatible vms (downloadable, but not
 zercoconf), that’s for sure :)

 (yeah, I know, I promised that to you like months ago, but I’ve been busy.
 I can just say the issue it is finally arriving to the top of the stack :P)


Good, as I was looking at RPM packaging and yum repos.

Maybe can we work a bit together on that.

Phil


 Esteban

 On 19 Aug 2014, at 12:20, p...@highoctane.be wrote:

 Centos ?
 Le 19 août 2014 13:19, Esteban Lorenzano esteba...@gmail.com a écrit :

 ah, I also will add zeroconf for pharo-minimal :P

 On 19 Aug 2014, at 11:37, Yuriy Tymchuk yuriy.tymc...@me.com wrote:

  +1
 
  On 19 Aug 2014, at 11:16, Max Leske maxle...@gmail.com wrote:
 
  I don’t need them.
 
  On 19.08.2014, at 11:17, Esteban Lorenzano esteba...@gmail.com
 wrote:
 
  Hi,
 
  right now there zeroconf scripts for pharo 1.2-1.4 that I do  not
 think anyone is using it.
  Can I remove them?
 
  cheers,
  Esteban
 
 
 
 






Re: [Pharo-dev] Quitting the community

2014-08-19 Thread Torsten Bergmann
Hi Ben,

first: I think it is not a secret that we appreciate any work you did so far 
for Pharo and our community. Still I do not like the mail you have written, 
because:
 
 - It gives a false impression of the community itself and leaves us back
once more with questions (especially as most of us were not part of the 
conflict). 

 - You associate the behavior of one member of the community (be it wrong or 
right) with 
   the community itself as you now decided to leave and will not continue to 
move with 
   us forward again. 
   
You should really rethink your decision:

 1. Life is much, much too short for such hazzles!

 2. To give the community and Pharo a chance to move forward. Remember that 
Pharo is also YOURS.
You should also give yourself the chance to keep the investments already 
done from your 
side here like Nautilus, Spec and various other contributions. They 
already made a difference
and I'm sure that if you decide to stay you would influence Pharo 
development even more
in the future.  

 3. See 1.
 
Regarding the case we (as a community) can only judge on things we read - but 
not on what happened behind 
the scenes or in direct contact between members. As it looks more like a 
personal conflict between
you and Stef you both have to find a solution or arrangement. If you keep you 
decision to leave we have
to and will respect it.

I wished you both would have a beer and settle down on the conflict, especially 
because there is point 1...

As a side note: 
I personally would keep ValueHolder as it is a well known concept. If we want 
to be heretic
with Smalltalk we could also rename Object into Thing. ;)
I think we have a board to decide about different technical ideas (even when it 
is about
naming). If that does not work we should setup a voting system. But we should 
never let 
the conflicts get too personal. Did I already mention that life is much too 
short for such things ...?

Thanks
T.
 



Re: [Pharo-dev] Quitting the community

2014-08-19 Thread Sean P. DeNigris
Torsten Bergmann wrote
 I personally would keep ValueHolder as it is a well known concept

Although it's extremely corollary to the purpose of this thread, since it
keeps coming up, I just want to remind that the point of the original
ValueHolder-rename discussion (in which no one said let's keep
ValueHolder) was that a quick google search seemed to show that Value
Holder does NOT mean what we're using it to mean.



-
Cheers,
Sean
--
View this message in context: 
http://forum.world.st/Quitting-the-community-tp4773730p4773842.html
Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.



Re: [Pharo-dev] example custom mouse events

2014-08-19 Thread stepharo

good idea.
We were discussing with alain about handles and handle because in bloc 
he is used wantsMouseDown instead handlesMouseDown.


Stef
On 19/8/14 09:17, Ben Coman wrote:


It took a bit of hunting around to discover how to use the custom 
hooks for mouse event, and I needed to make some examples to prove how 
it worked.  I thought others might find this interesting.  It just 
outputs to Transcript for each of the following events. Check the 
class comments for usage.


* handlesMouseDown - mouseDown, mouseUp, mouseMove, startDrag, click, 
doubleClick, doubleClickTimeout.

* handlesMouseStillDown - mouseStillDown.
* handlesMouseOver - mouseEnter, mouseLeave.
* handlesMouseOverDragging - mouseEnterDragging, mouseLeaveDragging.

Anyone know anything more to add?

cheers -ben





Re: [Pharo-dev] I want to remove zeroconf for 1.2, 1.3 and 1.4

2014-08-19 Thread Sebastian Sastre
Is removing history actually a good thing?

Are those conveniences creating any actual problem by standing there?

What if someone want to take a look at the past?




On Aug 19, 2014, at 6:17 AM, Esteban Lorenzano esteba...@gmail.com wrote:

 Hi, 
 
 right now there zeroconf scripts for pharo 1.2-1.4 that I do  not think 
 anyone is using it. 
 Can I remove them?
 
 cheers, 
 Esteban




Re: [Pharo-dev] I want to remove zeroconf for 1.2, 1.3 and 1.4

2014-08-19 Thread Esteban Lorenzano
for taking a look at the past the images are still available and will remain 
like that. 
what will not be available anymore are just the zeroconf scripts. 

And yes, cleaning time to time is a good idea, IMO. Otherwise we will end with 
infinite listings of things that no one use, left there just in case someone, 
in a hypothetic day, decides to make archeology :)

Esteban 


On 19 Aug 2014, at 16:07, Sebastian Sastre sebast...@flowingconcept.com wrote:

 Is removing history actually a good thing?
 
 Are those conveniences creating any actual problem by standing there?
 
 What if someone want to take a look at the past?
 
 
 
 
 On Aug 19, 2014, at 6:17 AM, Esteban Lorenzano esteba...@gmail.com wrote:
 
 Hi, 
 
 right now there zeroconf scripts for pharo 1.2-1.4 that I do  not think 
 anyone is using it. 
 Can I remove them?
 
 cheers, 
 Esteban
 
 




Re: [Pharo-dev] Digging to understand Cmd+Click and Ctrl+Click

2014-08-19 Thread stepharo

Hi guille

I was cleaning the event and we were slow to integrate the refactoring 
we did with igor. And now this is obsolete

because there is OSWindow coming.
We are about to integrate OSWindow code and soon or later we will have 
probably to change the processEvent: code.


Stef

On 18/8/14 17:33, Guillermo Polito wrote:

Hi!

Most of you already know that in Mac, if you do cmd+click on a class 
name or a selector, you get to browse the class or the implementors of 
the method.


Now, most of you know that it does not work on linux :). So I was 
digging today and I'll share a bit here what I found...


First, the navigation through cmd+click is managed by the 
TextAttribute subclasses, in particular TextLink, TextClassLink and 
TextMethodLink. And these are the important methods:


TextLinkmayActOnEvent: anEvent
^ anEvent isMouseUp and: [ anEvent commandKeyPressed ]

TextClassLinkactOnClick: anEvent for: target in: aParagraph editor: 
anEditor

anEvent shiftPressed
ifFalse: [ anEditor browseClassFrom: self className ]
ifTrue: [ anEditor referencesTo: self className ].
^ true

And another similar in TextMethodLink.

Now, the first thing I tried was to add a or: [ anEvent 
controlKeyPressed ] into the first method. Guess what? That did not work.


So I noticed a weird behavior.
- On mac: When you do cmd+click, the text morph, if it was not 
selected, gets selected on mouse down, and on mouse up it gets 
deselected and the class is browsed.


- On linux: when you do a ctrl+click, the text morph never gets 
selected on the first place. And that's why it never handles the 
mouseUp:. Just check:


MorphhandleMouseUp: anEvent
System level event handling.
anEvent wasHandled ifTrue: [^self]. not interested
*== anEvent hand mouseFocus == self ifFalse: [^self]. Not interested 
in other parties*


So... the question is, why is the text morph not getting the focus?

Well, it turns out that morphic decodes a Ctrl+click as a blueButton. 
So in the method MorphhandlerForMouseDown: the execution differs 
between mac and linux.


And weirder, the event that arrives there, is modified by some strange 
table that I hate. So the event has a SHIFT, which I didn't press! 
That shift gets introduced in the event in here:


InputEventSensorprocessEvent: evt
   ...
   ...
type = EventTypeMouse
ifTrue: [
Transmogrify the button state according to the platform's button map 
definition

*evt at: 5 put: (ButtonDecodeTable at: (evt at: 5) + 1).*
Map the mouse buttons depending on modifiers
*evt at: 5 put: (self mapButtons: (evt at: 5) modifiers: (evt at: 6)).*

So much FUN!

Well, so far I do not know how to solve it. But I know I do not like 
the One table to decode strangely bits that should work for all 
platforms but it works just for one of them approach :)


I'll try to follow this later, but if someone wants to help, I welcome 
it :)


Guille




Re: [Pharo-dev] Initial versions for OSWindow and Woden

2014-08-19 Thread Sean P. DeNigris
Ronie Salgado wrote
 For Mac OS X, I don't have one for testing. But Alex is going allow me to
 borrow one for some time. So be patience.

Any progress? I can help with testing...



-
Cheers,
Sean
--
View this message in context: 
http://forum.world.st/Initial-versions-for-OSWindow-and-Woden-tp4761069p4773866.html
Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.



Re: [Pharo-dev] Stack size for compiled methods (issue 13854 Crash/hang on array access)

2014-08-19 Thread Eliot Miranda
Hi Nicolai,


On Aug 19, 2014, at 11:58 AM, Nicolai Hess nicolaih...@web.de wrote:

 Thank you eliot, 
 
 
 2014-08-19 7:29 GMT+02:00 Eliot Miranda eliot.mira...@gmail.com:
 Hi Nicolai,
 
  the stack starts as deep as the method's number of temporaries,
 
 ok,
  
 which is the sum of the number of arguments
 
 ok,
  
 plus the number of temporary variables that can exist in the stack
 
 ok (what does can exist in the stack mean? They always do?)

Not necessarily.  The closure implementation moves temps that need it into an 
indirect temp vector.  See eg my blog on the closure compiler.

http://www.mirandabanda.org/cogblog/2008/06/07/closures-part-i/

 plus one if there are any closed-over temporary variables that need to be in 
 an indirection vector.  Then as execution proceeds the receiver and 
 arguments are pushed on the stack, and are replaced by intermediate results 
 by sends it by the create array bytecode. 
 
 So, for a method with no blocks, the stack is just the number of temporaries 
 plus the number of args for the message send with the maximum number of args?


No.  What about this:

^Point x: 1 y: (self a: 1 b: 2 c: 3)


Before sending a:b:c: the stack is

Point
1
self
1
2
3


 Any blocks within the method start with the sum of their number of 
 arguments, their number of copied values (temp values they access read-only) 
 plus their local temporaries.
 
 But this is not just added to the stack size, right? 
 I have a method with 9 local temporaris and a block in this method with 8 
 local temporaries and the frameSize is still 16, (with the old compiler/ 56 
 with the new compiler).
 So, method and block local temporaries not just sum up? 
 I tried different variations 
 - numberOfMethod temps smaller/equal/greater numberOfBlockTemp
 - no/some/all method temporaries are accessed in the block closure.
 
 But I can not see a pattern :)

May be a bug in the old compiler.  The stack size is the max of the separate 
sizes in the method and each block.
 
  
 
 In the method and each block scope stack depth is the hence the sum of the 
 number of temporaries plus the max execution depth. And the method's depth 
 is the max of the method and that of any blocks within it. 
 
 What is the execution depth of a method ? The number of nested blocks?

No, it is how many things it pushes in the stack at the deepest point.  See my 
example above.

  
 Then if that depth is 17 or greater it gets the LargeFrame flag set which 
 means the VM allocates a 56 slot context, the compiler raising an error if 
 the depth is greater than 56.
 
 HTH
 Eliot (phone)
 
 Here are two carefully handcrafted methods :)
 
 
 fooSmall
 |t1 t2 t3 t4 t5 t6 t7 t8|
 t1:=1.
 t2:=2.
 t3:=3.
 t4:=4.
 t5:=5.
 t6:=6.
 t7:=7.
 t8:= 8.
 t1:=[:i | |b1 b2 b3 b4 c1 c2 c3 c4 x| 
 b1:=1. b2:=2. b3:=3. b4:=4. 
 c1:=1. c2:=2. c3:=3. c4:=4. 
 x:=1.
 x+t1 + b1+b2+b3+b4 + c1 + c2 + c3 + c4] value:1.
 ^ t1 + t2 + t3 + t4 + t5 + t6 + t7 + t8
 
 
 fooLarge
 |t1 t2 t3 t4 t5 t6 t7|
 t1:=1.
 t2:=2.
 t3:=3.
 t4:=4.
 t5:=5.
 t6:=6.
 t7:=7.
 t1:=[:i | |b1 b2 b3 b4 c1 c2 c3 c4 x| 
 b1:=1. b2:=2. b3:=3. b4:=4. 
 c1:=1. c2:=2. c3:=3. c4:=4. 
 x:=1.
 x+t1 +t2 + t3 + t4 + t5+ b1+b2+b3+b4 + c1 + c2 + c3 + c4] value:1.
 ^ t1 + t2 + t3 + t4 + t5 + t6 + t7 
 
 
 
 They differ only in the number of tempraries (t1-t8 / t1-t7) and the number 
 of copied values for the block closure (1 / 5).
 
 with the old compiler:
 fooSmall frameSize - 16
 fooLarge frameSize - 56
 
 
 
 the opal compiler computes the opposite sizes
 fooSmall frameSize - 56
 fooLarge frameSize - 16


Looks like a bug in the Opal compiler :-).  Well found.
 
 
 I am confused.

No you're not.  You've found a bug.  Now find its cause
 
 
  
 
 On Aug 18, 2014, at 11:32 PM, Nicolai Hess nicolaih...@web.de wrote:
 
  Hi,
 
  on what depends the stack size for a compiled method?
  I try to figure out, why the old compiler and the opal compile generate 
  different
  compiled method headers.
  I think this comes from a wrong stack size computed by opal, but I can not 
  figure
  out how the stack size is computed.
 
  Old Compiler
  PolygonMorph#lineSegmentsDo:
  header - primitive: 0
   numArgs: 1
   numTemps: 3
   numLiterals: 23
   frameSize: 56
 
  Opal compiler:
  PolygonMorph#lineSegmentsDo:
  header - primitive: 0
   numArgs: 1
   numTemps: 3
   numLiterals: 23
   frameSize: 16
 


Eliot (phone)