Re: [Pharo-project] another fun case for Linkedadd:

2010-05-08 Thread Stéphane Ducasse
Thanks for the info :)
 yeah, i think its protocol could have two entry points:
 - #add: for adding an object to list
 - #addLink: for linking a link to list
 
 so, that, #add: always creates a new instance of ValueLink , without
 asking object to do #asLink
 and then sends #addLink: , which does the rest.
 I don't quite see the appeal in an approach which both has a more complicated 
 protocol, and is backwards-incompatible.
 
 Cheers,
 Henry
 
 PS. We DID consider other possible solutions before deciding to add yet 
 another as... method to Object
 


___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


Re: [Pharo-project] infinite loop when Locale changed

2010-05-08 Thread Stéphane Ducasse

On May 7, 2010, at 7:20 PM, Hilaire Fernandes wrote:

 What is the use to call StrikeFont localeChanged.
 It is provocing an infinite loop when Locale is changed
 it comes from the StrikeFont localeChanged message
 
 What is supposed to do StrikeFont localeChanged ?
 
 Hilaire
 
 
 Locale classlocaleChanged
 #(#ParagraphEditor) do: [ :key | Smalltalk globals at: key
  ifPresent: [ :class | class initialize ] ].
 StrikeFont localeChanged.
 Project localeChanged
 


May be to load ohter fonts for chinses japanese support?

 
 http://code.google.com/p/pharo/issues/detail?id=2391
 
 
 ___
 Pharo-project mailing list
 Pharo-project@lists.gforge.inria.fr
 http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


Re: [Pharo-project] is MVC package somewhere?

2010-05-08 Thread Stéphane Ducasse
 Hi,
 AFAIK, MVC was removed from Pharo 1.1... I wonder where is the extracted 
 package.

You can find some parts in the pharo repository.
Now it will not be working.

Ideally we would like to have a MVC package loading and working in Pharo but 
not at the price of isMorphic everywhere and Smalltalk at: #MVCClass 
ifAbsent:...

Stef
___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


[Pharo-project] could we start to organize MetacelloRepository?

2010-05-08 Thread Stéphane Ducasse
Hi Dale and others

I would like to have a 
Pharo1.0 folder in the MetacelloRepository and ideally all the 
configurationOf... inside should work for Pharo 1.0.
How can we proceed to get that. 
In the future we should also have a process to avoid that we get junk inside. 
any idea (I was thinking about an hudson
server that would validate the configuration automatically)

Stef
___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


Re: [Pharo-project] Newbie: How to load and use HTTP parser

2010-05-08 Thread Stéphane Ducasse

On May 7, 2010, at 5:07 PM, Andrei Stebakov wrote:

 Hi 
 
 Sent this message to the Pharo-users group, but no response for a couple of 
 days, so trying it here ;)
 
 I have a simple task of parsing some html content in Pharo (loading an html 
 page using HTTPSocket and retrieving useful info from it).
 Having browsed for an html parser in my current one-click Pharo 1.0 image, I 
 couldn't find one.
 How do I find/download a (the) HTML parser?

I know that there is a HTML.
Check the squeaksource package HTML. If it works let us know else it should be 
fixed for 1.0 we should publish it in Metacello format


 What's the general routine of discovering and installing packages in Pharo? I 
 believe in Squeak there was a menu to explore and download packages, I 
 couldn't find it in Pharo though.

We are in the process of building an infrastructure for that.



 
 
 Thank you,
 Andrei
 ___
 Pharo-project mailing list
 Pharo-project@lists.gforge.inria.fr
 http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


Re: [Pharo-project] new gettext package

2010-05-08 Thread Stéphane Ducasse
Excellent!
We should decide if we want to maintain it or not.
Then we can create a package for it. 

Stef

On May 7, 2010, at 4:17 PM, Hilaire Fernandes wrote:

 I have uploaded a new version of the gettext package. I have removed a few 
 classes used for the itnernal translator. So now, only gettext based catalog 
 messages is used.
 
 Philipp, I have added a StringtranslateTo: aLocale you can used from 
 Seaside application.
 
 If we agree on that protocole, we can have in Pharo-Cire two String messages 
 defined as follow:
 
 Stringtranslated
 answer the receiver translated to the default language
 ^ NaturalLanguageTranslator translate: self
 
 StringtranslatedTo: localeID
 answer the receiver translated to the given locale id
 ^ NaturalLanguageTranslator translate: self toLocale: localeID
 
 
 Then a dummy class NaturalLanguageTranslator withn two class messages:
 
 NaturalLanguageTranslator classtranslate: aString
 ^ aString
 
 NaturalLanguageTranslator classtranslate: aString toLocale: localeID
 ^ aString
 
 
 NaturalLanguageTranslator class is redefined in the Gettext package.
 
 It should be possible to simplify the whole protocole after removing the 
 LanguageEditor. This one is totaly unused, and it does not make sense to me 
 to use Smalltalk to translated string, there are better third party tool to 
 do that. Can I remove the LanguageEditor?
 
 Hilaire
 
 
 ___
 Pharo-project mailing list
 Pharo-project@lists.gforge.inria.fr
 http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


Re: [Pharo-project] Help System

2010-05-08 Thread Stéphane Ducasse
 testAbsoluteAuthority
   self debug: #testAbsoluteAuthority
 
   test: #URI about: 'absolute uri with authority' tag: #(network )
 
   | uri absoluteURIString |
   An absolute URI with authority. An absolute URI starts with a scheme:
   absoluteURIString := 'http://www.pharo-project.org'.
   uri := URI fromString: absoluteURIString.
   self assert: (uri asString = absoluteURIString).
   self assert: (uri isAbsolute).
   self assert: (uri authority asString = 'www.pharo-project.org').
   self deny: (uri isOpaque).


- create an entry in the HelpSystem 
URI
| class comment of URI
| absolute uri with authority
V 

testAbsoluteAuthority
  self debug: #testAbsoluteAuthority
  test: #URI about: 'absolute uri with authority' tag: 
#(network )

  | uri absoluteURIString |
  An absolute URI with authority. An absolute URI starts 
with a scheme:
  absoluteURIString := 'http://www.pharo-project.org'.
  uri := URI fromString: absoluteURIString.
  self assert: (uri asString = absoluteURIString).
  self assert: (uri isAbsolute).
  self assert: (uri authority asString = 
'www.pharo-project.org').
  self deny: (uri isOpaque).
|

If there is a another test tagged with URI it should show up below


But may be we could do that based on setting because everything is there.

Stef
___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


Re: [Pharo-project] Help System

2010-05-08 Thread Stéphane Ducasse
Yes in fact we do not really need the helpSystem for that since Setting offer 
all the necessary behavior.
But let us give a try.

the KEY POINT is
use and improve tests
= get executable and always in sync documentation
= get better tests because if I know that my tests are used for 
documentation I will spend time on them.


On May 7, 2010, at 1:59 PM, laurent laffont wrote:

 
 On Fri, May 7, 2010 at 1:25 AM, Torsten Bergmann asta...@gmx.de wrote:
 In addition to the story around tests,
 
 Could you be a little bit more specific what your wishes are
 for using tests within the help documentation?
 It's still not clear to me what you expect here.
 
 
 Hi Torsten,
 
 IIRC this idea came from a discussion I had with Stef. There's some tests 
 that show how to use the class it tests, that can make a good documentation 
 for free. For example (may not be the best):
 
 XMLParserTesttestParsing
   | xmlDocument root firstPerson numberOfPersons |
 
   xmlDocument := XMLDOMParser parseDocumentFrom: self addressBookXML 
 readStream.
   self assert: (xmlDocument isKindOf: XMLDocument).
   root := xmlDocument root.
   self assert: (root class == XMLElement).
   
   the tag has to be a symbol!
   self assert: (root firstTagNamed: 'person') isNil.
   self assert: (root firstTagNamed: 'addressbook') isNil.
 
   self assert: (root firstTagNamed: #addressbook) == root.
 
   numberOfPersons := 0.
   root tagsNamed: #person do: [:p | numberOfPersons := numberOfPersons + 
 1].
   self assert: numberOfPersons = 4.
 
   firstPerson := root firstTagNamed: #person.
   self assert: (firstPerson attributeAt: #'employee-number') = 'A'.
   self assert: (firstPerson attributeAt: #'family-name') = 'Gates'.
   self assert: (firstPerson attributeAt: #'first-name') = 'Bob'.
 
 Just reading it you know how to use XMLDOMParser. We don't need to add 
 comments to understand it. So the idea is to tag this test to tell that we 
 can learn from it. Then HelpSystem can built the documentation of XML-Parser 
 package just by collecting the tests.
 
 Laurent Laffont
 
  
 
 Torsten do you think we could use book.pharo-project.org to populate the 
 help?
 
 Dont know how the pier books are implemented.
 Is it possible to access/parse the contents either on
 the server or directly online from a client image?
 
 If so then yes, as the following example demonstrates:
 
 
 |topic day url sub|
 topic := HelpTopic named: 'Last week on Squeak IRC'.
 0 to: 7 do: [:index |
day := (Date today subtractDays: index) printFormat: #(3 2 1 $. 1 2 2).
url := 'http://tunes.org/~nef/logs/squeak/' , day.
sub := HelpTopic
title: day contents: (HTTPLoader default 
 retrieveContentsFor: url) contents.
topic addSubtopic: sub.
 ].
 HelpBrowser openOn: topic
 
 
 Bye
 T.
 
 --
 GRATIS für alle GMX-Mitglieder: Die maxdome Movie-FLAT!
 Jetzt freischalten unter http://portal.gmx.net/de/go/maxdome01
 
 ___
 Pharo-project mailing list
 Pharo-project@lists.gforge.inria.fr
 http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
 
 ___
 Pharo-project mailing list
 Pharo-project@lists.gforge.inria.fr
 http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


Re: [Pharo-project] another fun case for Linkedadd:

2010-05-08 Thread Levente Uzonyi

On Sat, 8 May 2010, Igor Stasenko wrote:


On 7 May 2010 23:47, Lukas Renggli reng...@gmail.com wrote:

He had the idea that it would be nice to be able to add any object to a 
LinkedList, instead of just Link subclasses. (IIRC, 'like you can in Ruby' ;))

So we added ValueLink as the common pattern for A link with an object in it, 
which is now the default if you add an object which itself is not a link.

Makes it much more convenient to actually use a LinkedList, ref. f.ex. the 
Stack implementation.


LinkedList is used internally by the process scheduler to handle
processes, I don't think that it is ment to be used as a public
collection class. For probably all applications it is slower and uses
more memory than an OrderedCollection.


+1.
OrderedCollection's addLast/removeFirst/removeLast, is enough to use
them as lists.


No. These methods make it good enough (or at least they should, but we 
know that they don't) to use OrderedCollections as stacks, queues or
double-ended queues (which are the common cases), but adding an element 
before or after another takes O(n) time, compared to lists' O(1).
Though this feature can only be used if we allow the users to reference 
the links directly, otherwise lists have no advantage.




About performance, i am little concerned.
Linked lists is good , that is costs you a constant time for each new
element you adding.
While for OrderedCollections it vary depending on container state. In
most cases, it costs you as little as for linked lists, but when
contained is not big enough to hold all elements - then it has to grow
and consuming a lot more time comparing to adding a previous element.


That would be true if there was no GC. And as Ralph pointed out, the 
amortized cost of adding/removing elements to/from the ends of an 
OrderedCollection is O(1) (or at least it should be, but it's not).



Levente




Lukas

--
Lukas Renggli
www.lukas-renggli.ch

___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project





--
Best regards,
Igor Stasenko AKA sig.

___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


[Pharo-project] [update 1.1] #11338

2010-05-08 Thread Stéphane Ducasse
11338
-

- Issue 2392: user and password settings can t be changed. Thanks alain
- Issue 493:[Pending Etoy Cleaning] Morph forwardDirection. Thanks alain 
:)


Stef
___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


[Pharo-project] We need a UI for Metacello/Loader

2010-05-08 Thread Mariano Martinez Peck
Hi folks. First of all let me clarify that all this email is though for new
comers.

I think Metacello is a wonderful project and that's why we are adopting it
in Pharo. I know Metacello has it's own UI:

http://code.google.com/p/metacello/wiki/MetacelloTools

I also know there is Metaceller done by Doru.

But I think that the features Esteban Lorenzano implemented in
GoferProjectLoader are a MUST for a new comer. You can read them here:

http://www.smallworks.com.ar/en/community/GoferProjectLoader

Now...he doesn't plan to do a UI for that. My question if it would be a good
idea to extend Metaceller or Metacello-OB so that to uses
GoferProjectLoader features. Not necessary for Metacello 1.0 but maybe for
1.1. I think this is important, at least for Pharo. We don't have Universe
neither SqueakMap anymore.

Cheers

Mariano
___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

[Pharo-project] [update 1.1] #11339

2010-05-08 Thread Stéphane Ducasse
11339
-

- Issue 2390:   [ENH] Added CompiledMethodisDeprecated
- adding NumberroundDownTo: from Squeak.

Stef

___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


[Pharo-project] add return its argument

2010-05-08 Thread stephane ducasse
if somebody wants to check that the fixes I made are ok 
and that at:put: and add: return their arguments




addReturnValue.1.cs
Description: Binary data


Stef___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Re: [Pharo-project] [Metacello] We need a UI for Metacello/Loader

2010-05-08 Thread Tudor Girba

Hi,

Could you detail a bit the requirements?

Cheers,
Doru


On 8 May 2010, at 16:53, Mariano Martinez Peck wrote:

Hi folks. First of all let me clarify that all this email is though  
for new comers.


I think Metacello is a wonderful project and that's why we are  
adopting it in Pharo. I know Metacello has it's own UI:


http://code.google.com/p/metacello/wiki/MetacelloTools

I also know there is Metaceller done by Doru.

But I think that the features Esteban Lorenzano implemented in   
GoferProjectLoader are a MUST for a new comer. You can read them here:


http://www.smallworks.com.ar/en/community/GoferProjectLoader

Now...he doesn't plan to do a UI for that. My question if it would  
be a good idea to extend Metaceller or Metacello-OB so that to  
uses GoferProjectLoader features. Not necessary for Metacello 1.0  
but maybe for 1.1. I think this is important, at least for Pharo. We  
don't have Universe neither SqueakMap anymore.


Cheers

Mariano


--
www.tudorgirba.com

The coherence of a trip is given by the clearness of the goal.





___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


Re: [Pharo-project] add return its argument

2010-05-08 Thread Lukas Renggli
That looks good to me. If no additional tests break after loading it,
I guess it should be clear to integrate. It is important to have a
uniform protocol. We should do the same for #nextPut: and #nextPutAll:

Lukas

2010/5/8 stephane ducasse stephane.duca...@free.fr:
 if somebody wants to check that the fixes I made are ok
 and that at:put: and add: return their arguments





 Stef
 ___
 Pharo-project mailing list
 Pharo-project@lists.gforge.inria.fr
 http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project




-- 
Lukas Renggli
www.lukas-renggli.ch

___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


[Pharo-project] NetNameResolver in Pharo 1.1

2010-05-08 Thread Lukas Renggli
In Pharo 1.0 there were some problems with the network stack (namely
the NetNameResolver) and the IP6 code was reverted shortly before
release, see the following issue for details:

 http://code.google.com/p/pharo/issues/detail?id=1884

Today I was checking with Stef for the presence of these problems in
Pharo 1.1, but we could not reproduce neither on Mac, Windows nor
Linux. Does anybody have problems with the following expressions in
Pharo 1.1?

NetNameResolver localHostAddress.
NetNameResolver addressForName: 'www.yahoo.com'.

Or are we doing the wrong thing to reproduce?

Lukas

-- 
Lukas Renggli
www.lukas-renggli.ch

___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


Re: [Pharo-project] We need a UI for Metacello/Loader

2010-05-08 Thread Stéphane Ducasse
I really like that estaban used Gofer so like that we have only one entry point!
Excellent!

Stef

On May 8, 2010, at 4:53 PM, Mariano Martinez Peck wrote:

 Hi folks. First of all let me clarify that all this email is though for new 
 comers.
 
 I think Metacello is a wonderful project and that's why we are adopting it in 
 Pharo. I know Metacello has it's own UI:
 
 http://code.google.com/p/metacello/wiki/MetacelloTools
 
 I also know there is Metaceller done by Doru.
 
 But I think that the features Esteban Lorenzano implemented in  
 GoferProjectLoader are a MUST for a new comer. You can read them here:
 
 http://www.smallworks.com.ar/en/community/GoferProjectLoader
 
 Now...he doesn't plan to do a UI for that. My question if it would be a good 
 idea to extend Metaceller or Metacello-OB so that to uses 
 GoferProjectLoader features. Not necessary for Metacello 1.0 but maybe for 
 1.1. I think this is important, at least for Pharo. We don't have Universe 
 neither SqueakMap anymore. 
 
 Cheers
 
 Mariano
 ___
 Pharo-project mailing list
 Pharo-project@lists.gforge.inria.fr
 http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


Re: [Pharo-project] add return its argument

2010-05-08 Thread Stéphane Ducasse
Tx!
Soon in the update.

On May 8, 2010, at 5:49 PM, Lukas Renggli wrote:

 That looks good to me. If no additional tests break after loading it,
 I guess it should be clear to integrate. It is important to have a
 uniform protocol. We should do the same for #nextPut: and #nextPutAll:
 
 Lukas
 
 2010/5/8 stephane ducasse stephane.duca...@free.fr:
 if somebody wants to check that the fixes I made are ok
 and that at:put: and add: return their arguments
 
 
 
 
 
 Stef
 ___
 Pharo-project mailing list
 Pharo-project@lists.gforge.inria.fr
 http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
 
 
 
 
 -- 
 Lukas Renggli
 www.lukas-renggli.ch
 
 ___
 Pharo-project mailing list
 Pharo-project@lists.gforge.inria.fr
 http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


[Pharo-project] Fwd: [update 1.1] #11340

2010-05-08 Thread Stéphane Ducasse
11340
-

- Issue 2393: SocketStream changes from Trunk. Thanks lukas and Squeak :)

Stef





___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


Re: [Pharo-project] [Metacello] We need a UI for Metacello/Loader

2010-05-08 Thread Schwab,Wilhelm K
A GUI is fine, but Esteban appears (IMHO - only he can speak for himself and 
his plans) to be tackling the void of a scriptable package system.  By analogy 
to my evolving home away from Redmond, a graphical package manager is great 
when I want one thing; it starts to break down when somebody is telling me how 
to install all the packages I need to compile something from source, in which 
case I want a shell script with a bunch of apt-get lines.

Esteban's code is probably going to be of greatest value to someone who begins 
to use Pharo and then is faced with the need to load many external packages 
into future images.

One of the few things that Microsoft has gotten right over the years is COM 
versioning; it supports versioning by pointedly not supporting it.  Want a new 
version?  Make a new interface.  That is exactly how I approach my own code.  
The only time I ever have to mess with it is to periodically make sure I have a 
loadable copy of my work, and (the big one) when it comes time to build a new 
image.

The things that need to be done are:

(1) find all code that I appear to have touched, so I won't loose work;
(2) save all of my work in ONE STEP (maybe fewerg)
(3) provide ONE THING that I load into my next image, and it
loads everything else in ONE STEP, with the ability to
break it down if things go wrong.

I don't care about version of my code; I just need to save its current state 
and load that into the next image.  For external packages, I hope not to care 
much about versions.  I might want to specify a given verion of Seaside, and 
after that, I will typically want the latest of a given list of packages.  When 
somebody lets me down, I will want to override that version in specific cases.  
My evolving solution is in the form of Migrate, which I hope to be able to 
simplify over time thanks to Loader.

GUI tools usually make it easy to spend a long time doing a bunch of small 
steps, such that what could be a simple task turns into an error prone 
nightmare.  In general, GUIs are great for tinkering, and command lines and 
scripting are good for automation.  We can have all the GUIs we want, but 
please note the importance of scripting.

Bill



-Original Message-
From: pharo-project-boun...@lists.gforge.inria.fr 
[mailto:pharo-project-boun...@lists.gforge.inria.fr] On Behalf Of Tudor Girba
Sent: Saturday, May 08, 2010 10:48 AM
To: metace...@googlegroups.com
Cc: Pharo Development
Subject: Re: [Pharo-project] [Metacello] We need a UI for Metacello/Loader

Hi,

Could you detail a bit the requirements?

Cheers,
Doru


On 8 May 2010, at 16:53, Mariano Martinez Peck wrote:

 Hi folks. First of all let me clarify that all this email is though 
 for new comers.

 I think Metacello is a wonderful project and that's why we are 
 adopting it in Pharo. I know Metacello has it's own UI:

 http://code.google.com/p/metacello/wiki/MetacelloTools

 I also know there is Metaceller done by Doru.

 But I think that the features Esteban Lorenzano implemented in   
 GoferProjectLoader are a MUST for a new comer. You can read them here:

 http://www.smallworks.com.ar/en/community/GoferProjectLoader

 Now...he doesn't plan to do a UI for that. My question if it would be 
 a good idea to extend Metaceller or Metacello-OB so that to uses 
 GoferProjectLoader features. Not necessary for Metacello 1.0 but maybe 
 for 1.1. I think this is important, at least for Pharo. We don't have 
 Universe neither SqueakMap anymore.

 Cheers

 Mariano

--
www.tudorgirba.com

The coherence of a trip is given by the clearness of the goal.





___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


[Pharo-project] [update 1.1] #11340

2010-05-08 Thread Stéphane Ducasse
11340
-

- Issue 2393: SocketStream changes from Trunk. Thanks lukas and Squeak :)

Stef

___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


[Pharo-project] [update 1.1] #11341

2010-05-08 Thread Stéphane Ducasse
11341
-

-  Issue 2171: add consistency in MC, Exception and other and a lot more like 
at:put:

Stef and Lukas eating black chocolate in the cold spring (WTF with the 
weather. no sunny seaside trip today)


___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


Re: [Pharo-project] [Metacello] We need a UI for Metacello/Loader

2010-05-08 Thread Mariano Martinez Peck
On Sat, May 8, 2010 at 5:48 PM, Tudor Girba tudor.gi...@gmail.com wrote:

 Hi,

 Could you detail a bit the requirements?


Hi Doru. Basically, you should be able to use the GoferProjectLoader actions
from a UI. In this link you can see all the actions:

http://www.smallworks.com.ar/en/community/GoferProjectLoader

Look where it says Usage. I past here them just in case:

list Answers a collection with all available projects on configured
repositories
search: Answers a collection of projects matching the string
managed Answers a collection of currently managed project names
availableVersionsOf:Answers a collection of available versions of project.
WARNING: this command actually installs the configuration package if not
present
versionOf: Answer current version of project
attributesOf: Answer current attributes of project. The answer is a
Dictionary with following keys: Author, Timestamp, Description
repository: Adds a repository to current list of repositories, this
repostory works just for this instance of GoferProjectLoader
repository:username:password: Same to #repository:, but also adds user
identification
rememberRepository: Adds a persistent repository to current list of
repositories
rememberRepository:username:password: Same to #rememberRepository:, but also
adds user identification
removeRepository: Removes a persistent repository
load: load a project
load:group: load latest stable version of project, just the selected groups.
A group can be a string (e.g. ’default’) or a collection of strings (e.g.
#(’Core’ ’Test’)
load:version: load a specified version of project
load:version:group: load a specified version and group(s) of project
update Updates all configuration files for managed projects, and answers a
list of new versions available for each project (if there is new versions)
update: Update the configuration for specified project
upgrade Upgrade all managed projects with new versions if any available. *Be
careful, this option can lead to a unusable image*
upgrade: Upgrade specified project with latest stable version if it is newer
than the version installed
upgrade:version: Upgrade specified project with specified version
upgrade:version:group: Upgrade specified project with specified version and
group(s)

Of course, we can release a first version with the most important actions
and then a second or third with the rest.

Cheers

Mariano




 Cheers,
 Doru



 On 8 May 2010, at 16:53, Mariano Martinez Peck wrote:

  Hi folks. First of all let me clarify that all this email is though for
 new comers.

 I think Metacello is a wonderful project and that's why we are adopting it
 in Pharo. I know Metacello has it's own UI:

 http://code.google.com/p/metacello/wiki/MetacelloTools

 I also know there is Metaceller done by Doru.

 But I think that the features Esteban Lorenzano implemented in
  GoferProjectLoader are a MUST for a new comer. You can read them here:

 http://www.smallworks.com.ar/en/community/GoferProjectLoader

 Now...he doesn't plan to do a UI for that. My question if it would be a
 good idea to extend Metaceller or Metacello-OB so that to uses
 GoferProjectLoader features. Not necessary for Metacello 1.0 but maybe for
 1.1. I think this is important, at least for Pharo. We don't have Universe
 neither SqueakMap anymore.

 Cheers

 Mariano


 --
 www.tudorgirba.com

 The coherence of a trip is given by the clearness of the goal.





___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

[Pharo-project] [update 1.1] #11343

2010-05-08 Thread Stéphane Ducasse
11343
-

- nextPut: returns its argument. rewrote all implementors of #nextPut: and 
#nextPutAll: to return their argument. Thanks lukas.

Stef
___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


Re: [Pharo-project] [Metacello] We need a UI for Metacello/Loader

2010-05-08 Thread Adrian Lienhard
I don't think a graphical user interface is what is important now. If you look 
at other package management systems, APT or RubyGems, they work very well just 
from the command line. With GoferProjectLoader we basically have this command 
line interface.

What is much more important is a process. We need universes for the different 
Pharo versions and for the different maturity/compatibility states of packages 
(e.g., unstable, testing, and stable). We need somebody who sets up a process 
and keeps it running, and we also need package maintainers.

We can list packages on a website (like packages.debian.org). This should make 
it possible for anybody to find the desired package and install it.

Of course, a GUI would be nice to have. But without a high-quality package 
repository, it will be only of little use. 

I don't have much time left at the moment, but I can assist somebody who wants 
to get such a system up and running. I believe its going to be a very important 
step for Pharo.

Cheers,
Adrian


On May 8, 2010, at 18:54 , Mariano Martinez Peck wrote:

 On Sat, May 8, 2010 at 5:48 PM, Tudor Girba tudor.gi...@gmail.com wrote:
 
 Hi,
 
 Could you detail a bit the requirements?
 
 
 Hi Doru. Basically, you should be able to use the GoferProjectLoader actions
 from a UI. In this link you can see all the actions:
 
 http://www.smallworks.com.ar/en/community/GoferProjectLoader
 
 Look where it says Usage. I past here them just in case:
 
 list Answers a collection with all available projects on configured
 repositories
 search: Answers a collection of projects matching the string
 managed Answers a collection of currently managed project names
 availableVersionsOf:Answers a collection of available versions of project.
 WARNING: this command actually installs the configuration package if not
 present
 versionOf: Answer current version of project
 attributesOf: Answer current attributes of project. The answer is a
 Dictionary with following keys: Author, Timestamp, Description
 repository: Adds a repository to current list of repositories, this
 repostory works just for this instance of GoferProjectLoader
 repository:username:password: Same to #repository:, but also adds user
 identification
 rememberRepository: Adds a persistent repository to current list of
 repositories
 rememberRepository:username:password: Same to #rememberRepository:, but also
 adds user identification
 removeRepository: Removes a persistent repository
 load: load a project
 load:group: load latest stable version of project, just the selected groups.
 A group can be a string (e.g. ’default’) or a collection of strings (e.g.
 #(’Core’ ’Test’)
 load:version: load a specified version of project
 load:version:group: load a specified version and group(s) of project
 update Updates all configuration files for managed projects, and answers a
 list of new versions available for each project (if there is new versions)
 update: Update the configuration for specified project
 upgrade Upgrade all managed projects with new versions if any available. *Be
 careful, this option can lead to a unusable image*
 upgrade: Upgrade specified project with latest stable version if it is newer
 than the version installed
 upgrade:version: Upgrade specified project with specified version
 upgrade:version:group: Upgrade specified project with specified version and
 group(s)
 
 Of course, we can release a first version with the most important actions
 and then a second or third with the rest.
 
 Cheers
 
 Mariano
 
 
 
 
 Cheers,
 Doru
 
 
 
 On 8 May 2010, at 16:53, Mariano Martinez Peck wrote:
 
 Hi folks. First of all let me clarify that all this email is though for
 new comers.
 
 I think Metacello is a wonderful project and that's why we are adopting it
 in Pharo. I know Metacello has it's own UI:
 
 http://code.google.com/p/metacello/wiki/MetacelloTools
 
 I also know there is Metaceller done by Doru.
 
 But I think that the features Esteban Lorenzano implemented in
 GoferProjectLoader are a MUST for a new comer. You can read them here:
 
 http://www.smallworks.com.ar/en/community/GoferProjectLoader
 
 Now...he doesn't plan to do a UI for that. My question if it would be a
 good idea to extend Metaceller or Metacello-OB so that to uses
 GoferProjectLoader features. Not necessary for Metacello 1.0 but maybe for
 1.1. I think this is important, at least for Pharo. We don't have Universe
 neither SqueakMap anymore.
 
 Cheers
 
 Mariano
 
 
 --
 www.tudorgirba.com
 
 The coherence of a trip is given by the clearness of the goal.
 
 
 
 
 
 ___
 Pharo-project mailing list
 Pharo-project@lists.gforge.inria.fr
 http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


Re: [Pharo-project] [Metacello] We need a UI for Metacello/Loader

2010-05-08 Thread Stéphane Ducasse
+1 


 I don't think a graphical user interface is what is important now. If you 
 look at other package management systems, APT or RubyGems, they work very 
 well just from the command line. With GoferProjectLoader we basically have 
 this command line interface.
 
 What is much more important is a process. We need universes for the different 
 Pharo versions and for the different maturity/compatibility states of 
 packages (e.g., unstable, testing, and stable). We need somebody who sets up 
 a process and keeps it running, and we also need package maintainers.
 
 We can list packages on a website (like packages.debian.org). This should 
 make it possible for anybody to find the desired package and install it.
 
 Of course, a GUI would be nice to have. But without a high-quality package 
 repository, it will be only of little use. 
 
 I don't have much time left at the moment, but I can assist somebody who 
 wants to get such a system up and running. I believe its going to be a very 
 important step for Pharo.


___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


Re: [Pharo-project] Newbie: How to load and use HTTP parser

2010-05-08 Thread Dennis Schetinin
You can try to ask (this or other questions) in Russian Smalltalk User Group
also: http://groups.google.com/group/sugr/ :)

2010/5/7 Andrei Stebakov lisper...@gmail.com

 Hi

 Sent this message to the Pharo-users group, but no response for a couple of
 days, so trying it here ;)

 I have a simple task of parsing some html content in Pharo (loading an html
 page using HTTPSocket and retrieving useful info from it).
 Having browsed for an html parser in my current one-click Pharo 1.0 image,
 I couldn't find one.
 How do I find/download a (the) HTML parser?

 What's the general routine of discovering and installing packages in Pharo?
 I believe in Squeak there was a menu to explore and download packages, I
 couldn't find it in Pharo though.


 Thank you,
 Andrei

 ___
 Pharo-project mailing list
 Pharo-project@lists.gforge.inria.fr
 http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project




-- 
Dennis Schetinin
___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Re: [Pharo-project] [vwnc] Survey: Changing method names in JNIPort?

2010-05-08 Thread Tudor Girba

Hi Joachim,

As far as I know, Pharo now supports underscores in method names. Am I  
wrong?


Cheers,
Doru


On 8 May 2010, at 21:31, Joachim Geidel wrote:


Hello everybody!

I am preparing to port JNIPort (the Smalltalk-to-Java interface) to  
Squeak
and Pharo. However, there is a complication: Squeak and Pharo don't  
accept
underscores in method names, while Dolphin and VisualWorks have no  
problem

with underscores. JNIPort contains many methods with underscores.

If you are a JNIPort user, I would like to hear what you think about  
the
ways to solve this problem. Opinions from non-users are welcome,  
too, of

course.

I currently see two options:

1. I can keep the versions for all platforms in sync. Obviously, I  
would
prefer this solution, as it is less work for me. On the other hand,  
users of

JNIPort would have to get used to new naming conventions:

- All underscores would be dropped from method names. As method  
names for
generated methods include the type names of the arguments, this can  
lead to

somewhat ugly looking names, as the usual camel case notation is not
necessarily respected. E.g.,
   get_int: would be replaced by getint:
   get_Object:String: would be replaced by getObject:String:
In those simple cases, the new notation doesn't look much worse than  
before.


- Static fields in Java tend to have uppercase names with  
underscores, which

I would have to drop, too:
   get_MAX_VALUE  - getMAXVALUE
   set_MAX_VALUE: - setMAXVALUE:
This has a small potential for naming conflicts if two field names  
in the
same class differ only by underscores. But you can always use lower  
level

methods for accessing a field if the generated method is ambiguous.

- For names of inner classes which contain a $ character, I can't  
replace $
by _ anymore, and would use 0 (zero) instead - it doesn't look much  
worse
than the $ character in Java, and I can't come up with something  
nicer which

is a legal character in a selector.

2. I could leave the VisualWorks version as it is, and maintain a  
second
code branch for Squeak and Pharo. I don't like this solution, as it  
means
more work for me. For JNIPort users, it would mean that their code  
isn't
easily portable to Squeak. OTOH, it would preserve the current more- 
or-less

nice-looking method names in generated classes.

So, what do you think?

Joachim Geidel


___
vwnc mailing list
v...@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc


--
www.tudorgirba.com

Sometimes the best solution is not the best solution.


___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


[Pharo-project] new unstable on gforge

2010-05-08 Thread Stéphane Ducasse
https://gforge.inria.fr/frs/download.php/26970/PharoCore-1.1-11343-UNSTABLE.zip
___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


Re: [Pharo-project] [vwnc] Survey: Changing method names in JNIPort?

2010-05-08 Thread Mariano Martinez Peck
On Sat, May 8, 2010 at 9:52 PM, Mariano Martinez Peck marianop...@gmail.com
 wrote:



 On Sat, May 8, 2010 at 9:39 PM, stephane ducasse 
 stephane.duca...@gmail.com wrote:


 On May 8, 2010, at 9:31 PM, Joachim Geidel wrote:

  Hello everybody!
 
  I am preparing to port JNIPort (the Smalltalk-to-Java interface) to
 Squeak
  and Pharo. However, there is a complication: Squeak and Pharo don't
 accept
  underscores in method names,

 Pharo does...



  Only Pharo 1.1.



Sorry. I forgot to say that I have the same problem with GLORP. For the
moment, what I do for Pharo 1.0 is to load an ugly hack:

(HTTPSocket httpGet: '
http://www.assembla.com/spaces/SqueakDBX/documents/dvVhPSvuCr3OqXeJe5aVNr/download/underscore.cs')
readStream fileIn

You can see that .cs if you want.

Cheers

Mariano





  while Dolphin and VisualWorks have no problem
  with underscores. JNIPort contains many methods with underscores.
 
  If you are a JNIPort user, I would like to hear what you think about the
  ways to solve this problem. Opinions from non-users are welcome, too, of
  course.
 
  I currently see two options:
 
  1. I can keep the versions for all platforms in sync. Obviously, I would
  prefer this solution, as it is less work for me. On the other hand,
 users of
  JNIPort would have to get used to new naming conventions:
 
  - All underscores would be dropped from method names. As method names
 for
  generated methods include the type names of the arguments, this can lead
 to
  somewhat ugly looking names, as the usual camel case notation is not
  necessarily respected. E.g.,
 get_int: would be replaced by getint:
 get_Object:String: would be replaced by getObject:String:
  In those simple cases, the new notation doesn't look much worse than
 before.
 
  - Static fields in Java tend to have uppercase names with underscores,
 which
  I would have to drop, too:
 get_MAX_VALUE  - getMAXVALUE
 set_MAX_VALUE: - setMAXVALUE:
  This has a small potential for naming conflicts if two field names in
 the
  same class differ only by underscores. But you can always use lower
 level
  methods for accessing a field if the generated method is ambiguous.
 
  - For names of inner classes which contain a $ character, I can't
 replace $
  by _ anymore, and would use 0 (zero) instead - it doesn't look much
 worse
  than the $ character in Java, and I can't come up with something nicer
 which
  is a legal character in a selector.
 
  2. I could leave the VisualWorks version as it is, and maintain a second
  code branch for Squeak and Pharo. I don't like this solution, as it
 means
  more work for me. For JNIPort users, it would mean that their code isn't
  easily portable to Squeak. OTOH, it would preserve the current
 more-or-less
  nice-looking method names in generated classes.
 
  So, what do you think?
 
  Joachim Geidel
 
 
  ___
  vwnc mailing list
  v...@cs.uiuc.edu
  http://lists.cs.uiuc.edu/mailman/listinfo/vwnc


 ___
 vwnc mailing list
 v...@cs.uiuc.edu
 http://lists.cs.uiuc.edu/mailman/listinfo/vwnc



___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Re: [Pharo-project] Newbie: How to load and use HTTP parser

2010-05-08 Thread Philippe Marschall
On 08.05.2010 09:32, Stéphane Ducasse wrote:
 
 On May 7, 2010, at 5:07 PM, Andrei Stebakov wrote:
 
 Hi 

 Sent this message to the Pharo-users group, but no response for a couple of 
 days, so trying it here ;)

 I have a simple task of parsing some html content in Pharo (loading an html 
 page using HTTPSocket and retrieving useful info from it).
 Having browsed for an html parser in my current one-click Pharo 1.0 image, I 
 couldn't find one.
 How do I find/download a (the) HTML parser?
 
 I know that there is a HTML.
 Check the squeaksource package HTML.

http://www.squeaksource.com/htmlcssparser.html

Cheers
Philippe


___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Re: [Pharo-project] Newbie: How to load and use HTTP parser

2010-05-08 Thread Hernán Morales Durand
http://lists.squeakfoundation.org/pipermail/beginners/2010-April/006986.html

2010/5/7 Andrei Stebakov lisper...@gmail.com:
 Hi

 Sent this message to the Pharo-users group, but no response for a couple of
 days, so trying it here ;)

 I have a simple task of parsing some html content in Pharo (loading an html
 page using HTTPSocket and retrieving useful info from it).
 Having browsed for an html parser in my current one-click Pharo 1.0 image, I
 couldn't find one.
 How do I find/download a (the) HTML parser?

 What's the general routine of discovering and installing packages in Pharo?
 I believe in Squeak there was a menu to explore and download packages, I
 couldn't find it in Pharo though.


 Thank you,
 Andrei

 ___
 Pharo-project mailing list
 Pharo-project@lists.gforge.inria.fr
 http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


[Pharo-project] (igor) Help for 1.1: condenseChanges does not work anymore

2010-05-08 Thread Stéphane Ducasse
Hi 

We cannot do Smalltalk condenseChanges and this is a showStopper for 1.1 beta.

http://code.google.com/p/pharo/issues/detail?id=2367
After some hours of debugging, Lukas has the intuition that this is related to 
methodTrailer.

I did some stupid tests... and apparently the problem occured between 7 and 
11128

If you take 7 and run
Utilities readServerUpdatesThrough: 3922 saveLocally: true updateImage: 
true
and in a 11120 image 
Smalltalk condenseChanges is working.

So the problem is somehow related to methodTrailer.

Igor can you have a look?

Stef

8
-  Issue 1701:  ArchiveViewer now works on Pharo
-  Issue 1679:  InputEventSensor refers to defunct class InputSensor
-  Issue 1703:  Closing last windows raise error
-  Issue 1698:  Enhancement: trunk #collect:as: is a must
9
- Issue 1711:   Cleaning host menu'
11120
- Cleaning some tests.
#testSort, #testRestoreDefaultFonts
- Issue 1691: Adding some tests for formalParameterAt: from nicolas
- Moved FixedIdentitySet to Collections-Unordered
- Better comments.
- Better shuffledBy:
- Issue 1713:   Clean Duplication in widthOfString:from:to:
11121
- Issue 1690: New Method Trailer part 1 (cs 1_ and 2_)
11122
- Issue 1690: New Method Trailer part 2 (cs 3 merged)
11123
- Issue 1690: New Method Trailer part 3 (cs 4 no conflict)
11124
- Issue 1690: New Method Trailer part 4 (cs 5)
11125
- Issue 1690: New Method Trailer part 5 (cs 6 + postscript cs7)
11126 
- Issue 1690: New Method Trailer part 6 (cs 8 - trailer)
11127
- Issue 1690: New Method Trailer part 7 (cs 9)
11128
- Issue 1690: New Method Trailer post clean up :)
___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


Re: [Pharo-project] (igor) Help for 1.1: condenseChanges does not work anymore

2010-05-08 Thread Igor Stasenko
Hi.
I made a little investigation..

The changes file condensing works fine.
Except that there something wrong with destroying source pointers of
not-installed methods.

After commenting a following line:
   CompiledMethod allInstancesDo: [:e | e isInstalled ifFalse: [e
destroySourcePointer]]. 

It were able to run to an end, and by running this check:

| empty |
empty := Set new.
Smalltalk allClassesAndTraitsDo: [:classOrTrait |
 empty addAll: (classOrTrait methodDict select: [:m | m sourcePointer 
=0 ])
].
empty isEmpty
-- prints true

which means there is no installed methods with sourcePointer = 0 (and
hence with no source code) after condensing the changes.


But what makes me really suspicious is following:

CompiledMethod allInstances size 55797
(CompiledMethod allInstances reject: #isInstalled) size  12586

it looks like #isInstalled is buggy, or otherwise indicating that
there is problem with image,
which keeps so many non-installed methods hanging around.
I would simply put a following at the beginning of #condenseChanges:

(CompiledMethod allInstances reject: #isInstalled) size  0 ifTrue: [
self error: 'first, get rid of any uninstalled methods' ].

So, then you would not need to use #destroySourcePointer :)

Here an alternative version of #destroySourcePointer. But it doesn't
makes any big difference.

destroySourcePointer

We can't change the trailer of existing method, since
it could have completely different format. Therefore we need to
generate a copy with new trailer, and then #become it
| copy |
copy := self copyWithTrailerBytes: CompiledMethodTrailer empty.
self becomeForward: copy.
^ copy


P.S. runned it on 1.1-11343-UNSTABLE

-- 
Best regards,
Igor Stasenko AKA sig.

___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


[Pharo-project] Issue 2397 fixed and ready to harvest

2010-05-08 Thread Torsten Bergmann

-- 
GRATIS für alle GMX-Mitglieder: Die maxdome Movie-FLAT!
Jetzt freischalten unter http://portal.gmx.net/de/go/maxdome01

___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


Re: [Pharo-project] (igor) Help for 1.1: condenseChanges does not work anymore

2010-05-08 Thread Igor Stasenko
Here's another calculation:

| size |
size := 0.
Smalltalk allClassesAndTraitsDo: [:classOrTrait |
 size := size + classOrTrait methodDict size
].
size 37516

so, it looks like there really about 12k methods hanging around and
not installed anywhere .. :)



-- 
Best regards,
Igor Stasenko AKA sig.

___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


Re: [Pharo-project] (igor) Help for 1.1: condenseChanges does not work anymore

2010-05-08 Thread Igor Stasenko
Oh, and i think there's no problem with #destroySourcePointer
it just takes too long, and looks like your image is hung, because you
can't wait untill it chews all 12k methods..
Just tried to do it with a random method:

CompiledMethod allInstances atRandom copy destroySourcePointer
getSource

and it works fine.

-- 
Best regards,
Igor Stasenko AKA sig.

___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


Re: [Pharo-project] (igor) Help for 1.1: condenseChanges does not work anymore

2010-05-08 Thread Igor Stasenko
And the last thing...
since new trailers using #becomeForward:
no wonder that this loop turns into an infinite:

CompiledMethod allInstancesDo: [:e | e isInstalled ifFalse: [e
destroySourcePointer]].

because #allInstancesDo: walks a heap, and assuming that there is no
new instances of it created
during walking. But destroySourcePointer creating a new instance, so
it can never finish! :)

i just replaced it with following:

(CompiledMethod allInstances reject: #isInstalled) do: [:e | e
isInstalled ifFalse: [e destroySourcePointer]].

and made it to the end.. took about 5 minutes to wait. (12k methods +
become on every method is a little time consuming ;)

--
Best regards,
Igor Stasenko AKA sig.

___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


[Pharo-project] Emerging Languages Camp

2010-05-08 Thread Serge Stinckwich
No one could talk about Pharo at this event ?
http://emerginglangs.com/speakers/

-- 
Serge Stinckwich
UMI UMMISCO 209 (IRD/UPMC), Hanoi, Vietnam
Every DSL ends up being Smalltalk
http://doesnotunderstand.org/

___
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project