I don't think there is any such thing as an 'empty sentence'. T blocks
containing no sentences are true, but a blank line (which would surely
be an empty sentence, no?) does not become true:
t =: 3 : 0
if.
0
do. 1 else. 2 end.
)
t ''
2
What I am trying to do is something akin to C's left-to-right && .
if.
if. (thing exists) do.
test that thing has desired property
end.
do.
NB. code here executed if thing exists & has the desired property
end.
I can work around it.
Henry Rich
On 11/3/2010 8:45 PM, Raul Miller wrote:
> On Wed, Nov 3, 2010 at 6:16 PM, Henry Rich<[email protected]> wrote:
>> tvb =: 3 : 0
>> if. 0 do.
>> 0
>> elseif. 0 if. 0 do. 1 end. do.
>> 1
>> elseif. do.
>> 2
>> end.
>> )
>> tvb ''
>> 1
>>
>> I was expecting 2.
>
> This looks odd, but I am not sure it is a bug:
>
> You have an empty sentence after the nested if
> sentence, and I think empty sentences are treated
> as true.
>
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm