Pharo-dev
By thread
pharo-dev@lists.pharo.org
By month
Messages by month
- ----- 2026 -----
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- 2 participants
- 144614 messages
Re: [Pharo-project] status of split join in pharo
by Stéphane Ducasse
ok let us know when you have a solution ready for integration because
this would be 8 methods well spend :)
On Apr 5, 2009, at 6:27 PM, Oscar Nierstrasz wrote:
>
> Oops. I made a mistake in the experiment. There is actually less
> difference than I thought.
>
> Here we load a web site, optionally using split and join to remove all
> comments. My regex version seems to be only marginally worse than
> Keith's sequence splitting.
>
>
> 5289 "ON split on regex"
> 5327
>
> 5165 "KH split on sequence"
> 5160
>
> 2153 "no splitting"
> 2160
>
> So regex splitting seems to be feasible.
>
> I can try to have a closer look and propose a merged solution, but
> right now my plate is rather full.
>
> - on
>
>
> On Apr 5, 2009, at 18:14, Oscar Nierstrasz wrote:
>
>>
>> About performance:
>>
>> I just did a quick experiment in the pier migration application where
>> I need split and join.
>>
>> I use split and join to remove comments from HTMl files. I ran the
>> tests without removing comments, and removing them using the two
>> different split/join implementations.
>>
>> Keith's sequence splitter is blindingly fast, imposing no discernable
>> overhead, whereas my regex version slows all the tests down by 100%!
>>
>> I would still like to have splitting on regexes, but it should
>> probably not be the default for strings. Maybe we can improve the
>> implementation and speed it up ...
>>
>> - on
>>
>> On Apr 5, 2009, at 18:03, Oscar Nierstrasz wrote:
>>
>>>
>>> With Keith's version you can do this:
>>>
>>> #(1 10 11 2 10 11 3 10 11 4) splitOn: #(10 11)
>>>
>>> I was assuming that the thing we use to split was a regex string.
>>>
>>> 'hello there' split: '\s'
>>>
>>> Actually I see that Damien added this possibility in RubyShards as
>>> well. This also works:
>>>
>>> #(1 10 11 2 10 11 3 10 11 4) split: #(10 11)
>>>
>>> It seems that RubyShards is more general, but we need to take a
>>> closer
>>> look at both solutions. The interfaces are not the same. There may
>>> be differences in performance.
>>>
>>> - on
>>>
>>>
>>> On Apr 5, 2009, at 17:47, Stéphane Ducasse wrote:
>>>
>>>> I would be in favor to have a nice oo solution :)
>>>> I do not know what means "uses a sequence to split a sequence."
>>>>
>>>> Stef
>>>>
>>>>> OK, I had a closer look.
>>>>>
>>>>> Keith's implementation is completely different from, and pre-
>>>>> dates,
>>>>> that of Damien and myself.
>>>>>
>>>>> Keith's version works for SequenceableCollections, and uses a
>>>>> sequence
>>>>> to split a sequence.
>>>>>
>>>>> Ours is more tailored towards Strings, and uses a regex to split a
>>>>> String.
>>>>>
>>>>> Perhaps we can consider a merge in which sequences can be split
>>>>> using
>>>>> sequences, and Strings can additionally be split using regexes.
>>>>>
>>>>> We should also take efficiency into account. I did not run any
>>>>> benchmarks yet to compare the implementations
>>>>>
>>>>> Who is interested in merging these two?
>>>>>
>>>>> Cheers,
>>>>> - on
>>>>>
>>>>> On Apr 5, 2009, at 16:25, Oscar Nierstrasz wrote:
>>>>>
>>>>>>
>>>>>> Hi Keith,
>>>>>>
>>>>>> Now I see there are attached files in Mantis. But they all seem
>>>>>> to
>>>>>> date from 2006, whereas your latest comments are from Jan 2009.
>>>>>> Are
>>>>>> there more recent files from 2009 that I should look at? If so,
>>>>>> where
>>>>>> are they?
>>>>>>
>>>>>> What is the best way to proceed? Shall I create a Join project
>>>>>> on
>>>>>> SqueakSource, and if it is updated, post the latest version on
>>>>>> Mantis
>>>>>> too?
>>>>>>
>>>>>> Cheers,
>>>>>> - on
>>>>>>
>>>>>> On Apr 5, 2009, at 16:08, Keith Hodges wrote:
>>>>>>
>>>>>>> Stéphane Ducasse wrote:
>>>>>>>>> I wrote the split join implementation that is available on
>>>>>>>>> mantis
>>>>>>>>>
>>>>>>>>> http://bugs.squeak.org/view.php?id=4874
>>>>>>>>>
>>>>>>>>> I use it all the time, if you would like to improve on what is
>>>>>>>>> there, please continue to contribute to the mantis page
>>>>>>>>> discussion/
>>>>>>>>> tests and code. That way we will get an polished
>>>>>>>>> implementation
>>>>>>>>> that
>>>>>>>>> can be added to squeak or to pharo.
>>>>>>>>>
>>>>>>>>> The suggestion to use #species would be fine (I never use
>>>>>>>>> species
>>>>>>>>> myself, because I dont understand what its really for).
>>>>>>>>>
>>>>>>>>
>>>>>>>> or class
>>>>>>>> the point is that you get back a collection of the same kind of
>>>>>>>> the
>>>>>>>> receiver
>>>>>>>>
>>>>>>>>> When stef says "I have checked the code and it looks nice" he
>>>>>>>>> didnt
>>>>>>>>> say which code he checked, so I am confused.
>>>>>>>>>
>>>>>>>>
>>>>>>>> I looked at the latest version in the repository mentioned by
>>>>>>>> oscar
>>>>>>>> rubyshards
>>>>>>>>
>>>>>>>>
>>>>>>> Which appears to me to be the opposite of what Oscar suggested.
>>>>>>> If I
>>>>>>> read the email, he asked what the status of mantis 4874 was,
>>>>>>> anticipating that it be integrated. He had "gone back" to ruby
>>>>>>> shards in
>>>>>>> the absense of the integration of 4784.
>>>>>>>
>>>>>>> Keith
>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Pharo-project mailing list
>>>>>>> Pharo-project(a)lists.gforge.inria.fr
>>>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-
>>>>>>> project
>>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Pharo-project mailing list
>>>>>> Pharo-project(a)lists.gforge.inria.fr
>>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-
>>>>>> project
>>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Pharo-project mailing list
>>>>> Pharo-project(a)lists.gforge.inria.fr
>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-
>>>>> project
>>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> Pharo-project mailing list
>>>> Pharo-project(a)lists.gforge.inria.fr
>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>
>>>
>>>
>>> _______________________________________________
>>> Pharo-project mailing list
>>> Pharo-project(a)lists.gforge.inria.fr
>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>
>>
>>
>> _______________________________________________
>> Pharo-project mailing list
>> Pharo-project(a)lists.gforge.inria.fr
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>
>
> Kind regards,
> Oscar Nierstrasz
> ---
> Prof. Dr. O. Nierstrasz -- Oscar.Nierstrasz(a)iam.unibe.ch
> Software Composition Group -- http://www.iam.unibe.ch/~scg
> University of Bern -- Tel/Fax +41 31 631.4618/3355
> vcard: http://www.iam.unibe.ch/~oscar/oscarNierstrasz.vcf
>
>
> _______________________________________________
> Pharo-project mailing list
> Pharo-project(a)lists.gforge.inria.fr
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
April 5, 2009
Re: [Pharo-project] Unicode Problem (again) even with fix in 10266
by Mariano Martinez Peck
I have the same problem when trying to update 10264 trought system ->
software updates. :(
On Sun, Apr 5, 2009 at 9:39 AM, Stéphane Ducasse
<stephane.ducasse(a)inria.fr>wrote:
> I cannot release the fixes I was integrating
>
> UTF8DecomposedTextConverter>>nextFromStream: aStream
>
> | char resultChar |
> char := super nextFromStream: aStream.
> (CombinedChar isCompositionCharacter: char charCode)
> ifFalse: [^char].
> combinedChar
> ifNil: [
> combinedChar := CombinedChar new.
> combinedChar simpleAdd: char]
> ifNotNil: [
> [combinedChar simpleAdd: char]
> whileFalse: [char := super nextFromStream:
> aStream].
> resultChar := combinedChar combined.
> combinedChar := CombinedChar new.
> combinedChar simpleAdd: char.
> ^resultChar]
>
> char charCode -> DNU
> char is nil.
>
> Stef
>
> From: ddd
> To: Pharo-project(a)lists.gforge.inria.fr
> Subject: [BUG]UndefinedObject(Object)>>doesNotUnderstand: #charCode
>
> here insert explanation of what you were doing, suspect changes you've
> made and so forth.
>
> 5 April 2009 2:39:03 pm
>
> VM: Mac OS - a SmalltalkImage
> Image: Pharo0.1 [Latest update: #10266]
>
> SecurityManager state:
> Restricted: false
> FileAccess: true
> SocketAccess: true
> Working Dir /Users/ducasse/Workspace/FirstCircle/ActiveResearch/Pharo/
> Pharo
> Trusted Dir /foobar/tooBar/forSqueak/bogus
> Untrusted Dir /Users/ducasse/Library/Preferences/Squeak/Internet/My
> Squeak
>
> UndefinedObject(Object)>>doesNotUnderstand: #charCode
> Receiver: nil
> Arguments and temporary variables:
> aMessage: charCode
> exception: MessageNotUnderstood:
> UndefinedObject>>charCode
> resumeValue: nil
> Receiver's instance variables:
> nil
>
> UTF8DecomposedTextConverter>>nextFromStream:
> Receiver: an UTF8DecomposedTextConverter
> Arguments and temporary variables:
> <<error during printing>
> Receiver's instance variables:
> combinedChar: nil
>
> MultiByteBinaryOrTextStream>>next
> Receiver: <<error during printing>>
> Arguments and temporary variables:
> n: nil
> Receiver's instance variables:
> collection: ' '
> position: 1
> readLimit: 1
> writeLimit: 6
> isBinary: true
> converter: an UTF8DecomposedTextConverter
>
> MultiByteBinaryOrTextStream>>upToEnd
> Receiver: <<error during printing>>
> Arguments and temporary variables:
> newStream: a WriteStream #[32]
> element: 32
> newCollection: #[32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
> 0 0 0 0
> 0 0 0 0 0 0...etc...
> Receiver's instance variables:
> collection: ' '
> position: 1
> readLimit: 1
> writeLimit: 6
> isBinary: true
> converter: an UTF8DecomposedTextConverter
>
>
> --- The full stack ---
> UndefinedObject(Object)>>doesNotUnderstand: #charCode
> UTF8DecomposedTextConverter>>nextFromStream:
> MultiByteBinaryOrTextStream>>next
> MultiByteBinaryOrTextStream>>upToEnd
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> MultiByteBinaryOrTextStream>>contents
> [] in ByteString(String)>>encodeForHTTPWithTextEncoding:conditionBlock:
> ByteString(SequenceableCollection)>>do:
> ByteString(String)>>encodeForHTTPWithTextEncoding:conditionBlock:
> ByteString(String)>>encodeForHTTP
> MCHttpRepository>>urlForFileNamed:
> MCHttpRepository>>writeStreamForFileNamed:replace:do:
> MCHttpRepository(MCFileBasedRepository)>>writeStreamForFileNamed:do:
> MCHttpRepository(MCFileBasedRepository)>>basicStoreVersion:
> MCHttpRepository(MCRepository)>>storeVersion:
> [] in ScriptLoader>>copyPackagesFromWaitingFolderToHomeRepository
> OrderedCollection>>do:
> ScriptLoader>>copyPackagesFromWaitingFolderToHomeRepository
> ScriptLoader>>publishChanges
> ScriptLoader class>>DoIt
> Compiler>>evaluate:in:to:notifying:ifFail:logged:
> [] in TextMorphEditor(ParagraphEditor)>>evaluateSelection
> BlockClosure>>on:do:
> TextMorphEditor(ParagraphEditor)>>evaluateSelection
> TextMorphEditor(ParagraphEditor)>>doIt
> [] in TextMorphEditor(ParagraphEditor)>>doIt:
> TextMorphEditor(ParagraphEditor)>>terminateAndInitializeAround:
> TextMorphEditor(ParagraphEditor)>>doIt:
> TextMorphEditor(ParagraphEditor)>>dispatchOnKeyEvent:with:
> TextMorphEditor>>dispatchOnKeyEvent:with:
> TextMorphEditor(ParagraphEditor)>>keystroke:
> TextMorphEditor>>keystroke:
> [] in TextMorphForEditView(TextMorph)>>keyStroke:
> TextMorphForEditView(TextMorph)>>handleInteraction:
> TextMorphForEditView>>handleInteraction:
> TextMorphForEditView(TextMorph)>>keyStroke:
> TextMorphForEditView>>keyStroke:
> TextMorphForEditView(TextMorph)>>handleKeystroke:
> KeyboardEvent>>sentTo:
> TextMorphForEditView(Morph)>>handleEvent:
> TextMorphForEditView(Morph)>>handleFocusEvent:
> [] in HandMorph>>sendFocusEvent:to:clear:
> [] in PasteUpMorph>>becomeActiveDuring:
> BlockClosure>>on:do:
> PasteUpMorph>>becomeActiveDuring:
> HandMorph>>sendFocusEvent:to:clear:
> HandMorph>>sendEvent:focus:clear:
> HandMorph>>sendKeyboardEvent:
> HandMorph>>handleEvent:
> HandMorph>>processEvents
> [] in WorldState>>doOneCycleNowFor:
> Array(SequenceableCollection)>>do:
> WorldState>>handsDo:
> WorldState>>doOneCycleNowFor:
> WorldState>>doOneCycleFor:
> PasteUpMorph>>doOneCycle
> [] in Project class>>spawnNewProcess
> [] in BlockClosure>>newProcess
>
>
> _______________________________________________
> Pharo-project mailing list
> Pharo-project(a)lists.gforge.inria.fr
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
April 5, 2009
Re: [Pharo-project] SUnits and UI interaction
by Michael Roberts
or...perhaps... #valueSupplyingAnswers: is broken. thoughts?
thanks
Mike
April 5, 2009
[Pharo-project] SUnits and UI interaction
by Michael Roberts
The recent tests that got included with the closure fixes (I think)
now pop up dialogs. This means that you can't run the whole test suite
for 30 mins whilst you do something else. Was this intentional? We
need an automated mode if one does not already exist in the framework.
Do we have anything like that? Basically the dialogs need a default
answer.
thanks,
Mike
April 5, 2009
Re: [Pharo-project] [ANN] 10266 Merge tool SUnitGUI Setting Integration Enh
by Mariano Martinez Peck
On Sun, Apr 5, 2009 at 7:17 AM, Stéphane Ducasse
<stephane.ducasse(a)inria.fr>wrote:
> Issue 710: Merge Tool diff fix
> Fixes for edge cases when handling conflicts.
> Fixes for original MC merge browser.
>
> SUnitGUI Improvement
> - do not offer to test coverage of kernel/collection/exception/sunit
> packages, that will only crash the system
>
> - do not consider methods with <ignoreForCoverage> annotation
>
Stef, how is this ??? What are annotation in Squeak/Pharo ? I comes java to
my mind hahaha. Could someone give me a code example ?
Thank you very much.
Mariano
> - improving the error messages
> - don t try show a list if all methods are covered
> - really save the history
> - do not wrap abstract methods, they won t be called anyway
> - update the history even after coverage is run
>
> Settings Integration enh
> - Code cleaning (less classes, more comments)
>
> Alain I could not load 45 so I load 39 for now.
>
> Stef
>
> _______________________________________________
> Pharo-project mailing list
> Pharo-project(a)lists.gforge.inria.fr
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
April 5, 2009
Re: [Pharo-project] status of split join in pharo
by Oscar Nierstrasz
Oops. I made a mistake in the experiment. There is actually less
difference than I thought.
Here we load a web site, optionally using split and join to remove all
comments. My regex version seems to be only marginally worse than
Keith's sequence splitting.
5289 "ON split on regex"
5327
5165 "KH split on sequence"
5160
2153 "no splitting"
2160
So regex splitting seems to be feasible.
I can try to have a closer look and propose a merged solution, but
right now my plate is rather full.
- on
On Apr 5, 2009, at 18:14, Oscar Nierstrasz wrote:
>
> About performance:
>
> I just did a quick experiment in the pier migration application where
> I need split and join.
>
> I use split and join to remove comments from HTMl files. I ran the
> tests without removing comments, and removing them using the two
> different split/join implementations.
>
> Keith's sequence splitter is blindingly fast, imposing no discernable
> overhead, whereas my regex version slows all the tests down by 100%!
>
> I would still like to have splitting on regexes, but it should
> probably not be the default for strings. Maybe we can improve the
> implementation and speed it up ...
>
> - on
>
> On Apr 5, 2009, at 18:03, Oscar Nierstrasz wrote:
>
>>
>> With Keith's version you can do this:
>>
>> #(1 10 11 2 10 11 3 10 11 4) splitOn: #(10 11)
>>
>> I was assuming that the thing we use to split was a regex string.
>>
>> 'hello there' split: '\s'
>>
>> Actually I see that Damien added this possibility in RubyShards as
>> well. This also works:
>>
>> #(1 10 11 2 10 11 3 10 11 4) split: #(10 11)
>>
>> It seems that RubyShards is more general, but we need to take a
>> closer
>> look at both solutions. The interfaces are not the same. There may
>> be differences in performance.
>>
>> - on
>>
>>
>> On Apr 5, 2009, at 17:47, Stéphane Ducasse wrote:
>>
>>> I would be in favor to have a nice oo solution :)
>>> I do not know what means "uses a sequence to split a sequence."
>>>
>>> Stef
>>>
>>>> OK, I had a closer look.
>>>>
>>>> Keith's implementation is completely different from, and pre-dates,
>>>> that of Damien and myself.
>>>>
>>>> Keith's version works for SequenceableCollections, and uses a
>>>> sequence
>>>> to split a sequence.
>>>>
>>>> Ours is more tailored towards Strings, and uses a regex to split a
>>>> String.
>>>>
>>>> Perhaps we can consider a merge in which sequences can be split
>>>> using
>>>> sequences, and Strings can additionally be split using regexes.
>>>>
>>>> We should also take efficiency into account. I did not run any
>>>> benchmarks yet to compare the implementations
>>>>
>>>> Who is interested in merging these two?
>>>>
>>>> Cheers,
>>>> - on
>>>>
>>>> On Apr 5, 2009, at 16:25, Oscar Nierstrasz wrote:
>>>>
>>>>>
>>>>> Hi Keith,
>>>>>
>>>>> Now I see there are attached files in Mantis. But they all seem
>>>>> to
>>>>> date from 2006, whereas your latest comments are from Jan 2009.
>>>>> Are
>>>>> there more recent files from 2009 that I should look at? If so,
>>>>> where
>>>>> are they?
>>>>>
>>>>> What is the best way to proceed? Shall I create a Join project
>>>>> on
>>>>> SqueakSource, and if it is updated, post the latest version on
>>>>> Mantis
>>>>> too?
>>>>>
>>>>> Cheers,
>>>>> - on
>>>>>
>>>>> On Apr 5, 2009, at 16:08, Keith Hodges wrote:
>>>>>
>>>>>> Stéphane Ducasse wrote:
>>>>>>>> I wrote the split join implementation that is available on
>>>>>>>> mantis
>>>>>>>>
>>>>>>>> http://bugs.squeak.org/view.php?id=4874
>>>>>>>>
>>>>>>>> I use it all the time, if you would like to improve on what is
>>>>>>>> there, please continue to contribute to the mantis page
>>>>>>>> discussion/
>>>>>>>> tests and code. That way we will get an polished implementation
>>>>>>>> that
>>>>>>>> can be added to squeak or to pharo.
>>>>>>>>
>>>>>>>> The suggestion to use #species would be fine (I never use
>>>>>>>> species
>>>>>>>> myself, because I dont understand what its really for).
>>>>>>>>
>>>>>>>
>>>>>>> or class
>>>>>>> the point is that you get back a collection of the same kind of
>>>>>>> the
>>>>>>> receiver
>>>>>>>
>>>>>>>> When stef says "I have checked the code and it looks nice" he
>>>>>>>> didnt
>>>>>>>> say which code he checked, so I am confused.
>>>>>>>>
>>>>>>>
>>>>>>> I looked at the latest version in the repository mentioned by
>>>>>>> oscar
>>>>>>> rubyshards
>>>>>>>
>>>>>>>
>>>>>> Which appears to me to be the opposite of what Oscar suggested.
>>>>>> If I
>>>>>> read the email, he asked what the status of mantis 4874 was,
>>>>>> anticipating that it be integrated. He had "gone back" to ruby
>>>>>> shards in
>>>>>> the absense of the integration of 4784.
>>>>>>
>>>>>> Keith
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Pharo-project mailing list
>>>>>> Pharo-project(a)lists.gforge.inria.fr
>>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-
>>>>>> project
>>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Pharo-project mailing list
>>>>> Pharo-project(a)lists.gforge.inria.fr
>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-
>>>>> project
>>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> Pharo-project mailing list
>>>> Pharo-project(a)lists.gforge.inria.fr
>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>
>>>
>>>
>>> _______________________________________________
>>> Pharo-project mailing list
>>> Pharo-project(a)lists.gforge.inria.fr
>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>
>>
>>
>> _______________________________________________
>> Pharo-project mailing list
>> Pharo-project(a)lists.gforge.inria.fr
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>
>
>
> _______________________________________________
> Pharo-project mailing list
> Pharo-project(a)lists.gforge.inria.fr
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
Kind regards,
Oscar Nierstrasz
---
Prof. Dr. O. Nierstrasz -- Oscar.Nierstrasz(a)iam.unibe.ch
Software Composition Group -- http://www.iam.unibe.ch/~scg
University of Bern -- Tel/Fax +41 31 631.4618/3355
vcard: http://www.iam.unibe.ch/~oscar/oscarNierstrasz.vcf
April 5, 2009
Re: [Pharo-project] status of split join in pharo
by Oscar Nierstrasz
About performance:
I just did a quick experiment in the pier migration application where
I need split and join.
I use split and join to remove comments from HTMl files. I ran the
tests without removing comments, and removing them using the two
different split/join implementations.
Keith's sequence splitter is blindingly fast, imposing no discernable
overhead, whereas my regex version slows all the tests down by 100%!
I would still like to have splitting on regexes, but it should
probably not be the default for strings. Maybe we can improve the
implementation and speed it up ...
- on
On Apr 5, 2009, at 18:03, Oscar Nierstrasz wrote:
>
> With Keith's version you can do this:
>
> #(1 10 11 2 10 11 3 10 11 4) splitOn: #(10 11)
>
> I was assuming that the thing we use to split was a regex string.
>
> 'hello there' split: '\s'
>
> Actually I see that Damien added this possibility in RubyShards as
> well. This also works:
>
> #(1 10 11 2 10 11 3 10 11 4) split: #(10 11)
>
> It seems that RubyShards is more general, but we need to take a closer
> look at both solutions. The interfaces are not the same. There may
> be differences in performance.
>
> - on
>
>
> On Apr 5, 2009, at 17:47, Stéphane Ducasse wrote:
>
>> I would be in favor to have a nice oo solution :)
>> I do not know what means "uses a sequence to split a sequence."
>>
>> Stef
>>
>>> OK, I had a closer look.
>>>
>>> Keith's implementation is completely different from, and pre-dates,
>>> that of Damien and myself.
>>>
>>> Keith's version works for SequenceableCollections, and uses a
>>> sequence
>>> to split a sequence.
>>>
>>> Ours is more tailored towards Strings, and uses a regex to split a
>>> String.
>>>
>>> Perhaps we can consider a merge in which sequences can be split
>>> using
>>> sequences, and Strings can additionally be split using regexes.
>>>
>>> We should also take efficiency into account. I did not run any
>>> benchmarks yet to compare the implementations
>>>
>>> Who is interested in merging these two?
>>>
>>> Cheers,
>>> - on
>>>
>>> On Apr 5, 2009, at 16:25, Oscar Nierstrasz wrote:
>>>
>>>>
>>>> Hi Keith,
>>>>
>>>> Now I see there are attached files in Mantis. But they all seem to
>>>> date from 2006, whereas your latest comments are from Jan 2009.
>>>> Are
>>>> there more recent files from 2009 that I should look at? If so,
>>>> where
>>>> are they?
>>>>
>>>> What is the best way to proceed? Shall I create a Join project on
>>>> SqueakSource, and if it is updated, post the latest version on
>>>> Mantis
>>>> too?
>>>>
>>>> Cheers,
>>>> - on
>>>>
>>>> On Apr 5, 2009, at 16:08, Keith Hodges wrote:
>>>>
>>>>> Stéphane Ducasse wrote:
>>>>>>> I wrote the split join implementation that is available on
>>>>>>> mantis
>>>>>>>
>>>>>>> http://bugs.squeak.org/view.php?id=4874
>>>>>>>
>>>>>>> I use it all the time, if you would like to improve on what is
>>>>>>> there, please continue to contribute to the mantis page
>>>>>>> discussion/
>>>>>>> tests and code. That way we will get an polished implementation
>>>>>>> that
>>>>>>> can be added to squeak or to pharo.
>>>>>>>
>>>>>>> The suggestion to use #species would be fine (I never use
>>>>>>> species
>>>>>>> myself, because I dont understand what its really for).
>>>>>>>
>>>>>>
>>>>>> or class
>>>>>> the point is that you get back a collection of the same kind of
>>>>>> the
>>>>>> receiver
>>>>>>
>>>>>>> When stef says "I have checked the code and it looks nice" he
>>>>>>> didnt
>>>>>>> say which code he checked, so I am confused.
>>>>>>>
>>>>>>
>>>>>> I looked at the latest version in the repository mentioned by
>>>>>> oscar
>>>>>> rubyshards
>>>>>>
>>>>>>
>>>>> Which appears to me to be the opposite of what Oscar suggested.
>>>>> If I
>>>>> read the email, he asked what the status of mantis 4874 was,
>>>>> anticipating that it be integrated. He had "gone back" to ruby
>>>>> shards in
>>>>> the absense of the integration of 4784.
>>>>>
>>>>> Keith
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Pharo-project mailing list
>>>>> Pharo-project(a)lists.gforge.inria.fr
>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-
>>>>> project
>>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> Pharo-project mailing list
>>>> Pharo-project(a)lists.gforge.inria.fr
>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>
>>>
>>>
>>> _______________________________________________
>>> Pharo-project mailing list
>>> Pharo-project(a)lists.gforge.inria.fr
>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>
>>
>>
>> _______________________________________________
>> Pharo-project mailing list
>> Pharo-project(a)lists.gforge.inria.fr
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>
>
>
> _______________________________________________
> Pharo-project mailing list
> Pharo-project(a)lists.gforge.inria.fr
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
April 5, 2009
Re: [Pharo-project] MacOSClipboard(Object)>>primitiveFailed
by Ramiro Diaz Trepat
Thanks Steph, that plugin worked fantastic.Was it not included in the
current vm bundle by mistake?
Cheers
r
On Sun, Apr 5, 2009 at 4:31 PM, Stéphane Ducasse
<stephane.ducasse(a)inria.fr>wrote:
> Hi ramiro
>
> do you have plugin clipboardExtended....
> You can find it on the gforge.inria.fr pharo web page.
> You should include it in the resources folder with the other plugin.
>
> Stef
>
> On Apr 5, 2009, at 4:56 PM, Ramiro Diaz Trepat wrote:
>
> > Hi guys,
> > I am using the latest Mac VM and when I hit cmd-c (Copy) I get a
> > "primitive has failed" error.
> > In both images, with and without closures.
> > I know there are more mac users out there, are you experiencing
> > something similar?
> > Cheers
> >
> > r
> >
> > _______________________________________________
> > Pharo-project mailing list
> > Pharo-project(a)lists.gforge.inria.fr
> > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>
> _______________________________________________
> Pharo-project mailing list
> Pharo-project(a)lists.gforge.inria.fr
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
April 5, 2009
Re: [Pharo-project] status of split join in pharo
by Oscar Nierstrasz
With Keith's version you can do this:
#(1 10 11 2 10 11 3 10 11 4) splitOn: #(10 11)
I was assuming that the thing we use to split was a regex string.
'hello there' split: '\s'
Actually I see that Damien added this possibility in RubyShards as
well. This also works:
#(1 10 11 2 10 11 3 10 11 4) split: #(10 11)
It seems that RubyShards is more general, but we need to take a closer
look at both solutions. The interfaces are not the same. There may
be differences in performance.
- on
On Apr 5, 2009, at 17:47, Stéphane Ducasse wrote:
> I would be in favor to have a nice oo solution :)
> I do not know what means "uses a sequence to split a sequence."
>
> Stef
>
>> OK, I had a closer look.
>>
>> Keith's implementation is completely different from, and pre-dates,
>> that of Damien and myself.
>>
>> Keith's version works for SequenceableCollections, and uses a
>> sequence
>> to split a sequence.
>>
>> Ours is more tailored towards Strings, and uses a regex to split a
>> String.
>>
>> Perhaps we can consider a merge in which sequences can be split using
>> sequences, and Strings can additionally be split using regexes.
>>
>> We should also take efficiency into account. I did not run any
>> benchmarks yet to compare the implementations
>>
>> Who is interested in merging these two?
>>
>> Cheers,
>> - on
>>
>> On Apr 5, 2009, at 16:25, Oscar Nierstrasz wrote:
>>
>>>
>>> Hi Keith,
>>>
>>> Now I see there are attached files in Mantis. But they all seem to
>>> date from 2006, whereas your latest comments are from Jan 2009.
>>> Are
>>> there more recent files from 2009 that I should look at? If so,
>>> where
>>> are they?
>>>
>>> What is the best way to proceed? Shall I create a Join project on
>>> SqueakSource, and if it is updated, post the latest version on
>>> Mantis
>>> too?
>>>
>>> Cheers,
>>> - on
>>>
>>> On Apr 5, 2009, at 16:08, Keith Hodges wrote:
>>>
>>>> Stéphane Ducasse wrote:
>>>>>> I wrote the split join implementation that is available on mantis
>>>>>>
>>>>>> http://bugs.squeak.org/view.php?id=4874
>>>>>>
>>>>>> I use it all the time, if you would like to improve on what is
>>>>>> there, please continue to contribute to the mantis page
>>>>>> discussion/
>>>>>> tests and code. That way we will get an polished implementation
>>>>>> that
>>>>>> can be added to squeak or to pharo.
>>>>>>
>>>>>> The suggestion to use #species would be fine (I never use species
>>>>>> myself, because I dont understand what its really for).
>>>>>>
>>>>>
>>>>> or class
>>>>> the point is that you get back a collection of the same kind of
>>>>> the
>>>>> receiver
>>>>>
>>>>>> When stef says "I have checked the code and it looks nice" he
>>>>>> didnt
>>>>>> say which code he checked, so I am confused.
>>>>>>
>>>>>
>>>>> I looked at the latest version in the repository mentioned by
>>>>> oscar
>>>>> rubyshards
>>>>>
>>>>>
>>>> Which appears to me to be the opposite of what Oscar suggested.
>>>> If I
>>>> read the email, he asked what the status of mantis 4874 was,
>>>> anticipating that it be integrated. He had "gone back" to ruby
>>>> shards in
>>>> the absense of the integration of 4784.
>>>>
>>>> Keith
>>>>
>>>>
>>>> _______________________________________________
>>>> Pharo-project mailing list
>>>> Pharo-project(a)lists.gforge.inria.fr
>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>
>>>
>>>
>>> _______________________________________________
>>> Pharo-project mailing list
>>> Pharo-project(a)lists.gforge.inria.fr
>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>
>>
>>
>> _______________________________________________
>> Pharo-project mailing list
>> Pharo-project(a)lists.gforge.inria.fr
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>
>
>
> _______________________________________________
> Pharo-project mailing list
> Pharo-project(a)lists.gforge.inria.fr
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
April 5, 2009
Re: [Pharo-project] status of split join in pharo
by Stéphane Ducasse
I would be in favor to have a nice oo solution :)
I do not know what means "uses a sequence to split a sequence."
Stef
> OK, I had a closer look.
>
> Keith's implementation is completely different from, and pre-dates,
> that of Damien and myself.
>
> Keith's version works for SequenceableCollections, and uses a sequence
> to split a sequence.
>
> Ours is more tailored towards Strings, and uses a regex to split a
> String.
>
> Perhaps we can consider a merge in which sequences can be split using
> sequences, and Strings can additionally be split using regexes.
>
> We should also take efficiency into account. I did not run any
> benchmarks yet to compare the implementations
>
> Who is interested in merging these two?
>
> Cheers,
> - on
>
> On Apr 5, 2009, at 16:25, Oscar Nierstrasz wrote:
>
>>
>> Hi Keith,
>>
>> Now I see there are attached files in Mantis. But they all seem to
>> date from 2006, whereas your latest comments are from Jan 2009. Are
>> there more recent files from 2009 that I should look at? If so,
>> where
>> are they?
>>
>> What is the best way to proceed? Shall I create a Join project on
>> SqueakSource, and if it is updated, post the latest version on Mantis
>> too?
>>
>> Cheers,
>> - on
>>
>> On Apr 5, 2009, at 16:08, Keith Hodges wrote:
>>
>>> Stéphane Ducasse wrote:
>>>>> I wrote the split join implementation that is available on mantis
>>>>>
>>>>> http://bugs.squeak.org/view.php?id=4874
>>>>>
>>>>> I use it all the time, if you would like to improve on what is
>>>>> there, please continue to contribute to the mantis page
>>>>> discussion/
>>>>> tests and code. That way we will get an polished implementation
>>>>> that
>>>>> can be added to squeak or to pharo.
>>>>>
>>>>> The suggestion to use #species would be fine (I never use species
>>>>> myself, because I dont understand what its really for).
>>>>>
>>>>
>>>> or class
>>>> the point is that you get back a collection of the same kind of the
>>>> receiver
>>>>
>>>>> When stef says "I have checked the code and it looks nice" he
>>>>> didnt
>>>>> say which code he checked, so I am confused.
>>>>>
>>>>
>>>> I looked at the latest version in the repository mentioned by oscar
>>>> rubyshards
>>>>
>>>>
>>> Which appears to me to be the opposite of what Oscar suggested. If I
>>> read the email, he asked what the status of mantis 4874 was,
>>> anticipating that it be integrated. He had "gone back" to ruby
>>> shards in
>>> the absense of the integration of 4784.
>>>
>>> Keith
>>>
>>>
>>> _______________________________________________
>>> Pharo-project mailing list
>>> Pharo-project(a)lists.gforge.inria.fr
>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>
>>
>>
>> _______________________________________________
>> Pharo-project mailing list
>> Pharo-project(a)lists.gforge.inria.fr
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>
>
>
> _______________________________________________
> Pharo-project mailing list
> Pharo-project(a)lists.gforge.inria.fr
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
April 5, 2009