bug-apl
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: nested array formating is inconsistent


From: Dr . Jürgen Sauermann
Subject: Re: nested array formating is inconsistent
Date: Fri, 27 Aug 2021 10:30:32 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0

Hi Hans-Peter,

I fully share your view regarding the inconsistency of the cases.
..
However, the more important factor for me is compatibility (primarily
with IBM APL2, but also others).

In order to make the output more consistent, we would have to
introduce new incompatibilities with IBM APL2 and IMHO that
would be worse than the existing inconsistency. It was actually
pretty hard to achieve the compatibility with APL2, primarily due
to a lack of an implementable description and quite some guesswork
as to how the IBM APL2 formatting algorithm may look like.

I would therefore like to leave matters as they are.

Best regards,
Jürgen


On 8/27/21 12:48 AM, Hans-Peter Sorge wrote:
Hi,

thank you for your insight.


⍝ However I'm not convinced.
⍝ Comparing expr. 1 (≡ 2) 

      (⊂1 1)⍴ ¨2 2⍴1
 1   1

 1   1

⍝ to expr. 2  (≡ 3)
      ⊂¨(⊂1 1)⍴ ¨2 2⍴1
  1   1
  1   1


⍝ I would say the 'missing' space line is a bug.
⍝ The additional vertical space in expr. 2 is due to increasing depth.
⍝ But "removing" the horizontal space line makes viewing the output confusing.
⍝ For much more complex expressions it gets even counter intuitive.
⍝ It's basically about 'horizontal' vs 'vertical' formatting. 

Best Regards
Hans-Peter
 




Am 26.08.21 um 19:26 schrieb Blake McBride:
I would think what APLX or Dialog do is somewhat irrelevant.  I believe GNU APL is treating IBM APL 2 as the standard to be matched.

Blake


On Thu, Aug 26, 2021 at 12:21 PM Louis Chretien via Bugs and suggestions for GNU APL <bug-apl@gnu.org> wrote:
I tried the same examples in APL/X and Dyalog APL.

APL/X seems to give the same results as GNU APL: but both enclose are indented right by one column



But Dyalog APL has quite a different result: no blank lines between rows.


On Aug 26, 2021, at 12:44, Dr. Jürgen Sauermann <mail@xn--jrgen-sauermann-zvb.de> wrote:

Hi again,

checking the same in IBM APL2, the behaviour of GNU APL seems correct.
(see attached Screenshot).

Best Regards,
Jürgen




On 8/26/21 5:58 PM, Dr. Jürgen Sauermann wrote:
Hi Hans-Peter,

thanks, I will look into this.

The general problem is that the rules how nested values with rank ≥ 2 should
be displayed are, at least as far as I know, nowhere specified in a formal fashion.
From old APL 1 we know that the higher dimensions (> 2) of a not-nested value
shall be separated by a number of empty lines, but we don't really know, for example,
 how these separator lines should be handled when the value is being enclosed.

To me it is not clear if there is a line missing in
⊂¨2 2 ⍴ e or if there maybe is a line
too much in 
⊂2 2 ⍴ e (even though that way it looks a little nicer).

Best Regards,
Jürgen



On 8/26/21 11:29 AM, Hans-Peter Sorge wrote:
Hi,


⍝ just a simple matrix

      i∘.+i←¯1+⍳2
0 1
1 2

⍝ make it an element
      ⎕ ← e ← ⊂i∘.+i←¯1+⍳2
 0 1
 1 2


⍝ matrix of matrixes....
      2 2 ⍴ e
 0 1   0 1
 1 2   1 2

 0 1   0 1
 1 2   1 2


⍝ enclose the matrix of matrixes indents nicely ...
      ⊂ 2 2 ⍴ e
  0 1   0 1
  1 2   1 2

  0 1   0 1
  1 2   1 2


⍝ display of enclose each 'sub'-matrix misses space line
      ⊂¨2 2 ⍴ e
  0 1   0 1
  1 2   1 2
  0 1   0 1
  1 2   1 2

Best Regards
Hans-Peter


<APL2.png>


---
Louis Chrétien







reply via email to

[Prev in Thread] Current Thread [Next in Thread]