I wonder why a couple of stream methods are not in. Also the idea of having something we can connect to observe a stream is really interesting.
A single transcript is a bit too little for my tastes. I often write to several files and have tail -f on them in several windows in tmux. Would be nice to have that in Pharo. Phil Le 9 mai 2015 14:29, "stepharo" <[email protected]> a écrit : > > Eliot > > I changed the transcript because it is not thread safe so I could use it at all to explain concurrent programming output. > It was terrible. > > Stef > > > Le 8/5/15 16:16, Eliot Miranda a écrit : > >> Hi, >> >> if one uses a at doit transcript then no special action is required to get output to appear beyond sending flush to Transcript right? So any solution that requires special action to get the moronic transcript to work us broken. We should fix the transcript, not expect every application to work around a bug. >> >> Eliot (phone) >> >> On May 8, 2015, at 6:15 AM, Alain Rastoul <[email protected]> wrote: >> >>> Le 08/05/2015 11:34, stepharo a écrit : >>>> >>>> Hi guys >>>> >>>> the Transcript in Pharo is that it's not asynchronous so I can't use it >>>> in VM development to show the current progress of the simulation. For >>>> example: >>>> 1 to: 100 do: [ :i | >>>> 0.1 seconds asDelay wait. >>>> Transcript show: 'x'. ] >>>> => on Squeak, this shows a x every 0.1 second in the Transcript >>>> => on Pharo, nothing happens during 10 seconds then all the x are shown. >>>> >>>> https://pharo.fogbugz.com/default.asp?15515 >>> >>> Yes, as do it are evaluated in the World morphic process, running in a forked process or sending World doOneCycle in the loop solve the problem. >>> >>> Probably in squeak, in Transcript this is done somewhere under the hood. >>> >>> via dependents ? >>> >>> TranscriptStream>>endEndtry >>> "Display all the characters since the last endEntry, and reset the stream" >>> self semaphore critical:[ >>> self changed: #appendEntry. >>> self reset. >>> ]. >>> >>> Object>>changed: aParameter >>> self dependents do: [:aDependent | aDependent update: aParameter] >>> >>> And probably not doOnecycle since you cannot do anything else during execution (clicking or moving windows). >>> >>> >>> -- >>> Regards, >>> >>> Alain >>> >>> >> >> > >
