From 95e8cc599f9556d5758b44b491c1e00320a723be Mon Sep 17 00:00:00 2001 From: Marshall Lochbaum Date: Tue, 6 Apr 2021 10:09:11 -0400 Subject: Typo --- docs/doc/train.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'docs/doc/train.html') diff --git a/docs/doc/train.html b/docs/doc/train.html index 23348229..d55bb290 100644 --- a/docs/doc/train.html +++ b/docs/doc/train.html @@ -6,7 +6,7 @@

Function trains

Trains are an important aspect of BQN's tacit programming capabilities. In fact, a crucial one: with trains and the identity functions Left () and Right (), a fully tacit program can express any explicit function whose body is a statement with 𝕨 and 𝕩 used only as arguments (that is, there are no assignments and 𝕨 and 𝕩 are not used in operands or lists. Functions with assignments may have too many variables active at once to be directly translated but can be emulated by constructing lists. But it's probably a bad idea). Without trains it isn't possible to have two different functions that each use both arguments to a dyadic function. With trains it's perfectly natural.

-

BQN's trains are the same as those of Dyalog APL, except that Dyalog is missing the minor convenience of BQN's Nothing (·). There are many Dyalog-based documents and videos trains you can view on the APL Wiki.

+

BQN's trains are the same as those of Dyalog APL, except that Dyalog is missing the minor convenience of BQN's Nothing (·). There are many Dyalog-based documents and videos on trains you can view on the APL Wiki.

2-train, 3-train

Trains are an adaptation of the mathematical convention that, for example, two functions F and G can be added to get a new function F+G that applies as (F+G)(x) = F(x)+G(x). With a little change to the syntax, we can do exactly this in BQN:

↗️
    (⊢+⌽) 5
-- 
cgit v1.2.3