This commit is contained in:
Simon Forman 2022-03-26 12:17:31 -07:00
parent b59c7a303d
commit 0ac20424e8
4 changed files with 436 additions and 458 deletions

View File

@ -2,28 +2,22 @@
## le ## le
Basis Function Combinator Basis Function
Same as a \<= b.
Gentzen diagram. Less-Than-or-Equal-to comparison of the two items on the top of the
stack, replacing them with a Boolean value.
### Definition a b eq
-------------
if not basis. Boolean
(a <= b)
### Derivation
if not basis.
### Source
if basis
### Discussion
Lorem ipsum.
### Crosslinks ### Crosslinks
Lorem ipsum. [cmp]
[eq]
[ge]
[gt]
[lt]
[ne]

View File

@ -2,36 +2,35 @@
## loop ## loop
Basis Function Combinator Basis Combinator
Basic loop combinator. : Expect a quoted program `Q` and a Boolean value on the stack. If the value is false
discard the quoted program, otherwise run a copy of `Q` and `loop` again.
... True [Q] loop false [Q] loop
----------------------- --------------------
... Q [Q] loop
... False [Q] loop
------------------------
...
Gentzen diagram. true [Q] . loop
--------------------------
### Definition . Q [Q] loop
if not basis.
### Derivation
if not basis.
### Source
if basis
### Discussion ### Discussion
Lorem ipsum. This, along with [branch] and [fork], is one of the four main combinators
of all programming. The fourth, sequence, is implied by juxtaposition.
That is to say, in Joy `F G` is like `G(F(...))` in a language bassed on
function application. Or again, to quote the [Joy Wikipedia
entry](https://en.wikipedia.org/wiki/Joy_(programming_language)#Mathematical_purity),
> In Joy, the meaning function is a homomorphism from the syntactic monoid onto the semantic monoid. That is, the syntactic relation of concatenation of symbols maps directly onto the semantic relation of composition of functions.
Anyway, [branch], [fork], amd [loop] are the fundamental combinators in Joy.
Just as [branch] has it's more common and convenient form [ifte],
[loop] has [while].
### Crosslinks ### Crosslinks
Lorem ipsum. [branch]
[fork]
[while]

File diff suppressed because it is too large Load Diff

View File

@ -2024,69 +2024,62 @@ know what you're doing.
## le ## le
Basis Function Combinator Basis Function
Same as a \<= b.
Gentzen diagram. Less-Than-or-Equal-to comparison of the two items on the top of the
stack, replacing them with a Boolean value.
### Definition a b eq
-------------
if not basis. Boolean
(a <= b)
### Derivation
if not basis.
### Source
if basis
### Discussion
Lorem ipsum.
### Crosslinks ### Crosslinks
Lorem ipsum. [cmp]
[eq]
[ge]
[gt]
[lt]
[ne]
------------------------------------------------------------------------ ------------------------------------------------------------------------
## loop ## loop
Basis Function Combinator Basis Combinator
Basic loop combinator. : Expect a quoted program `Q` and a Boolean value on the stack. If the value is false
discard the quoted program, otherwise run a copy of `Q` and `loop` again.
... True [Q] loop false [Q] loop
----------------------- --------------------
... Q [Q] loop
... False [Q] loop
------------------------
...
Gentzen diagram. true [Q] . loop
--------------------------
### Definition . Q [Q] loop
if not basis.
### Derivation
if not basis.
### Source
if basis
### Discussion ### Discussion
Lorem ipsum. This, along with [branch] and [fork], is one of the four main combinators
of all programming. The fourth, sequence, is implied by juxtaposition.
That is to say, in Joy `F G` is like `G(F(...))` in a language bassed on
function application. Or again, to quote the [Joy Wikipedia
entry](https://en.wikipedia.org/wiki/Joy_(programming_language)#Mathematical_purity),
> In Joy, the meaning function is a homomorphism from the syntactic monoid onto the semantic monoid. That is, the syntactic relation of concatenation of symbols maps directly onto the semantic relation of composition of functions.
Anyway, [branch], [fork], amd [loop] are the fundamental combinators in Joy.
Just as [branch] has it's more common and convenient form [ifte],
[loop] has [while].
### Crosslinks ### Crosslinks
Lorem ipsum. [branch]
[fork]
[while]
------------------------------------------------------------------------ ------------------------------------------------------------------------