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