From 80de67787aa1a7e186c7f3358ec4b45741f15ff5 Mon Sep 17 00:00:00 2001 From: Marshall Lochbaum Date: Mon, 29 Nov 2021 21:03:34 -0500 Subject: =?UTF-8?q?Remove=20=E2=86=92=20from=20docs=20and=20REPL?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/doc/block.html | 5 +---- docs/doc/control.html | 12 ------------ docs/doc/syntax.html | 4 ---- 3 files changed, 1 insertion(+), 20 deletions(-) (limited to 'docs/doc') diff --git a/docs/doc/block.html b/docs/doc/block.html index 491fd87d..5e957e1e 100644 --- a/docs/doc/block.html +++ b/docs/doc/block.html @@ -181,7 +181,7 @@ { _𝕣: # 1-Modifier { _𝕣_: # 2-Modifier -

For immediate blocks, this is the only type of header possible, and it must use an identifier as there is no applicable special name. However, this name can't be used, except for returns: it doesn't make sense to refer to a value while it is still being computed!

+

For immediate blocks, this is the only type of header possible, and it must use an identifier as there is no applicable special name. However, the name can't be used: it doesn't make sense to refer to a value while it is still being computed!

Multiple bodies

Blocks that define functions and deferred modifiers can include more than one body, separated by semicolons ;. The body used for a particular evaluation is chosen based on the arguments the the block. One special case applies when there are exactly two bodies either without headers or with labels only: in this case, the first applies when there is one argument and the second when there are two.

↗️
    Ambiv ← { ⟨1,π•©βŸ© ; ⟨2,𝕨,π•©βŸ© }
@@ -242,6 +242,3 @@ ERROR
 ERROR
 

This is the main drawback of predicates relative to guards in APL dfns (also written with ?), while the advantage is that it allows multiple expressions, or extra conditions, after a ?. It's not how I would have designed it if I just wanted to make a syntax for if statements, but it's a natural fit for the header system.

-

Returns

-

This feature is not yet included in any BQN implementation.

-

The glyph β†’ indicates an early return from a block. It must be preceded either by one of the self-reference special names π•Š or 𝕣 or by an internal name for a containing block. The combination of name and return tokenβ€”like Fβ†’, let's sayβ€”is a function that returns from the current instance of the indicated block. If that instance has already returned, then it instead results in an error.

diff --git a/docs/doc/control.html b/docs/doc/control.html index 3c3c2f1a..8ffdc5bc 100644 --- a/docs/doc/control.html +++ b/docs/doc/control.html @@ -205,15 +205,3 @@ } }⟩ -

Break and continue

-

In a While or For loop, returns can be used for either the break or the continue statement (or, for that matter, a multiline break) if available. Returning from the main body, either with π•Šβ†’ or a labelled return, is a functional version of a continue statement. To escape from the loop as a whole, it should be wrapped in a labelled immediate block. Returning from that block using its label breaks the loop. For example, the following loop

-
{brk:
-  sum ← 0 β‹„ even ← ⟨⟩
-  While {𝕀⋄sum<100}β€Ώ{Cnt:
-    brkβ†’βŸ(15≀n) @
-    sum +↩ n
-    Cntβ†’βŸ(2|n) @
-    even βˆΎβ†© n
-  }
-}
-
diff --git a/docs/doc/syntax.html b/docs/doc/syntax.html index 9d4fbc8e..6bf68ada 100644 --- a/docs/doc/syntax.html +++ b/docs/doc/syntax.html @@ -49,10 +49,6 @@ Change -β†’ -Return - - β‹„, or newline Statement or element separator -- cgit v1.2.3