From d4f74f7735d8c5497a104ae47c8c020c5382f01f Mon Sep 17 00:00:00 2001 From: HumanEquivalentUnit Date: Mon, 11 Jul 2022 18:52:30 +0100 Subject: Update arrayrepr.md I think "remove the space" should be "remove the ligature"(?) --- doc/arrayrepr.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'doc/arrayrepr.md') diff --git a/doc/arrayrepr.md b/doc/arrayrepr.md index 1047c187..c7b0acef 100644 --- a/doc/arrayrepr.md +++ b/doc/arrayrepr.md @@ -143,7 +143,7 @@ Strand notation is mainly useful for simple elements that don't require parenthe In APL two or more arrays that are next to each other in the code are combined into a list, a convention known as [stranding](https://aplwiki.com/wiki/Strand_notation). So `2 3 5 + 1` adds a list to a number. This looks substantially cleaner than a BQN list, so it's reasonable to ask: why give it up? I admit I've been jealous of that clean look at times. But I'm also finding I view it with a certain unease: what's hiding in that space? -This feeling comes because the language is doing something I didn't ask it to, and it's well justified. Consider the BQN expression `a +˝∘×⎉1‿∞ b` for a matrix product. If we remove the space then we have `…⎉1 ∞ b`. There's no good rule to say which of the three subjects `1`, `∞`, and `b` to strand together. For modifiers like Rank and [Depth](depth.md#the-depth-modifier) we'd like stranding to bind more tightly than modifier application, but in order to actually use arguments for these modifiers the modifier application should take precedence. Similar but simpler cases show up more often when binding an argument to a function. The difference between the following two statements is obvious in BQN, but with space-for-stranding one of them would require a complicating parenthesis. +This feeling comes because the language is doing something I didn't ask it to, and it's well justified. Consider the BQN expression `a +˝∘×⎉1‿∞ b` for a matrix product. If we remove the ligature then we have `…⎉1 ∞ b`. There's no good rule to say which of the three subjects `1`, `∞`, and `b` to strand together. For modifiers like Rank and [Depth](depth.md#the-depth-modifier) we'd like stranding to bind more tightly than modifier application, but in order to actually use arguments for these modifiers the modifier application should take precedence. Similar but simpler cases show up more often when binding an argument to a function. The difference between the following two statements is obvious in BQN, but with space-for-stranding one of them would require a complicating parenthesis. 3 1⊸+⊸× 5 -- cgit v1.2.3