Christopher,
It appears that the behavior you observe is real and to me it is easy
to see how the behavior is coded by listing out the verb `nl` as
follows far below.
The key line is this one.
nms=. (4!:1 y) -. ;: 'x y x. y.'
Perhaps that line should be changed to produce the result you expect.
You make a good point.
nl
3 : 0
'' nl y
:
if. 0 e. #y do. y=. 0 1 2 3 end.
if. 1 4 8 e.~ 3!:0 y do.
nms=. (4!:1 y) -. ;: 'x y x. y.'
else.
nms=. cutopen_z_ y
end.
if. 0 e. #nms do. return. end.
if. #t=. x -. ' ' do.
'n s'=. '~*' e. t
t=. t -. '~*'
b=. t&E. &> nms
if. s do. b=. +./"1 b
else. b=. {."1 b end.
nms=. nms #~ n ~: b
end.
)
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm