Oleg Kobchenko <[EMAIL PROTECTED]> wrote:
> I was looking at Short Circuit Boolean conjunction expressions
> and the adjacent binary operations table, and thought why
> not have a conjunction-valued Boolean adverb, similar to 
> the verb-valued Boolean adverb.
> Contrary to possible assumption, adverbs _can_ produce conjunctions.

>   1 B       NB. and / if
> 2 : 'u^:v'

I have discovered one error (that occurs in two places)
in your table (here and in the Wiki page).
Basically, any use of ^: is problematic.
If v(y)=0, you want 'u*.v' to return 0 without evaluating u.
However, in this case, rather than returning 0 (i.e. v(y))
it returns y itself. This is incorrect in general:

   u =: 1:
   v =: -.
   (u*.v) 1
0
   (u^:v) 1
1

One other minor problem with the wiki page is that it shows
boolean functions 16-31. It should rather use 0-15, since
those apply to boolean values, whereas 16-31 perform the
same operations on bits packed within an integer. While
16-23 can be used in places of 0-7 for boolean values,
this is not the case for 24-31 vs. 9-15, since boolean NOT
(-.) of 0 is 1, whereas binary NOT of 0 is _1.

-- Mark D. Niemiec <[EMAIL PROTECTED]>

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

Reply via email to