IMO, the question comes down to, Is 3 more than ,2 ? This would lead us
to wonder whether 3 is more than $0 or 4 1, and to realize that the
situation would at least need consideration. Then we would agree that
#$y, even if no more correct, is 'better', in that its meaning does not
require consideration. This idea of 'better' holds that a is better
than b if a is true and b is false OR (when both are true) if a is more
comprehensible to readers of good will.
I certainly wouldn't want Roger to make this change to the Dictionary.
That should be left to others. There are many more important things for
Roger to do.
Henry Rich
On 10/5/2013 9:24 PM, Roger Hui wrote:
The dictionary entry says:
In general, if y is not an atom, x may be a list of length not more than
$$y , and if y is an atom, it is replaced by ((#x)$1)$y . Element k
produces (k{x){."(($$y)-k) y ; an infinite value is replaced by the length
of the corresponding axis.
The statement is correct, both formally (executes on a computer) and
informally, if it says $$y or #$y. If it is correct, then it is not a
mistake. It is not to say that # and $ are interchangeable in all
situations.
On Sat, Oct 5, 2013 at 6:13 PM, Ganesh Rapolu <[email protected]> wrote:
Brevity is not always conducive to understanding. I would be grateful if
you gave an explanation
as to why this flexibility in the rank of a length is not a mistake.
On Sat, Oct 5, 2013 at 3:01 PM, Roger Hui <[email protected]>
wrote:
If it is a mistake I'd correct it, but it's not a mistake.
On Sat, Oct 5, 2013 at 5:44 PM, Ganesh Rapolu <[email protected]>
wrote:
I am having difficulty finding reasons other than tradition that a
length
should be allowed to be a list.
badlength =. $
mean =. +/ % badlength
$ mean"1 i. 5 5
5 1
Of course, J already does the right thing by providing # . It might be
in
the spirit of J to continue to correct mistakes made in APL by
correcting
the documentation for take.
On Sat, Oct 5, 2013 at 2:19 PM, Roger Hui <[email protected]>
wrote:
It is traditional in APL (and APL-like) systems that a length is a
list
or
a scalar.
On Sat, Oct 5, 2013 at 4:53 PM, Ganesh Rapolu <[email protected]>
wrote:
Although it is the case that for a verb v and integer k, v"k and
v"(,
k)
are the same, it might be confusing if the length referred to in
the
phrase
'x may be a list of length not more than $$y' is not a scalar.
On Sat, Oct 5, 2013 at 1:36 PM, Roger Hui <
[email protected]
wrote:
Both $$y or #$y are correct in this case.
On Sat, Oct 5, 2013 at 4:14 PM, Ganesh Rapolu <
[email protected]
wrote:
In the last paragraph, $$y should be #$y.
----------------------------------------------------------------------
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
----------------------------------------------------------------------
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