[Jprogramming] Standalone Error wdhandler_base_

N. Drinkwater ndrinkwater at tds.net
Tue Aug 7 06:51:41 HKT 2007


I've found that a conflict between local variables in some of the 
library scripts and global variables in application scripts will cause 
an error when the standalone script is started from the command-line. No 
error occurs when using 0!:0 from minijx.

For example, stdlib.ijs contains the following lines:

t=. <;._1 '/invalid name ...
type=: {&t@(2&+)@(4!:0)&boxopen

(note that the line t=. is truncated above)

The local assignment in stdlib will cause a crash when a stand-alone 
application is built for the following script:

NB. testerr.ijs
coclass'test'
t=: 1
test=: 3 : 0
wd'mb "J" "hello world"'
)
cocurrent'base'
test''

The local assignment causes a problem even though the global assignment 
is in a different locale. The above will work fine from the J session 
manager or when loaded using 0!:0 in the minimal J window given by 
running j.exe -jprofile from the command line. The crash only happens 
when using

j.exe -jprofile test.ijs

from the command line, where test.ijs is the stand-alone script. Other 
single letter variables that cause the same problem are a, c, d, h, and 
j. It took some time to track this problem down the first time my 
stand-alone application gave the dreaded "Error and no IDE window for 
debugging" dialog. One solution would be to make all of the local 
"helper" assignments in the system scripts global assignments.

Norman Drinkwater



Chris Burke wrote:
> Saunders, John (HMSRHS) wrote:
>> Thanks Chris, I now have the script working from the session manager
>> loaded without the jprofile by entering 0!:0 <'c:\EMA\salaries.ijs'
>> However I can't get it working form a desktop shortcut for some reason,
>> I've tried different syntax with no luck for example
>> C:\EMA\j.exe -jprofile salaries.ijs
>> C:\EMA\j.exe -jprofile \salaries.ijs
>> C:\EMA\j.exe -jprofile c:\EMA\salaries.ijs
>> I can load  c:\EMA\j.exe - jprofile from the desktop; though can't seem
>> to include the script??
> 
> This does not sound right. Loading J with:
> 
>   C:\EMA\j.exe -jprofile c:\EMA\salaries.ijs
> 
> should be essentially the same as loading J with:
> 
>   C:\EMA\j.exe -jprofile
> 
> and then entering
> 
>    0!:0 <'c:\EMA\salaries.ijs'
> 
> Is the Start In directory set correctly in your shortcut? What error
> message do you get?
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
> 


More information about the Programming mailing list