From 7403b1a07e8e6e00010b7c623ce4a8f3724bf088 Mon Sep 17 00:00:00 2001 From: Simon Forman Date: Fri, 25 Mar 2022 15:16:30 -0700 Subject: [PATCH] i and ii --- docs/reference/i.md | 16 +- docs/reference/ii.md | 38 ++- docs/reference/mkref/FuncRef.html | 398 +++++++++++----------- docs/reference/mkref/Functor-Reference.md | 54 +-- 4 files changed, 272 insertions(+), 234 deletions(-) diff --git a/docs/reference/i.md b/docs/reference/i.md index 8491757..10d5589 100644 --- a/docs/reference/i.md +++ b/docs/reference/i.md @@ -2,21 +2,17 @@ ## i -(Basis Combinator) +Basis Combinator Append a quoted expression onto the pending expression. - [Q] i - ----------- - Q - -### Source - - combo(i, [list(P)|S], S, Ei, Eo) :- append(P, Ei, Eo). + [Q] . i + ------------- + . Q ### Discussion -This is probably the fundamental combinator. You wind up using it in all -kinds of places (for example, the `x` combinator can be defined as `dup i`.) +This is a fundamental combinator. It is used in all kinds of places. For +example, the [x] combinator can be defined as `dup i`. diff --git a/docs/reference/ii.md b/docs/reference/ii.md index ac3372a..25c8fd4 100644 --- a/docs/reference/ii.md +++ b/docs/reference/ii.md @@ -2,30 +2,46 @@ ## ii -Basis Function Combinator +Combinator + +Take a quoted program from the stack and run it twice, first under the +top item, then again with the top item. ... a [Q] ii ------------------ ... Q a Q -Gentzen diagram. - ### Definition -if not basis. +> \[[dip]\] [dupdip] [i] -### Derivation +### Example -if not basis. +It's a little tricky to understand how this works so here's an example trace: -### Source - -if basis + 1 2 3 4 [++] • [dip] dupdip i + 1 2 3 4 [++] [dip] • dupdip i + 1 2 3 4 [++] • dip [++] i + 1 2 3 • ++ 4 [++] i + 1 2 4 • 4 [++] i + 1 2 4 4 • [++] i + 1 2 4 4 [++] • i + 1 2 4 4 • ++ + 1 2 4 5 • ### Discussion -Lorem ipsum. +In some cases (like the example above) this is the same effect as using [app2] but most of the time it's not: + + 1 2 3 4 [+] ii + -------------------- + 1 9 + + 1 2 3 4 [+] app2 + ---------------------- + 1 2 5 6 ### Crosslinks -Lorem ipsum. +[app2] +[b] diff --git a/docs/reference/mkref/FuncRef.html b/docs/reference/mkref/FuncRef.html index 0d53cdc..dc9f780 100644 --- a/docs/reference/mkref/FuncRef.html +++ b/docs/reference/mkref/FuncRef.html @@ -1284,15 +1284,13 @@ a F a

sqrt


i

-

(Basis Combinator)

+

Basis Combinator

Append a quoted expression onto the pending expression.

-
   [Q] i
------------
-    Q
-

Source

-
combo(i, [list(P)|S], S, Ei, Eo) :- append(P, Ei, Eo).
+
   [Q] . i
+-------------
+       . Q

Discussion

-

This is probably the fundamental combinator. You wind up using it in all kinds of places (for example, the x combinator can be defined as dup i.)

+

This is a fundamental combinator. It is used in all kinds of places. For example, the x combinator can be defined as dup i.


id

Basis Function Combinator

@@ -1302,7 +1300,7 @@ a F a

if not basis.

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1328,7 +1326,7 @@ a F a

if not basis.

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1336,21 +1334,37 @@ a F a

Lorem ipsum.


ii

-

Basis Function Combinator

+

Combinator

+

Take a quoted program from the stack and run it twice, first under the top item, then again with the top item.

... a [Q] ii
 ------------------
  ... Q a Q
-

Gentzen diagram.

Definition

-

if not basis.

-

Derivation

-

if not basis.

-

Source

-

if basis

+
+

[dip] dupdip i

+
+

Example

+

It’s a little tricky to understand how this works so here’s an example trace:

+
      1 2 3 4 [++] • [dip] dupdip i
+1 2 3 4 [++] [dip] • dupdip i
+      1 2 3 4 [++] • dip [++] i
+             1 2 3 • ++ 4 [++] i
+             1 2 4 • 4 [++] i
+           1 2 4 4 • [++] i
+      1 2 4 4 [++] • i
+           1 2 4 4 • ++
+           1 2 4 5 •

Discussion

-

Lorem ipsum.

+

In some cases (like the example above) this is the same effect as using app2 but most of the time it’s not:

+
   1 2 3 4 [+] ii
+--------------------
+        1 9
+
+   1 2 3 4 [+] app2
+----------------------
+       1 2 5 6
-

Lorem ipsum.

+

app2 b


infra

(Combinator)

@@ -1371,9 +1385,9 @@ a F a

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1389,9 +1403,9 @@ a F a

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1404,9 +1418,9 @@ a F a

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1426,9 +1440,9 @@ a F a

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1441,9 +1455,9 @@ a F a

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1456,9 +1470,9 @@ a F a

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1471,9 +1485,9 @@ a F a

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1486,9 +1500,9 @@ a F a

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1501,9 +1515,9 @@ a F a

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1516,9 +1530,9 @@ a F a

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1531,9 +1545,9 @@ a F a

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1549,9 +1563,9 @@ a F a

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1564,9 +1578,9 @@ a F a

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1579,9 +1593,9 @@ a F a

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1594,9 +1608,9 @@ a F a

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1623,9 +1637,9 @@ a F a

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1640,7 +1654,7 @@ a F a ... A

Definition

[stack] dip infra first
-

Derivation

+

Derivation

... [P] nullary
 ... [P] [stack] dip infra first
 ... stack [P] infra first
@@ -1658,9 +1672,9 @@ a F a

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1673,9 +1687,9 @@ a F a

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1688,9 +1702,9 @@ a F a

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1703,9 +1717,9 @@ a F a

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1724,9 +1738,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1739,9 +1753,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1754,9 +1768,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1769,9 +1783,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1784,9 +1798,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1799,9 +1813,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1814,9 +1828,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1829,9 +1843,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1844,9 +1858,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1859,9 +1873,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1886,9 +1900,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1901,9 +1915,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1916,9 +1930,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1931,9 +1945,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1946,9 +1960,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1961,9 +1975,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -1985,9 +1999,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2000,9 +2014,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2016,9 +2030,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2031,9 +2045,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2046,9 +2060,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2068,9 +2082,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2083,9 +2097,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2098,9 +2112,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2113,9 +2127,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2128,9 +2142,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2152,9 +2166,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2167,9 +2181,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2182,9 +2196,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2202,9 +2216,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2217,9 +2231,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2232,9 +2246,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2247,9 +2261,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2262,9 +2276,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2277,9 +2291,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2292,9 +2306,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2307,9 +2321,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2322,9 +2336,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2337,9 +2351,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2366,9 +2380,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2381,9 +2395,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2396,9 +2410,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2411,9 +2425,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2426,9 +2440,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2441,9 +2455,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2457,9 +2471,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2472,9 +2486,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2487,9 +2501,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2502,9 +2516,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2517,9 +2531,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2532,9 +2546,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2547,9 +2561,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2565,9 +2579,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2593,9 +2607,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2621,9 +2635,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2639,9 +2653,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2667,7 +2681,7 @@ a+b a-b
   [A ...] uncons
 --------------------
       A [...]
-

Source

+

Source

func(uncons, Si, So) :- func(cons, So, Si).

Discussion

This is the inverse of cons.

@@ -2680,9 +2694,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2695,9 +2709,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2710,9 +2724,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2725,9 +2739,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2740,9 +2754,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2755,9 +2769,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2770,9 +2784,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2785,9 +2799,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2810,9 +2824,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

@@ -2825,9 +2839,9 @@ a+b a-b

Gentzen diagram.

Definition

if not basis.

-

Derivation

+

Derivation

if not basis.

-

Source

+

Source

if basis

Discussion

Lorem ipsum.

diff --git a/docs/reference/mkref/Functor-Reference.md b/docs/reference/mkref/Functor-Reference.md index 2efc959..d5e089b 100644 --- a/docs/reference/mkref/Functor-Reference.md +++ b/docs/reference/mkref/Functor-Reference.md @@ -1862,23 +1862,19 @@ This is another function that has to wait on the numeric tower. ## i -(Basis Combinator) +Basis Combinator Append a quoted expression onto the pending expression. - [Q] i - ----------- - Q - -### Source - - combo(i, [list(P)|S], S, Ei, Eo) :- append(P, Ei, Eo). + [Q] . i + ------------- + . Q ### Discussion -This is probably the fundamental combinator. You wind up using it in all -kinds of places (for example, the `x` combinator can be defined as `dup i`.) +This is a fundamental combinator. It is used in all kinds of places. For +example, the [x] combinator can be defined as `dup i`. ------------------------------------------------------------------------ @@ -1959,33 +1955,49 @@ Lorem ipsum. ## ii -Basis Function Combinator +Combinator + +Take a quoted program from the stack and run it twice, first under the +top item, then again with the top item. ... a [Q] ii ------------------ ... Q a Q -Gentzen diagram. - ### Definition -if not basis. +> \[[dip]\] [dupdip] [i] -### Derivation +### Example -if not basis. +It's a little tricky to understand how this works so here's an example trace: -### Source - -if basis + 1 2 3 4 [++] • [dip] dupdip i + 1 2 3 4 [++] [dip] • dupdip i + 1 2 3 4 [++] • dip [++] i + 1 2 3 • ++ 4 [++] i + 1 2 4 • 4 [++] i + 1 2 4 4 • [++] i + 1 2 4 4 [++] • i + 1 2 4 4 • ++ + 1 2 4 5 • ### Discussion -Lorem ipsum. +In some cases (like the example above) this is the same effect as using [app2] but most of the time it's not: + + 1 2 3 4 [+] ii + -------------------- + 1 9 + + 1 2 3 4 [+] app2 + ---------------------- + 1 2 5 6 ### Crosslinks -Lorem ipsum. +[app2] +[b] --------------------