select. in J is equivalent to a series of tests.  In fact there is some extra overhead, so it is used for explanatory value, not for performance.  It's nothing like a computed GOTO.

Henry Rich

On 12/11/2019 11:03 AM, 'Jim Russell' via Programming wrote:
Yes but...
I'd contend that a string of tests is usually less efficient than (perhaps 
calculating) some numeric value that is amenable to a case statement. ( I 
should have checked first; J does have a case statement, does it not?)

On Dec 11, 2019, at 10:32 AM, Henry Rich <[email protected]> wrote:

Yes.

Henry Rich

On 12/11/2019 5:46 AM, 'Mike Day' via Programming wrote:
So is it still ok in J9 - and will it be ok - to continue using the following 
paradigm?

if.     T  do. B
elseif. T1 do. B1
elseif. T2 do. B2
end.

Thanks,

Mike


On 11/12/2019 10:23, Henry Rich wrote:
else. after elseif. is new in 9.01, and you found a bug in it.

JfC is for J6.02.

Henry Rich

On 12/10/2019 8:23 PM, Ben Gorte wrote:
Hi,

Despite repeated warnings in JforC I stepped into the trap of using elseif.
and else. in the same if.-statement. It took some effort to find that
error, because the behaviour is kind of weird:

   iftest =: 3 : 0
if. y=1 do.
    echo 'one'
elseif. y=2 do.
    echo 'two'
elseif. y=3 do.
    echo 'three'
else. NB. should be elseif. do.
    echo 'other'
end.
)

     iftest 1
one
other
     iftest 2
two
other
     iftest 3
three
     iftest 4
other

Wouldn't it be possible to have that working like expected? Or elseif do
flag an error?

Greetings,
Ben
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to