Talk:Array notation design considerations: Difference between revisions

Jump to navigation Jump to search
No edit summary
No edit summary
Line 6: Line 6:


:Having read the relevant parts of the APL# [https://www.dyalog.com/uploads/conference/dyalog11/presentations/D08_apl_sharp/AplSharpDescription.pdf language description] I disagree with the description you've given. A namespace is a list of expressions, not name-value pairs: for example <source inline>[[ a←b←⍳10 ⋄ {a[⍵]←0}¨2 4 6 ]]</source> would be allowed. Having not worked with <source lang=apl inline>:namespace</source> I may be missing some details, but it seems <source inline>[[</source> and <source inline>]]</source> function identically to <source lang=apl inline>:Namespace</source> and <source lang=apl inline>:EndNamespace</source> and those aren't considered array notation. It's still relevant to the history but the framing as a kind of array notation seems misleading to me. Similarly, I took out the section on NARS: there's no discussion of the display as a way to write arrays in the manual, and multi-line printout with parentheses appears to be purely for display. So Adám's claim that "the need for a way to represent complex structures was already recognised" is speculative unless there's a source I haven't seen. --[[User:Marshall|Marshall]] ([[User talk:Marshall|talk]]) 14:41, 19 August 2022 (UTC)
:Having read the relevant parts of the APL# [https://www.dyalog.com/uploads/conference/dyalog11/presentations/D08_apl_sharp/AplSharpDescription.pdf language description] I disagree with the description you've given. A namespace is a list of expressions, not name-value pairs: for example <source inline>[[ a←b←⍳10 ⋄ {a[⍵]←0}¨2 4 6 ]]</source> would be allowed. Having not worked with <source lang=apl inline>:namespace</source> I may be missing some details, but it seems <source inline>[[</source> and <source inline>]]</source> function identically to <source lang=apl inline>:Namespace</source> and <source lang=apl inline>:EndNamespace</source> and those aren't considered array notation. It's still relevant to the history but the framing as a kind of array notation seems misleading to me. Similarly, I took out the section on NARS: there's no discussion of the display as a way to write arrays in the manual, and multi-line printout with parentheses appears to be purely for display. So Adám's claim that "the need for a way to represent complex structures was already recognised" is speculative unless there's a source I haven't seen. --[[User:Marshall|Marshall]] ([[User talk:Marshall|talk]]) 14:41, 19 August 2022 (UTC)
----
I also saw no relevance in the NARS formatting but left it in because someone else obviously saw it differently. I've tried to recast my contribs more objectively but feel that your criticism would apply equally to most of what was here already.
With regard to APL#:
* in APL there's no real distinction between value and expression.
* if <source lang=apl inline>[[name  ← (value of) expression]]</source> isn't array notation then I don't see how "( name : (value of) expression )" can be.
* My 2015 talk makes clear that a dictionary (namespace - whatever) is a particular form of array and deserves to be a part of the notation.
If the history of a notation is of relevance and interest then it's a history of ideas that grow and change. Insights that go toward formulating those ideas are therefore relevant. --[[User:Phil Last|Phil Last]] ([[User talk:Phil Last|talk]]) 22:55, 19 August 2022 (UTC)