Here is the code that causes my trouble. I have Debugwd_gtkwd_=:1 way at the beginning.
wd 'setfont clear "MS Sans Serif" 11' wd 'setfont cancel "MS Sans Serif" 11' smoutput 'a0' label_there. smoutput 'a1' while. 1 do. smoutput 'a2' wd 'wait' k=:wd 'q' smoutput 'a3' if. smoutput 'a4' (*/'show' = 4{.>9{{:"1 k) +. */'pain' = 4{.>9{{:"1 k do. if. */'pain' = 4{.>9{{:"1 k here's where I go astray: wd 'setfont clear "MS Sans Serif" 11' wd 'setfont cancel "MS Sans Serif" 11' smoutput 'a0' label_there. smoutput 'a1' while. 1 do. smoutput 'a2' wd 'wait' k=:wd 'q' smoutput 'a3' if. smoutput 'a4' since I haven't used this code since J4 I can't remember what I would get in 'q' but I must have been able to collect some data I wanted but I don't know what it was back then. Any ideas? Linda -----Original Message----- From: programming-boun...@jsoftware.com [mailto:programming-boun...@jsoftware.com] On Behalf Of bill lam Sent: Tuesday, February 21, 2012 1:49 AM To: programming@jsoftware.com Subject: Re: [Jprogramming] Control error when loading script into ijx window (J602) I would suspect H L C are undefined. My general approach is to insert smoutput before and after every control switch, eg smoutput 'a1' for_i. i.(#a) do. smoutput 'a2' currHi=. ". > (i { H) currLo=. ". > (i { L) currCl=. ". > (i { C) if. (0=i) do. smoutput 'a3' diffHi=. 0 diffLo=. 0 else. <-------- control error here smoutput 'a4' prevHi=. ". > ((i-1) { H) prevLo=. ". > ((i-1) { L) diffHi=. currHi - prevHi if. 0<:diffHi do. pivotHi=. currHi end. smoutput 'a5' diffLo=. prevLo - currLo if. 0<:diffLo do. pivotLo=. currLo end. smoutput 'a6' end. smoutput 'a7' if. diffLo>diffHi do. smoutput 'a8' if. currLo <: ( pivotHi * (1-swing) ) do. smoutput 'a9' xx=. xx , currLo Втр, 21 Фев 2012, PackRat писал(а): > When loading a script to test, I get an immediate "control error" when > I give the command to load it. The following is the portion of the > script that has all of the control structures. I've drawn an arrow > pointing to the line where the error is supposed to have occurred. I'm > probably "blind" to the error because I'm just not seeing the problem. > > ================================================================ > > for_i. i.(#a) do. > > currHi=. ". > (i { H) > currLo=. ". > (i { L) > currCl=. ". > (i { C) > > if. (0=i) do. > diffHi=. 0 > diffLo=. 0 > else. <-------- control error here > prevHi=. ". > ((i-1) { H) > prevLo=. ". > ((i-1) { L) > diffHi=. currHi - prevHi > if. 0<:diffHi do. pivotHi=. currHi end. > diffLo=. prevLo - currLo > if. 0<:diffLo do. pivotLo=. currLo end. > end. > > if. diffLo>diffHi do. > if. currLo <: ( pivotHi * (1-swing) ) do. > xx=. xx , currLo > else. > xx=. xx , ( {: xx ) NB. repeat previous value > end. > else. > if. currHi >: ( pivotLo * (1+swing) ) > xx=. xx , currHi > else. > xx=. xx , ( {: xx ) NB. repeat previous value > end. > end. > > end. > > ================================================================ > > The same error (at the same line) occurs if the following lines: > > if. 0<:diffHi do. pivotHi=. currHi end. > . . . > if. 0<:diffLo do. pivotLo=. currLo end. > > are instead expanded to: > > if. 0<:diffHi do. > pivotHi=. currHi > end. > . . . > if. 0<:diffLo do. > pivotLo=. currLo > end. > > > I would appreciate any assistance in "opening my eyes"--thanks in > advance! > > > Harvey > > ---------------------------------------------------------------------- > 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 ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm