You may try (untested)

wd'msgs'

Пт, 11 апр 2014, Raul Miller писал(а):
> I managed to find another way to crash J. I'm not sure whether the fault
> lies in J itself or in Qt, but... here's the story:
> 
> When J is running on something that takes a long time (for example,
> fetching hundreds of files, each fetched file requiring its own shell
> command), it would be nice to let the user know that J is doing what it is
> supposed to. Users know that computers sometimes have problems, and they
> like having a mechanism to distinguish between failure and functioning
> modes of operation. And while jconsole has a nice mechanism for this
> (smoutput), jqt does not share this behavior.
> 
> So, I thought, let's introduce a small delay between statements, so that
> the display can update and the user can see something happening.
> 
> Thus:
> 
> Progressively=:1 :0
>   0 u Progressively y
> :
>   wd 'timer 0'
>   smoutput u x{y
>   next=.x+1
>   if. next<#y do.
>     sys_timer_z_=: next u Progressively y"_
>     wd 'timer 1'
>   end.
> )
> 
> But when I go to try it out, I got a syntax error while trying to update
> sys_timer_z_ when it is on the stack. (Shouldn't that be a stack error, if
> it needs to be an error at all?)
> 
> And when I tried to reproduce that syntax error with debugging enabled, so
> I could see what was going on, I crashed J.
> 
> Here's my test case:
>    *: Progressively 2 3 5 7 11
> 
> My suspicion is that I've violated some assumptions made during memory
> management. And, indeed, a rewritten version of the code seems to work fine:
> 
> Progressively=:1 :0
>   sys_timer_z_=: do_base_ bind 'N U Progressively Y'
>   N=:0
>   U=:u
>   Y=:y
>   0 u Progressively y
>   wd 'timer 1'
> :
>   wd 'timer 0'
>   smoutput u x{y
>   if. (x+1)<#y do.
>     N=:x+1
>     wd 'timer 1'
>   else.
>     smoutput '   ' NB. re-issue prompt
>   end.
> )
> 
> But I thought I should report the bug, in case someone else can get around
> to isolating and fixing it before me. (I'm playing with the source version
> of J but proceeding very slowly.)
> 
> (Also, of course, feel free to use the working version of 'Progressively',
> if you have need of something like that.)
> 
> Thanks,
> 
> -- 
> Raul
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm

-- 
regards,
====================================================
GPG key 1024D/4434BAB3 2008-08-24
gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3
gpg --keyserver subkeys.pgp.net --armor --export 4434BAB3
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to