It can execute and return 0 on j602.

I tested on j807, the value error was already there, so that
the behavior alredy changed at that version or earlier.

   JVERSION
Engine: j807/j64/linux
Release-e: commercial/2019-06-10T13:48:44
Library: 8.07.26
Platform: Linux 64
Installer: unknown
InstallPath: /usr/share/j/8.07
Contact: www.jsoftware.com


   0!:0<'/home/bill/a1.ijs'
|value error: isboxed
|       isboxed y
   0!:101<'/home/bill/a1.ijs'
      cocurrent 'loc'
      dec=: [
      isboxed=: 32=3!:0
      enc=: 3 : ('1 enc y';':';'isboxed y')
      cocurrent 'z'
      test=: 0 1&enc_loc_ : enc_loc_ :. (1 1&dec_loc_ : dec_loc_)
      testi=: test_z_^:_1
      cocurrent 'base'
      dbr 1
      0:&.testi ''
|value error: isboxed
|       isboxed y

In j807 the dbr 1 can print the value error message, but no
suspension.


Mon, 30 Sep 2019, Henry Rich написал(а):
> This was deep.  The system error was easy to fix for the next release (a
> missing NUL terminator to a string).
> 
> You still get value error on isboxed, because u&.v is actually processed as
> u&.(v f.) when v contains names.  Applying f. to a locative such as enc_loc_
> removes the locative, thus the resulting verb executes in base.  I would
> have to study this quite a while before I changed something so deep in the
> system.
> 
> When you run the code with dbr 1, it doesn't go into suspension when it hits
> the value error.  This is because it detects the error on the name before it
> enters the branch for debugging the execution of the name.  I'll put that on
> the bug list.
> 
> Henry Rich
> 
> On 9/29/2019 10:52 AM, Kirk Iverson wrote:
> > I've been giving 9.01 beta-k a bit of an exercise and have
> > come across the following:
> > 
> >     cocurrent 'loc'
> >     dec=: [
> >     isboxed=: 32=3!:0
> >     enc=: 3 : ('1 enc y';':';'isboxed y')
> >     cocurrent 'z'
> >     test=: 0 1&enc_loc_ : enc_loc_ :. (1 1&dec_loc_ : dec_loc_)
> >     testi=: test_z_^:_1
> >     cocurrent 'base'
> >     dbr 1
> >     0:&.testi ''
> > |system error
> >     JVERSION
> > Engine: j901/j64/windows
> > Beta-k: commercial/2019-09-16T17:06:30
> > Library: 9.01.10
> > Platform: Win 64
> > Installer: J901 install
> > InstallPath: c:/users/kbi/j901
> > Contact: www.jsoftware.com
> > 
> > 
> > I have seen variants of the problem as I tried to isolate it, with
> > one symptom being a value error trying to find <isboxed> while <enc>
> > was running. In that case, the current locale wasn't <loc>, which it
> > had been in earlier versions of J.  Having dbr 1 set also appears to
> > be a factor in getting the system error.
> > 
> > /K
> > ----------------------------------------------------------------------
> > For information about J forums see http://www.jsoftware.com/forums.htm
> 
> 
> ---
> This email has been checked for viruses by AVG.
> https://www.avg.com
> 
> ----------------------------------------------------------------------
> 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 --armor --export 4434BAB3
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to