The I's are done.

This commit is contained in:
Simon Forman 2022-03-25 17:41:31 -07:00
parent 7403b1a07e
commit b59c7a303d
8 changed files with 528 additions and 712 deletions

View File

@ -5,7 +5,7 @@
Function
x y hypot
--------------------------
---------------------------
sqrt(sqr(x) + sqr(y))
### Definition

View File

@ -2,28 +2,10 @@
## id
Basis Function Combinator
Basis Function
The identity function.
Gentzen diagram.
### Definition
if not basis.
### Derivation
if not basis.
### Source
if basis
### Discussion
Lorem ipsum.
### Crosslinks
Lorem ipsum.
Does nothing. It's kind of a mathematical thing, but it occasionally comes in handy.

View File

@ -2,42 +2,20 @@
## ifte
Basis Function Combinator
Combinator
If-Then-Else Combinator :
If-Then-Else combinator, a common and convenient specialization of [branch].
... [if] [then] [else] ifte
---------------------------------------------------
... [[else] [then]] [...] [if] infra select i
... [if] [then] [else] ifte
-------------------------------------------------------
... [else] [then] [...] [if] infra first choice i
Has the effect of grabbing a copy of the stack on which to run the
if-part using infra.
Gentzen diagram.
[if] [then] [else] ifte
---------------------------------------
[if] nullary [else] [then] branch
### Definition
if not basis.
### Derivation
if not basis.
### Source
if basis
### Discussion
Lorem ipsum.
> \[[nullary]\] [dipd] [swap] [branch]
### Crosslinks
Lorem ipsum.
[branch]
[loop]
[while]

View File

@ -2,19 +2,18 @@
## infra
(Combinator)
Combinator
Accept a quoted program and a list on the stack and run the program with
the list as its stack. Does not affect the stack (below the list.)
... [a b c] [Q] infra
---------------------------
c b a Q [...] swaack
... x y z [a b c] [Q] infra
---------------------------------
c b a Q [z y x ...] swaack
### Definition
swons swaack [i] dip swaack
> [swons] [swaack] \[[i]\] [dip] [swaack]
### Discussion

View File

@ -2,28 +2,11 @@
## infrst
Basis Function Combinator
Combinator
infra first
Gentzen diagram.
Does [infra] and then extracts the [first] item from the resulting list.
### Definition
if not basis.
> [infra] [first]
### Derivation
if not basis.
### Source
if basis
### Discussion
Lorem ipsum.
### Crosslinks
Lorem ipsum.

View File

@ -2,32 +2,17 @@
## inscribe
Basis Function Combinator
Create a new Joy function definition in the Joy dictionary. A definition
is given as a quote with a name followed by a Joy expression. for
example:
is given as a quote with a name followed by a Joy expression.
> \[sqr dup mul\] inscribe
### Example
Gentzen diagram.
### Definition
if not basis.
### Derivation
if not basis.
### Source
if basis
[sqr dup mul] inscribe
### Discussion
Lorem ipsum.
This is the only function that modifies the dictionary. It's provided as a
convenience, for tinkering with new definitions before entering them into
the `defs.txt` file. It can be abused, which you should avoid unless you
know what you're doing.
### Crosslinks
Lorem ipsum.

File diff suppressed because it is too large Load Diff

View File

@ -1842,7 +1842,7 @@ item on the top of the stack is a quoted symbol.
Function
x y hypot
--------------------------
---------------------------
sqrt(sqr(x) + sqr(y))
### Definition
@ -1881,75 +1881,35 @@ example, the [x] combinator can be defined as `dup i`.
## id
Basis Function Combinator
Basis Function
The identity function.
Gentzen diagram.
### Definition
if not basis.
### Derivation
if not basis.
### Source
if basis
### Discussion
Lorem ipsum.
### Crosslinks
Lorem ipsum.
Does nothing. It's kind of a mathematical thing, but it occasionally comes in handy.
------------------------------------------------------------------------
## ifte
Basis Function Combinator
Combinator
If-Then-Else Combinator :
If-Then-Else combinator, a common and convenient specialization of [branch].
... [if] [then] [else] ifte
---------------------------------------------------
... [[else] [then]] [...] [if] infra select i
... [if] [then] [else] ifte
-------------------------------------------------------
... [else] [then] [...] [if] infra first choice i
Has the effect of grabbing a copy of the stack on which to run the
if-part using infra.
Gentzen diagram.
[if] [then] [else] ifte
---------------------------------------
[if] nullary [else] [then] branch
### Definition
if not basis.
### Derivation
if not basis.
### Source
if basis
### Discussion
Lorem ipsum.
> \[[nullary]\] [dipd] [swap] [branch]
### Crosslinks
Lorem ipsum.
[branch]
[loop]
[while]
------------------------------------------------------------------------
@ -2003,19 +1963,18 @@ In some cases (like the example above) this is the same effect as using [app2] b
## infra
(Combinator)
Combinator
Accept a quoted program and a list on the stack and run the program with
the list as its stack. Does not affect the stack (below the list.)
... [a b c] [Q] infra
---------------------------
c b a Q [...] swaack
... x y z [a b c] [Q] infra
---------------------------------
c b a Q [z y x ...] swaack
### Definition
swons swaack [i] dip swaack
> [swons] [swaack] \[[i]\] [dip] [swaack]
### Discussion
@ -2033,65 +1992,33 @@ kind of "pocket universe". If the list represents a datastructure then
## infrst
Basis Function Combinator
Combinator
infra first
Gentzen diagram.
Does [infra] and then extracts the [first] item from the resulting list.
### Definition
if not basis.
> [infra] [first]
### Derivation
if not basis.
### Source
if basis
### Discussion
Lorem ipsum.
### Crosslinks
Lorem ipsum.
------------------------------------------------------------------------
## inscribe
Basis Function Combinator
Create a new Joy function definition in the Joy dictionary. A definition
is given as a quote with a name followed by a Joy expression. for
example:
is given as a quote with a name followed by a Joy expression.
> \[sqr dup mul\] inscribe
### Example
Gentzen diagram.
### Definition
if not basis.
### Derivation
if not basis.
### Source
if basis
[sqr dup mul] inscribe
### Discussion
Lorem ipsum.
This is the only function that modifies the dictionary. It's provided as a
convenience, for tinkering with new definitions before entering them into
the `defs.txt` file. It can be abused, which you should avoid unless you
know what you're doing.
### Crosslinks
Lorem ipsum.
------------------------------------------------------------------------