[Pharo-dev] Use pharo users mailing list

2013-09-23 Thread Norbert Hartl
We should use the pharo users mailing list more often. Imagine there are people 
only subscribed to the users list. They can't see a lot of interesting posts 
and the users list does not appear to be very lively. At least half of the 
posts here in the last days I would like to see on the users list. 
So if your post is not really about the development of pharo or is not a 
problem with pharo core (external package discussions belong IMHO to the users 
list as well) then consider to post to the users list. Everyone you like to 
reach is subscribed there, too. 

Norbert





Re: [Pharo-dev] Integration Process

2013-09-23 Thread Esteban Lorenzano
I'm working to enhance the submit process, but in another direction. 
In the mean time, all your recommendations would make our life a lot easier, 
yes :)

Esteban

On Sep 23, 2013, at 6:21 AM, Camillo Bruni camillobr...@gmail.com wrote:

 I spent today 10mins explaining step by step on how to regular Pharo 
 programmers how to create a bugfix for Pharo!
 
 THIS IS BAD! 
 
 There are many more motivated Pharo programmers outside RMoD, and I am sure 
 that quite some
 of them would actually provide bug fixes. The current bug-report process has 
 a way too steep
 learning curve.
 
 
 There are a few things we have to change here:
 
 1. make bugs.pharo.org finally work with dots in the email message
 2. make bugs.pharo.org automatically send a password reset request (in the 
 worst case we do a redirect/curl on the normal fogbugz site)
 3. make the anonymous inbox work on the smalltalkhub
 4. reactivate the SLICE submitter in the image
 
 
 So who takes responsibility?
 
 I will take care of point 4 during the following Week.
 Plus I made an 8 minute screencast with all the details of the integration: 
 https://vimeo.com/75183993




Re: [Pharo-dev] Integration Process

2013-09-23 Thread Marcus Denker

On Sep 23, 2013, at 8:32 AM, Esteban Lorenzano esteba...@gmail.com wrote:

 I'm working to enhance the submit process, but in another direction. 
 In the mean time, all your recommendations would make our life a lot easier, 
 yes :)
 

Isn't all of this orthogonal? 

 Esteban
 
 On Sep 23, 2013, at 6:21 AM, Camillo Bruni camillobr...@gmail.com wrote:
 
 I spent today 10mins explaining step by step on how to regular Pharo 
 programmers how to create a bugfix for Pharo!
 
 THIS IS BAD! 
 
 There are many more motivated Pharo programmers outside RMoD, and I am sure 
 that quite some
 of them would actually provide bug fixes. The current bug-report process has 
 a way too steep
 learning curve.
 
 
 There are a few things we have to change here:
 
 1. make bugs.pharo.org finally work with dots in the email message
 2. make bugs.pharo.org automatically send a password reset request (in the 
 worst case we do a redirect/curl on the normal fogbugz site)
 3. make the anonymous inbox work on the smalltalkhub
 4. reactivate the SLICE submitter in the image
 
 
 So who takes responsibility?
 
 I will take care of point 4 during the following Week.
 Plus I made an 8 minute screencast with all the details of the integration: 
 https://vimeo.com/75183993
 
 



signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: [Pharo-dev] Use pharo users mailing list

2013-09-23 Thread Sven Van Caekenberghe
+1

On 23 Sep 2013, at 08:17, Norbert Hartl norb...@hartl.name wrote:

 We should use the pharo users mailing list more often. Imagine there are 
 people only subscribed to the users list. They can't see a lot of interesting 
 posts and the users list does not appear to be very lively. At least half of 
 the posts here in the last days I would like to see on the users list. 
 So if your post is not really about the development of pharo or is not a 
 problem with pharo core (external package discussions belong IMHO to the 
 users list as well) then consider to post to the users list. Everyone you 
 like to reach is subscribed there, too. 
 
 Norbert
 
 
 




Re: [Pharo-dev] Use pharo users mailing list

2013-09-23 Thread kilon

Here is a radical suggestion you probably don't want to hear. 

Close down Pharo users mailing list, redirect everyone to stackoverflow. 

Consider stackoverflow is THE forum for coding, I cant think of a better
place to ask questions for smalltalk and pharo , rarely questions left
unanswered there and I wont even start to discuss how cool of a website it
is. 

Oh and a minor bonus is a huge advertisement for pharo. 

But then take my idea with a grain of salt, I don't like mailing lists :)
Thank god for forum.world.st :D


Norbert Hartl wrote
 We should use the pharo users mailing list more often. Imagine there are
 people only subscribed to the users list. They can't see a lot of
 interesting posts and the users list does not appear to be very lively. At
 least half of the posts here in the last days I would like to see on the
 users list. 
 So if your post is not really about the development of pharo or is not a
 problem with pharo core (external package discussions belong IMHO to the
 users list as well) then consider to post to the users list. Everyone you
 like to reach is subscribed there, too. 
 
 Norbert





--
View this message in context: 
http://forum.world.st/Use-pharo-users-mailing-list-tp4709698p4709702.html
Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.



[Pharo-dev] [update 3.0] #30418

2013-09-23 Thread Marcus Denker
30418
-

11661 Small cleanup of dead code
https://pharo.fogbugz.com/f/cases/11661

11659 Add basic Morph Viewer for the Inspectors
https://pharo.fogbugz.com/f/cases/11659

Diff information:
http://smalltalkhub.com/mc/Pharo/Pharo30/main/Tools-MarcusDenker.1264.diff
http://smalltalkhub.com/mc/Pharo/Pharo30/main/System-Installers-MarcusDenker.38.diff
http://smalltalkhub.com/mc/Pharo/Pharo30/main/Spec-Widgets-MarcusDenker.249.diff
http://smalltalkhub.com/mc/Pharo/Pharo30/main/Spec-Inspector-MarcusDenker.94.diff
http://smalltalkhub.com/mc/Pharo/Pharo30/main/NECompletion-MarcusDenker.135.diff
http://smalltalkhub.com/mc/Pharo/Pharo30/main/MenuRegistration-MarcusDenker.64.diff
http://smalltalkhub.com/mc/Pharo/Pharo30/main/Manifest-CriticBrowser-MarcusDenker.118.diff



signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: [Pharo-dev] Use pharo users mailing list

2013-09-23 Thread Norbert Hartl

Am 23.09.2013 um 08:48 schrieb kilon theki...@yahoo.co.uk:

 
 Here is a radical suggestion you probably don't want to hear. 
 
why not?

 Close down Pharo users mailing list, redirect everyone to stackoverflow. 
 
 Consider stackoverflow is THE forum for coding, I cant think of a better
 place to ask questions for smalltalk and pharo , rarely questions left
 unanswered there and I wont even start to discuss how cool of a website it
 is. 
 
I think there is a big difference between a discussion medium and a 
question-answer site. What I like about this community is the fact that most of 
the discussions are interesting and have potential to learn something from it. 
Look at some of the threads. There are often a minimum of 2 replies each making 
at least 4 or 5 mails of one topic. That is a form of communication that makes 
sense to me. I would welcome a better way of exchanging ideas than email but I 
didn't see one, yet.
I like stackoverflow as well but it is a poor site for discussing. Discussions 
happen through the misuse of comments. A lot of the threads posted on pharo 
users list aren't suited for stackoverflow. So I wouldn't consider 
stackoverflow a replacement of the users list.

 Oh and a minor bonus is a huge advertisement for pharo. 
 
 But then take my idea with a grain of salt, I don't like mailing lists :)
 Thank god for forum.world.st :D
 
I see. I would like to see that stackoverflow is used more often but I don't 
see how. The intention of my mail was that there is indeed a using crowd of 
pharo that isn't interested in the very details of the core development. So I 
still consider the separation of the lists good. Maybe it is only my lonely 
view of our world. But as long as we have the two lists I would welcome it if 
the normal stuff would happen on the users list. My point of view is that 
there should be first a users list. And in order not to startle newcomers the 
dev cracks should be moved to their own mailing list :)

Norbert

 
 Norbert Hartl wrote
 We should use the pharo users mailing list more often. Imagine there are
 people only subscribed to the users list. They can't see a lot of
 interesting posts and the users list does not appear to be very lively. At
 least half of the posts here in the last days I would like to see on the
 users list. 
 So if your post is not really about the development of pharo or is not a
 problem with pharo core (external package discussions belong IMHO to the
 users list as well) then consider to post to the users list. Everyone you
 like to reach is subscribed there, too. 
 
 Norbert
 
 
 
 
 
 --
 View this message in context: 
 http://forum.world.st/Use-pharo-users-mailing-list-tp4709698p4709702.html
 Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.
 




Re: [Pharo-dev] Use pharo users mailing list

2013-09-23 Thread Max Leske
I like that idea. At least some of the questions on the users list are not even 
Pharo specific but regard Smalltalk in general. Those need not be answered by 
us but can be answered by anyone with a Smalltalk background, be it VW, VA, 
Squeak…

On the other hand (I'm not sure about this, since I don't read the users list) 
there might be topics like job offers / searches, or more general discussions 
on that list and moving to SO would kill those (one could argue that such 
topics would be more suitable on pharo-dev…) since SO is strictly question and 
answer orientated.

Another argument for closing the users list: Marcus wouldn't have to save two 
lists the next time the servers go down :)

Cheers,
Max

On 23.09.2013, at 08:48, kilon theki...@yahoo.co.uk wrote:

 
 Here is a radical suggestion you probably don't want to hear. 
 
 Close down Pharo users mailing list, redirect everyone to stackoverflow. 
 
 Consider stackoverflow is THE forum for coding, I cant think of a better
 place to ask questions for smalltalk and pharo , rarely questions left
 unanswered there and I wont even start to discuss how cool of a website it
 is. 
 
 Oh and a minor bonus is a huge advertisement for pharo. 
 
 But then take my idea with a grain of salt, I don't like mailing lists :)
 Thank god for forum.world.st :D
 
 
 Norbert Hartl wrote
 We should use the pharo users mailing list more often. Imagine there are
 people only subscribed to the users list. They can't see a lot of
 interesting posts and the users list does not appear to be very lively. At
 least half of the posts here in the last days I would like to see on the
 users list. 
 So if your post is not really about the development of pharo or is not a
 problem with pharo core (external package discussions belong IMHO to the
 users list as well) then consider to post to the users list. Everyone you
 like to reach is subscribed there, too. 
 
 Norbert
 
 
 
 
 
 --
 View this message in context: 
 http://forum.world.st/Use-pharo-users-mailing-list-tp4709698p4709702.html
 Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.
 




Re: [Pharo-dev] Integration Process

2013-09-23 Thread Stéphane Ducasse
Camillo you are right.
Now pay attention that submitting a fix is not integration of a bug fix.


On Sep 23, 2013, at 6:21 AM, Camillo Bruni camillobr...@gmail.com wrote:

 I spent today 10mins explaining step by step on how to regular Pharo 
 programmers how to create a bugfix for Pharo!
 
 THIS IS BAD! 
 
 There are many more motivated Pharo programmers outside RMoD, and I am sure 
 that quite some
 of them would actually provide bug fixes. The current bug-report process has 
 a way too steep
 learning curve.
 
 
 There are a few things we have to change here:
 
 1. make bugs.pharo.org finally work with dots in the email message
 2. make bugs.pharo.org automatically send a password reset request (in the 
 worst case we do a redirect/curl on the normal fogbugz site)
 3. make the anonymous inbox work on the smalltalkhub
 4. reactivate the SLICE submitter in the image
 
 
 So who takes responsibility?
 
 I will take care of point 4 during the following Week.
 Plus I made an 8 minute screencast with all the details of the integration: 
 https://vimeo.com/75183993




Re: [Pharo-dev] Use pharo users mailing list

2013-09-23 Thread Hernán Morales Durand
2013/9/23 Stephan Eggermont step...@stack.nl

 Kilon wrote
 Here is a radical suggestion you probably don't want to hear.
 Close down Pharo users mailing list, redirect everyone to stackoverflow.

 Definitely not. Stackoverflow is nearly dead, and seriously unsuitable for
 small languages. Good questions will get closed by clueless people.
 Good answers will get downvoted because they go against majority
 views. The ranking system is heavily skewed towards popular languages.
 Stackoverflow doesn't allow discussions (and interesting questions),
 which is a major reason to have these lists.

 To see for yourself, take a look at the questions related to OODBs.


This is true, StackOverflow is badly contaminated.




 Stephan




Re: [Pharo-dev] Use pharo users mailing list

2013-09-23 Thread kilon
Stephan Eggermont wrote
 Kilon wrote
Here is a radical suggestion you probably don't want to hear. 
Close down Pharo users mailing list, redirect everyone to stackoverflow. 
 
 Definitely not. Stackoverflow is nearly dead, and seriously unsuitable for
 small languages. Good questions will get closed by clueless people.
 Good answers will get downvoted because they go against majority 
 views. The ranking system is heavily skewed towards popular languages.
 Stackoverflow doesn't allow discussions (and interesting questions),
 which is a major reason to have these lists.
 
 To see for yourself, take a look at the questions related to OODBs.  
 
 Stephan

its dead ? I have not see any pharo questions get downvoted or closed so
far. But yeah they are biased and they have a bad attitude at times but in
the end all sites have these people. Stackoverflow has like any website it
pros and its cons.

About discussions in general, how many of the threads that are opened in
user forum cannot be formulated easily into questions and answers. From what
I see its no more than 10% . And taking into account the frequency of posts
in the user forum , I would say no more than 1 per month which is hardly a
reason to keep a mailing list around. And there are plenty of general
questions in stackoverflow here is an example


http://stackoverflow.com/questions/18946662/if-pypy-is-6-3-times-faster-than-cpython-why-not-just-use-faster-interpreter
http://stackoverflow.com/questions/18946662/if-pypy-is-6-3-times-faster-than-cpython-why-not-just-use-faster-interpreter
  

so I do think the level of tolerance is actually quite high. If you take a
look at the comments in that link its clear there is an overall discussion
on the matter. Also it beats quote wars we have over here ;)

Now for Pharo Dev specific , yes in that case a forum is a must have because
obviously discussions are a main topic here to coordinate efforts and code
changes. 

Anyway it was just a suggestion I am fine using the forum ;)



--
View this message in context: 
http://forum.world.st/Use-pharo-users-mailing-list-tp4709698p4709729.html
Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.



Re: [Pharo-dev] Extending HelpTopic

2013-09-23 Thread kilon
I take it from the silence , there is no interest in my code :D 

That's fine I will create my own HelpTopic class and keep it independent
from pharo internal libs so I dont have to bother people with slices they
don't deem important :) Makes my life easier too ;)



--
View this message in context: 
http://forum.world.st/Extending-HelpTopic-tp4709645p4709730.html
Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.



Re: [Pharo-dev] Extending HelpTopic

2013-09-23 Thread Esteban Lorenzano
you submitted yesterday... a sunday... and we have a not so big community, and 
all of us has a lot of tasks and things to do.
you should be a bit more patient :)

Esteban

On Sep 23, 2013, at 10:56 AM, kilon theki...@yahoo.co.uk wrote:

 I take it from the silence , there is no interest in my code :D 
 
 That's fine I will create my own HelpTopic class and keep it independent
 from pharo internal libs so I dont have to bother people with slices they
 don't deem important :) Makes my life easier too ;)
 
 
 
 --
 View this message in context: 
 http://forum.world.st/Extending-HelpTopic-tp4709645p4709730.html
 Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.
 




Re: [Pharo-dev] Use pharo users mailing list

2013-09-23 Thread Stephan Eggermont
Yes, it is dead. The number of answers is getting lower and lower, the 
questions get more and more detailed.

http://stackoverflow.com/questions/18946662/if-pypy-is-6-3-times-faster-than-cpython-why-not-just-use-faster-interpreter

Hmm yes, that is a question that needs to be closed. Interesting, but not 
allowed.
That's the difference between a large and a small language. Or rather, it is 
just
arbitrary. 

Stephan


 


Re: [Pharo-dev] How to test the same behavior with different data

2013-09-23 Thread Frank Shearar
I played around with a combination of data driven testing and random
data generation a while back:
* http://www.lshift.net/blog/2011/09/13/checking-squeak-quickly
* http://www.squeaksource.com/SqueakCheck/

There is a ConfigurationOf there. It integrates with SUnit by adding a
new kind of TestCase that knows how to run theories, identified by
pragmas. It also features the recording of a counterexample to your
theory by generating a normal test method on the relevant TestCase
subclass.

I haven't touched the code in a while, but if there's interest I'd be
happy to hack on it once more.

frank

On 22 September 2013 21:43, laurent laffont laurent.laff...@gmail.com wrote:
 Hi,

 in phpunit there's a @dataProvider annotation, so one method returns a
 several data sets for a test method. I'm not sure that's the best design but
 it's nice to have one unit test result per data set. See
 http://phpunit.de/manual/current/en/writing-tests-for-phpunit.html#writing-tests-for-phpunit.data-providers


 Translating the example to Pharo that should give something like:

 TestCase subclass: #DataTest

 DataTesttestAdd: a to: b shouldAnswer: c
dataProvider: #provider
self assert: c equals: a + b

 DataTestprovider
   ^ { {0. 0. 0}.
  {1. 0. 1}.
  {0. 1. 1}.
  {1. 2. 3} }

 It may not be to difficult to implement in SUnit. What do you think about
 this ?

 Laurent


 On Sat, Sep 21, 2013 at 1:47 PM, Jan Vrany jan.vr...@fit.cvut.cz wrote:

 Hi,

 I actually already thought on this as I have similar problems.
 So far I just create a bunch of tests, passing the actual set of
 parameters to a common test method as message arguments.

 For different framework (not SUnit, but similar spirit), I introduced a
 notion of parameter, each having a domain. When running test, the runner
 computes all possible combinations of parameter values and run the test on
 each such combination. I would like to have something similar
 in SUnit, but there are some issues. This is the feature I would like to
 see in SUnit 6.x, but I/we have to finish 5.0 first - I wonder if I ever
 find a time to do push it :-(


 On 21/09/13 11:06, Noury Bouraqadi wrote:

 Hi,

 Last ESUG I attended the cool katas session organized by Stephan
 Eggermont and Laurent Laffont.
 That was a good opportunity to step back and think about my TDD practices
 .

 To experiment with the style proposed by Laurent, I started writing tests
 for a pong.
 I ended up having groups of nearly identical tests:
 -they use exactly the same objects, send the same messages,
 -but they differ only by values.

 An example, is testing the motion of the ball towards different
 directions or collisions with obstacles at different locations or speeds.

 Now, I wonder what is the best way to express those similar tests?

 In a short discussion before I leave, Stephane told me about tables of
 values. It seem that there is such a support in the ruby world in the
 cucumber framework. Do we have anything similar in Smalltalk world?

 BTW, the full ESUG conference was great. Thanx to local organizers, and
 all people that contributed to make it a success.

 Thanx,
 Noury
 Ecole des Mines de Douai
 http://car.mines-douai.fr/noury
 --











Re: [Pharo-dev] Extending HelpTopic

2013-09-23 Thread kilon
EstebanLM wrote
 also, putting your code in review needed would help to reviewers to
 notice that you submitted something :)
 
 On Sep 23, 2013, at 11:07 AM, Esteban Lorenzano lt;

 estebanlm@

 gt; wrote:
 
 you submitted yesterday... a sunday... and we have a not so big
 community, and all of us has a lot of tasks and things to do.
 you should be a bit more patient :)
 
 Esteban
 
 On Sep 23, 2013, at 10:56 AM, kilon lt;

 thekilon@.co

 gt; wrote:
 
 I take it from the silence , there is no interest in my code :D 
 
 That's fine I will create my own HelpTopic class and keep it independent
 from pharo internal libs so I dont have to bother people with slices
 they
 don't deem important :) Makes my life easier too ;)
 
 
 
 --
 View this message in context:
 http://forum.world.st/Extending-HelpTopic-tp4709645p4709730.html
 Sent from the Pharo Smalltalk Developers mailing list archive at
 Nabble.com.
 


No problemo this is why I submitted this slice to see how the overall
process work and gain some experience so when the time comes to fix a pharo
bug I can do it properly.

yeah this is why I decided to keep code bases separate. I don't see a need
for me to wait so long for a review to my code cause I will want to move on
eventually. And plus I create more work for you and as you said there too
few of you and you already very busy. And I totally understand that and I am
here to make your life easier and not harder ;)

So its no problem I will continue the effort alone, and ping this list back
when I have something substantial to show.  




--
View this message in context: 
http://forum.world.st/Extending-HelpTopic-tp4709645p4709735.html
Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.



[Pharo-dev] How to find a not defined class in my image?

2013-09-23 Thread Sabine Knöfel
Hi,

I am looking for a way to find out, if I have Classes referenced in my image
which are not defined.

I do this because I want to check, if my configurationOf is loading all the
stuff I want to load.

In the code critics browser from world menu, there is Class not referenced
but I can not find something like Class referenced but not defined.

How do you check this?

Regards
Sabine



--
View this message in context: 
http://forum.world.st/How-to-find-a-not-defined-class-in-my-image-tp4709737.html
Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.



Re: [Pharo-dev] Use pharo users mailing list

2013-09-23 Thread kilon
Troll : Is it more dead than smalltalk or less dead ? :D 

Excuse me I have just an allergy in the word dead so I could not resist. I
remember for 3 days in a row there was some people popping in #smalltalk irc
channel asking , why smalltalk is dead, how dead it is, why the corpse still
smells and what the autopsy revealed :D. I find people ... hilarious. 

I totally understand your dislike on stackoverflow and there is no way I
would enforce my idea down your throat , I believe in democracy ;) The real
thing, not the one people think they have in their countries. 

Plus its no big deal after all, if google can find it, mission accomplished. 

Actually I once asked where to post my noobish questions and I was told that
pharo-dev was more than fine. 


Stephan Eggermont wrote
 Yes, it is dead. The number of answers is getting lower and lower, the
 questions get more and more detailed.
 
http://stackoverflow.com/questions/18946662/if-pypy-is-6-3-times-faster-than-cpython-why-not-just-use-faster-interpreter
 
 Hmm yes, that is a question that needs to be closed. Interesting, but not
 allowed.
 That's the difference between a large and a small language. Or rather, it
 is just
 arbitrary. 
 
 Stephan





--
View this message in context: 
http://forum.world.st/Use-pharo-users-mailing-list-tp4709698p4709738.html
Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.



Re: [Pharo-dev] How to find a not defined class in my image?

2013-09-23 Thread Sven Van Caekenberghe

On 23 Sep 2013, at 11:29, Sabine Knöfel sabine.knoe...@gmail.com wrote:

 Hi,
 
 I am looking for a way to find out, if I have Classes referenced in my image
 which are not defined.
 
 I do this because I want to check, if my configurationOf is loading all the
 stuff I want to load.
 
 In the code critics browser from world menu, there is Class not referenced
 but I can not find something like Class referenced but not defined.
 
 How do you check this?

Does the global variable Undeclared not do this ?

Furthermore, if you open a Transcript during loading, you will get lots of 
information.

 Regards
 Sabine
 
 
 
 --
 View this message in context: 
 http://forum.world.st/How-to-find-a-not-defined-class-in-my-image-tp4709737.html
 Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.
 




Re: [Pharo-dev] How to find a not defined class in my image?

2013-09-23 Thread Goubier Thierry

Write

Undefined

in a Workspace and inspect it; if you have undefined classes referenced, 
they will be listed there and you have a contextual menu entry for 
searching where they are used.


To see that you have progressed (i.e., removed some undefined or updated 
your configuration), select and do it a workspace:


Smalltalk cleanOutUndeclared

And inspect again Undefined.

Thierry


Le 23/09/2013 11:29, Sabine Knöfel a écrit :

Hi,

I am looking for a way to find out, if I have Classes referenced in my image
which are not defined.

I do this because I want to check, if my configurationOf is loading all the
stuff I want to load.

In the code critics browser from world menu, there is Class not referenced
but I can not find something like Class referenced but not defined.

How do you check this?

Regards
Sabine



--
View this message in context: 
http://forum.world.st/How-to-find-a-not-defined-class-in-my-image-tp4709737.html
Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.





--
Thierry Goubier
CEA list
Laboratoire des Fondations des Systèmes Temps Réel Embarqués
91191 Gif sur Yvette Cedex
France
Phone/Fax: +33 (0) 1 69 08 32 92 / 83 95



Re: [Pharo-dev] How to find a not defined class in my image?

2013-09-23 Thread Sabine Knöfel
Thank you, this was exactly what I need.
Sabine


On Mon, Sep 23, 2013 at 11:41 AM, Goubier Thierry [via Smalltalk] 
ml-node+s1294792n4709740...@n4.nabble.com wrote:

 Write

 Undefined

 in a Workspace and inspect it; if you have undefined classes referenced,
 they will be listed there and you have a contextual menu entry for
 searching where they are used.

 To see that you have progressed (i.e., removed some undefined or updated
 your configuration), select and do it a workspace:

 Smalltalk cleanOutUndeclared

 And inspect again Undefined.

 Thierry


 Le 23/09/2013 11:29, Sabine Knöfel a écrit :

  Hi,
 
  I am looking for a way to find out, if I have Classes referenced in my
 image
  which are not defined.
 
  I do this because I want to check, if my configurationOf is loading all
 the
  stuff I want to load.
 
  In the code critics browser from world menu, there is Class not
 referenced
  but I can not find something like Class referenced but not defined.
 
  How do you check this?
 
  Regards
  Sabine
 
 
 
  --
  View this message in context:
 http://forum.world.st/How-to-find-a-not-defined-class-in-my-image-tp4709737.html
  Sent from the Pharo Smalltalk Developers mailing list archive at
 Nabble.com.
 
 
 

 --
 Thierry Goubier
 CEA list
 Laboratoire des Fondations des Systèmes Temps Réel Embarqués
 91191 Gif sur Yvette Cedex
 France
 Phone/Fax: +33 (0) 1 69 08 32 92 / 83 95



 --
  If you reply to this email, your message will be added to the discussion
 below:

 http://forum.world.st/How-to-find-a-not-defined-class-in-my-image-tp4709737p4709740.html
  To unsubscribe from How to find a not defined class in my image?, click
 herehttp://forum.world.st/template/NamlServlet.jtp?macro=unsubscribe_by_codenode=4709737code=c2FiaW5lLmtub2VmZWxAZ21haWwuY29tfDQ3MDk3Mzd8MTA0OTM5MTYx
 .
 NAMLhttp://forum.world.st/template/NamlServlet.jtp?macro=macro_viewerid=instant_html%21nabble%3Aemail.namlbase=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespacebreadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml





--
View this message in context: 
http://forum.world.st/How-to-find-a-not-defined-class-in-my-image-tp4709737p4709741.html
Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.

Re: [Pharo-dev] Use pharo users mailing list

2013-09-23 Thread Stephan Eggermont
Kilon wrote:
Excuse me I have just an allergy in the word dead so I could not resist. I 
remember for 3 days in a row there was some people popping in #smalltalk irc 
channel asking , why smalltalk is dead, how dead it is, why the corpse still 
smells and what the autopsy revealed :D. I find people ... hilarious. 

That's my disappointment speaking. It was a great idea. 
I'm an early stackoverflow user with 10K+ reputation. 
The first year it was pretty good, but I've seen it rapidly detoriate
to the level where looking at random new questions 
doesn't make sense anymore. The result of that is that there
is no longer the cross-pollination that made stackoverflow 
an interesting site. 

Stephan


Re: [Pharo-dev] Use pharo users mailing list

2013-09-23 Thread kilon
And you think this affects pharo and smalltalk questions ? because as far I
have seen, there is nothing to complain about. Even one of my questions
about nbopengl whether i should use it could easily be closed and it did
not. 

Maybe its bad with other languages , but so far it looks fine to me, am I
missing something here ? Could you link pharo and smalltalk examples that
indicate the problem ?


Stephan Eggermont wrote
 Kilon wrote:
Excuse me I have just an allergy in the word dead so I could not resist.
I remember for 3 days in a row there was some people popping in #smalltalk
irc channel asking , why smalltalk is dead, how dead it is, why the corpse
still smells and what the autopsy revealed :D. I find people ... hilarious. 
 
 That's my disappointment speaking. It was a great idea. 
 I'm an early stackoverflow user with 10K+ reputation. 
 The first year it was pretty good, but I've seen it rapidly detoriate
 to the level where looking at random new questions 
 doesn't make sense anymore. The result of that is that there
 is no longer the cross-pollination that made stackoverflow 
 an interesting site. 
 
 Stephan





--
View this message in context: 
http://forum.world.st/Use-pharo-users-mailing-list-tp4709698p4709745.html
Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.



Re: [Pharo-dev] How to find a not defined class in my image?

2013-09-23 Thread Clément Bera
Hello,

Smalltalk at: #MyClassName
= raise KeyNotFound Error if MyClassName does not exist
= answers MyClassName if the class exists


2013/9/23 Sabine Knöfel sabine.knoe...@gmail.com

 Hi,

 I am looking for a way to find out, if I have Classes referenced in my
 image
 which are not defined.

 I do this because I want to check, if my configurationOf is loading all the
 stuff I want to load.

 In the code critics browser from world menu, there is Class not
 referenced
 but I can not find something like Class referenced but not defined.

 How do you check this?

 Regards
 Sabine



 --
 View this message in context:
 http://forum.world.st/How-to-find-a-not-defined-class-in-my-image-tp4709737.html
 Sent from the Pharo Smalltalk Developers mailing list archive at
 Nabble.com.




Re: [Pharo-dev] Extending HelpTopic

2013-09-23 Thread Esteban Lorenzano
please, do not take it as a disincentive to collaborate, this should be quite 
the opposite :)

I was trying to ask for some patience because when you join into a 
collaborative community, obviously the times spent on the process will be 
different than if you work alone. The gain is obvious, but we often lose from 
mind the price to pay (you do not control all the stages of the process). 

So, if you submit something, it will be some time to get the feedback (time to 
people to notice your change, to see it, etc.). Also, I was not talking about 
Marcus, Stef or me... since we are not the reviewers (that's also a 
responsibility of everybody in the community): we are just the integrators. 

So please, continue committing changes to the process... the review will come :)

btw... one thing that I usually do when working: I commit slices even if they 
are not ready. Then I continue submitting slices until work is done... then I 
move the fix to review needed. That way you can work in big changes and also 
be preparing a SLICE for the right moment. 

cheers, 
Esteban


On Sep 23, 2013, at 11:19 AM, kilon theki...@yahoo.co.uk wrote:

 EstebanLM wrote
 also, putting your code in review needed would help to reviewers to
 notice that you submitted something :)
 
 On Sep 23, 2013, at 11:07 AM, Esteban Lorenzano lt;
 
 estebanlm@
 
 gt; wrote:
 
 you submitted yesterday... a sunday... and we have a not so big
 community, and all of us has a lot of tasks and things to do.
 you should be a bit more patient :)
 
 Esteban
 
 On Sep 23, 2013, at 10:56 AM, kilon lt;
 
 thekilon@.co
 
 gt; wrote:
 
 I take it from the silence , there is no interest in my code :D 
 
 That's fine I will create my own HelpTopic class and keep it independent
 from pharo internal libs so I dont have to bother people with slices
 they
 don't deem important :) Makes my life easier too ;)
 
 
 
 --
 View this message in context:
 http://forum.world.st/Extending-HelpTopic-tp4709645p4709730.html
 Sent from the Pharo Smalltalk Developers mailing list archive at
 Nabble.com.
 
 
 
 No problemo this is why I submitted this slice to see how the overall
 process work and gain some experience so when the time comes to fix a pharo
 bug I can do it properly.
 
 yeah this is why I decided to keep code bases separate. I don't see a need
 for me to wait so long for a review to my code cause I will want to move on
 eventually. And plus I create more work for you and as you said there too
 few of you and you already very busy. And I totally understand that and I am
 here to make your life easier and not harder ;)
 
 So its no problem I will continue the effort alone, and ping this list back
 when I have something substantial to show.  
 
 
 
 
 --
 View this message in context: 
 http://forum.world.st/Extending-HelpTopic-tp4709645p4709735.html
 Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.
 




Re: [Pharo-dev] Use pharo users mailing list

2013-09-23 Thread H. Hirzel
On 9/23/13, Stephan Eggermont step...@stack.nl wrote:
 Kilon wrote
Here is a radical suggestion you probably don't want to hear.
Close down Pharo users mailing list, redirect everyone to stackoverflow.

 Definitely not. Stackoverflow is nearly dead, and seriously unsuitable for
 small languages.

There are obstacles but one cannot say that it is seriously
unsuitable. Stackoverflow question demand a certain format, typically
something like

- statement of what you want to accomplish
- attempt a solution with code which has problems
- question

Good questions will get closed by clueless people.
Mostly if the form does not fit.
And if there are Pharo people (maybe earned in another area) with
enough reputation points this may be prevented

 Good answers will get downvoted because they go against majority
 views.

Why?

The ranking system is heavily skewed towards popular languages.

It is based on the number of hits which is naturally less in less
popular languages.
However subcommunities may function well in stackoverflow.

the tagging and referencing system is excellent.

 Stackoverflow doesn't allow discussions (and interesting questions),

No, but that is not the aim of the site. It is a question and answer
site for _coding_ and maybe _design_ problems to a certain extent.

However it allows for wiki pages. Any answer may be turned into a wiki page.

 which is a major reason to have these lists.

List are good in addition.

--Hannes

 To see for yourself, take a look at the questions related to OODBs.

 Stephan





[Pharo-dev] 11635: Race condition in SequenceableCollectionshuffle

2013-09-23 Thread Max Leske
Sven suggested posting this on the list for discussion, so here you go:

 Maybe this should be discussed on the list, your are going to break API.
 
 Note that there is also #sort and #sorted with similar copy behavior.
 
 Also, I am not sure that basic operations should use mutexes to protect 
 themselves by default: there is a cost when you are a single threaded user. 
 Even in Java there are synchronized and non-synchronized versions of 
 collections. IMHO, the protection should happen in your app, and basic 
 collections do not have to be thread safe.
 
 Sven
 
 #shuffle does not use CollectionmutexForPicking as other users of 
 #randomForPicking demonstrate. This can lead to race conditions (found in 
 our application).
 
 In addition, there are now #shuffle, #shuffled, #shuffleBy: and #shuffledBy: 
 where #shuffled and #shuffledBy: shuffle a copy and answers that. This is 
 very confusing.
 
 I propose a fix where #shuffled and #shuffledBy: are renamed to #copyShuffle 
 and #copyShuffledBy: and moved to the copying protocol. #shuffle and 
 #copyShuffle will use the mutex to prevent race conditions.


Re: [Pharo-dev] Integration Process

2013-09-23 Thread Camillo Bruni

On 2013-09-23, at 05:13, Esteban Lorenzano esteba...@gmail.com wrote:

 
 On Sep 23, 2013, at 6:21 AM, Camillo Bruni camillobr...@gmail.com wrote:
 
 I spent today 10mins explaining step by step on how to regular Pharo 
 programmers how to create a bugfix for Pharo!
 
 THIS IS BAD! 
 
 There are many more motivated Pharo programmers outside RMoD, and I am sure 
 that quite some
 of them would actually provide bug fixes. The current bug-report process has 
 a way too steep
 learning curve.
 
 
 There are a few things we have to change here:
 
 1. make bugs.pharo.org finally work with dots in the email message
 2. make bugs.pharo.org automatically send a password reset request (in the 
 worst case we do a redirect/curl on the normal fogbugz site)
 3. make the anonymous inbox work on the smalltalkhub
 
 I would not say anonymous... public, yes :)

yes this is what I meant, committing without having to be added manually to the 
contributors list.


signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: [Pharo-dev] [Pharo-users] [ANN] Launching Pharo on Ubuntu

2013-09-23 Thread Camillo Bruni
good work!

On 2013-09-23, at 09:13, Damien Cassou damien.cas...@gmail.com wrote:

 For Ubuntu users who are using my PPA
 (https://launchpad.net/~pharo/+archive/stable/), you can now launch
 Pharo from either the Ubuntu Dashboard or the terminal (just type
 'pharo').
 
 In both cases, you will see the Pharo Launcher from which you can
 create new images from templates on the web and launch existing
 images. http://www.smalltalkhub.com/#!/~Pharo/PharoLauncher
 
 No need for manual download of zip files, unpacking, and directory
 management. The launcher does everything for you.
 
 Have fun
 
 -- 
 Damien Cassou
 http://damiencassou.seasidehosting.st
 
 Success is the ability to go from one failure to another without
 losing enthusiasm.
 Winston Churchill
 pharo-launcher-screenshot.png



signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: [Pharo-dev] Use pharo users mailing list

2013-09-23 Thread Esteban A. Maringolo
The difference not only lies in the format, but also in the user base.

I'm 30+ years old, and I grew up using bulletin boards, newsgroups and
mailing list, but there is a big generation of programmers (emphasis
in the quotes) that will never subscribe to a mailing list, some don't
even know what a mailing list is. They grew up using sites like Yahoo
Answers, and expect the same for their programming questions.

I guess it is the same that happened in the transition from newsgroups
to mailing lists, and as in the bbc to newsgroups, and newsgroups to
mailing lists, every new generation seems to me like an order of
magnitude bigger.

I think BOTH options are okay, it is, a user list and StackOverflow
like websites. The SEO of the later is really good.
The flattening of the question/answer curve may have to do with the
fact that most questions have been answered and they start to repeat.

I use StackOverflow and SuperUser on a daily basis. And I do find most
of the answers I need.

To me the radical choice would be to merge both users and development
mailing lists.
The separation is okay from an organization point of view, but the
volume today is no that big as to justify fragmentation, seems like an
early optimization.

Regards,


Esteban A. Maringolo


2013/9/23 H. Hirzel hannes.hir...@gmail.com:
 On 9/23/13, Stephan Eggermont step...@stack.nl wrote:
 Kilon wrote
Here is a radical suggestion you probably don't want to hear.
Close down Pharo users mailing list, redirect everyone to stackoverflow.

 Definitely not. Stackoverflow is nearly dead, and seriously unsuitable for
 small languages.

 There are obstacles but one cannot say that it is seriously
 unsuitable. Stackoverflow question demand a certain format, typically
 something like

 - statement of what you want to accomplish
 - attempt a solution with code which has problems
 - question

Good questions will get closed by clueless people.
 Mostly if the form does not fit.
 And if there are Pharo people (maybe earned in another area) with
 enough reputation points this may be prevented

 Good answers will get downvoted because they go against majority
 views.

 Why?

The ranking system is heavily skewed towards popular languages.

 It is based on the number of hits which is naturally less in less
 popular languages.
 However subcommunities may function well in stackoverflow.

 the tagging and referencing system is excellent.

 Stackoverflow doesn't allow discussions (and interesting questions),

 No, but that is not the aim of the site. It is a question and answer
 site for _coding_ and maybe _design_ problems to a certain extent.

 However it allows for wiki pages. Any answer may be turned into a wiki page.

 which is a major reason to have these lists.

 List are good in addition.

 --Hannes

 To see for yourself, take a look at the questions related to OODBs.

 Stephan






Re: [Pharo-dev] Use pharo users mailing list

2013-09-23 Thread p...@highoctane.be
Google and a copy of the list in there is fine enough for me.

SO is okay but frankly, I do not go there to look for stuff/answer
questions, but because my google search sends me there.

Where we could have exposure would be on things like infoQ.

Regards,
---
Philippe Back
Dramatic Performance Improvements
Mob: +32(0) 478 650 140 | Fax: +32 (0) 70 408 027
Mail:p...@highoctane.be | Web: http://philippeback.eu
Blog: http://philippeback.be | Twitter: @philippeback
Youtube: http://www.youtube.com/user/philippeback/videos

High Octane SPRL
rue cour Boisacq 101 | 1301 Bierges | Belgium

Pharo Consortium Member - http://consortium.pharo.org/
Featured on the Software Process and Measurement Cast -
http://spamcast.libsyn.com
Sparx Systems Enterprise Architect and Ability Engineering EADocX Value
Added Reseller




On Mon, Sep 23, 2013 at 2:33 PM, Esteban A. Maringolo
emaring...@gmail.comwrote:

 The difference not only lies in the format, but also in the user base.

 I'm 30+ years old, and I grew up using bulletin boards, newsgroups and
 mailing list, but there is a big generation of programmers (emphasis
 in the quotes) that will never subscribe to a mailing list, some don't
 even know what a mailing list is. They grew up using sites like Yahoo
 Answers, and expect the same for their programming questions.

 I guess it is the same that happened in the transition from newsgroups
 to mailing lists, and as in the bbc to newsgroups, and newsgroups to
 mailing lists, every new generation seems to me like an order of
 magnitude bigger.

 I think BOTH options are okay, it is, a user list and StackOverflow
 like websites. The SEO of the later is really good.
 The flattening of the question/answer curve may have to do with the
 fact that most questions have been answered and they start to repeat.

 I use StackOverflow and SuperUser on a daily basis. And I do find most
 of the answers I need.

 To me the radical choice would be to merge both users and development
 mailing lists.
 The separation is okay from an organization point of view, but the
 volume today is no that big as to justify fragmentation, seems like an
 early optimization.

 Regards,


 Esteban A. Maringolo


 2013/9/23 H. Hirzel hannes.hir...@gmail.com:
  On 9/23/13, Stephan Eggermont step...@stack.nl wrote:
  Kilon wrote
 Here is a radical suggestion you probably don't want to hear.
 Close down Pharo users mailing list, redirect everyone to stackoverflow.
 
  Definitely not. Stackoverflow is nearly dead, and seriously unsuitable
 for
  small languages.
 
  There are obstacles but one cannot say that it is seriously
  unsuitable. Stackoverflow question demand a certain format, typically
  something like
 
  - statement of what you want to accomplish
  - attempt a solution with code which has problems
  - question
 
 Good questions will get closed by clueless people.
  Mostly if the form does not fit.
  And if there are Pharo people (maybe earned in another area) with
  enough reputation points this may be prevented
 
  Good answers will get downvoted because they go against majority
  views.
 
  Why?
 
 The ranking system is heavily skewed towards popular languages.
 
  It is based on the number of hits which is naturally less in less
  popular languages.
  However subcommunities may function well in stackoverflow.
 
  the tagging and referencing system is excellent.
 
  Stackoverflow doesn't allow discussions (and interesting questions),
 
  No, but that is not the aim of the site. It is a question and answer
  site for _coding_ and maybe _design_ problems to a certain extent.
 
  However it allows for wiki pages. Any answer may be turned into a wiki
 page.
 
  which is a major reason to have these lists.
 
  List are good in addition.
 
  --Hannes
 
  To see for yourself, take a look at the questions related to OODBs.
 
  Stephan
 
 
 




Re: [Pharo-dev] Extending HelpTopic

2013-09-23 Thread kilon
No no no I am not discouraged far from it, just not familiar with the
process. For example I had no clue that multiple slices were encouraged,
even ones that are WIP. That definetly changes everything. 

I would love to hear you workflow on this one, for example do you also
commit your own changes to smalltalkhub for backup ? Also whats the
diffirence between a slice and a regular commit ? Why you advise people not
to save the image with their changes (I assume its for testing the slice ) ?

I would love to contribute to pharo , I really like this community cause has
been more than friendly to me and I love pharo of course since you seem to
have very similar goal to what I want to achieve with coding. I started a
project on visual live coding in python to find out that pharo was doing
already more than I was dreaming of and I left python to code for pharo .
Now my project is just to enhance pharo here and there, clean up morphic,
create a cool gui that will be easy to use, a nice help system (with
documentation of course) and an app/ library store similarly to the Apple
app store (but of course free). If some of those ideas can be integrated
inside pharo and the community wants them so much the better for me. I also
don't mind fixing the occasional bug (not my bugs, I never make bugs only
weird features :D ).  

Also if I can submit my slices , continue to work and resubmit any future
slices thats great for me. The problem was never waiting for a review and
integration :) I just did not want to be stopped from working because I was
waiting for a review. If I can submit multiple slices then no problemo. 


EstebanLM wrote
 please, do not take it as a disincentive to collaborate, this should be
 quite the opposite :)
 
 I was trying to ask for some patience because when you join into a
 collaborative community, obviously the times spent on the process will
 be different than if you work alone. The gain is obvious, but we often
 lose from mind the price to pay (you do not control all the stages of the
 process). 
 
 So, if you submit something, it will be some time to get the feedback
 (time to people to notice your change, to see it, etc.). Also, I was not
 talking about Marcus, Stef or me... since we are not the reviewers (that's
 also a responsibility of everybody in the community): we are just the
 integrators. 
 
 So please, continue committing changes to the process... the review will
 come :)
 
 btw... one thing that I usually do when working: I commit slices even if
 they are not ready. Then I continue submitting slices until work is
 done... then I move the fix to review needed. That way you can work in
 big changes and also be preparing a SLICE for the right moment. 
 
 cheers, 
 Esteban
 
 
 On Sep 23, 2013, at 11:19 AM, kilon lt;

 thekilon@.co

 gt; wrote:
 
 EstebanLM wrote
 also, putting your code in review needed would help to reviewers to
 notice that you submitted something :)
 
 On Sep 23, 2013, at 11:07 AM, Esteban Lorenzano lt;
 
 estebanlm@
 
 gt; wrote:
 
 you submitted yesterday... a sunday... and we have a not so big
 community, and all of us has a lot of tasks and things to do.
 you should be a bit more patient :)
 
 Esteban
 
 On Sep 23, 2013, at 10:56 AM, kilon lt;
 
 thekilon@.co
 
 gt; wrote:
 
 I take it from the silence , there is no interest in my code :D 
 
 That's fine I will create my own HelpTopic class and keep it
 independent
 from pharo internal libs so I dont have to bother people with slices
 they
 don't deem important :) Makes my life easier too ;)
 
 
 
 --
 View this message in context:
 http://forum.world.st/Extending-HelpTopic-tp4709645p4709730.html
 Sent from the Pharo Smalltalk Developers mailing list archive at
 Nabble.com.
 
 
 
 No problemo this is why I submitted this slice to see how the overall
 process work and gain some experience so when the time comes to fix a
 pharo
 bug I can do it properly.
 
 yeah this is why I decided to keep code bases separate. I don't see a
 need
 for me to wait so long for a review to my code cause I will want to move
 on
 eventually. And plus I create more work for you and as you said there too
 few of you and you already very busy. And I totally understand that and I
 am
 here to make your life easier and not harder ;)
 
 So its no problem I will continue the effort alone, and ping this list
 back
 when I have something substantial to show.  
 
 
 
 
 --
 View this message in context:
 http://forum.world.st/Extending-HelpTopic-tp4709645p4709735.html
 Sent from the Pharo Smalltalk Developers mailing list archive at
 Nabble.com.






--
View this message in context: 
http://forum.world.st/Extending-HelpTopic-tp4709645p4709763.html
Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.



Re: [Pharo-dev] [Pharo-users] [ANN] Launching Pharo on Ubuntu

2013-09-23 Thread Erwan Douaille
Thanks :)


2013/9/23 Camillo Bruni camillobr...@gmail.com

 good work!

 On 2013-09-23, at 09:13, Damien Cassou damien.cas...@gmail.com wrote:

  For Ubuntu users who are using my PPA
  (https://launchpad.net/~pharo/+archive/stable/), you can now launch
  Pharo from either the Ubuntu Dashboard or the terminal (just type
  'pharo').
 
  In both cases, you will see the Pharo Launcher from which you can
  create new images from templates on the web and launch existing
  images. http://www.smalltalkhub.com/#!/~Pharo/PharoLauncher
 
  No need for manual download of zip files, unpacking, and directory
  management. The launcher does everything for you.
 
  Have fun
 
  --
  Damien Cassou
  http://damiencassou.seasidehosting.st
 
  Success is the ability to go from one failure to another without
  losing enthusiasm.
  Winston Churchill
  pharo-launcher-screenshot.png




-- 
Best regards,

Douaille Erwan douaille.er...@gmail.com


Re: [Pharo-dev] Integration Process

2013-09-23 Thread Camillo Bruni
On 2013-09-23, at 05:00, Sven Van Caekenberghe s...@stfx.eu wrote:
 On 23 Sep 2013, at 06:21, Camillo Bruni camillobr...@gmail.com wrote:
 
 Plus I made an 8 minute screencast with all the details of the 
 integration:https://vimeo.com/75183993
 
 Very nice, thank you !
 
 This should be posted on some webpage somewhere, not be hidden on the mailing 
 list.

yes, I will put a link on the wiki page. Maybe on the pharo screen cast?

 Of course, the 'Camillo Bruni Coding Speed' might be a bit too intimidating 
 ;-)

:P, yet it takes 7 minutes to explain all the details :(


signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: [Pharo-dev] Extending HelpTopic

2013-09-23 Thread Stéphane Ducasse

On Sep 23, 2013, at 2:41 PM, kilon theki...@yahoo.co.uk wrote:

 No no no I am not discouraged far from it, just not familiar with the
 process. For example I had no clue that multiple slices were encouraged,
 even ones that are WIP. That definetly changes everything. 
 
 I would love to hear you workflow on this one, for example do you also
 commit your own changes to smalltalkhub for backup ?

a slice is just a bunch of packages but this is important for us to know which 
packages work with which other ones.

 Also whats the diffirence between a slice and a regular commit ? Why you 
 advise people not
 to save the image with their changes (I assume its for testing the slice ) ?
 
 I would love to contribute to pharo , I really like this community cause has
 been more than friendly to me and I love pharo of course since you seem to
 have very similar goal to what I want to achieve with coding. I started a
 project on visual live coding in python to find out that pharo was doing
 already more than I was dreaming of and I left python to code for pharo .
 Now my project is just to enhance pharo here and there, clean up morphic,
 create a cool gui that will be easy to use, a nice help system (with
 documentation of course) and an app/ library store similarly to the Apple
 app store (but of course free). If some of those ideas can be integrated
 inside pharo and the community wants them so much the better for me. I also
 don't mind fixing the occasional bug (not my bugs, I never make bugs only
 weird features :D ).  
 
 Also if I can submit my slices , continue to work and resubmit any future
 slices thats great for me. The problem was never waiting for a review and
 integration :) I just did not want to be stopped from working because I was
 waiting for a review. If I can submit multiple slices then no problemo. 

yes

 
 
 EstebanLM wrote
 please, do not take it as a disincentive to collaborate, this should be
 quite the opposite :)
 
 I was trying to ask for some patience because when you join into a
 collaborative community, obviously the times spent on the process will
 be different than if you work alone. The gain is obvious, but we often
 lose from mind the price to pay (you do not control all the stages of the
 process). 
 
 So, if you submit something, it will be some time to get the feedback
 (time to people to notice your change, to see it, etc.). Also, I was not
 talking about Marcus, Stef or me... since we are not the reviewers (that's
 also a responsibility of everybody in the community): we are just the
 integrators. 
 
 So please, continue committing changes to the process... the review will
 come :)
 
 btw... one thing that I usually do when working: I commit slices even if
 they are not ready. Then I continue submitting slices until work is
 done... then I move the fix to review needed. That way you can work in
 big changes and also be preparing a SLICE for the right moment. 
 
 cheers, 
 Esteban
 
 
 On Sep 23, 2013, at 11:19 AM, kilon lt;
 
 thekilon@.co
 
 gt; wrote:
 
 EstebanLM wrote
 also, putting your code in review needed would help to reviewers to
 notice that you submitted something :)
 
 On Sep 23, 2013, at 11:07 AM, Esteban Lorenzano lt;
 
 estebanlm@
 
 gt; wrote:
 
 you submitted yesterday... a sunday... and we have a not so big
 community, and all of us has a lot of tasks and things to do.
 you should be a bit more patient :)
 
 Esteban
 
 On Sep 23, 2013, at 10:56 AM, kilon lt;
 
 thekilon@.co
 
 gt; wrote:
 
 I take it from the silence , there is no interest in my code :D 
 
 That's fine I will create my own HelpTopic class and keep it
 independent
 from pharo internal libs so I dont have to bother people with slices
 they
 don't deem important :) Makes my life easier too ;)
 
 
 
 --
 View this message in context:
 http://forum.world.st/Extending-HelpTopic-tp4709645p4709730.html
 Sent from the Pharo Smalltalk Developers mailing list archive at
 Nabble.com.
 
 
 
 No problemo this is why I submitted this slice to see how the overall
 process work and gain some experience so when the time comes to fix a
 pharo
 bug I can do it properly.
 
 yeah this is why I decided to keep code bases separate. I don't see a
 need
 for me to wait so long for a review to my code cause I will want to move
 on
 eventually. And plus I create more work for you and as you said there too
 few of you and you already very busy. And I totally understand that and I
 am
 here to make your life easier and not harder ;)
 
 So its no problem I will continue the effort alone, and ping this list
 back
 when I have something substantial to show.  
 
 
 
 
 --
 View this message in context:
 http://forum.world.st/Extending-HelpTopic-tp4709645p4709735.html
 Sent from the Pharo Smalltalk Developers mailing list archive at
 Nabble.com.
 
 
 
 
 
 
 --
 View this message in context: 
 http://forum.world.st/Extending-HelpTopic-tp4709645p4709763.html
 Sent from the Pharo Smalltalk Developers mailing list archive at 

Re: [Pharo-dev] 11635: Race condition in SequenceableCollectionshuffle

2013-09-23 Thread Nicolas Cellier
Here is my 100% personal opinion:

I don't like the copyShuffle.
To me, the rules are quite clear:
sort shuffle reverse etc... - perform modification in place
sorted shuffled reversed etc... - answer a copy
I hope the methods comments are clear. Does PBE tells about these
conventions? It would be a good thing.

And I don't like to have mutexes in base library, the less we have, the
better.
If a user is going to modify the same object concurrently, he/she takes
care of mutual exclusion.


2013/9/23 Max Leske maxle...@gmail.com

 Sven suggested posting this on the list for discussion, so here you go:

 Maybe this should be discussed on the list, your are going to break API.

 Note that there is also #sort and #sorted with similar copy behavior.

 Also, I am not sure that basic operations should use mutexes to protect
 themselves by default: there is a cost when you are a single threaded user.
 Even in Java there are synchronized and non-synchronized versions of
 collections. IMHO, the protection should happen in your app, and basic
 collections do not have to be thread safe.

 Sven

 #shuffle does not use CollectionmutexForPicking as other users of
 #randomForPicking demonstrate. This can lead to race conditions (found in
 our application).

 In addition, there are now #shuffle, #shuffled, #shuffleBy: and
 #shuffledBy: where #shuffled and #shuffledBy: shuffle a copy and answers
 that. This is very confusing.

 I propose a fix where #shuffled and #shuffledBy: are renamed to
 #copyShuffle and #copyShuffledBy: and moved to the copying protocol.
 #shuffle and #copyShuffle will use the mutex to prevent race conditions.




Re: [Pharo-dev] 11635: Race condition in SequenceableCollectionshuffle

2013-09-23 Thread Frank Shearar
On 23 September 2013 14:34, Max Leske maxle...@gmail.com wrote:

 On 23.09.2013, at 15:20, Frank Shearar frank.shea...@gmail.com wrote:

 On 23 September 2013 14:17, Nicolas Cellier
 nicolas.cellier.aka.n...@gmail.com wrote:
 Here is my 100% personal opinion:

 I don't like the copyShuffle.
 To me, the rules are quite clear:
 sort shuffle reverse etc... - perform modification in place
 sorted shuffled reversed etc... - answer a copy
 I hope the methods comments are clear. Does PBE tells about these
 conventions? It would be a good thing.

 And I don't like to have mutexes in base library, the less we have, the
 better.
 If a user is going to modify the same object concurrently, he/she takes care
 of mutual exclusion.

 Especially since locks don't compose. If you _really_ cared about
 accessing something concurrently, you'd share immutable data
 structures.

 I don't quite follow. Could you elaborate?

Hopefully it's uncontroversial to assert that locks don't compose.

If you only ever have one thread of execution, you don't have any
concurrency issues, and locks serve no purpose.

If you do have multiple threads of execution, then you have a few
choices for sharing data:
* you can use a lock around mutable data (but lock-using blocks of
code don't compose, so you end up with loads of bugs or deadlocks or
nests of locks, or all of the above)
* you can share a _copy_ of data.

In the latter case, you can share an actual copy, or share a pointer
to a structure that can't change. If it can't change, you can't have a
reader accidentally reading something from a structure halfway through
the writer writing to it.

Sharing some immutable chunk of state lets you save the memory taken
up by a copy, but also prevents all the race condition things you
usually get with shared mutable state.

frank


 frank

 2013/9/23 Max Leske maxle...@gmail.com

 Sven suggested posting this on the list for discussion, so here you go:

 Maybe this should be discussed on the list, your are going to break API.

 Note that there is also #sort and #sorted with similar copy behavior.

 Also, I am not sure that basic operations should use mutexes to protect
 themselves by default: there is a cost when you are a single threaded user.
 Even in Java there are synchronized and non-synchronized versions of
 collections. IMHO, the protection should happen in your app, and basic
 collections do not have to be thread safe.

 Sven

 #shuffle does not use CollectionmutexForPicking as other users of
 #randomForPicking demonstrate. This can lead to race conditions (found in
 our application).

 In addition, there are now #shuffle, #shuffled, #shuffleBy: and
 #shuffledBy: where #shuffled and #shuffledBy: shuffle a copy and answers
 that. This is very confusing.

 I propose a fix where #shuffled and #shuffledBy: are renamed to
 #copyShuffle and #copyShuffledBy: and moved to the copying protocol.
 #shuffle and #copyShuffle will use the mutex to prevent race conditions.








Re: [Pharo-dev] Extending HelpTopic

2013-09-23 Thread kilon
ok thank you for the clarifications :)



--
View this message in context: 
http://forum.world.st/Extending-HelpTopic-tp4709645p4709786.html
Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.



[Pharo-dev] Help with reviewing needed

2013-09-23 Thread Marcus Denker
Hi,

It would really be helpful if more people would review:

https://pharo.fogbugz.com/f/filters/36/Review

because if it has to wait for me, it might wait for a very long time.

Marcus


signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: [Pharo-dev] [NB] Trying to implement a ReadStream on NBExternalAddress

2013-09-23 Thread Camillo Bruni
Hi Jan,

I think I will add the ByteArray accessor to NBExternalAddress today
or tomorrow since I need it as well for another project.

Concerning the Streams, I think it is the easiest solution to wrap around
a ByteArray. Otherwise you could subclass one of the main stream classes
and implement your own primitive methods with FFI to read and write bytes.
In the worst case you will have to implement all primitive methods with FFI
that you find in the StandardFileStream.


On 2013-09-22, at 10:12, Jan van de Sandt jvdsa...@gmail.com wrote:
 Hello,
 
 I'm trying to implement a binary ReadStream that gets its data not from a
 Smalltalk collection but from some external memory address. I got this
 address from a library call using NativeBoost.
 
 The NBExternalAddress has methods to access bytes, int's and longs but
 there is no method to get a ByteArray starting at a specified offset and
 with a specified length. I need a method like this to implement the
 ReadStreamnext: method efficiently.
 
 Is it possible ti implement such a method or are there other ways to
 implement a ReadStream efficiently?
 
 In [1] I read that there was already an idea to implement a nbAddressAt:
 method. This would also be using in combination with NativeBoost
 class#memCopy:to:size
 
 Regrads,
 Jan.
 
 [1]
 http://forum.world.st/Pharo-dev-NB-Review-amp-fixes-amp-ideas-td4698514.html



signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: [Pharo-dev] Use pharo users mailing list

2013-09-23 Thread kilon
The one I found curious is that when I go to smalltalk tag 

http://stackoverflow.com/questions/tagged/pharo+smalltalk
http://stackoverflow.com/questions/tagged/pharo+smalltalk  

Almost all questions for smalltalk are about pharo. Are we by any chance
more popular than we think ? :D Or maybe smalltalkers by large don't like
stackoverflow. Its strange though. 


philippeback wrote
 Google and a copy of the list in there is fine enough for me.
 
 SO is okay but frankly, I do not go there to look for stuff/answer
 questions, but because my google search sends me there.
 
 Where we could have exposure would be on things like infoQ.
 
 Regards,
 ---
 Philippe Back
 Dramatic Performance Improvements
 Mob: +32(0) 478 650 140 | Fax: +32 (0) 70 408 027
 Mail:

 phil@

  | Web: http://philippeback.eu
 Blog: http://philippeback.be | Twitter: @philippeback
 Youtube: http://www.youtube.com/user/philippeback/videos
 
 High Octane SPRL
 rue cour Boisacq 101 | 1301 Bierges | Belgium
 
 Pharo Consortium Member - http://consortium.pharo.org/
 Featured on the Software Process and Measurement Cast -
 http://spamcast.libsyn.com
 Sparx Systems Enterprise Architect and Ability Engineering EADocX Value
 Added Reseller
 
 
 
 
 On Mon, Sep 23, 2013 at 2:33 PM, Esteban A. Maringolo
 lt;

 emaringolo@

 gt;wrote:
 
 The difference not only lies in the format, but also in the user base.

 I'm 30+ years old, and I grew up using bulletin boards, newsgroups and
 mailing list, but there is a big generation of programmers (emphasis
 in the quotes) that will never subscribe to a mailing list, some don't
 even know what a mailing list is. They grew up using sites like Yahoo
 Answers, and expect the same for their programming questions.

 I guess it is the same that happened in the transition from newsgroups
 to mailing lists, and as in the bbc to newsgroups, and newsgroups to
 mailing lists, every new generation seems to me like an order of
 magnitude bigger.

 I think BOTH options are okay, it is, a user list and StackOverflow
 like websites. The SEO of the later is really good.
 The flattening of the question/answer curve may have to do with the
 fact that most questions have been answered and they start to repeat.

 I use StackOverflow and SuperUser on a daily basis. And I do find most
 of the answers I need.

 To me the radical choice would be to merge both users and development
 mailing lists.
 The separation is okay from an organization point of view, but the
 volume today is no that big as to justify fragmentation, seems like an
 early optimization.

 Regards,


 Esteban A. Maringolo


 2013/9/23 H. Hirzel lt;

 hannes.hirzel@

 gt;:
  On 9/23/13, Stephan Eggermont lt;

 stephan@

 gt; wrote:
  Kilon wrote
 Here is a radical suggestion you probably don't want to hear.
 Close down Pharo users mailing list, redirect everyone to
 stackoverflow.
 
  Definitely not. Stackoverflow is nearly dead, and seriously unsuitable
 for
  small languages.
 
  There are obstacles but one cannot say that it is seriously
  unsuitable. Stackoverflow question demand a certain format, typically
  something like
 
  - statement of what you want to accomplish
  - attempt a solution with code which has problems
  - question
 
 Good questions will get closed by clueless people.
  Mostly if the form does not fit.
  And if there are Pharo people (maybe earned in another area) with
  enough reputation points this may be prevented
 
  Good answers will get downvoted because they go against majority
  views.
 
  Why?
 
 The ranking system is heavily skewed towards popular languages.
 
  It is based on the number of hits which is naturally less in less
  popular languages.
  However subcommunities may function well in stackoverflow.
 
  the tagging and referencing system is excellent.
 
  Stackoverflow doesn't allow discussions (and interesting questions),
 
  No, but that is not the aim of the site. It is a question and answer
  site for _coding_ and maybe _design_ problems to a certain extent.
 
  However it allows for wiki pages. Any answer may be turned into a wiki
 page.
 
  which is a major reason to have these lists.
 
  List are good in addition.
 
  --Hannes
 
  To see for yourself, take a look at the questions related to OODBs.
 
  Stephan
 
 
 







--
View this message in context: 
http://forum.world.st/Use-pharo-users-mailing-list-tp4709698p4709785.html
Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.



Re: [Pharo-dev] Integration Process

2013-09-23 Thread Esteban A. Maringolo
Please, this is very well received!

I have no clue on how to contribute back, it is not a streamlined process.

Thank you Camillo.
Esteban A. Maringolo


2013/9/23 Camillo Bruni camillobr...@gmail.com:

 On 2013-09-23, at 05:13, Esteban Lorenzano esteba...@gmail.com wrote:


 On Sep 23, 2013, at 6:21 AM, Camillo Bruni camillobr...@gmail.com wrote:

 I spent today 10mins explaining step by step on how to regular Pharo 
 programmers how to create a bugfix for Pharo!

 THIS IS BAD!

 There are many more motivated Pharo programmers outside RMoD, and I am sure 
 that quite some
 of them would actually provide bug fixes. The current bug-report process 
 has a way too steep
 learning curve.


 There are a few things we have to change here:

 1. make bugs.pharo.org finally work with dots in the email message
 2. make bugs.pharo.org automatically send a password reset request (in the 
 worst case we do a redirect/curl on the normal fogbugz site)
 3. make the anonymous inbox work on the smalltalkhub

 I would not say anonymous... public, yes :)

 yes this is what I meant, committing without having to be added manually to 
 the contributors list.



Re: [Pharo-dev] Help with reviewing needed

2013-09-23 Thread Goubier Thierry



Le 23/09/2013 17:11, Camillo Bruni a écrit :

These are all cases with the status Fix Review Needed

= load the changes in a fresh 3.0 image


Some of the fixes are for 2.0 :)


= review the changes
= leave feedback in the issue tracker
- positive = set the status to Fix to Include
- negative = set the status to Work Needed


I'm not allowed to set the status to Work Needed (I'm looking at 
11628), so maybe reviewing is not for everybody on the mailing-list?


Thierry


On 2013-09-23, at 12:02, p...@highoctane.be p...@highoctane.be wrote:


These are all closed things in Inbox.

What's the help about?

Phil



On Mon, Sep 23, 2013 at 4:08 PM, Marcus Denker marcus.den...@inria.frwrote:


Hi,

It would really be helpful if more people would review:

https://pharo.fogbugz.com/f/filters/36/Review

because if it has to wait for me, it might wait for a very long time.

Marcus





--
Thierry Goubier
CEA list
Laboratoire des Fondations des Systèmes Temps Réel Embarqués
91191 Gif sur Yvette Cedex
France
Phone/Fax: +33 (0) 1 69 08 32 92 / 83 95



Re: [Pharo-dev] Help with reviewing needed

2013-09-23 Thread Camillo Bruni
These are all cases with the status Fix Review Needed

= load the changes in a fresh 3.0 image
= review the changes
= leave feedback in the issue tracker
- positive = set the status to Fix to Include
- negative = set the status to Work Needed

On 2013-09-23, at 12:02, p...@highoctane.be p...@highoctane.be wrote:

 These are all closed things in Inbox.
 
 What's the help about?
 
 Phil
 
 
 
 On Mon, Sep 23, 2013 at 4:08 PM, Marcus Denker marcus.den...@inria.frwrote:
 
 Hi,
 
 It would really be helpful if more people would review:
 
https://pharo.fogbugz.com/f/filters/36/Review
 
 because if it has to wait for me, it might wait for a very long time.
 
Marcus
 



signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: [Pharo-dev] 11635: Race condition in SequenceableCollectionshuffle

2013-09-23 Thread Henrik Johansen

On Sep 23, 2013, at 3:33 , Max Leske maxle...@gmail.com wrote:

 
 If a user is going to modify the same object concurrently, he/she takes care 
 of mutual exclusion.
 
 Agreed. BUT: the Random object used by these methods is the same one that is 
 used by #atRandom for instance, hence the race condition. There is no way 
 anyone can safely use these methods without the mutex, single threaded or 
 not. Calls to methods using that same Random object can be all over the place 
 and also in the base system.


It seems to me an existing Random instance is used in this case mostly* for 
performance.
One could argue that since the Random in this case is used for a bulk 
operation, for which the object creation cost is largely amortized for 
collection sizes  20, it's acceptable to instead use Random new by default, 
which wouldn't suffer from the same race conditions.
While still slower than a mutex-protected version for single-threaded code, it 
would also scale correctly if the users (and vm) are actually multi-threaded.

[#(1 2  3 4 5 6 7 8 9 10 11 12) shuffle] bench '208,000 per second.'  '222,000 
per second.' '223,000 per second.'
[#(1 2 3 4 5 6 7 8 9 10 11 12) shuffleWithMutex] bench '188,000 per second.'  
'186,000 per second.''184,000 per second.'
[#(1 2 3 4 5 6 7 8 9 10 11 12) shuffleNewRandom] bench '167,000 per second.' 
'166,000 per second.'  '167,000 per second.'

Cheers,
Henry

* Low seed entropy is another issue, but if purely random shuffling is a 
critical requirement, one shouldn't use the default Random generator anyways...




signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: [Pharo-dev] 11635: Race condition in SequenceableCollectionshuffle

2013-09-23 Thread Stéphane Ducasse

On Sep 23, 2013, at 3:17 PM, Nicolas Cellier 
nicolas.cellier.aka.n...@gmail.com wrote:

 Here is my 100% personal opinion:
 
 I don't like the copyShuffle.
 To me, the rules are quite clear:
 sort shuffle reverse etc... - perform modification in place
 sorted shuffled reversed etc... - answer a copy
 I hope the methods comments are clear. Does PBE tells about these 
 conventions? It would be a good thing.

I do not remember. Because probably that we wrote it before. I will log it and 
see for the next release of PBE.


 And I don't like to have mutexes in base library, the less we have, the 
 better.
 If a user is going to modify the same object concurrently, he/she takes care 
 of mutual exclusion.
 
 
 2013/9/23 Max Leske maxle...@gmail.com
 Sven suggested posting this on the list for discussion, so here you go:
 
 Maybe this should be discussed on the list, your are going to break API.
 
 Note that there is also #sort and #sorted with similar copy behavior.
 
 Also, I am not sure that basic operations should use mutexes to protect 
 themselves by default: there is a cost when you are a single threaded user. 
 Even in Java there are synchronized and non-synchronized versions of 
 collections. IMHO, the protection should happen in your app, and basic 
 collections do not have to be thread safe.
 
 Sven
 
 #shuffle does not use CollectionmutexForPicking as other users of 
 #randomForPicking demonstrate. This can lead to race conditions (found in 
 our application).
 
 In addition, there are now #shuffle, #shuffled, #shuffleBy: and 
 #shuffledBy: where #shuffled and #shuffledBy: shuffle a copy and answers 
 that. This is very confusing.
 
 I propose a fix where #shuffled and #shuffledBy: are renamed to 
 #copyShuffle and #copyShuffledBy: and moved to the copying protocol. 
 #shuffle and #copyShuffle will use the mutex to prevent race conditions.
 



Re: [Pharo-dev] Help with reviewing needed

2013-09-23 Thread p...@highoctane.be
These are all closed things in Inbox.

What's the help about?

Phil



On Mon, Sep 23, 2013 at 4:08 PM, Marcus Denker marcus.den...@inria.frwrote:

 Hi,

 It would really be helpful if more people would review:

 https://pharo.fogbugz.com/f/filters/36/Review

 because if it has to wait for me, it might wait for a very long time.

 Marcus



Re: [Pharo-dev] Help with reviewing needed

2013-09-23 Thread Camillo Bruni
 = review the changes
 = leave feedback in the issue tracker
  - positive = set the status to Fix to Include
  - negative = set the status to Work Needed
 
 I'm not allowed to set the status to Work Needed (I'm looking at 11628), so 
 maybe reviewing is not for everybody on the mailing-list?

Did you click on resolve / edit?



signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: [Pharo-dev] Help with reviewing needed

2013-09-23 Thread Goubier Thierry



Le 23/09/2013 17:25, Stéphane Ducasse a écrit :


On Sep 23, 2013, at 5:23 PM, Goubier Thierry thierry.goub...@cea.fr wrote:




Le 23/09/2013 17:11, Camillo Bruni a écrit :

These are all cases with the status Fix Review Needed

= load the changes in a fresh 3.0 image


Some of the fixes are for 2.0 :)


= review the changes
= leave feedback in the issue tracker
- positive = set the status to Fix to Include
- negative = set the status to Work Needed


I'm not allowed to set the status to Work Needed (I'm looking at 11628), so 
maybe reviewing is not for everybody on the mailing-list?


Strange, you have a fogbugz account I imagine so in that case I do not 
understand anything. Because normally we all can tag entries.


Me not understanding I need to reactivate the issue :( to be able to set 
it to Work needed :) Sort of done :)


Thierry
--
Thierry Goubier
CEA list
Laboratoire des Fondations des Systèmes Temps Réel Embarqués
91191 Gif sur Yvette Cedex
France
Phone/Fax: +33 (0) 1 69 08 32 92 / 83 95



[Pharo-dev] [update 2.0] #20419

2013-09-23 Thread Marcus Denker
20419
-

11502 Override Class  #setName:
https://pharo.fogbugz.com/f/cases/11502


There is a dirty package after this, it will be fixed in 420.

Marcus


signature.asc
Description: Message signed with OpenPGP using GPGMail


[Pharo-dev] [regression reporter]regression occurred

2013-09-23 Thread no-reply
https://ci.inria.fr/pharo/job/Pharo-3.0-Update-Step-2.1-Validation/label=win/524/

1 regressions found.
  KernelTests.Classes.ClassTest.testClassRespectsPolymorphismWithTrait



[Pharo-dev] [regression reporter]regression occurred

2013-09-23 Thread no-reply
https://ci.inria.fr/pharo/job/Pharo-3.0-Update-Step-2.1-Validation/label=mac/524/

1 regressions found.
  KernelTests.Classes.ClassTest.testClassRespectsPolymorphismWithTrait



Re: [Pharo-dev] 11635: Race condition in SequenceableCollectionshuffle

2013-09-23 Thread Nicolas Cellier
100% agree.
Do it right  do it fast.
We must not turn usage of the library into something fragile for the sake
of speed.
We already make the code itself fragile more often than not in term of
complexity (harder to understand/test/change).

Especially, introduction of shared mutable states (global, class vars,
singleton or any other form) should ring an alarm in reviewers head
(This is some very old Squeak code in this case, so Squeakers are to blame,
but we're all in same bath).



2013/9/23 Henrik Johansen henrik.s.johan...@veloxit.no


 On Sep 23, 2013, at 3:33 , Max Leske maxle...@gmail.com wrote:

 
  If a user is going to modify the same object concurrently, he/she takes
 care of mutual exclusion.
 
  Agreed. BUT: the Random object used by these methods is the same one
 that is used by #atRandom for instance, hence the race condition. There is
 no way anyone can safely use these methods without the mutex, single
 threaded or not. Calls to methods using that same Random object can be all
 over the place and also in the base system.


 It seems to me an existing Random instance is used in this case mostly*
 for performance.
 One could argue that since the Random in this case is used for a bulk
 operation, for which the object creation cost is largely amortized for
 collection sizes  20, it's acceptable to instead use Random new by
 default, which wouldn't suffer from the same race conditions.
 While still slower than a mutex-protected version for single-threaded
 code, it would also scale correctly if the users (and vm) are actually
 multi-threaded.

 [#(1 2  3 4 5 6 7 8 9 10 11 12) shuffle] bench '208,000 per second.'
  '222,000 per second.' '223,000 per second.'
 [#(1 2 3 4 5 6 7 8 9 10 11 12) shuffleWithMutex] bench '188,000 per
 second.'  '186,000 per second.''184,000 per second.'
 [#(1 2 3 4 5 6 7 8 9 10 11 12) shuffleNewRandom] bench '167,000 per
 second.' '166,000 per second.'  '167,000 per second.'

 Cheers,
 Henry

 * Low seed entropy is another issue, but if purely random shuffling is a
 critical requirement, one shouldn't use the default Random generator
 anyways...





Re: [Pharo-dev] [update 2.0] #20419

2013-09-23 Thread Camillo Bruni
that is 30419 right?

On 2013-09-23, at 14:19, Marcus Denker marcus.den...@inria.fr wrote:

 20419
 -
 
 11502 Override Class  #setName:
   https://pharo.fogbugz.com/f/cases/11502
   
 
 There is a dirty package after this, it will be fixed in 420.
 
   Marcus



signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: [Pharo-dev] [update 2.0] #20419

2013-09-23 Thread Marcus Denker
yes, hand made changeset.


On Mon, Sep 23, 2013 at 7:24 PM, Camillo Bruni camillobr...@gmail.comwrote:

 that is 30419 right?

 On 2013-09-23, at 14:19, Marcus Denker marcus.den...@inria.fr wrote:

  20419
  -
 
  11502 Override Class  #setName:
https://pharo.fogbugz.com/f/cases/11502
 
 
  There is a dirty package after this, it will be fixed in 420.
 
Marcus




-- 
--
Marcus Denker  --  den...@acm.org
http://www.marcusdenker.de


Re: [Pharo-dev] [Moose-dev] Code functionality assessment

2013-09-23 Thread Tudor Girba
I blogged it:)
http://www.moosetechnology.org/news/assessing-ode-with-graphet

Cheers,
Doru



On Mon, Sep 23, 2013 at 7:36 PM, Tudor Girba tu...@tudorgirba.com wrote:

 Very nice work, Natalia!

 Doru


 On Mon, Sep 23, 2013 at 6:12 PM, Natalia Tymchuk 
 natalia.tymc...@unikernel.net wrote:

  Hello,
 I wrote another blog post concerning my project on Google  Summer of
 Code, and there's how I assessed the results using Graph-ET.

 http://nataliatymchuk.blogspot.com/2013/09/code-functionality-assessment.html

 Best regard,
 Natalia


 ___
 Moose-dev mailing list
 moose-...@iam.unibe.ch
 https://www.iam.unibe.ch/mailman/listinfo/moose-dev




 --
 www.tudorgirba.com

 Every thing has its own flow




-- 
www.tudorgirba.com

Every thing has its own flow


[Pharo-dev] [regression reporter]regression occurred

2013-09-23 Thread no-reply
https://ci.inria.fr/pharo/job/Pharo-3.0-Update-Step-2.1-Validation/label=linux-stable-worker/524/

1 regressions found.
  KernelTests.Classes.ClassTest.testClassRespectsPolymorphismWithTrait



Re: [Pharo-dev] [update 2.0] #20419

2013-09-23 Thread Camillo Bruni
very good https://ci.inria.fr/pharo-contribution/job/XMLParser/ is green again 
:)

On 2013-09-23, at 14:25, Marcus Denker marcus.den...@inria.fr wrote:

 yes, hand made changeset.
 
 
 On Mon, Sep 23, 2013 at 7:24 PM, Camillo Bruni camillobr...@gmail.comwrote:
 
 that is 30419 right?
 
 On 2013-09-23, at 14:19, Marcus Denker marcus.den...@inria.fr wrote:
 
 20419
 -
 
 11502 Override Class  #setName:
  https://pharo.fogbugz.com/f/cases/11502
 
 
 There is a dirty package after this, it will be fixed in 420.
 
  Marcus
 
 
 
 
 -- 
 --
 Marcus Denker  --  den...@acm.org
 http://www.marcusdenker.de



signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: [Pharo-dev] Use pharo users mailing list

2013-09-23 Thread Stephan Eggermont
Hannes wrote:
 In reply to this post by Stephan Eggermont
 On 9/23/13, Stephan Eggermont [hidden email] wrote: 
  Kilon wrote 
 Here is a radical suggestion you probably don't want to hear. 
 Close down Pharo users mailing list, redirect everyone to stackoverflow. 
  
  Definitely not. Stackoverflow is nearly dead, and seriously unsuitable for 
  small languages. 
 
 There are obstacles but one cannot say that it is seriously 
 unsuitable.

I feel fully qualified to make that statement. Getting voted on by
majority views is not exactly what we need. Especially not in
a cargo-cult driven profession.

 Good questions will get closed by clueless people. 
 Mostly if the form does not fit. 

Nope. there has been a strong change in what is deemed to be an
acceptable question on SO in the past years.  And not in the right direction.
I know several posters here who have been bitten by that.

 And if there are Pharo people (maybe earned in another area) with 
 enough reputation points this may be prevented 

That would be nice, but isn't the case. Stackoverflow doesn't work like that.

  Good answers will get downvoted because they go against majority 
  views. 
 
 Why? 

Because stackoverflow is an opinion site, dominated by popularity.
Nobody says an answer has to be right. Like I said, take a look at 
questions on OODBs.

 The ranking system is heavily skewed towards popular languages. 
 
 It is based on the number of hits which is naturally less in less 
 popular languages. 
 However subcommunities may function well in stackoverflow. 

No, not really. It means that members of subcommunities have less 
rights and power. There is no value in subdividing our community
further. 

Stephan




Re: [Pharo-dev] [Moose-dev] Code functionality assessment

2013-09-23 Thread Natalia Tymchuk

Thanks, Doru.
Best,
Natalia

23.09.13 20:43, Tudor Girba ???(??):

I blogged it:)
http://www.moosetechnology.org/news/assessing-ode-with-graphet

Cheers,
Doru



On Mon, Sep 23, 2013 at 7:36 PM, Tudor Girba tu...@tudorgirba.com 
mailto:tu...@tudorgirba.com wrote:


Very nice work, Natalia!

Doru


On Mon, Sep 23, 2013 at 6:12 PM, Natalia Tymchuk
natalia.tymc...@unikernel.net
mailto:natalia.tymc...@unikernel.net wrote:

Hello,
I wrote another blog post concerning my project on Google 
Summer of Code, and there's how I assessed the results using

Graph-ET.

http://nataliatymchuk.blogspot.com/2013/09/code-functionality-assessment.html

Best regard,
Natalia


___
Moose-dev mailing list
moose-...@iam.unibe.ch mailto:moose-...@iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev




-- 
www.tudorgirba.com http://www.tudorgirba.com


Every thing has its own flow




--
www.tudorgirba.com http://www.tudorgirba.com

Every thing has its own flow




Re: [Pharo-dev] Use pharo users mailing list

2013-09-23 Thread H. Hirzel
Hello Stephan

On 9/23/13, Stephan Eggermont step...@stack.nl wrote:
 Hannes wrote:
 In reply to this post by Stephan Eggermont
 On 9/23/13, Stephan Eggermont [hidden email] wrote:
  Kilon wrote
 Here is a radical suggestion you probably don't want to hear.
 Close down Pharo users mailing list, redirect everyone to stackoverflow.
 
 
  Definitely not. Stackoverflow is nearly dead, and seriously unsuitable
  for
  small languages.

 There are obstacles but one cannot say that it is seriously
 unsuitable.

 I feel fully qualified to make that statement.

http://stackoverflow.com/search?q=Stephan+Eggermont
5 questions, all three years ago? No Pharo question.

Or do you use a nick name these days?

And where are the closed Pharo stackoverflow questions?

 Getting voted on by
 majority views is not exactly what we need. Especially not in
 a cargo-cult driven profession.

And what is Pharo? A closed sect with people who think everybody else
is clueless and does not want to operate _the_ open space about
programming questions? There are other small communities on
stackoverflow. For example  XSL-FO, a technology which has been around
for a long time, good concepts, has mature tools, is useful but still
is not popular.

The main thing is not about  voting but about the person who asks
accepting the answer. And that is often the answer which later on gets
votes.

The accepted answer is likely the answer which solves the programming
problem asked.
And the questions are well organized. The existing pool of 283 Pharo
questions is a useful resource. More useful that searching through the
mailing list archive.

http://stackoverflow.com/questions/tagged/pharo

 Good questions will get closed by clueless people.
 Mostly if the form does not fit.

 Nope. there has been a strong change in what is deemed to be an
 acceptable question on SO in the past years.  And not in the right
 direction.
 I know several posters here who have been bitten by that.

Could you give some examples, please?

 And if there are Pharo people (maybe earned in another area) with
 enough reputation points this may be prevented

 That would be nice, but isn't the case. Stackoverflow doesn't work like
 that.




  Good answers will get downvoted because they go against majority
  views.

It depends on which tag set you operate in.
I doubt that this applies to a question tagged 'Pharo'. Proper tagging
is important to frame the question properly.

 Why?

 Because stackoverflow is an opinion site, dominated by popularity.

Yes, popular languages and thus the questions about them get a lot of
reputation points.
But that is not all that important. The important thing is that you
can organize programming questions in a good way and solve them
nicely. And the content is under a creative common license, thus may
he harvested for a FAQ list.

 Nobody says an answer has to be right. Like I said, take a look at
 questions on OODBs.

We are not talking about OODBs where it is natural that divergent
opinions come in but about Smalltalk programming which is a well
established mature programming technology, has acceptance of being
useful (but only for 'specialists' as the general opinion goes) and
thus has a narrow focus. So the subcommunity can operate quite
unhampered in stackoverflow :-)

 The ranking system is heavily skewed towards popular languages.

Sure, but is this a problem? There are 1000 million speakers of
Chinese and I still did not learn Chinese yet.

 It is based on the number of hits which is naturally less in less
 popular languages.
 However subcommunities may function well in stackoverflow.

 No, not really. It means that members of subcommunities have less
 rights and power. There is no value in subdividing our community
 further.

You mean by having questions on stackoverflow and the mailing list?

Let me summarize: Nobody forces you to operate on stackoverflow, but I
consider both, the mailing list and stackoverflow, as useful. And some
cross-referencing might be useful.

--Hannes


P.S. It is easy to monitor what is happening on stackoverflow
regarding 'Pharo' even if you do not want to participate.

Just visit
http://stackoverflow.com/questions/tagged/pharo
from time to time.



Re: [Pharo-dev] SHA1 changed ??

2013-09-23 Thread Sven Van Caekenberghe
https://pharo.fogbugz.com/f/cases/11664/SHA1-hashStream-should-return-a-ByteArray-of-size-20

with slice

On 13 Sep 2013, at 15:38, Sven Van Caekenberghe s...@stfx.eu wrote:

 Bump.
 
 Max ?
 
 On 30 Aug 2013, at 13:52, Sven Van Caekenberghe s...@stfx.eu wrote:
 
 On 30 Aug 2013, at 13:39, Marcus Denker marcus.den...@inria.fr wrote:
 
 On Aug 30, 2013, at 1:35 PM, Esteban Lorenzano esteba...@gmail.com wrote:
 
 I'm not aware of such a change... 
 this is probably an error/side effect of something else.  
 
 This is a side effect of the merging of the two nearly identical but 
 duplicated SHA1 implementations in the image…
 
 https://pharo.fogbugz.com/f/cases/5469/SHA1-duplicated-implementations
 
 I want to wait for Max to respond/explain.
 
 But according to http://en.wikipedia.org/wiki/Sha1
 
 SHA-1 produces a 160-bit (20-byte) hash value. A SHA-1 hash value is 
 typically expressed as a hexadecimal number, 40 digits long. 
 
 The previous contract of returning a ByteArray of size 20 is more correct 
 than an Integer, although both are mathematically equivalent. It is also 
 very easy to send #hex to a ByteArray to get the most common human 
 representation of such a hash.
 
 Esteban
 
 On Aug 29, 2013, at 3:05 PM, Sven Van Caekenberghe s...@stfx.eu wrote:
 
 Max,
 
 Why was the contract of SHA1hashStream: changed ?
 
 It used to return a ByteArray like other HashFunction subclasses, now it 
 returns an Integer. I see that you also changed the tests with this 
 assumption.
 
 MD5 hashMessage: 'foo'. 
 
   #[172 189 24 219 76 194 248 92 237 239 101 79 204 196 164 216]
 
 SHA1 hashMessage: 'foo'. 
 
   68123873083688143418383284816464454849230703155
 
 It broke Zinc-WebSockets in 3.0 and now I will have to do an ugly hack to 
 make the code work on multiple Pharo versions.
 
 Can you please explain ?
 
 Sven
 
 
 
 
 




Re: [Pharo-dev] Use pharo users mailing list

2013-09-23 Thread blake
If StackOverflow is dead, what is replacing it? Are people reverting to
discussion groups/mail lists? Or different QA sites, like the
aforementioned InfoQ?

(Alan Kay is right: programming really IS pop culture.)


On Mon, Sep 23, 2013 at 9:31 AM, Stephan Eggermont step...@stack.nl wrote:

 Hannes wrote:
  In reply to this post by Stephan Eggermont
  On 9/23/13, Stephan Eggermont [hidden email] wrote:
   Kilon wrote
  Here is a radical suggestion you probably don't want to hear.
  Close down Pharo users mailing list, redirect everyone to
 stackoverflow.
  
   Definitely not. Stackoverflow is nearly dead, and seriously unsuitable
 for
   small languages.
 
  There are obstacles but one cannot say that it is seriously
  unsuitable.

 I feel fully qualified to make that statement. Getting voted on by
 majority views is not exactly what we need. Especially not in
 a cargo-cult driven profession.

  Good questions will get closed by clueless people.
  Mostly if the form does not fit.

 Nope. there has been a strong change in what is deemed to be an
 acceptable question on SO in the past years.  And not in the right
 direction.
 I know several posters here who have been bitten by that.

  And if there are Pharo people (maybe earned in another area) with
  enough reputation points this may be prevented

 That would be nice, but isn't the case. Stackoverflow doesn't work like
 that.

   Good answers will get downvoted because they go against majority
   views.
 
  Why?

 Because stackoverflow is an opinion site, dominated by popularity.
 Nobody says an answer has to be right. Like I said, take a look at
 questions on OODBs.

  The ranking system is heavily skewed towards popular languages.
 
  It is based on the number of hits which is naturally less in less
  popular languages.
  However subcommunities may function well in stackoverflow.

 No, not really. It means that members of subcommunities have less
 rights and power. There is no value in subdividing our community
 further.

 Stephan





Re: [Pharo-dev] Use pharo users mailing list

2013-09-23 Thread H. Hirzel
P.S. I found your Pharo questions

http://stackoverflow.com/search?q=user%3A35306+[pharo]

28 of them.

Maybe this is a case

http://stackoverflow.com/questions/13788585/smalltalk-binding/13789481#13789481

Smalltalk binding
Your answer has 0 points, the accepted anwer given by Hernan has 5 points.


On 9/23/13, H. Hirzel hannes.hir...@gmail.com wrote:
 Hello Stephan

 On 9/23/13, Stephan Eggermont step...@stack.nl wrote:
 Hannes wrote:
 In reply to this post by Stephan Eggermont
 On 9/23/13, Stephan Eggermont [hidden email] wrote:
  Kilon wrote
 Here is a radical suggestion you probably don't want to hear.
 Close down Pharo users mailing list, redirect everyone to
  stackoverflow.
 
 
  Definitely not. Stackoverflow is nearly dead, and seriously unsuitable
  for
  small languages.

 There are obstacles but one cannot say that it is seriously
 unsuitable.

 I feel fully qualified to make that statement.

 http://stackoverflow.com/search?q=Stephan+Eggermont
 5 questions, all three years ago? No Pharo question.

 Or do you use a nick name these days?

 And where are the closed Pharo stackoverflow questions?

 Getting voted on by
 majority views is not exactly what we need. Especially not in
 a cargo-cult driven profession.

 And what is Pharo? A closed sect with people who think everybody else
 is clueless and does not want to operate _the_ open space about
 programming questions? There are other small communities on
 stackoverflow. For example  XSL-FO, a technology which has been around
 for a long time, good concepts, has mature tools, is useful but still
 is not popular.

 The main thing is not about  voting but about the person who asks
 accepting the answer. And that is often the answer which later on gets
 votes.

 The accepted answer is likely the answer which solves the programming
 problem asked.
 And the questions are well organized. The existing pool of 283 Pharo
 questions is a useful resource. More useful that searching through the
 mailing list archive.

 http://stackoverflow.com/questions/tagged/pharo

 Good questions will get closed by clueless people.
 Mostly if the form does not fit.

 Nope. there has been a strong change in what is deemed to be an
 acceptable question on SO in the past years.  And not in the right
 direction.
 I know several posters here who have been bitten by that.

 Could you give some examples, please?

 And if there are Pharo people (maybe earned in another area) with
 enough reputation points this may be prevented

 That would be nice, but isn't the case. Stackoverflow doesn't work like
 that.




  Good answers will get downvoted because they go against majority
  views.

 It depends on which tag set you operate in.
 I doubt that this applies to a question tagged 'Pharo'. Proper tagging
 is important to frame the question properly.

 Why?

 Because stackoverflow is an opinion site, dominated by popularity.

 Yes, popular languages and thus the questions about them get a lot of
 reputation points.
 But that is not all that important. The important thing is that you
 can organize programming questions in a good way and solve them
 nicely. And the content is under a creative common license, thus may
 he harvested for a FAQ list.

 Nobody says an answer has to be right. Like I said, take a look at
 questions on OODBs.

 We are not talking about OODBs where it is natural that divergent
 opinions come in but about Smalltalk programming which is a well
 established mature programming technology, has acceptance of being
 useful (but only for 'specialists' as the general opinion goes) and
 thus has a narrow focus. So the subcommunity can operate quite
 unhampered in stackoverflow :-)

 The ranking system is heavily skewed towards popular languages.

 Sure, but is this a problem? There are 1000 million speakers of
 Chinese and I still did not learn Chinese yet.

 It is based on the number of hits which is naturally less in less
 popular languages.
 However subcommunities may function well in stackoverflow.

 No, not really. It means that members of subcommunities have less
 rights and power. There is no value in subdividing our community
 further.

 You mean by having questions on stackoverflow and the mailing list?

 Let me summarize: Nobody forces you to operate on stackoverflow, but I
 consider both, the mailing list and stackoverflow, as useful. And some
 cross-referencing might be useful.

 --Hannes


 P.S. It is easy to monitor what is happening on stackoverflow
 regarding 'Pharo' even if you do not want to participate.

 Just visit
 http://stackoverflow.com/questions/tagged/pharo
 from time to time.




Re: [Pharo-dev] Help with reviewing needed

2013-09-23 Thread Camillo Bruni
 Le 23/09/2013 17:27, Camillo Bruni a écrit :
 = review the changes
 = leave feedback in the issue tracker
- positive = set the status to Fix to Include
- negative = set the status to Work Needed
 
 I'm not allowed to set the status to Work Needed (I'm looking at 11628), 
 so maybe reviewing is not for everybody on the mailing-list?
 
 Did you click on resolve / edit?
 
 I did, but in fact I needed to click on Reactivate :)

ah yes, sorry :), I a thought about the wrong status...


signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: [Pharo-dev] [Moose-dev] Code functionality assessment

2013-09-23 Thread Tudor Girba
Very nice work, Natalia!

Doru


On Mon, Sep 23, 2013 at 6:12 PM, Natalia Tymchuk 
natalia.tymc...@unikernel.net wrote:

  Hello,
 I wrote another blog post concerning my project on Google  Summer of Code,
 and there's how I assessed the results using Graph-ET.

 http://nataliatymchuk.blogspot.com/2013/09/code-functionality-assessment.html

 Best regard,
 Natalia


 ___
 Moose-dev mailing list
 moose-...@iam.unibe.ch
 https://www.iam.unibe.ch/mailman/listinfo/moose-dev




-- 
www.tudorgirba.com

Every thing has its own flow


Re: [Pharo-dev] Use pharo users mailing list

2013-09-23 Thread H. Hirzel
On 9/23/13, blake dsblakewat...@gmail.com wrote:
 If StackOverflow is dead, what is replacing it? Are people reverting to
 discussion groups/mail lists? Or different QA sites, like the
 aforementioned InfoQ?

 (Alan Kay is right: programming really IS pop culture.)

And what does this imply?

[snip]



Re: [Pharo-dev] [NB] Trying to implement a ReadStream on NBExternalAddress

2013-09-23 Thread Igor Stasenko
On 23 September 2013 16:23, Camillo Bruni camillobr...@gmail.com wrote:

 Hi Jan,

 I think I will add the ByteArray accessor to NBExternalAddress today
 or tomorrow since I need it as well for another project.

 hmm, reading from memory into bytearray can be done with memory copy:

inputs: address , offset , size to read

newAddress := NBExternalAddress value: address value + offset.
buffer := ByteArray new: size.
NativeBoost memCopy: newAddress to: buffer size: size.

same way, writing, just swap the source and destination:

newAddress := NBExternalAddress value: address value + offset.
buffer is given from somewhere.
NativeBoost memCopy: buffer  to: newAddress size: size.

but as Jan noted, you cannot tell to write starting at specified offset
from/to bytearray, e.g.:

copy from: address to: buffer + someOffset
neither:
copy from: buffer + someOffset to: someAddress

this  where we need to introduce special 'field address' type, so you can
construct it like this:

offsetAddress := buffer nbAddressAt: offset.

so then you can use it to pass to any function, which expects address, like
memory copy
or any foreign function.

Since objects are moving in memory, we cannot calculate address of field
before hand:

address := NBExternalAddress value:  someObject address + offset.

because if GC will happen, after computing such address and its actual use,
you will read/write to wrong location.
Thus we should keep oop + offset up to the point of passing it to external
function, under
controllable conditions, that guarantee there's no GC is possible.




 Concerning the Streams, I think it is the easiest solution to wrap around
 a ByteArray. Otherwise you could subclass one of the main stream classes
 and implement your own primitive methods with FFI to read and write bytes.
 In the worst case you will have to implement all primitive methods with FFI
 that you find in the StandardFileStream.


 On 2013-09-22, at 10:12, Jan van de Sandt jvdsa...@gmail.com wrote:
  Hello,
 
  I'm trying to implement a binary ReadStream that gets its data not from a
  Smalltalk collection but from some external memory address. I got this
  address from a library call using NativeBoost.
 
  The NBExternalAddress has methods to access bytes, int's and longs but
  there is no method to get a ByteArray starting at a specified offset and
  with a specified length. I need a method like this to implement the
  ReadStreamnext: method efficiently.
 
  Is it possible ti implement such a method or are there other ways to
  implement a ReadStream efficiently?
 
  In [1] I read that there was already an idea to implement a nbAddressAt:
  method. This would also be using in combination with NativeBoost
  class#memCopy:to:size
 
  Regrads,
  Jan.
 
  [1]
 
 http://forum.world.st/Pharo-dev-NB-Review-amp-fixes-amp-ideas-td4698514.html




-- 
Best regards,
Igor Stasenko.


Re: [Pharo-dev] [NB] Trying to implement a ReadStream on NBExternalAddress

2013-09-23 Thread Igor Stasenko
On 23 September 2013 21:40, Igor Stasenko siguc...@gmail.com wrote:




 On 23 September 2013 16:23, Camillo Bruni camillobr...@gmail.com wrote:

 Hi Jan,

 I think I will add the ByteArray accessor to NBExternalAddress today
 or tomorrow since I need it as well for another project.

 hmm, reading from memory into bytearray can be done with memory copy:

 inputs: address , offset , size to read

 newAddress := NBExternalAddress value: address value + offset.
 buffer := ByteArray new: size.
 NativeBoost memCopy: newAddress to: buffer size: size.

 same way, writing, just swap the source and destination:

 newAddress := NBExternalAddress value: address value + offset.
 buffer is given from somewhere.
 NativeBoost memCopy: buffer  to: newAddress size: size.

 but as Jan noted, you cannot tell to write starting at specified offset
 from/to bytearray, e.g.:

 copy from: address to: buffer + someOffset
 neither:
 copy from: buffer + someOffset to: someAddress

 this  where we need to introduce special 'field address' type, so you can
 construct it like this:

 offsetAddress := buffer nbAddressAt: offset.

 so then you can use it to pass to any function, which expects address,
 like memory copy
 or any foreign function.

 Since objects are moving in memory, we cannot calculate address of field
 before hand:

 address := NBExternalAddress value:  someObject address + offset.

 because if GC will happen, after computing such address and its actual use,
 you will read/write to wrong location.


** after computing and *before* actual use **


 Thus we should keep oop + offset up to the point of passing it to external
 function, under
 controllable conditions, that guarantee there's no GC is possible.


 Things would be much simpler if we could have pinning, isnt? :)


 --
 Best regards,
 Igor Stasenko.



-- 
Best regards,
Igor Stasenko.


Re: [Pharo-dev] SHA1 changed ??

2013-09-23 Thread Max Leske
Hi

Sorry, I was on holidays and didn't see this.


On 23.09.2013, at 20:45, Sven Van Caekenberghe s...@stfx.eu wrote:

 https://pharo.fogbugz.com/f/cases/11664/SHA1-hashStream-should-return-a-ByteArray-of-size-20
 
 with slice
 
 On 13 Sep 2013, at 15:38, Sven Van Caekenberghe s...@stfx.eu wrote:
 
 Bump.
 
 Max ?
 
 On 30 Aug 2013, at 13:52, Sven Van Caekenberghe s...@stfx.eu wrote:
 
 On 30 Aug 2013, at 13:39, Marcus Denker marcus.den...@inria.fr wrote:
 
 On Aug 30, 2013, at 1:35 PM, Esteban Lorenzano esteba...@gmail.com wrote:
 
 I'm not aware of such a change... 
 this is probably an error/side effect of something else.  
 
 This is a side effect of the merging of the two nearly identical but 
 duplicated SHA1 implementations in the image…

Yes that's true. Those two classes were nearly identical. I resolved 
differences by using the latest method versions of differing methods. Therefore 
it might well be that I changed that method to the way it is today because the 
current version is the one with the younger timestamp (I think the changes all 
came from Stef).

Cheers,
Max

 
 https://pharo.fogbugz.com/f/cases/5469/SHA1-duplicated-implementations
 
 I want to wait for Max to respond/explain.
 
 But according to http://en.wikipedia.org/wiki/Sha1
 
 SHA-1 produces a 160-bit (20-byte) hash value. A SHA-1 hash value is 
 typically expressed as a hexadecimal number, 40 digits long. 
 
 The previous contract of returning a ByteArray of size 20 is more correct 
 than an Integer, although both are mathematically equivalent. It is also 
 very easy to send #hex to a ByteArray to get the most common human 
 representation of such a hash.
 
 Esteban
 
 On Aug 29, 2013, at 3:05 PM, Sven Van Caekenberghe s...@stfx.eu wrote:
 
 Max,
 
 Why was the contract of SHA1hashStream: changed ?
 
 It used to return a ByteArray like other HashFunction subclasses, now it 
 returns an Integer. I see that you also changed the tests with this 
 assumption.
 
 MD5 hashMessage: 'foo'. 
 
  #[172 189 24 219 76 194 248 92 237 239 101 79 204 196 164 216]
 
 SHA1 hashMessage: 'foo'. 
 
  68123873083688143418383284816464454849230703155
 
 It broke Zinc-WebSockets in 3.0 and now I will have to do an ugly hack 
 to make the code work on multiple Pharo versions.
 
 Can you please explain ?
 
 Sven
 
 
 
 
 
 
 




Re: [Pharo-dev] 11635: Race condition in SequenceableCollectionshuffle

2013-09-23 Thread Stéphane Ducasse
+1 
Now I understand the point of max with the name sort/sorted because this is not 
explicit to me too :)
I laways have to think.

On Sep 23, 2013, at 6:28 PM, Nicolas Cellier 
nicolas.cellier.aka.n...@gmail.com wrote:

 100% agree.
 Do it right  do it fast.
 We must not turn usage of the library into something fragile for the sake of 
 speed.
 We already make the code itself fragile more often than not in term of 
 complexity (harder to understand/test/change).
 
 Especially, introduction of shared mutable states (global, class vars, 
 singleton or any other form) should ring an alarm in reviewers head
 (This is some very old Squeak code in this case, so Squeakers are to blame, 
 but we're all in same bath).
 
 
 
 2013/9/23 Henrik Johansen henrik.s.johan...@veloxit.no
 
 On Sep 23, 2013, at 3:33 , Max Leske maxle...@gmail.com wrote:
 
 
  If a user is going to modify the same object concurrently, he/she takes 
  care of mutual exclusion.
 
  Agreed. BUT: the Random object used by these methods is the same one that 
  is used by #atRandom for instance, hence the race condition. There is no 
  way anyone can safely use these methods without the mutex, single threaded 
  or not. Calls to methods using that same Random object can be all over the 
  place and also in the base system.
 
 
 It seems to me an existing Random instance is used in this case mostly* for 
 performance.
 One could argue that since the Random in this case is used for a bulk 
 operation, for which the object creation cost is largely amortized for 
 collection sizes  20, it's acceptable to instead use Random new by default, 
 which wouldn't suffer from the same race conditions.
 While still slower than a mutex-protected version for single-threaded code, 
 it would also scale correctly if the users (and vm) are actually 
 multi-threaded.
 
 [#(1 2  3 4 5 6 7 8 9 10 11 12) shuffle] bench '208,000 per second.'  
 '222,000 per second.' '223,000 per second.'
 [#(1 2 3 4 5 6 7 8 9 10 11 12) shuffleWithMutex] bench '188,000 per second.'  
 '186,000 per second.''184,000 per second.'
 [#(1 2 3 4 5 6 7 8 9 10 11 12) shuffleNewRandom] bench '167,000 per second.' 
 '166,000 per second.'  '167,000 per second.'
 
 Cheers,
 Henry
 
 * Low seed entropy is another issue, but if purely random shuffling is a 
 critical requirement, one shouldn't use the default Random generator 
 anyways...
 
 
 



Re: [Pharo-dev] [Moose-dev] Code functionality assessment

2013-09-23 Thread Stéphane Ducasse
+1 !

Stef

On Sep 23, 2013, at 7:36 PM, Tudor Girba tu...@tudorgirba.com wrote:

 Very nice work, Natalia!
 
 Doru
 
 
 On Mon, Sep 23, 2013 at 6:12 PM, Natalia Tymchuk 
 natalia.tymc...@unikernel.net wrote:
 Hello,
 I wrote another blog post concerning my project on Google  Summer of Code, 
 and there's how I assessed the results using Graph-ET.
 http://nataliatymchuk.blogspot.com/2013/09/code-functionality-assessment.html
 
 Best regard,
 Natalia
 
 
 ___
 Moose-dev mailing list
 moose-...@iam.unibe.ch
 https://www.iam.unibe.ch/mailman/listinfo/moose-dev
 
 
 
 
 -- 
 www.tudorgirba.com
 
 Every thing has its own flow



Re: [Pharo-dev] 11635: Race condition in SequenceableCollectionshuffle

2013-09-23 Thread Nicolas Cellier
The reason why I don't like the explicit copy, is because this is the
default behaviour.
In place mutation is an (evil) exception.
I'm personnally fine with current conventions:
- sort, shuffle, reverse, replace: are imperative, thus you are telling
collection, sort yourself !
- sorted clearly sounds as a sorted copy for me.
If ever a change was to be made, I would much prefer this to happen on
opposite naming, sort - inPlaceSort, or sortYourself :)
It's like telling the programmer, hey - a stateful mutation is really what
you want, is it?


2013/9/23 Stéphane Ducasse stephane.duca...@inria.fr

 +1
 Now I understand the point of max with the name sort/sorted because this
 is not explicit to me too :)
 I laways have to think.

 On Sep 23, 2013, at 6:28 PM, Nicolas Cellier 
 nicolas.cellier.aka.n...@gmail.com wrote:

 100% agree.
 Do it right  do it fast.
 We must not turn usage of the library into something fragile for the sake
 of speed.
 We already make the code itself fragile more often than not in term of
 complexity (harder to understand/test/change).

 Especially, introduction of shared mutable states (global, class vars,
 singleton or any other form) should ring an alarm in reviewers head
 (This is some very old Squeak code in this case, so Squeakers are to
 blame, but we're all in same bath).



 2013/9/23 Henrik Johansen henrik.s.johan...@veloxit.no


 On Sep 23, 2013, at 3:33 , Max Leske maxle...@gmail.com wrote:

 
  If a user is going to modify the same object concurrently, he/she
 takes care of mutual exclusion.
 
  Agreed. BUT: the Random object used by these methods is the same one
 that is used by #atRandom for instance, hence the race condition. There is
 no way anyone can safely use these methods without the mutex, single
 threaded or not. Calls to methods using that same Random object can be all
 over the place and also in the base system.


 It seems to me an existing Random instance is used in this case mostly*
 for performance.
 One could argue that since the Random in this case is used for a bulk
 operation, for which the object creation cost is largely amortized for
 collection sizes  20, it's acceptable to instead use Random new by
 default, which wouldn't suffer from the same race conditions.
 While still slower than a mutex-protected version for single-threaded
 code, it would also scale correctly if the users (and vm) are actually
 multi-threaded.

 [#(1 2  3 4 5 6 7 8 9 10 11 12) shuffle] bench '208,000 per second.'
  '222,000 per second.' '223,000 per second.'
 [#(1 2 3 4 5 6 7 8 9 10 11 12) shuffleWithMutex] bench '188,000 per
 second.'  '186,000 per second.''184,000 per second.'
 [#(1 2 3 4 5 6 7 8 9 10 11 12) shuffleNewRandom] bench '167,000 per
 second.' '166,000 per second.'  '167,000 per second.'

 Cheers,
 Henry

 * Low seed entropy is another issue, but if purely random shuffling is a
 critical requirement, one shouldn't use the default Random generator
 anyways...







Re: [Pharo-dev] [NB] Trying to implement a ReadStream on NBExternalAddress

2013-09-23 Thread Nicolas Cellier
Isn't Eliot just implementing this feature, having a segment of non
relocatable objects?


2013/9/23 Igor Stasenko siguc...@gmail.com




 On 23 September 2013 21:40, Igor Stasenko siguc...@gmail.com wrote:




 On 23 September 2013 16:23, Camillo Bruni camillobr...@gmail.com wrote:

 Hi Jan,

 I think I will add the ByteArray accessor to NBExternalAddress today
 or tomorrow since I need it as well for another project.

 hmm, reading from memory into bytearray can be done with memory copy:

 inputs: address , offset , size to read

 newAddress := NBExternalAddress value: address value + offset.
 buffer := ByteArray new: size.
 NativeBoost memCopy: newAddress to: buffer size: size.

 same way, writing, just swap the source and destination:

 newAddress := NBExternalAddress value: address value + offset.
 buffer is given from somewhere.
 NativeBoost memCopy: buffer  to: newAddress size: size.

 but as Jan noted, you cannot tell to write starting at specified offset
 from/to bytearray, e.g.:

 copy from: address to: buffer + someOffset
 neither:
 copy from: buffer + someOffset to: someAddress

 this  where we need to introduce special 'field address' type, so you can
 construct it like this:

 offsetAddress := buffer nbAddressAt: offset.

 so then you can use it to pass to any function, which expects address,
 like memory copy
 or any foreign function.

 Since objects are moving in memory, we cannot calculate address of field
 before hand:

 address := NBExternalAddress value:  someObject address + offset.

 because if GC will happen, after computing such address and its actual
 use,
 you will read/write to wrong location.


 ** after computing and *before* actual use **


 Thus we should keep oop + offset up to the point of passing it to
 external function, under
 controllable conditions, that guarantee there's no GC is possible.


 Things would be much simpler if we could have pinning, isnt? :)


 --
 Best regards,
 Igor Stasenko.



 --
 Best regards,
 Igor Stasenko.



[Pharo-dev] slow RPackageOrganizer packageNamed:

2013-09-23 Thread Camillo Bruni
@Esteban what is the reason we have to do a case-ignored check for looking up a 
package in #packageNamed:?
seems unnecessary slow to me :/, maybe we can add a #packageNamedIgoreCase: ?


signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: [Pharo-dev] 11635: Race condition in SequenceableCollectionshuffle

2013-09-23 Thread btc




Nicolas Cellier wrote:

  100% agree.
Do it right  do it fast.
  

Do it right + modern cpu speed improvements  do it fast +
painful debugging
plus in the future, system speed improvements may depend entirely on
multi-core/multi-threaded operation.

cheers -ben


  We must not turn usage of the library into something fragile for the sake
of speed.
We already make the code itself fragile more often than not in term of
complexity (harder to understand/test/change).

Especially, introduction of shared mutable states (global, class vars,
singleton or any other form) should ring an alarm in reviewers head
(This is some very old Squeak code in this case, so Squeakers are to blame,
but we're all in same bath).



2013/9/23 Henrik Johansen henrik.s.johan...@veloxit.no

  
  
On Sep 23, 2013, at 3:33 , Max Leske maxle...@gmail.com wrote:



  
If a user is going to modify the same object concurrently, he/she takes

  

care of mutual exclusion.


  Agreed. BUT: the Random object used by these methods is the same one
  

that is used by #atRandom for instance, hence the race condition. There is
no way anyone can safely use these methods without the mutex, single
threaded or not. Calls to methods using that same Random object can be all
over the place and also in the base system.


It seems to me an existing Random instance is used in this case mostly*
for performance.
One could argue that since the Random in this case is used for a bulk
operation, for which the object creation cost is largely amortized for
collection sizes  20, it's acceptable to instead use Random new by
default, which wouldn't suffer from the same race conditions.
While still slower than a mutex-protected version for single-threaded
code, it would also scale correctly if the users (and vm) are actually
multi-threaded.

[#(1 2  3 4 5 6 7 8 9 10 11 12) shuffle] bench '208,000 per second.'
 '222,000 per second.' '223,000 per second.'
[#(1 2 3 4 5 6 7 8 9 10 11 12) shuffleWithMutex] bench '188,000 per
second.'  '186,000 per second.''184,000 per second.'
[#(1 2 3 4 5 6 7 8 9 10 11 12) shuffleNewRandom] bench '167,000 per
second.' '166,000 per second.'  '167,000 per second.'

Cheers,
Henry

* Low seed entropy is another issue, but if purely random shuffling is a
critical requirement, one shouldn't use the default Random generator
anyways...




  
  
  







Re: [Pharo-dev] 11635: Race condition in SequenceableCollectionshuffle

2013-09-23 Thread btc




Nicolas Cellier wrote:

  The reason why I don't like the explicit "copy", is because this is the
default behaviour.
In place mutation is an (evil) exception.
I'm personnally fine with current conventions:
- sort, shuffle, reverse, replace: are imperative, thus you are telling
collection, sort yourself !
- sorted clearly sounds as a sorted copy for me.
If ever a change was to be made, I would much prefer this to happen on
opposite naming, sort - inPlaceSort, or sortYourself :)
It's like telling the programmer, hey - a stateful mutation is really what
you want, is it?
  


Conventions should encourage good programming practice. Although it
makes perfect sense on hearing it, I was explicitly not aware of the
convention between 'sort' and 'sorted'. For me, the small difference
in letters used between the two doesn't provide a wide enough
distinction. Also, regarding not mutating state, I guess I knew that
in the back of
my head, but it has not generally been an explicit concern of mine
while programming. Convention should encourage good programming. So I
like the suggestion of inPlaceSort  sortYourself. As well as
being more intention revealing, the less desirable methods are made
less attractive by using a longer name. Perhaps another naming
convention could be mutatedSort, or mutSort as a hint that the
programmer should consider using these in conjunction with mutexes, or
at own risk.

cheers -ben




  

2013/9/23 Stphane Ducasse stephane.duca...@inria.fr

  
  
+1
Now I understand the point of max with the name sort/sorted because this
is not explicit to me too :)
I laways have to think.

On Sep 23, 2013, at 6:28 PM, Nicolas Cellier 
nicolas.cellier.aka.n...@gmail.com wrote:

100% agree.
Do it right  do it fast.
We must not turn usage of the library into something fragile for the sake
of speed.
We already make the code itself fragile more often than not in term of
complexity (harder to understand/test/change).

Especially, introduction of shared mutable states (global, class vars,
singleton or any other form) should ring an alarm in reviewers head
(This is some very old Squeak code in this case, so Squeakers are to
blame, but we're all in same bath).



2013/9/23 Henrik Johansen henrik.s.johan...@veloxit.no



  On Sep 23, 2013, at 3:33 , Max Leske maxle...@gmail.com wrote:

  
  

  If a user is going to modify the same object concurrently, he/she
  

  
  takes care of mutual exclusion.
  
  
Agreed. BUT: the Random object used by these methods is the same one

  
  that is used by #atRandom for instance, hence the race condition. There is
no way anyone can safely use these methods without the mutex, single
threaded or not. Calls to methods using that same Random object can be all
over the place and also in the base system.


It seems to me an existing Random instance is used in this case mostly*
for performance.
One could argue that since the Random in this case is used for a bulk
operation, for which the object creation cost is largely amortized for
collection sizes  20, it's acceptable to instead use Random new by
default, which wouldn't suffer from the same race conditions.
While still slower than a mutex-protected version for single-threaded
code, it would also scale correctly if the users (and vm) are actually
multi-threaded.

[#(1 2  3 4 5 6 7 8 9 10 11 12) shuffle] bench '208,000 per second.'
 '222,000 per second.' '223,000 per second.'
[#(1 2 3 4 5 6 7 8 9 10 11 12) shuffleWithMutex] bench '188,000 per
second.'  '186,000 per second.''184,000 per second.'
[#(1 2 3 4 5 6 7 8 9 10 11 12) shuffleNewRandom] bench '167,000 per
second.' '166,000 per second.'  '167,000 per second.'

Cheers,
Henry

* Low seed entropy is another issue, but if purely random shuffling is a
critical requirement, one shouldn't use the default Random generator
anyways...



  



  
  
  







[Pharo-dev] Pharo Wiki cleanup

2013-09-23 Thread Camillo Bruni
In my attempt to make the contribution process for Pharo a bit simpler
I cleaned up the fogbugz wikis which where left a bit unmaintained.

There are now 5 important top-level categories:

Welcome Page:https://pharo.fogbugz.com/default.asp?W41
Documentation:   https://pharo.fogbugz.com/default.asp?W69
Changelog:   https://pharo.fogbugz.com/default.asp?W2
Wishlist:https://pharo.fogbugz.com/default.asp?W50
Responsibilities:https://pharo.fogbugz.com/default.asp?W66

I removed old cruft that was documenting long gone features of ancient 
pharo versions ;). I would be more than happy to get some feedback and
improve these websites gradually.


signature.asc
Description: Message signed with OpenPGP using GPGMail