aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rw-r--r--doc/block.md8
-rw-r--r--doc/control.md14
-rw-r--r--doc/syntax.md1
3 files changed, 1 insertions, 22 deletions
diff --git a/doc/block.md b/doc/block.md
index 50bbb154..27018939 100644
--- a/doc/block.md
+++ b/doc/block.md
@@ -154,7 +154,7 @@ A header does not need to include all inputs, as shown by the `F _op_ val:` head
{ _𝕣: # 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](#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
@@ -213,9 +213,3 @@ This structure is still constrained by the rules of block bodies: each instance
{ 0=n←≠𝕩 ? ∞ ; n } "abc"
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/doc/control.md b/doc/control.md
index fea4f8e7..c6cfcf11 100644
--- a/doc/control.md
+++ b/doc/control.md
@@ -249,17 +249,3 @@ The `While` loop alone allows syntax similar to the `For` loop. Perform any init
1: c↩1+3×c
}
}⟩
-
-### Break and continue
-
-In a `While` or `For` loop, [returns](block.md#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/doc/syntax.md b/doc/syntax.md
index c1b73050..ceb43afe 100644
--- a/doc/syntax.md
+++ b/doc/syntax.md
@@ -18,7 +18,6 @@ Glyph(s) | Meaning
`←` | [Define](expression.md#assignment)
`⇐` | [Export](expression.md#exports)
`↩` | [Change](expression.md#assignment)
-`→` | [Return](block.md#returns)
`⋄,` or newline | Statement or element [separator](#separators)
`⟨⟩` | [List](#list-notation) (rank-1 array)
`‿` | [Strand](#list-notation) (lightweight list syntax)