Pharo-dev
By thread
pharo-dev@lists.pharo.org
By month
Messages by month
- ----- 2026 -----
- 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
September 2011
- 91 participants
- 1128 messages
[Pharo-project] Compiling code on a web request; non interactive compilation
by Nick Ager
Hi,
I'm sending code from a web-based editor back into Pharo for compilation and
trying to catch compilation errors and return them to the browser.
I've created a notifier which implements #notify:at:in: and I pass an
instance into the compiler in something like:
compiler := Compiler new.
compiler from: codeToCompile class: aClass context: nil notifying: notifier.
compiler translate: codeToCompile readStream noPattern: false ifFail: [ ...
]
Is there a better compiler API to use?
I've noticed that I appear to have to mock additional methods in the
notifier e.g. #selectFrom:to: and #selectionInterval, though still find that
a morphic UI appears in my image asking for variable creation confirmation
etc.
I then tried using the NonInteractiveUIManager, but found my image quit with
DNU
on NonInteractiveUIManager>>#openDebuggerOn:context:label:contents:fullView:,
which I duly implemented, but am starting to feel like there must be easier
way. Have I missed something?
Thanks
Nick
Sept. 7, 2011
Re: [Pharo-project] [BUG]Socket(Object)>>primitiveFailed:
by Sven Van Caekenberghe
On 07 Sep 2011, at 21:32, laurent laffont wrote:
> On SmallHarbour we use a modified VM (only SecurityPlugin - https://gitorious.org/~laurentlaffont/cogvm/smallharbour ) so an image can open only a given set of ports. Each image / account has an allocated port number, so when an image starts a .st file is given as argument which stop all seaside adaptors and then start Zinc Seaside adaptor on a given port.
>
> The problem is: if I have saved a image with a socket opened on port XX, then try to start it on SmallHarbour on port YY - given that XX is forbidden - image crashes.
Apart from the fact that I think we have a serious problem here, see
http://code.google.com/p/pharo/issues/detail?id=4768
(but nobody seems to care, no one even confirmed that this happens for them too)
the workaround is (as I said to Lukas, and as I do myself) not to save images with a running server and just start the adaptor in a startup .st file.
HTH,
Sven
Sept. 7, 2011
[Pharo-project] [update 1.4] #14125
by stephane ducasse
14125
-----
- Fix senders and implementors so that we can select a class name and get the class (browse and so on).
- Deprecate and fix use of *centerAt: and lot of Sensor references.
Stef
Sept. 7, 2011
Re: [Pharo-project] Problem integrating fixes.
by Stéphane Ducasse
>
>
>> Hi guys
>>
>> When I want to integrate some changes now the system simply crashes....And before crashing I got a nice pop up telling me that there is not enough memory
>
> May be I got an endless loop during a UI interaction.
> Still this is strange. Checking right now.
yes it was that a nice infinite loop.
Stef
>
> Stef
>>
>> Stef :(
>>
>> THERE_BE_DRAGONS_HERE
>> Space is low
>> 7 September 2011 10:23:09 pm
>>
>> VM: Mac OS - intel - 1068 - Pharo-1.1.1-- of 12 September 2010 [Latest update: #11414] 21.0
>> Image: Pharo1.4a [Latest update: #14124]
>>
>> OrderedCollection class(Behavior)>>basicNew
>> Receiver: OrderedCollection
>> Arguments and temporary variables:
>>
>> Receiver's instance variables:
>> superclass: SequenceableCollection
>> methodDict: a MethodDictionary(#add:->(OrderedCollection>>#add: "a CompiledMeth...etc...
>> format: 136
>> instanceVariables: #('array' 'firstIndex' 'lastIndex')
>> organization: ('*Tools-Inspector' inspectorClass)
>> ('accessing' at: at:put: capa...etc...
>> subclasses: {SortedCollection. ObjectFinalizerCollection. WeakOrderedCollection...etc...
>> name: #OrderedCollection
>> classPool: nil
>> sharedPools: nil
>> environment: a SystemDictionary(lots of globals)
>> category: #'Collections-Sequenceable'
>> traitComposition: TSortable
>> localSelectors: a Set(#removeLast: #addAll: #select:thenCollect: #errorConditio...etc...
>>
>>
>> OrderedCollection class>>new:
>> Receiver: OrderedCollection
>> Arguments and temporary variables:
>> anInteger: 10
>> Receiver's instance variables:
>> superclass: SequenceableCollection
>> methodDict: a MethodDictionary(#add:->(OrderedCollection>>#add: "a CompiledMeth...etc...
>> format: 136
>> instanceVariables: #('array' 'firstIndex' 'lastIndex')
>> organization: ('*Tools-Inspector' inspectorClass)
>> ('accessing' at: at:put: capa...etc...
>> subclasses: {SortedCollection. ObjectFinalizerCollection. WeakOrderedCollection...etc...
>> name: #OrderedCollection
>> classPool: nil
>> sharedPools: nil
>> environment: a SystemDictionary(lots of globals)
>> category: #'Collections-Sequenceable'
>> traitComposition: TSortable
>> localSelectors: a Set(#removeLast: #addAll: #select:thenCollect: #errorConditio...etc...
>>
>>
>> OrderedCollection class>>new
>> Receiver: OrderedCollection
>> Arguments and temporary variables:
>>
>> Receiver's instance variables:
>> superclass: SequenceableCollection
>> methodDict: a MethodDictionary(#add:->(OrderedCollection>>#add: "a CompiledMeth...etc...
>> format: 136
>> instanceVariables: #('array' 'firstIndex' 'lastIndex')
>> organization: ('*Tools-Inspector' inspectorClass)
>> ('accessing' at: at:put: capa...etc...
>> subclasses: {SortedCollection. ObjectFinalizerCollection. WeakOrderedCollection...etc...
>> name: #OrderedCollection
>> classPool: nil
>> sharedPools: nil
>> environment: a SystemDictionary(lots of globals)
>> category: #'Collections-Sequenceable'
>> traitComposition: TSortable
>> localSelectors: a Set(#removeLast: #addAll: #select:thenCollect: #errorConditio...etc...
>>
>>
>> WeakRegistry>>finalizeValues
>> Receiver: a WeakRegistry(<this WeakRegistry is locked>)
>> Arguments and temporary variables:
>> finalizers: nil
>> next: nil
>> finalizer: #(nil)
>> Receiver's instance variables:
>> list: a WeakFinalizationList
>> valueDictionary: a WeakIdentityKeyDictionary(MultiByteFileStream: '/Application...etc...
>> sema: a Semaphore()
>>
>>
>> [weakDependent finalizeValues] in [:weakDependent | weakDependent
>> ifNotNil: [[weakDependent finalizeValues]
>> on: Exception
>> fork: [:ex | ex pass]]] in [WeakFinalizationList checkTestPair.
>> FinalizationDependents
>> do: [:weakDependent | weakDependent
>> ifNotNil: [[weakDependent finalizeValues]
>> on: Exception
>> fork: [:ex | ex pass]]]] in WeakArray class>>finalizationProcess
>> Receiver: WeakArray
>> Arguments and temporary variables:
>> weakDependent: a WeakRegistry(<this WeakRegistry is locked>)
>> Receiver's instance variables:
>> superclass: Array
>> methodDict: a MethodDictionary()
>> format: 514
>> instanceVariables: nil
>> organization: ('as yet unclassified')
>>
>> subclasses: nil
>> name: #WeakArray
>> classPool: a Dictionary(#FinalizationDependents->a WeakArray(WeakAnnouncementSu...etc...
>> sharedPools: nil
>> environment: a SystemDictionary(lots of globals)
>> category: #'Collections-Weak'
>> traitComposition: {}
>> localSelectors: nil
>>
>>
>> BlockClosure>>on:do:
>> Receiver: [weakDependent finalizeValues]
>> Arguments and temporary variables:
>> exception: Exception
>> handlerAction: [:ex |
>> | copy onDoCtx process handler bottom thisCtx |
>> onDoCtx ...etc...
>> handlerActive: true
>> Receiver's instance variables:
>> outerContext: [:weakDependent | weakDependent
>> ifNotNil: [[weakDependent final...etc...
>> startpc: 103
>> numArgs: 0
>>
>>
>> BlockClosure>>on:fork:
>> Receiver: [weakDependent finalizeValues]
>> Arguments and temporary variables:
>> exception: Exception
>> handlerAction: [:ex | ex pass]
>> Receiver's instance variables:
>> outerContext: [:weakDependent | weakDependent
>> ifNotNil: [[weakDependent final...etc...
>> startpc: 103
>> numArgs: 0
>>
>>
>> [:weakDependent | weakDependent
>> ifNotNil: [[weakDependent finalizeValues]
>> on: Exception
>> fork: [:ex | ex pass]]] in [WeakFinalizationList checkTestPair.
>> FinalizationDependents
>> do: [:weakDependent | weakDependent
>> ifNotNil: [[weakDependent finalizeValues]
>> on: Exception
>> fork: [:ex | ex pass]]]] in WeakArray class>>finalizationProcess
>> Receiver: WeakArray
>> Arguments and temporary variables:
>> weakDependent: a WeakRegistry(<this WeakRegistry is locked>)
>> Receiver's instance variables:
>> superclass: Array
>> methodDict: a MethodDictionary()
>> format: 514
>> instanceVariables: nil
>> organization: ('as yet unclassified')
>>
>> subclasses: nil
>> name: #WeakArray
>> classPool: a Dictionary(#FinalizationDependents->a WeakArray(WeakAnnouncementSu...etc...
>> sharedPools: nil
>> environment: a SystemDictionary(lots of globals)
>> category: #'Collections-Weak'
>> traitComposition: {}
>> localSelectors: nil
>>
>>
>> WeakArray(SequenceableCollection)>>do:
>> Receiver: a WeakArray(WeakAnnouncementSubscription a WeakRegistry(<this WeakRegistry is locked>) a W...etc...
>> Arguments and temporary variables:
>> aBlock: [:weakDependent | weakDependent
>> ifNotNil: [[weakDependent finalizeVal...etc...
>> index: 2
>> indexLimiT: 10
>> Receiver's instance variables:
>> a WeakArray(WeakAnnouncementSubscription a WeakRegistry(<this WeakRegistry is locked>) a W...etc...
>>
>> [WeakFinalizationList checkTestPair.
>> FinalizationDependents
>> do: [:weakDependent | weakDependent
>> ifNotNil: [[weakDependent finalizeValues]
>> on: Exception
>> fork: [:ex | ex pass]]]] in WeakArray class>>finalizationProcess
>> Receiver: WeakArray
>> Arguments and temporary variables:
>>
>> Receiver's instance variables:
>> superclass: Array
>> methodDict: a MethodDictionary()
>> format: 514
>> instanceVariables: nil
>> organization: ('as yet unclassified')
>>
>> subclasses: nil
>> name: #WeakArray
>> classPool: a Dictionary(#FinalizationDependents->a WeakArray(WeakAnnouncementSu...etc...
>> sharedPools: nil
>> environment: a SystemDictionary(lots of globals)
>> category: #'Collections-Weak'
>> traitComposition: {}
>> localSelectors: nil
>>
>>
>> [caught := true.
>> self wait.
>> blockValue := mutuallyExcludedBlock value] in Semaphore>>critical:
>> Receiver: a Semaphore()
>> Arguments and temporary variables:
>> <<error during printing>
>> Receiver's instance variables:
>> firstLink: nil
>> lastLink: nil
>> excessSignals: 0
>>
>>
>> BlockClosure>>ensure:
>> Receiver: [caught := true.
>> self wait.
>> blockValue := mutuallyExcludedBlock value]
>> Arguments and temporary variables:
>> aBlock: [caught
>> ifTrue: [self signal]]
>> complete: nil
>> returnValue: nil
>> Receiver's instance variables:
>> outerContext: Semaphore>>critical:
>> startpc: 42
>> numArgs: 0
>>
>>
>> Semaphore>>critical:
>> Receiver: a Semaphore()
>> Arguments and temporary variables:
>> <<error during printing>
>> Receiver's instance variables:
>> firstLink: nil
>> lastLink: nil
>> excessSignals: 0
>>
>>
>> WeakArray class>>finalizationProcess
>> Receiver: WeakArray
>> Arguments and temporary variables:
>>
>> Receiver's instance variables:
>> superclass: Array
>> methodDict: a MethodDictionary()
>> format: 514
>> instanceVariables: nil
>> organization: ('as yet unclassified')
>>
>> subclasses: nil
>> name: #WeakArray
>> classPool: a Dictionary(#FinalizationDependents->a WeakArray(WeakAnnouncementSu...etc...
>> sharedPools: nil
>> environment: a SystemDictionary(lots of globals)
>> category: #'Collections-Weak'
>> traitComposition: {}
>> localSelectors: nil
>>
>>
>> [self finalizationProcess] in WeakArray class>>restartFinalizationProcess
>> Receiver: WeakArray
>> Arguments and temporary variables:
>>
>> Receiver's instance variables:
>> superclass: Array
>> methodDict: a MethodDictionary()
>> format: 514
>> instanceVariables: nil
>> organization: ('as yet unclassified')
>>
>> subclasses: nil
>> name: #WeakArray
>> classPool: a Dictionary(#FinalizationDependents->a WeakArray(WeakAnnouncementSu...etc...
>> sharedPools: nil
>> environment: a SystemDictionary(lots of globals)
>> category: #'Collections-Weak'
>> traitComposition: {}
>> localSelectors: nil
>>
>>
>> [self value.
>> Processor terminateActive] in BlockClosure>>newProcess
>> Receiver: [self finalizationProcess]
>> Arguments and temporary variables:
>>
>> Receiver's instance variables:
>> outerContext: WeakArray class>>restartFinalizationProcess
>> startpc: 119
>> numArgs: 0
>>
>>
>>
>> --- The full stack ---
>> OrderedCollection class(Behavior)>>basicNew
>> OrderedCollection class>>new:
>> OrderedCollection class>>new
>> WeakRegistry>>finalizeValues
>> [weakDependent finalizeValues] in [:weakDependent | weakDependent
>> ifNotNil: [[weakDependent finalizeValues]
>> on: Exception
>> fork: [:ex | ex pass]]] in [WeakFinalizationList checkTestPair.
>> FinalizationDependents
>> do: [:weakDependent | weakDependent
>> ifNotNil: [[weakDependent finalizeValues]
>> on: Exception
>> fork: [:ex | ex pass]]]] in WeakArray class>>finalizationProcess
>> BlockClosure>>on:do:
>> BlockClosure>>on:fork:
>> [:weakDependent | weakDependent
>> ifNotNil: [[weakDependent finalizeValues]
>> on: Exception
>> fork: [:ex | ex pass]]] in [WeakFinalizationList checkTestPair.
>> FinalizationDependents
>> do: [:weakDependent | weakDependent
>> ifNotNil: [[weakDependent finalizeValues]
>> on: Exception
>> fork: [:ex | ex pass]]]] in WeakArray class>>finalizationProcess
>> WeakArray(SequenceableCollection)>>do:
>> [WeakFinalizationList checkTestPair.
>> FinalizationDependents
>> do: [:weakDependent | weakDependent
>> ifNotNil: [[weakDependent finalizeValues]
>> on: Exception
>> fork: [:ex | ex pass]]]] in WeakArray class>>finalizationProcess
>> [caught := true.
>> self wait.
>> blockValue := mutuallyExcludedBlock value] in Semaphore>>critical:
>> BlockClosure>>ensure:
>> Semaphore>>critical:
>> WeakArray class>>finalizationProcess
>> [self finalizationProcess] in WeakArray class>>restartFinalizationProcess
>> [self value.
>> Processor terminateActive] in BlockClosure>>newProcess
>> ------------------------------------------------------------
>>
>>
>>
>
>
Sept. 7, 2011
Re: [Pharo-project] Problem integrating fixes.
by Stéphane Ducasse
On Sep 7, 2011, at 10:26 PM, Stéphane Ducasse wrote:
> Hi guys
>
> When I want to integrate some changes now the system simply crashes....And before crashing I got a nice pop up telling me that there is not enough memory
May be I got an endless loop during a UI interaction.
Still this is strange. Checking right now.
Stef
>
> Stef :(
>
> THERE_BE_DRAGONS_HERE
> Space is low
> 7 September 2011 10:23:09 pm
>
> VM: Mac OS - intel - 1068 - Pharo-1.1.1-- of 12 September 2010 [Latest update: #11414] 21.0
> Image: Pharo1.4a [Latest update: #14124]
>
> OrderedCollection class(Behavior)>>basicNew
> Receiver: OrderedCollection
> Arguments and temporary variables:
>
> Receiver's instance variables:
> superclass: SequenceableCollection
> methodDict: a MethodDictionary(#add:->(OrderedCollection>>#add: "a CompiledMeth...etc...
> format: 136
> instanceVariables: #('array' 'firstIndex' 'lastIndex')
> organization: ('*Tools-Inspector' inspectorClass)
> ('accessing' at: at:put: capa...etc...
> subclasses: {SortedCollection. ObjectFinalizerCollection. WeakOrderedCollection...etc...
> name: #OrderedCollection
> classPool: nil
> sharedPools: nil
> environment: a SystemDictionary(lots of globals)
> category: #'Collections-Sequenceable'
> traitComposition: TSortable
> localSelectors: a Set(#removeLast: #addAll: #select:thenCollect: #errorConditio...etc...
>
>
> OrderedCollection class>>new:
> Receiver: OrderedCollection
> Arguments and temporary variables:
> anInteger: 10
> Receiver's instance variables:
> superclass: SequenceableCollection
> methodDict: a MethodDictionary(#add:->(OrderedCollection>>#add: "a CompiledMeth...etc...
> format: 136
> instanceVariables: #('array' 'firstIndex' 'lastIndex')
> organization: ('*Tools-Inspector' inspectorClass)
> ('accessing' at: at:put: capa...etc...
> subclasses: {SortedCollection. ObjectFinalizerCollection. WeakOrderedCollection...etc...
> name: #OrderedCollection
> classPool: nil
> sharedPools: nil
> environment: a SystemDictionary(lots of globals)
> category: #'Collections-Sequenceable'
> traitComposition: TSortable
> localSelectors: a Set(#removeLast: #addAll: #select:thenCollect: #errorConditio...etc...
>
>
> OrderedCollection class>>new
> Receiver: OrderedCollection
> Arguments and temporary variables:
>
> Receiver's instance variables:
> superclass: SequenceableCollection
> methodDict: a MethodDictionary(#add:->(OrderedCollection>>#add: "a CompiledMeth...etc...
> format: 136
> instanceVariables: #('array' 'firstIndex' 'lastIndex')
> organization: ('*Tools-Inspector' inspectorClass)
> ('accessing' at: at:put: capa...etc...
> subclasses: {SortedCollection. ObjectFinalizerCollection. WeakOrderedCollection...etc...
> name: #OrderedCollection
> classPool: nil
> sharedPools: nil
> environment: a SystemDictionary(lots of globals)
> category: #'Collections-Sequenceable'
> traitComposition: TSortable
> localSelectors: a Set(#removeLast: #addAll: #select:thenCollect: #errorConditio...etc...
>
>
> WeakRegistry>>finalizeValues
> Receiver: a WeakRegistry(<this WeakRegistry is locked>)
> Arguments and temporary variables:
> finalizers: nil
> next: nil
> finalizer: #(nil)
> Receiver's instance variables:
> list: a WeakFinalizationList
> valueDictionary: a WeakIdentityKeyDictionary(MultiByteFileStream: '/Application...etc...
> sema: a Semaphore()
>
>
> [weakDependent finalizeValues] in [:weakDependent | weakDependent
> ifNotNil: [[weakDependent finalizeValues]
> on: Exception
> fork: [:ex | ex pass]]] in [WeakFinalizationList checkTestPair.
> FinalizationDependents
> do: [:weakDependent | weakDependent
> ifNotNil: [[weakDependent finalizeValues]
> on: Exception
> fork: [:ex | ex pass]]]] in WeakArray class>>finalizationProcess
> Receiver: WeakArray
> Arguments and temporary variables:
> weakDependent: a WeakRegistry(<this WeakRegistry is locked>)
> Receiver's instance variables:
> superclass: Array
> methodDict: a MethodDictionary()
> format: 514
> instanceVariables: nil
> organization: ('as yet unclassified')
>
> subclasses: nil
> name: #WeakArray
> classPool: a Dictionary(#FinalizationDependents->a WeakArray(WeakAnnouncementSu...etc...
> sharedPools: nil
> environment: a SystemDictionary(lots of globals)
> category: #'Collections-Weak'
> traitComposition: {}
> localSelectors: nil
>
>
> BlockClosure>>on:do:
> Receiver: [weakDependent finalizeValues]
> Arguments and temporary variables:
> exception: Exception
> handlerAction: [:ex |
> | copy onDoCtx process handler bottom thisCtx |
> onDoCtx ...etc...
> handlerActive: true
> Receiver's instance variables:
> outerContext: [:weakDependent | weakDependent
> ifNotNil: [[weakDependent final...etc...
> startpc: 103
> numArgs: 0
>
>
> BlockClosure>>on:fork:
> Receiver: [weakDependent finalizeValues]
> Arguments and temporary variables:
> exception: Exception
> handlerAction: [:ex | ex pass]
> Receiver's instance variables:
> outerContext: [:weakDependent | weakDependent
> ifNotNil: [[weakDependent final...etc...
> startpc: 103
> numArgs: 0
>
>
> [:weakDependent | weakDependent
> ifNotNil: [[weakDependent finalizeValues]
> on: Exception
> fork: [:ex | ex pass]]] in [WeakFinalizationList checkTestPair.
> FinalizationDependents
> do: [:weakDependent | weakDependent
> ifNotNil: [[weakDependent finalizeValues]
> on: Exception
> fork: [:ex | ex pass]]]] in WeakArray class>>finalizationProcess
> Receiver: WeakArray
> Arguments and temporary variables:
> weakDependent: a WeakRegistry(<this WeakRegistry is locked>)
> Receiver's instance variables:
> superclass: Array
> methodDict: a MethodDictionary()
> format: 514
> instanceVariables: nil
> organization: ('as yet unclassified')
>
> subclasses: nil
> name: #WeakArray
> classPool: a Dictionary(#FinalizationDependents->a WeakArray(WeakAnnouncementSu...etc...
> sharedPools: nil
> environment: a SystemDictionary(lots of globals)
> category: #'Collections-Weak'
> traitComposition: {}
> localSelectors: nil
>
>
> WeakArray(SequenceableCollection)>>do:
> Receiver: a WeakArray(WeakAnnouncementSubscription a WeakRegistry(<this WeakRegistry is locked>) a W...etc...
> Arguments and temporary variables:
> aBlock: [:weakDependent | weakDependent
> ifNotNil: [[weakDependent finalizeVal...etc...
> index: 2
> indexLimiT: 10
> Receiver's instance variables:
> a WeakArray(WeakAnnouncementSubscription a WeakRegistry(<this WeakRegistry is locked>) a W...etc...
>
> [WeakFinalizationList checkTestPair.
> FinalizationDependents
> do: [:weakDependent | weakDependent
> ifNotNil: [[weakDependent finalizeValues]
> on: Exception
> fork: [:ex | ex pass]]]] in WeakArray class>>finalizationProcess
> Receiver: WeakArray
> Arguments and temporary variables:
>
> Receiver's instance variables:
> superclass: Array
> methodDict: a MethodDictionary()
> format: 514
> instanceVariables: nil
> organization: ('as yet unclassified')
>
> subclasses: nil
> name: #WeakArray
> classPool: a Dictionary(#FinalizationDependents->a WeakArray(WeakAnnouncementSu...etc...
> sharedPools: nil
> environment: a SystemDictionary(lots of globals)
> category: #'Collections-Weak'
> traitComposition: {}
> localSelectors: nil
>
>
> [caught := true.
> self wait.
> blockValue := mutuallyExcludedBlock value] in Semaphore>>critical:
> Receiver: a Semaphore()
> Arguments and temporary variables:
> <<error during printing>
> Receiver's instance variables:
> firstLink: nil
> lastLink: nil
> excessSignals: 0
>
>
> BlockClosure>>ensure:
> Receiver: [caught := true.
> self wait.
> blockValue := mutuallyExcludedBlock value]
> Arguments and temporary variables:
> aBlock: [caught
> ifTrue: [self signal]]
> complete: nil
> returnValue: nil
> Receiver's instance variables:
> outerContext: Semaphore>>critical:
> startpc: 42
> numArgs: 0
>
>
> Semaphore>>critical:
> Receiver: a Semaphore()
> Arguments and temporary variables:
> <<error during printing>
> Receiver's instance variables:
> firstLink: nil
> lastLink: nil
> excessSignals: 0
>
>
> WeakArray class>>finalizationProcess
> Receiver: WeakArray
> Arguments and temporary variables:
>
> Receiver's instance variables:
> superclass: Array
> methodDict: a MethodDictionary()
> format: 514
> instanceVariables: nil
> organization: ('as yet unclassified')
>
> subclasses: nil
> name: #WeakArray
> classPool: a Dictionary(#FinalizationDependents->a WeakArray(WeakAnnouncementSu...etc...
> sharedPools: nil
> environment: a SystemDictionary(lots of globals)
> category: #'Collections-Weak'
> traitComposition: {}
> localSelectors: nil
>
>
> [self finalizationProcess] in WeakArray class>>restartFinalizationProcess
> Receiver: WeakArray
> Arguments and temporary variables:
>
> Receiver's instance variables:
> superclass: Array
> methodDict: a MethodDictionary()
> format: 514
> instanceVariables: nil
> organization: ('as yet unclassified')
>
> subclasses: nil
> name: #WeakArray
> classPool: a Dictionary(#FinalizationDependents->a WeakArray(WeakAnnouncementSu...etc...
> sharedPools: nil
> environment: a SystemDictionary(lots of globals)
> category: #'Collections-Weak'
> traitComposition: {}
> localSelectors: nil
>
>
> [self value.
> Processor terminateActive] in BlockClosure>>newProcess
> Receiver: [self finalizationProcess]
> Arguments and temporary variables:
>
> Receiver's instance variables:
> outerContext: WeakArray class>>restartFinalizationProcess
> startpc: 119
> numArgs: 0
>
>
>
> --- The full stack ---
> OrderedCollection class(Behavior)>>basicNew
> OrderedCollection class>>new:
> OrderedCollection class>>new
> WeakRegistry>>finalizeValues
> [weakDependent finalizeValues] in [:weakDependent | weakDependent
> ifNotNil: [[weakDependent finalizeValues]
> on: Exception
> fork: [:ex | ex pass]]] in [WeakFinalizationList checkTestPair.
> FinalizationDependents
> do: [:weakDependent | weakDependent
> ifNotNil: [[weakDependent finalizeValues]
> on: Exception
> fork: [:ex | ex pass]]]] in WeakArray class>>finalizationProcess
> BlockClosure>>on:do:
> BlockClosure>>on:fork:
> [:weakDependent | weakDependent
> ifNotNil: [[weakDependent finalizeValues]
> on: Exception
> fork: [:ex | ex pass]]] in [WeakFinalizationList checkTestPair.
> FinalizationDependents
> do: [:weakDependent | weakDependent
> ifNotNil: [[weakDependent finalizeValues]
> on: Exception
> fork: [:ex | ex pass]]]] in WeakArray class>>finalizationProcess
> WeakArray(SequenceableCollection)>>do:
> [WeakFinalizationList checkTestPair.
> FinalizationDependents
> do: [:weakDependent | weakDependent
> ifNotNil: [[weakDependent finalizeValues]
> on: Exception
> fork: [:ex | ex pass]]]] in WeakArray class>>finalizationProcess
> [caught := true.
> self wait.
> blockValue := mutuallyExcludedBlock value] in Semaphore>>critical:
> BlockClosure>>ensure:
> Semaphore>>critical:
> WeakArray class>>finalizationProcess
> [self finalizationProcess] in WeakArray class>>restartFinalizationProcess
> [self value.
> Processor terminateActive] in BlockClosure>>newProcess
> ------------------------------------------------------------
>
>
>
Sept. 7, 2011
Re: [Pharo-project] Problem integrating fixes.
by Stéphane Ducasse
I tried with the latest cog from jenkins and I got also a crash.
Stef
On Sep 7, 2011, at 10:26 PM, Stéphane Ducasse wrote:
> Hi guys
>
> When I want to integrate some changes now the system simply crashes....And before crashing I got a nice pop up telling me that there is not enough memory
>
> Stef :(
>
> THERE_BE_DRAGONS_HERE
> Space is low
> 7 September 2011 10:23:09 pm
>
> VM: Mac OS - intel - 1068 - Pharo-1.1.1-- of 12 September 2010 [Latest update: #11414] 21.0
> Image: Pharo1.4a [Latest update: #14124]
>
> OrderedCollection class(Behavior)>>basicNew
> Receiver: OrderedCollection
> Arguments and temporary variables:
>
> Receiver's instance variables:
> superclass: SequenceableCollection
> methodDict: a MethodDictionary(#add:->(OrderedCollection>>#add: "a CompiledMeth...etc...
> format: 136
> instanceVariables: #('array' 'firstIndex' 'lastIndex')
> organization: ('*Tools-Inspector' inspectorClass)
> ('accessing' at: at:put: capa...etc...
> subclasses: {SortedCollection. ObjectFinalizerCollection. WeakOrderedCollection...etc...
> name: #OrderedCollection
> classPool: nil
> sharedPools: nil
> environment: a SystemDictionary(lots of globals)
> category: #'Collections-Sequenceable'
> traitComposition: TSortable
> localSelectors: a Set(#removeLast: #addAll: #select:thenCollect: #errorConditio...etc...
>
>
> OrderedCollection class>>new:
> Receiver: OrderedCollection
> Arguments and temporary variables:
> anInteger: 10
> Receiver's instance variables:
> superclass: SequenceableCollection
> methodDict: a MethodDictionary(#add:->(OrderedCollection>>#add: "a CompiledMeth...etc...
> format: 136
> instanceVariables: #('array' 'firstIndex' 'lastIndex')
> organization: ('*Tools-Inspector' inspectorClass)
> ('accessing' at: at:put: capa...etc...
> subclasses: {SortedCollection. ObjectFinalizerCollection. WeakOrderedCollection...etc...
> name: #OrderedCollection
> classPool: nil
> sharedPools: nil
> environment: a SystemDictionary(lots of globals)
> category: #'Collections-Sequenceable'
> traitComposition: TSortable
> localSelectors: a Set(#removeLast: #addAll: #select:thenCollect: #errorConditio...etc...
>
>
> OrderedCollection class>>new
> Receiver: OrderedCollection
> Arguments and temporary variables:
>
> Receiver's instance variables:
> superclass: SequenceableCollection
> methodDict: a MethodDictionary(#add:->(OrderedCollection>>#add: "a CompiledMeth...etc...
> format: 136
> instanceVariables: #('array' 'firstIndex' 'lastIndex')
> organization: ('*Tools-Inspector' inspectorClass)
> ('accessing' at: at:put: capa...etc...
> subclasses: {SortedCollection. ObjectFinalizerCollection. WeakOrderedCollection...etc...
> name: #OrderedCollection
> classPool: nil
> sharedPools: nil
> environment: a SystemDictionary(lots of globals)
> category: #'Collections-Sequenceable'
> traitComposition: TSortable
> localSelectors: a Set(#removeLast: #addAll: #select:thenCollect: #errorConditio...etc...
>
>
> WeakRegistry>>finalizeValues
> Receiver: a WeakRegistry(<this WeakRegistry is locked>)
> Arguments and temporary variables:
> finalizers: nil
> next: nil
> finalizer: #(nil)
> Receiver's instance variables:
> list: a WeakFinalizationList
> valueDictionary: a WeakIdentityKeyDictionary(MultiByteFileStream: '/Application...etc...
> sema: a Semaphore()
>
>
> [weakDependent finalizeValues] in [:weakDependent | weakDependent
> ifNotNil: [[weakDependent finalizeValues]
> on: Exception
> fork: [:ex | ex pass]]] in [WeakFinalizationList checkTestPair.
> FinalizationDependents
> do: [:weakDependent | weakDependent
> ifNotNil: [[weakDependent finalizeValues]
> on: Exception
> fork: [:ex | ex pass]]]] in WeakArray class>>finalizationProcess
> Receiver: WeakArray
> Arguments and temporary variables:
> weakDependent: a WeakRegistry(<this WeakRegistry is locked>)
> Receiver's instance variables:
> superclass: Array
> methodDict: a MethodDictionary()
> format: 514
> instanceVariables: nil
> organization: ('as yet unclassified')
>
> subclasses: nil
> name: #WeakArray
> classPool: a Dictionary(#FinalizationDependents->a WeakArray(WeakAnnouncementSu...etc...
> sharedPools: nil
> environment: a SystemDictionary(lots of globals)
> category: #'Collections-Weak'
> traitComposition: {}
> localSelectors: nil
>
>
> BlockClosure>>on:do:
> Receiver: [weakDependent finalizeValues]
> Arguments and temporary variables:
> exception: Exception
> handlerAction: [:ex |
> | copy onDoCtx process handler bottom thisCtx |
> onDoCtx ...etc...
> handlerActive: true
> Receiver's instance variables:
> outerContext: [:weakDependent | weakDependent
> ifNotNil: [[weakDependent final...etc...
> startpc: 103
> numArgs: 0
>
>
> BlockClosure>>on:fork:
> Receiver: [weakDependent finalizeValues]
> Arguments and temporary variables:
> exception: Exception
> handlerAction: [:ex | ex pass]
> Receiver's instance variables:
> outerContext: [:weakDependent | weakDependent
> ifNotNil: [[weakDependent final...etc...
> startpc: 103
> numArgs: 0
>
>
> [:weakDependent | weakDependent
> ifNotNil: [[weakDependent finalizeValues]
> on: Exception
> fork: [:ex | ex pass]]] in [WeakFinalizationList checkTestPair.
> FinalizationDependents
> do: [:weakDependent | weakDependent
> ifNotNil: [[weakDependent finalizeValues]
> on: Exception
> fork: [:ex | ex pass]]]] in WeakArray class>>finalizationProcess
> Receiver: WeakArray
> Arguments and temporary variables:
> weakDependent: a WeakRegistry(<this WeakRegistry is locked>)
> Receiver's instance variables:
> superclass: Array
> methodDict: a MethodDictionary()
> format: 514
> instanceVariables: nil
> organization: ('as yet unclassified')
>
> subclasses: nil
> name: #WeakArray
> classPool: a Dictionary(#FinalizationDependents->a WeakArray(WeakAnnouncementSu...etc...
> sharedPools: nil
> environment: a SystemDictionary(lots of globals)
> category: #'Collections-Weak'
> traitComposition: {}
> localSelectors: nil
>
>
> WeakArray(SequenceableCollection)>>do:
> Receiver: a WeakArray(WeakAnnouncementSubscription a WeakRegistry(<this WeakRegistry is locked>) a W...etc...
> Arguments and temporary variables:
> aBlock: [:weakDependent | weakDependent
> ifNotNil: [[weakDependent finalizeVal...etc...
> index: 2
> indexLimiT: 10
> Receiver's instance variables:
> a WeakArray(WeakAnnouncementSubscription a WeakRegistry(<this WeakRegistry is locked>) a W...etc...
>
> [WeakFinalizationList checkTestPair.
> FinalizationDependents
> do: [:weakDependent | weakDependent
> ifNotNil: [[weakDependent finalizeValues]
> on: Exception
> fork: [:ex | ex pass]]]] in WeakArray class>>finalizationProcess
> Receiver: WeakArray
> Arguments and temporary variables:
>
> Receiver's instance variables:
> superclass: Array
> methodDict: a MethodDictionary()
> format: 514
> instanceVariables: nil
> organization: ('as yet unclassified')
>
> subclasses: nil
> name: #WeakArray
> classPool: a Dictionary(#FinalizationDependents->a WeakArray(WeakAnnouncementSu...etc...
> sharedPools: nil
> environment: a SystemDictionary(lots of globals)
> category: #'Collections-Weak'
> traitComposition: {}
> localSelectors: nil
>
>
> [caught := true.
> self wait.
> blockValue := mutuallyExcludedBlock value] in Semaphore>>critical:
> Receiver: a Semaphore()
> Arguments and temporary variables:
> <<error during printing>
> Receiver's instance variables:
> firstLink: nil
> lastLink: nil
> excessSignals: 0
>
>
> BlockClosure>>ensure:
> Receiver: [caught := true.
> self wait.
> blockValue := mutuallyExcludedBlock value]
> Arguments and temporary variables:
> aBlock: [caught
> ifTrue: [self signal]]
> complete: nil
> returnValue: nil
> Receiver's instance variables:
> outerContext: Semaphore>>critical:
> startpc: 42
> numArgs: 0
>
>
> Semaphore>>critical:
> Receiver: a Semaphore()
> Arguments and temporary variables:
> <<error during printing>
> Receiver's instance variables:
> firstLink: nil
> lastLink: nil
> excessSignals: 0
>
>
> WeakArray class>>finalizationProcess
> Receiver: WeakArray
> Arguments and temporary variables:
>
> Receiver's instance variables:
> superclass: Array
> methodDict: a MethodDictionary()
> format: 514
> instanceVariables: nil
> organization: ('as yet unclassified')
>
> subclasses: nil
> name: #WeakArray
> classPool: a Dictionary(#FinalizationDependents->a WeakArray(WeakAnnouncementSu...etc...
> sharedPools: nil
> environment: a SystemDictionary(lots of globals)
> category: #'Collections-Weak'
> traitComposition: {}
> localSelectors: nil
>
>
> [self finalizationProcess] in WeakArray class>>restartFinalizationProcess
> Receiver: WeakArray
> Arguments and temporary variables:
>
> Receiver's instance variables:
> superclass: Array
> methodDict: a MethodDictionary()
> format: 514
> instanceVariables: nil
> organization: ('as yet unclassified')
>
> subclasses: nil
> name: #WeakArray
> classPool: a Dictionary(#FinalizationDependents->a WeakArray(WeakAnnouncementSu...etc...
> sharedPools: nil
> environment: a SystemDictionary(lots of globals)
> category: #'Collections-Weak'
> traitComposition: {}
> localSelectors: nil
>
>
> [self value.
> Processor terminateActive] in BlockClosure>>newProcess
> Receiver: [self finalizationProcess]
> Arguments and temporary variables:
>
> Receiver's instance variables:
> outerContext: WeakArray class>>restartFinalizationProcess
> startpc: 119
> numArgs: 0
>
>
>
> --- The full stack ---
> OrderedCollection class(Behavior)>>basicNew
> OrderedCollection class>>new:
> OrderedCollection class>>new
> WeakRegistry>>finalizeValues
> [weakDependent finalizeValues] in [:weakDependent | weakDependent
> ifNotNil: [[weakDependent finalizeValues]
> on: Exception
> fork: [:ex | ex pass]]] in [WeakFinalizationList checkTestPair.
> FinalizationDependents
> do: [:weakDependent | weakDependent
> ifNotNil: [[weakDependent finalizeValues]
> on: Exception
> fork: [:ex | ex pass]]]] in WeakArray class>>finalizationProcess
> BlockClosure>>on:do:
> BlockClosure>>on:fork:
> [:weakDependent | weakDependent
> ifNotNil: [[weakDependent finalizeValues]
> on: Exception
> fork: [:ex | ex pass]]] in [WeakFinalizationList checkTestPair.
> FinalizationDependents
> do: [:weakDependent | weakDependent
> ifNotNil: [[weakDependent finalizeValues]
> on: Exception
> fork: [:ex | ex pass]]]] in WeakArray class>>finalizationProcess
> WeakArray(SequenceableCollection)>>do:
> [WeakFinalizationList checkTestPair.
> FinalizationDependents
> do: [:weakDependent | weakDependent
> ifNotNil: [[weakDependent finalizeValues]
> on: Exception
> fork: [:ex | ex pass]]]] in WeakArray class>>finalizationProcess
> [caught := true.
> self wait.
> blockValue := mutuallyExcludedBlock value] in Semaphore>>critical:
> BlockClosure>>ensure:
> Semaphore>>critical:
> WeakArray class>>finalizationProcess
> [self finalizationProcess] in WeakArray class>>restartFinalizationProcess
> [self value.
> Processor terminateActive] in BlockClosure>>newProcess
> ------------------------------------------------------------
>
>
>
Sept. 7, 2011
[Pharo-project] Problem integrating fixes.
by Stéphane Ducasse
Hi guys
When I want to integrate some changes now the system simply crashes....And before crashing I got a nice pop up telling me that there is not enough memory
Stef :(
THERE_BE_DRAGONS_HERE
Space is low
7 September 2011 10:23:09 pm
VM: Mac OS - intel - 1068 - Pharo-1.1.1-- of 12 September 2010 [Latest update: #11414] 21.0
Image: Pharo1.4a [Latest update: #14124]
OrderedCollection class(Behavior)>>basicNew
Receiver: OrderedCollection
Arguments and temporary variables:
Receiver's instance variables:
superclass: SequenceableCollection
methodDict: a MethodDictionary(#add:->(OrderedCollection>>#add: "a CompiledMeth...etc...
format: 136
instanceVariables: #('array' 'firstIndex' 'lastIndex')
organization: ('*Tools-Inspector' inspectorClass)
('accessing' at: at:put: capa...etc...
subclasses: {SortedCollection. ObjectFinalizerCollection. WeakOrderedCollection...etc...
name: #OrderedCollection
classPool: nil
sharedPools: nil
environment: a SystemDictionary(lots of globals)
category: #'Collections-Sequenceable'
traitComposition: TSortable
localSelectors: a Set(#removeLast: #addAll: #select:thenCollect: #errorConditio...etc...
OrderedCollection class>>new:
Receiver: OrderedCollection
Arguments and temporary variables:
anInteger: 10
Receiver's instance variables:
superclass: SequenceableCollection
methodDict: a MethodDictionary(#add:->(OrderedCollection>>#add: "a CompiledMeth...etc...
format: 136
instanceVariables: #('array' 'firstIndex' 'lastIndex')
organization: ('*Tools-Inspector' inspectorClass)
('accessing' at: at:put: capa...etc...
subclasses: {SortedCollection. ObjectFinalizerCollection. WeakOrderedCollection...etc...
name: #OrderedCollection
classPool: nil
sharedPools: nil
environment: a SystemDictionary(lots of globals)
category: #'Collections-Sequenceable'
traitComposition: TSortable
localSelectors: a Set(#removeLast: #addAll: #select:thenCollect: #errorConditio...etc...
OrderedCollection class>>new
Receiver: OrderedCollection
Arguments and temporary variables:
Receiver's instance variables:
superclass: SequenceableCollection
methodDict: a MethodDictionary(#add:->(OrderedCollection>>#add: "a CompiledMeth...etc...
format: 136
instanceVariables: #('array' 'firstIndex' 'lastIndex')
organization: ('*Tools-Inspector' inspectorClass)
('accessing' at: at:put: capa...etc...
subclasses: {SortedCollection. ObjectFinalizerCollection. WeakOrderedCollection...etc...
name: #OrderedCollection
classPool: nil
sharedPools: nil
environment: a SystemDictionary(lots of globals)
category: #'Collections-Sequenceable'
traitComposition: TSortable
localSelectors: a Set(#removeLast: #addAll: #select:thenCollect: #errorConditio...etc...
WeakRegistry>>finalizeValues
Receiver: a WeakRegistry(<this WeakRegistry is locked>)
Arguments and temporary variables:
finalizers: nil
next: nil
finalizer: #(nil)
Receiver's instance variables:
list: a WeakFinalizationList
valueDictionary: a WeakIdentityKeyDictionary(MultiByteFileStream: '/Application...etc...
sema: a Semaphore()
[weakDependent finalizeValues] in [:weakDependent | weakDependent
ifNotNil: [[weakDependent finalizeValues]
on: Exception
fork: [:ex | ex pass]]] in [WeakFinalizationList checkTestPair.
FinalizationDependents
do: [:weakDependent | weakDependent
ifNotNil: [[weakDependent finalizeValues]
on: Exception
fork: [:ex | ex pass]]]] in WeakArray class>>finalizationProcess
Receiver: WeakArray
Arguments and temporary variables:
weakDependent: a WeakRegistry(<this WeakRegistry is locked>)
Receiver's instance variables:
superclass: Array
methodDict: a MethodDictionary()
format: 514
instanceVariables: nil
organization: ('as yet unclassified')
subclasses: nil
name: #WeakArray
classPool: a Dictionary(#FinalizationDependents->a WeakArray(WeakAnnouncementSu...etc...
sharedPools: nil
environment: a SystemDictionary(lots of globals)
category: #'Collections-Weak'
traitComposition: {}
localSelectors: nil
BlockClosure>>on:do:
Receiver: [weakDependent finalizeValues]
Arguments and temporary variables:
exception: Exception
handlerAction: [:ex |
| copy onDoCtx process handler bottom thisCtx |
onDoCtx ...etc...
handlerActive: true
Receiver's instance variables:
outerContext: [:weakDependent | weakDependent
ifNotNil: [[weakDependent final...etc...
startpc: 103
numArgs: 0
BlockClosure>>on:fork:
Receiver: [weakDependent finalizeValues]
Arguments and temporary variables:
exception: Exception
handlerAction: [:ex | ex pass]
Receiver's instance variables:
outerContext: [:weakDependent | weakDependent
ifNotNil: [[weakDependent final...etc...
startpc: 103
numArgs: 0
[:weakDependent | weakDependent
ifNotNil: [[weakDependent finalizeValues]
on: Exception
fork: [:ex | ex pass]]] in [WeakFinalizationList checkTestPair.
FinalizationDependents
do: [:weakDependent | weakDependent
ifNotNil: [[weakDependent finalizeValues]
on: Exception
fork: [:ex | ex pass]]]] in WeakArray class>>finalizationProcess
Receiver: WeakArray
Arguments and temporary variables:
weakDependent: a WeakRegistry(<this WeakRegistry is locked>)
Receiver's instance variables:
superclass: Array
methodDict: a MethodDictionary()
format: 514
instanceVariables: nil
organization: ('as yet unclassified')
subclasses: nil
name: #WeakArray
classPool: a Dictionary(#FinalizationDependents->a WeakArray(WeakAnnouncementSu...etc...
sharedPools: nil
environment: a SystemDictionary(lots of globals)
category: #'Collections-Weak'
traitComposition: {}
localSelectors: nil
WeakArray(SequenceableCollection)>>do:
Receiver: a WeakArray(WeakAnnouncementSubscription a WeakRegistry(<this WeakRegistry is locked>) a W...etc...
Arguments and temporary variables:
aBlock: [:weakDependent | weakDependent
ifNotNil: [[weakDependent finalizeVal...etc...
index: 2
indexLimiT: 10
Receiver's instance variables:
a WeakArray(WeakAnnouncementSubscription a WeakRegistry(<this WeakRegistry is locked>) a W...etc...
[WeakFinalizationList checkTestPair.
FinalizationDependents
do: [:weakDependent | weakDependent
ifNotNil: [[weakDependent finalizeValues]
on: Exception
fork: [:ex | ex pass]]]] in WeakArray class>>finalizationProcess
Receiver: WeakArray
Arguments and temporary variables:
Receiver's instance variables:
superclass: Array
methodDict: a MethodDictionary()
format: 514
instanceVariables: nil
organization: ('as yet unclassified')
subclasses: nil
name: #WeakArray
classPool: a Dictionary(#FinalizationDependents->a WeakArray(WeakAnnouncementSu...etc...
sharedPools: nil
environment: a SystemDictionary(lots of globals)
category: #'Collections-Weak'
traitComposition: {}
localSelectors: nil
[caught := true.
self wait.
blockValue := mutuallyExcludedBlock value] in Semaphore>>critical:
Receiver: a Semaphore()
Arguments and temporary variables:
<<error during printing>
Receiver's instance variables:
firstLink: nil
lastLink: nil
excessSignals: 0
BlockClosure>>ensure:
Receiver: [caught := true.
self wait.
blockValue := mutuallyExcludedBlock value]
Arguments and temporary variables:
aBlock: [caught
ifTrue: [self signal]]
complete: nil
returnValue: nil
Receiver's instance variables:
outerContext: Semaphore>>critical:
startpc: 42
numArgs: 0
Semaphore>>critical:
Receiver: a Semaphore()
Arguments and temporary variables:
<<error during printing>
Receiver's instance variables:
firstLink: nil
lastLink: nil
excessSignals: 0
WeakArray class>>finalizationProcess
Receiver: WeakArray
Arguments and temporary variables:
Receiver's instance variables:
superclass: Array
methodDict: a MethodDictionary()
format: 514
instanceVariables: nil
organization: ('as yet unclassified')
subclasses: nil
name: #WeakArray
classPool: a Dictionary(#FinalizationDependents->a WeakArray(WeakAnnouncementSu...etc...
sharedPools: nil
environment: a SystemDictionary(lots of globals)
category: #'Collections-Weak'
traitComposition: {}
localSelectors: nil
[self finalizationProcess] in WeakArray class>>restartFinalizationProcess
Receiver: WeakArray
Arguments and temporary variables:
Receiver's instance variables:
superclass: Array
methodDict: a MethodDictionary()
format: 514
instanceVariables: nil
organization: ('as yet unclassified')
subclasses: nil
name: #WeakArray
classPool: a Dictionary(#FinalizationDependents->a WeakArray(WeakAnnouncementSu...etc...
sharedPools: nil
environment: a SystemDictionary(lots of globals)
category: #'Collections-Weak'
traitComposition: {}
localSelectors: nil
[self value.
Processor terminateActive] in BlockClosure>>newProcess
Receiver: [self finalizationProcess]
Arguments and temporary variables:
Receiver's instance variables:
outerContext: WeakArray class>>restartFinalizationProcess
startpc: 119
numArgs: 0
--- The full stack ---
OrderedCollection class(Behavior)>>basicNew
OrderedCollection class>>new:
OrderedCollection class>>new
WeakRegistry>>finalizeValues
[weakDependent finalizeValues] in [:weakDependent | weakDependent
ifNotNil: [[weakDependent finalizeValues]
on: Exception
fork: [:ex | ex pass]]] in [WeakFinalizationList checkTestPair.
FinalizationDependents
do: [:weakDependent | weakDependent
ifNotNil: [[weakDependent finalizeValues]
on: Exception
fork: [:ex | ex pass]]]] in WeakArray class>>finalizationProcess
BlockClosure>>on:do:
BlockClosure>>on:fork:
[:weakDependent | weakDependent
ifNotNil: [[weakDependent finalizeValues]
on: Exception
fork: [:ex | ex pass]]] in [WeakFinalizationList checkTestPair.
FinalizationDependents
do: [:weakDependent | weakDependent
ifNotNil: [[weakDependent finalizeValues]
on: Exception
fork: [:ex | ex pass]]]] in WeakArray class>>finalizationProcess
WeakArray(SequenceableCollection)>>do:
[WeakFinalizationList checkTestPair.
FinalizationDependents
do: [:weakDependent | weakDependent
ifNotNil: [[weakDependent finalizeValues]
on: Exception
fork: [:ex | ex pass]]]] in WeakArray class>>finalizationProcess
[caught := true.
self wait.
blockValue := mutuallyExcludedBlock value] in Semaphore>>critical:
BlockClosure>>ensure:
Semaphore>>critical:
WeakArray class>>finalizationProcess
[self finalizationProcess] in WeakArray class>>restartFinalizationProcess
[self value.
Processor terminateActive] in BlockClosure>>newProcess
------------------------------------------------------------
Sept. 7, 2011
Re: [Pharo-project] TextLint for Emacs & TextMate
by Stéphane Ducasse
excellent I will try again.
You know what: we should add it as a success story in the pharo web site because this is definitively cool.
Stef
On Sep 7, 2011, at 10:07 PM, Lukas Renggli wrote:
> I fixed the numerous false positives in the online version and the
> TextMate bundle.
>
> Also I fixed a few other issues, like the detection of paragraphs and
> the some performance improvements.
>
> Lukas
>
> On 6 September 2011 11:06, Lukas Renggli <renggli(a)gmail.com> wrote:
>>> textmate
>>> else this is nice to think about our texts.
>>> The integration is good too.
>>
>> Yeah, the VM somehow doesn't work in headless mode on OS X. I have to
>> try with a different one.
>>
>>> The rule Avoid using two or more continuous adjectives, be concise and clear.
>>> is full of false positives related to conjunction use and in on by.... kinds of words
>>
>> Yeah, this rule and some other ones have too much false positives to
>> be useful. This is due to a change I made yesterday that needs to be
>> revisited. It affects the rules:
>>
>> - Avoid excess of adjectives
>> - Avoid list of terms without comma
>> - Avoid similar adjective synonyms
>> - Avoid similar adverb synonyms
>> - Use the serial comma
>>
>> Lukas
>>
>>>
>>> based on
>>> local variable
>>> or dynamic
>>> ....
>>>
>>>
>>> ⢠existing virtual
>>> ⢠addressed by
>>> ⢠by such
>>> ⢠adequate in
>>> ⢠just giving
>>> ⢠our previous
>>> ⢠based on
>>> ⢠Low level
>>> ⢠level virtual
>>> ⢠One key
>>> ⢠on static
>>> ⢠powerful reflective
>>> ⢠fundamental level
>>> ⢠it easy
>>>
>>> ⢠used in
>>> ⢠based on
>>> ⢠unrealistic in
>>> ⢠variable transitive
>>> ⢠here \ct{self
>>> ⢠reachable by
>>> ⢠it later
>>> ⢠first class
>>> ⢠leaked by
>>> ⢠revocable one
>>> ⢠one then
>>> ⢠reachable by
>>> ⢠given by
>>> ⢠one or
>>> ⢠working on
>>> ⢠on its
>>> ⢠its revocable
>>> ⢠in particular
>>> ⢠ruled out
>>> ⢠supporting safer
>>> ⢠how specific
>>> ⢠involved in
>>> ⢠special case
>>> ⢠safe dynamic
>>> ⢠solved in
>>> ⢠single paper
>>> ⢠in dynamic
>>> ⢠or dynamic
>>> ⢠presented early
>>> ⢠defined on
>>> ⢠up in
>>> ⢠later in
>>> ⢠defined in
>>> ⢠one special
>>> ⢠controllable proxy
>>> ⢠proxy on
>>> ⢠available in
>>> ⢠class based
>>> ⢠In particular
>>> ⢠defined in
>>> ⢠in general
>>> ⢠very similar
>>> ⢠different on
>>> ⢠In particular
>>> ⢠done in
>>> ⢠recursive following
>>> ⢠used by
>>> ⢠its normal
>>> ⢠knowing it
>>> ⢠self} or
>>> ⢠in various
>>> ⢠public} part
>>> ⢠accessible only
>>> ⢠private} part
>>> ⢠self} in
>>> ⢠in traditional
>>> ⢠self} in
>>> ⢠divided in
>>> ⢠reflected in
>>> ⢠Other higher
>>> ⢠higher level
>>> ⢠on inactive
>>> ⢠presented model
>>> ⢠based on
>>> ⢠its own
>>> ⢠own class
>>> ⢠class or
>>> ⢠known by
>>> ⢠separated in
>>> ⢠then on
>>> ⢠In particular
>>> ⢠abstract class
>>> ⢠used by
>>> ⢠self new
>>> ⢠pointed by
>>> ⢠on his
>>> ⢠his own
>>> ⢠its own
>>> ⢠own class
>>> ⢠applied on
>>> ⢠same class
>>> ⢠first specific
>>> ⢠done by
>>> ⢠by on
>>> ⢠only supporting
>>> ⢠present how
>>> ⢠class such
>>> ⢠based on
>>> ⢠previous model
>>> ⢠previous paper
>>> ⢠set up
>>> ⢠interesting in
>>> ⢠Even complex
>>> ⢠shared in
>>> ⢠only revocable
>>> ⢠Our revocable
>>> ⢠based on
>>> ⢠class named
>>> ⢠old trick
>>> ⢠class named
>>> ⢠by revocable
>>> ⢠only revocable
>>> ⢠presented above
>>> ⢠above in
>>> ⢠class named
>>> ⢠In particular
>>> ⢠new one
>>> ⢠in \secref{nuts
>>> ⢠operational semantic
>>> ⢠temporary variable
>>> ⢠same semantic
>>> ⢠semantic such
>>> ⢠such it
>>> ⢠done in
>>> ⢠specific semantic
>>> ⢠presented how
>>> ⢠modified it
>>> ⢠it so
>>> ⢠Difficult Case
>>> ⢠Certain meta
>>> ⢠analyzed case
>>> ⢠case by
>>> ⢠by case
>>> ⢠complex in
>>> ⢠first class
>>> ⢠first class
>>> ⢠self inline
>>> ⢠test in
>>> ⢠in previous
>>> ⢠variable by
>>> ⢠given by
>>> ⢠our previous
>>> ⢠slow down
>>> ⢠down normal
>>> ⢠our modified
>>> ⢠normal virtual
>>> ⢠on our
>>> ⢠exact same
>>> ⢠on our
>>> ⢠our special
>>> ⢠create one
>>> ⢠wrapped in
>>> ⢠new revocable
>>> ⢠dependent how
>>> ⢠quite large
>>> ⢠very naive
>>> ⢠first class
>>> ⢠slow down
>>> ⢠on static
>>> ⢠compact\footnote{In
>>> ⢠compact class
>>> ⢠revocable just
>>> ⢠our previous
>>> ⢠our previous
>>> ⢠previous paper
>>> ⢠paper about
>>> ⢠model developed
>>> ⢠developed here
>>> ⢠different on
>>> ⢠new model
>>> ⢠previous model
>>> ⢠only designed
>>> ⢠defined on
>>> ⢠only one
>>> ⢠done by
>>> ⢠multiple compatible
>>> ⢠only revocable
>>> ⢠planned in
>>> ⢠in advance
>>> ⢠current model
>>> ⢠current model
>>> ⢠how different
>>> ⢠current model
>>> ⢠In particular
>>> ⢠similar one
>>> ⢠used in
>>> ⢠by supporting
>>> ⢠low level
>>> ⢠secure dynamic
>>> ⢠presented in
>>> ⢠present here
>>> ⢠well known
>>> ⢠standard dynamic
>>> ⢠defined only
>>> ⢠trapped by
>>> ⢠meta-level
>>> ⢠close in
>>> ⢠passed through
>>> ⢠through it
>>> ⢠based on
>>> ⢠on its
>>> ⢠its different
>>> ⢠done inside
>>> ⢠hidden or
>>> ⢠based on
>>> ⢠model supporting
>>> ⢠on its
>>> ⢠In our
>>> ⢠on internal
>>> ⢠late binding
>>> ⢠meta-level
>>> ⢠separate reflective
>>> ⢠base-level
>>> ⢠reflective base
>>> ⢠base-level
>>> ⢠protected by
>>> ⢠visible outside
>>> ⢠in Noble
>>> ⢠solved by
>>> ⢠by dynamic
>>> ⢠one solved
>>> ⢠solved by
>>> ⢠dependent behavioral
>>> ⢠or disabled
>>> ⢠disabled based
>>> ⢠based on
>>> ⢠presented in
>>> ⢠defined by
>>> ⢠very general
>>> ⢠organized in
>>> ⢠only concerned
>>> ⢠self pseudo
>>> ⢠pseudo-variable
>>> ⢠pseudo-variable
>>> ⢠our dynamic
>>> ⢠In particular
>>> ⢠or immutable
>>> ⢠first class
>>> ⢠validated our
>>> ⢠just in
>>> ⢠supported by
>>> ⢠like dynamic
>>> ⢠private in
>>> ⢠so only
>>> ⢠only local
>>> ⢠local or
>>> ⢠or inherited
>>> ⢠base our
>>> ⢠model used
>>> ⢠used by
>>> ⢠like dynamic
>>> ⢠or class
>>> ⢠used by
>>> ⢠additional static
>>> ⢠used by
>>> ⢠listed in
>>> ⢠specified out
>>> ⢠out by
>>> ⢠bound in
>>> ⢠corresponding binding
>>> ⢠actual class
>>> ⢠class in
>>> ⢠local variable
>>> ⢠existent variable
>>>
>>>
>>> On Sep 6, 2011, at 10:51 AM, Damien Cassou wrote:
>>>
>>>> On Tue, Sep 6, 2011 at 10:45 AM, Stéphane Ducasse
>>>> <stephane.ducasse(a)inria.fr> wrote:
>>>>> how do you get the selection in the editor when you click on the reported link?
>>>>
>>>> what editor are you using? With Emacs it should be the case by default
>>>> (look at the screencast)
>>>>
>>>> --
>>>> Damien Cassou
>>>> http://damiencassou.seasidehosting.st
>>>>
>>>> "Lambdas are relegated to relative obscurity until Java makes them
>>>> popular by not having them." James Iry
>>>>
>>>
>>>
>>>
>>
>>
>>
>> --
>> Lukas Renggli
>> www.lukas-renggli.ch
>>
>
>
>
> --
> Lukas Renggli
> www.lukas-renggli.ch
>
Sept. 7, 2011
Re: [Pharo-project] TextLint for Emacs & TextMate
by Lukas Renggli
I fixed the numerous false positives in the online version and the
TextMate bundle.
Also I fixed a few other issues, like the detection of paragraphs and
the some performance improvements.
Lukas
On 6 September 2011 11:06, Lukas Renggli <renggli(a)gmail.com> wrote:
>> textmate
>> else this is nice to think about our texts.
>> The integration is good too.
>
> Yeah, the VM somehow doesn't work in headless mode on OS X. I have to
> try with a different one.
>
>> The rule Avoid using two or more continuous adjectives, be concise and clear.
>> is full of false positives related to conjunction use and in on by.... kinds of words
>
> Yeah, this rule and some other ones have too much false positives to
> be useful. This is due to a change I made yesterday that needs to be
> revisited. It affects the rules:
>
> - Avoid excess of adjectives
> - Avoid list of terms without comma
> - Avoid similar adjective synonyms
> - Avoid similar adverb synonyms
> - Use the serial comma
>
> Lukas
>
>>
>> based on
>> local variable
>> or dynamic
>> ....
>>
>>
>>     ⢠existing virtual
>>     ⢠addressed by
>>     ⢠by such
>>     ⢠adequate in
>>     ⢠just giving
>>     ⢠our previous
>>     ⢠based on
>>     ⢠Low level
>>     ⢠level virtual
>>     ⢠One key
>>     ⢠on static
>>     ⢠powerful reflective
>>     ⢠fundamental level
>>     ⢠it easy
>>
>>     ⢠used in
>>     ⢠based on
>>     ⢠unrealistic in
>>     ⢠variable transitive
>>     ⢠here \ct{self
>>     ⢠reachable by
>>     ⢠it later
>>     ⢠first class
>>     ⢠leaked by
>>     ⢠revocable one
>>     ⢠one then
>>     ⢠reachable by
>>     ⢠given by
>>     ⢠one or
>>     ⢠working on
>>     ⢠on its
>>     ⢠its revocable
>>     ⢠in particular
>>     ⢠ruled out
>>     ⢠supporting safer
>>     ⢠how specific
>>     ⢠involved in
>>     ⢠special case
>>     ⢠safe dynamic
>>     ⢠solved in
>>     ⢠single paper
>>     ⢠in dynamic
>>     ⢠or dynamic
>>     ⢠presented early
>>     ⢠defined on
>>     ⢠up in
>>     ⢠later in
>>     ⢠defined in
>>     ⢠one special
>>     ⢠controllable proxy
>>     ⢠proxy on
>>     ⢠available in
>>     ⢠class based
>>     ⢠In particular
>>     ⢠defined in
>>     ⢠in general
>>     ⢠very similar
>>     ⢠different on
>>     ⢠In particular
>>     ⢠done in
>>     ⢠recursive following
>>     ⢠used by
>>     ⢠its normal
>>     ⢠knowing it
>>     ⢠self} or
>>     ⢠in various
>>     ⢠public} part
>>     ⢠accessible only
>>     ⢠private} part
>>     ⢠self} in
>>     ⢠in traditional
>>     ⢠self} in
>>     ⢠divided in
>>     ⢠reflected in
>>     ⢠Other higher
>>     ⢠higher level
>>     ⢠on inactive
>>     ⢠presented model
>>     ⢠based on
>>     ⢠its own
>>     ⢠own class
>>     ⢠class or
>>     ⢠known by
>>     ⢠separated in
>>     ⢠then on
>>     ⢠In particular
>>     ⢠abstract class
>>     ⢠used by
>>     ⢠self new
>>     ⢠pointed by
>>     ⢠on his
>>     ⢠his own
>>     ⢠its own
>>     ⢠own class
>>     ⢠applied on
>>     ⢠same class
>>     ⢠first specific
>>     ⢠done by
>>     ⢠by on
>>     ⢠only supporting
>>     ⢠present how
>>     ⢠class such
>>     ⢠based on
>>     ⢠previous model
>>     ⢠previous paper
>>     ⢠set up
>>     ⢠interesting in
>>     ⢠Even complex
>>     ⢠shared in
>>     ⢠only revocable
>>     ⢠Our revocable
>>     ⢠based on
>>     ⢠class named
>>     ⢠old trick
>>     ⢠class named
>>     ⢠by revocable
>>     ⢠only revocable
>>     ⢠presented above
>>     ⢠above in
>>     ⢠class named
>>     ⢠In particular
>>     ⢠new one
>>     ⢠in \secref{nuts
>>     ⢠operational semantic
>>     ⢠temporary variable
>>     ⢠same semantic
>>     ⢠semantic such
>>     ⢠such it
>>     ⢠done in
>>     ⢠specific semantic
>>     ⢠presented how
>>     ⢠modified it
>>     ⢠it so
>>     ⢠Difficult Case
>>     ⢠Certain meta
>>     ⢠analyzed case
>>     ⢠case by
>>     ⢠by case
>>     ⢠complex in
>>     ⢠first class
>>     ⢠first class
>>     ⢠self inline
>>     ⢠test in
>>     ⢠in previous
>>     ⢠variable by
>>     ⢠given by
>>     ⢠our previous
>>     ⢠slow down
>>     ⢠down normal
>>     ⢠our modified
>>     ⢠normal virtual
>>     ⢠on our
>>     ⢠exact same
>>     ⢠on our
>>     ⢠our special
>>     ⢠create one
>>     ⢠wrapped in
>>     ⢠new revocable
>>     ⢠dependent how
>>     ⢠quite large
>>     ⢠very naive
>>     ⢠first class
>>     ⢠slow down
>>     ⢠on static
>>     ⢠compact\footnote{In
>>     ⢠compact class
>>     ⢠revocable just
>>     ⢠our previous
>>     ⢠our previous
>>     ⢠previous paper
>>     ⢠paper about
>>     ⢠model developed
>>     ⢠developed here
>>     ⢠different on
>>     ⢠new model
>>     ⢠previous model
>>     ⢠only designed
>>     ⢠defined on
>>     ⢠only one
>>     ⢠done by
>>     ⢠multiple compatible
>>     ⢠only revocable
>>     ⢠planned in
>>     ⢠in advance
>>     ⢠current model
>>     ⢠current model
>>     ⢠how different
>>     ⢠current model
>>     ⢠In particular
>>     ⢠similar one
>>     ⢠used in
>>     ⢠by supporting
>>     ⢠low level
>>     ⢠secure dynamic
>>     ⢠presented in
>>     ⢠present here
>>     ⢠well known
>>     ⢠standard dynamic
>>     ⢠defined only
>>     ⢠trapped by
>>     ⢠meta-level
>>     ⢠close in
>>     ⢠passed through
>>     ⢠through it
>>     ⢠based on
>>     ⢠on its
>>     ⢠its different
>>     ⢠done inside
>>     ⢠hidden or
>>     ⢠based on
>>     ⢠model supporting
>>     ⢠on its
>>     ⢠In our
>>     ⢠on internal
>>     ⢠late binding
>>     ⢠meta-level
>>     ⢠separate reflective
>>     ⢠base-level
>>     ⢠reflective base
>>     ⢠base-level
>>     ⢠protected by
>>     ⢠visible outside
>>     ⢠in Noble
>>     ⢠solved by
>>     ⢠by dynamic
>>     ⢠one solved
>>     ⢠solved by
>>     ⢠dependent behavioral
>>     ⢠or disabled
>>     ⢠disabled based
>>     ⢠based on
>>     ⢠presented in
>>     ⢠defined by
>>     ⢠very general
>>     ⢠organized in
>>     ⢠only concerned
>>     ⢠self pseudo
>>     ⢠pseudo-variable
>>     ⢠pseudo-variable
>>     ⢠our dynamic
>>     ⢠In particular
>>     ⢠or immutable
>>     ⢠first class
>>     ⢠validated our
>>     ⢠just in
>>     ⢠supported by
>>     ⢠like dynamic
>>     ⢠private in
>>     ⢠so only
>>     ⢠only local
>>     ⢠local or
>>     ⢠or inherited
>>     ⢠base our
>>     ⢠model used
>>     ⢠used by
>>     ⢠like dynamic
>>     ⢠or class
>>     ⢠used by
>>     ⢠additional static
>>     ⢠used by
>>     ⢠listed in
>>     ⢠specified out
>>     ⢠out by
>>     ⢠bound in
>>     ⢠corresponding binding
>>     ⢠actual class
>>     ⢠class in
>>     ⢠local variable
>>     ⢠existent variable
>>
>>
>> On Sep 6, 2011, at 10:51 AM, Damien Cassou wrote:
>>
>>> On Tue, Sep 6, 2011 at 10:45 AM, Stéphane Ducasse
>>> <stephane.ducasse(a)inria.fr> wrote:
>>>> how do you get the selection in the editor when you click on the reported link?
>>>
>>> what editor are you using? With Emacs it should be the case by default
>>> (look at the screencast)
>>>
>>> --
>>> Damien Cassou
>>> http://damiencassou.seasidehosting.st
>>>
>>> "Lambdas are relegated to relative obscurity until Java makes them
>>> popular by not having them." James Iry
>>>
>>
>>
>>
>
>
>
> --
> Lukas Renggli
> www.lukas-renggli.ch
>
--
Lukas Renggli
www.lukas-renggli.ch
Sept. 7, 2011
Re: [Pharo-project] [Pharo-users] [COTDC] 80#3 - TestRunnerBrowser
by Stéphane Ducasse
On Sep 7, 2011, at 9:45 PM, laurent laffont wrote:
> Today: TestRunnerBrowser
I'm a class to selectively run tests and get the results of their execution.
>
> Laurent
>
> On Tue, Sep 6, 2011 at 7:59 PM, laurent laffont <laurent.laffont(a)gmail.com> wrote:
>
> Today: RBSubclassOfClassToRename
>
> Laurent
>
>
> On Mon, Sep 5, 2011 at 9:55 PM, laurent laffont <laurent.laffont(a)gmail.com> wrote:
> Today: CategoryEnvironment
>
>
> Comment Of The Day Contest - One Day One Comment
> Rules:
> #1: Each day a not commented class is elected. Each day the best comment will be integrated with name of the author(s).
> #2: If you cannot comment it, deprecate it.
> Results: http://code.google.com/p/pharo/wiki/CommentOfTheDayContest
>
> Laurent
>
>
>
Sept. 7, 2011