Yes, we have been assuming that, as the way to preserve the current behavior.

Henry Rich

On 7/6/2018 7:44 AM, 'Pascal Jasmin' via Programming wrote:
  A possibility is that 10&#: and (,10)&#: could have different results.
     On Thursday, July 5, 2018, 10:57:37 a.m. EDT, Henry Rich 
<[email protected]> wrote:
I have been wondering, if this simple idea is so good, why didn't Ken
think of it?

I think I have the answer.

With the new definition, we would have

     10 #: 123 1230 1234
1 2 3 0
1 2 3 0
1 2 3 4

because of left-justification of assembled results.  (Note that #: y is
defined with infinite rank to avoid this problem; I think it is out of
the question to change the rank of x #: y, for compatibility reasons)

Results on lists would have this peculiarity.  And, #. would be an
imperfect inverse for #: .

So I think rather than having this odd behavior Ken forced us to use
#.^:_1, which DOES have infinite rank and even right-justifies properly:

     10 #.^:_1 ] 123 1234
0 1 2 3
1 2 3 4

[20 years of using J and 2 years of intimate work with the source code,
and there are still these gems of Roger's that surprise me.]


For all that, I think I would support making the change Joey suggests,
but I would want more time for all of us to think it over.

Henry Rich



On 7/4/2018 1:37 AM, Joey K Tuttle wrote:
The proposed change is only to Antibase (#:)  not Copy (#)

Plus, all the functionality of #: would be maintained and the statement from NuVoc,  
"x #: y is used only when you need to state how many places you want in the 
result would still remain in effect but the left argument be required to be a vector 
(even if only 1 place was sought).


On 2018Jul 3, at 21:41, Skip Cave <[email protected]> wrote:

As long as we don''t change this functionality:

1 1 0 1 0 0 1#10 2 34 13 6 87 9

10 2 13 9


Skip Cave
Cave Consulting LLC


On Tue, Jul 3, 2018 at 11:33 PM Jimmy Gauvin <[email protected]> wrote:

Hi,

I also support the idea of this scalar extension.

#.inv or  #.^:_1 have a "kludgy" feeling ...


Jimmy

On Tue, Jul 3, 2018 at 11:31 PM, Joey K Tuttle <[email protected]> wrote:

Can anyone provide a reason it would be undesirable to have a scalar left
(x) argument to #: behave any differently than  x (#.^:_1) y  ?

In NuVoc I find - "
x #: y is used only when you need to state how many places you want in
the
result, or if x contains differing values. If you want just sufficient
places to hold the value of y in the base x, use  #.inv to convert to a
fixed base.
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

---
This email has been checked for viruses by AVG.
https://www.avg.com

----------------------------------------------------------------------
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