Re: [Pharo-project] VM freezes sending #basicNew to Stream subclass
+100 On 04 Dec 2011, at 00:07, Igor Stasenko wrote: On 3 December 2011 01:30, Stéphane Ducasse stephane.duca...@inria.fr wrote: We will have to track when this error was introduced may be this is the runtimeError fix that we pushed. We should check on images to spot this regression. Now printing the contents of a stream by default looks to me a bad idea. May be when the stream is positionable it makes sense but why would I force to read the complete contents of a stream when I open an inspector on it. I think that 'contents' concept in streams are controversial. Just consider: - a stream which generates random numbers. every time you send #next, you get another random number. what is a contents of such stream? all random numbers it can generate till universe die? - a real-time stream broadcasting video/audio. what is a contents of such stream? you cannot capture whole contents of it, because these kinds of streams has no 'end'. It is because streams are for processing data in portions, and when you requesting contents of it, you turning it into collection. Here the Collection class comment: I am the abstract superclass of all classes that represent a group of elements. And Stream: I am an abstract class that represents an accessor for a sequence of objects. This sequence is referred to as my contents. Yes. Of course, abstractly speaking, all streams containing something , but you can access it only by portions. Otherwise they will be no different to collections and therefore we won't need them. -- Best regards, Igor Stasenko.
Re: [Pharo-project] Pharo VMs should be more Pharo-like
Hi: On 04 Dec 2011, at 03:47, Esteban Lorenzano wrote: 2. Is it possible to have a 'smart' version of the fullscreen feature, at least on Snow Leopard? Currently, it is blanking out my second screen. I read that VMware Fusion introduce such a 'smart' full screen functionality, that does not blank out the other screens. I don't understand this... what you mean? there is a full-screen mode already in latest builds... and it is working fine for me. There seem to be people who agree that making all other displays just black is not a useful feature. See what they advertise for 4.1: http://blogs.vmware.com/teamfusion/2011/11/weekly-tips-and-tricks-whats-new-in-vmware-fusion-41.html Being able to use the second screen for something is something I care about. And it was possible with the old fullscreen mode. Thus, I consider the new behavior a bug that is worthwhile to be fixed. Thanks Stefan -- Stefan Marr Software Languages Lab Vrije Universiteit Brussel Pleinlaan 2 / B-1050 Brussels / Belgium http://soft.vub.ac.be/~smarr Phone: +32 2 629 2974 Fax: +32 2 629 3525
Re: [Pharo-project] VM freezes sending #basicNew to Stream subclass
I agree with you. Nevertheless it seems that there is a bug in the debugger. In a workspace, type this and debug it: Stream basicNew printString. Step over basicNBew. Step into printString. Step into printStringLimitedTo: 5 Step into streamContents: [:s | self printOn: s] limitedTo: limit Step over 100 min: sizeLimit Step over self new: (100 min: sizeLimit) -- error: the debugger tries to execute (String new: String) I also note that all class methods in stack window left column are miss-printed - like 'Block in class)'new: Stef On Dec 4, 2011, at 12:07 AM, Igor Stasenko wrote: On 3 December 2011 01:30, Stéphane Ducasse stephane.duca...@inria.fr wrote: We will have to track when this error was introduced may be this is the runtimeError fix that we pushed. We should check on images to spot this regression. Now printing the contents of a stream by default looks to me a bad idea. May be when the stream is positionable it makes sense but why would I force to read the complete contents of a stream when I open an inspector on it. I think that 'contents' concept in streams are controversial. Just consider: - a stream which generates random numbers. every time you send #next, you get another random number. what is a contents of such stream? all random numbers it can generate till universe die? - a real-time stream broadcasting video/audio. what is a contents of such stream? you cannot capture whole contents of it, because these kinds of streams has no 'end'. It is because streams are for processing data in portions, and when you requesting contents of it, you turning it into collection. Here the Collection class comment: I am the abstract superclass of all classes that represent a group of elements. And Stream: I am an abstract class that represents an accessor for a sequence of objects. This sequence is referred to as my contents. Yes. Of course, abstractly speaking, all streams containing something , but you can access it only by portions. Otherwise they will be no different to collections and therefore we won't need them. -- Best regards, Igor Stasenko.
[Pharo-project] [update 1.4] #14244
14244 - Issue 5048: Move Transcript to Tools Package http://code.google.com/p/pharo/issues/detail?id=5048 Issue 5047: Stream should not print its contents in printOn: http://code.google.com/p/pharo/issues/detail?id=5047 Issue 5053: ZnChunkedReadStream doesNotUnderstand: #next:into: http://code.google.com/p/pharo/issues/detail?id=5053 -- Marcus Denker -- http://marcusdenker.de
[Pharo-project] [COTDC] 90 - TextAlignment
Continuing in Collections... Today: TextAlignment 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 p.s. this message was sent from a pharo image. Did you know you could easily do that?!
Re: [Pharo-project] [Pharo-users] [COTDC] 90 - TextAlignment
On Thu, Dec 1, 2011 at 2:05 PM, s...@clipperadams.com wrote: Continuing in Collections... Today: TextAlignment I'm a Text attribute that tells how content should be aligned. TextMorph new newContents: (Text streamContents: [:aStream| aStream nextPutAll: 'Left flush' asText; cr; nextPutAll: ('Centered' asText addAttribute: TextAlignment centered); cr; nextPutAll: ('Right flush' asText addAttribute: TextAlignment rightFlush); cr ]); openInWindowLabeled: 'TextAlignment demo' Laurent 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 p.s. this message was sent from a pharo image. Did you know you could easily do that?!
Re: [Pharo-project] OBPane coordinates
Sean P. DeNigris wrote Still very curious about this... It was a submorph of a TransformMorph. The class comment of TransformMorph cleared it up. -- View this message in context: http://forum.world.st/OBPane-coordinates-tp4144519p4157322.html Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
Re: [Pharo-project] Chasing Browsers
Bump. Anyone? Bueller? -- View this message in context: http://forum.world.st/Chasing-Browsers-tp4102608p4157383.html Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
Re: [Pharo-project] Chasing Browsers
Maybe you use the wrong browser? AFAIK, only OB implements it. Lukas On 4 December 2011 18:08, Sean P. DeNigris s...@clipperadams.com wrote: Bump. Anyone? Bueller? -- View this message in context: http://forum.world.st/Chasing-Browsers-tp4102608p4157383.html Sent from the Pharo Smalltalk mailing list archive at Nabble.com. -- Lukas Renggli www.lukas-renggli.ch
[Pharo-project] Keymapping OB conflict (was Re: Chasing Browsers)
Lukas Renggli wrote Maybe you use the wrong browser? AFAIK, only OB implements it. Ahh, thank you Lukas. It seems like a bug in Keymapping. What do you think, Guillermo? The situation: In 1.2.2, I get anOBSendersBrowser. However in 1.3 rc, from a method definition in OB: - if I choose Senders from the menu I get anOBSendersBrowser - but if I hit Cmd-n, I get a FlatMessageListBrowser. The call stack: - without key mapping: OBTextMorphkeyStroke: OBTextMorph(TextMorph)handleKeystroke: KeyboardEventsentTo: OBTextMorph(Morph)handleEvent: OBTextMorph(Morph)handleFocusEvent: [ActiveHand := self. ActiveEvent := anEvent. result := focusHolder handleFocusEvent: (anEvent transformedBy: (focusHolder transformedFrom: self))] in HandMorphsendFocusEvent:to:clear: - with Keymapping: SmalltalkEditorsendersOfIt SmalltalkEditorsendersOfIt: [editor sendersOfIt: event] in [:editor :morph :event | morph handleKeymappingInteraction: [editor sendersOfIt: event] fromKeyboardEvent: event] in KMEditorsDefaultSettings classbuildSmalltalkEditorKeymappingsOn: SmalltalkEditor(TextEditor)handleKeystrokeAction: SmalltalkEditor(TextEditor)handleEditionAction:fromKeyboardEvent: [self editor handleEditionAction: aBlockInteraction fromKeyboardEvent: anEvent] in OBTextMorph(TextMorph)handleKeymappingInteraction:fromKeyboardEvent: OBTextMorph(TextMorph)handleInteraction: OBTextMorph(TextMorphForEditView)handleInteraction: OBTextMorph(TextMorph)handleKeymappingInteraction:fromKeyboardEvent: [:editor :morph :event | morph handleKeymappingInteraction: [editor sendersOfIt: event] fromKeyboardEvent: event] in KMEditorsDefaultSettings classbuildSmalltalkEditorKeymappingsOn: -- View this message in context: http://forum.world.st/Chasing-Browsers-tp4102608p4157598.html Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
Re: [Pharo-project] Keymapping OB conflict (was Re: Chasing Browsers)
Maybe you use the wrong browser? AFAIK, only OB implements it. Ahh, thank you Lukas. It seems like a bug in Keymapping. What do you think, Guillermo? Keymapping? I don't think that would work with OB that has its own keymapping. The problem you observe is a long standing bug: if you don't have a text selection key presses are handled by Pharo not by OB. This means, if you select the method and press Cmd+n it should work. Lukas The situation: In 1.2.2, I get anOBSendersBrowser. However in 1.3 rc, from a method definition in OB: - if I choose Senders from the menu I get anOBSendersBrowser - but if I hit Cmd-n, I get a FlatMessageListBrowser. The call stack: - without key mapping: OBTextMorphkeyStroke: OBTextMorph(TextMorph)handleKeystroke: KeyboardEventsentTo: OBTextMorph(Morph)handleEvent: OBTextMorph(Morph)handleFocusEvent: [ActiveHand := self. ActiveEvent := anEvent. result := focusHolder handleFocusEvent: (anEvent transformedBy: (focusHolder transformedFrom: self))] in HandMorphsendFocusEvent:to:clear: - with Keymapping: SmalltalkEditorsendersOfIt SmalltalkEditorsendersOfIt: [editor sendersOfIt: event] in [:editor :morph :event | morph handleKeymappingInteraction: [editor sendersOfIt: event] fromKeyboardEvent: event] in KMEditorsDefaultSettings classbuildSmalltalkEditorKeymappingsOn: SmalltalkEditor(TextEditor)handleKeystrokeAction: SmalltalkEditor(TextEditor)handleEditionAction:fromKeyboardEvent: [self editor handleEditionAction: aBlockInteraction fromKeyboardEvent: anEvent] in OBTextMorph(TextMorph)handleKeymappingInteraction:fromKeyboardEvent: OBTextMorph(TextMorph)handleInteraction: OBTextMorph(TextMorphForEditView)handleInteraction: OBTextMorph(TextMorph)handleKeymappingInteraction:fromKeyboardEvent: [:editor :morph :event | morph handleKeymappingInteraction: [editor sendersOfIt: event] fromKeyboardEvent: event] in KMEditorsDefaultSettings classbuildSmalltalkEditorKeymappingsOn: -- View this message in context: http://forum.world.st/Chasing-Browsers-tp4102608p4157598.html Sent from the Pharo Smalltalk mailing list archive at Nabble.com. -- Lukas Renggli www.lukas-renggli.ch
Re: [Pharo-project] startup errors
Igor Stasenko wrote We invented a way to hack an image with Camillo. Instead of hacking VM :) THis is easy and fast. Cool! What does it mean to hack an image? When you wrote: Igor Stasenko wrote look at settings, there's already an option to save a new version of image before quit. if you turn this option on, then any unhandled error will open a debugger if you open an image saved in such state. it sounded like this would only work for experiments where you were expecting you might cause an error during startup. What I'm suggesting (and I thought the OP was requesting) is a way to recover after accidentally causing an error at startup. Now there is no way to go back in and set the setting, so the image is lost, unless you hack the VM. Or is there currently another way? -- View this message in context: http://forum.world.st/startup-errors-tp3736966p4157667.html Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
Re: [Pharo-project] startup errors
+1 on the option being too late. Given my dislike of silent failures, I can't object to some means of drawing attention to the problem, and failure to start certainly does that. However, there should be a way to allow the image to start in the (likely?) event that it can assist in its repair or replacement. Bill From: pharo-project-boun...@lists.gforge.inria.fr [pharo-project-boun...@lists.gforge.inria.fr] on behalf of Sean P. DeNigris [s...@clipperadams.com] Sent: Sunday, December 04, 2011 1:46 PM To: pharo-project@lists.gforge.inria.fr Subject: Re: [Pharo-project] startup errors Igor Stasenko wrote We invented a way to hack an image with Camillo. Instead of hacking VM :) THis is easy and fast. Cool! What does it mean to hack an image? When you wrote: Igor Stasenko wrote look at settings, there's already an option to save a new version of image before quit. if you turn this option on, then any unhandled error will open a debugger if you open an image saved in such state. it sounded like this would only work for experiments where you were expecting you might cause an error during startup. What I'm suggesting (and I thought the OP was requesting) is a way to recover after accidentally causing an error at startup. Now there is no way to go back in and set the setting, so the image is lost, unless you hack the VM. Or is there currently another way? -- View this message in context: http://forum.world.st/startup-errors-tp3736966p4157667.html Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
Re: [Pharo-project] startup errors
On 4 December 2011 20:46, Sean P. DeNigris s...@clipperadams.com wrote: Igor Stasenko wrote We invented a way to hack an image with Camillo. Instead of hacking VM :) THis is easy and fast. Cool! What does it mean to hack an image? When you wrote: Igor Stasenko wrote look at settings, there's already an option to save a new version of image before quit. if you turn this option on, then any unhandled error will open a debugger if you open an image saved in such state. it sounded like this would only work for experiments where you were expecting you might cause an error during startup. What I'm suggesting (and I thought the OP was requesting) is a way to recover after accidentally causing an error at startup. Now there is no way to go back in and set the setting, so the image is lost, unless you hack the VM. Or is there currently another way? yes. what we do with Camillo is to hack the image file by replacing bytecode of unwanted method with ^ self bytecode, in that way image avoiding entering code which leads to failure. To identify specific method, you can search image file for unique sequence of bytecodes :) -- View this message in context: http://forum.world.st/startup-errors-tp3736966p4157667.html Sent from the Pharo Smalltalk mailing list archive at Nabble.com. -- Best regards, Igor Stasenko.
Re: [Pharo-project] Keymapping OB conflict (was Re: Chasing Browsers)
Lukas Renggli wrote OB. This means, if you select the method and press Cmd+n it should Bummer, Cmd-n with a method name selected in OB system browser still brings up the non-chasing senders browser. -- View this message in context: http://forum.world.st/Chasing-Browsers-tp4102608p4159064.html Sent from the Pharo Smalltalk mailing list archive at Nabble.com.