= is unfortunately with us for keeps.  It's used a lot to create identity matrices.

I object to encouraging its use by having special code for #@= . I don't want people to think about (= y), ever.  It raises a stench in the nostrils of the Almighty.  I disown it.  It's shunned.

Henry Rich

On 12/6/2022 1:40 PM, Raul Miller wrote:
Right -- my suggestion here would be that #@= would not produce the
result of = but would instead generate the counts directly without
generating the intermediate results.

And yes i.~ and u/. give the same information more compactly, (but the
equivalent expression involving i.~ would be >./@i.~ which is harder
to read, so #@~. would be preferable).  and u/. assumes that we are
using the bit vectors to compress an argument.

Meanwhile, if you were to get rid of the monadic definition of = it
would make sense to give it the nub operation in its place, leaving ~.
in place (mapping it to CEQ instead of CNUB) for backwards
compatibility. I would be hesitant to take that step (at the very
least, I'd want to read through every published book on J to make sure
I hadn't overlooked something important. For example, are there
approaches to fractals where the current = monadic result is useful?)

A general issue, in the context of the usefulness of primitives, is
that any single application domain is going to tend to emphasize a
handful of primitives, but an unrelated application domain would tend
to emphasize a different handful.

Anyways, this doesn't have to go out immediately or anything, but the
argument that jtsclass() might be tossed is not necessarily an
argument against my suggestion.

Thanks,


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

Reply via email to