37 lines
929 B
Markdown
37 lines
929 B
Markdown
------------------------------------------------------------------------
|
|
|
|
## app2
|
|
|
|
Combinator
|
|
|
|
Like [app1](#app1) with two items.
|
|
|
|
... y x [Q] . app2
|
|
-----------------------------------
|
|
... [y ...] [Q] . infra first
|
|
[x ...] [Q] infra first
|
|
|
|
### Definition
|
|
|
|
> \[[grba] [swap] [grba] [swap]\] [dip] \[[infrst]\] [cons] [ii]
|
|
|
|
### Discussion
|
|
|
|
Unlike [app1](#app1), which is essentially an alias for [unary](#unary),
|
|
this function is not the same as [binary](#binary). Instead of running
|
|
one program using exactly two items from the stack and pushing one
|
|
result (as [binary](#binary) does) this function takes two items from the
|
|
stack and runs the program twice, separately for each of the items, then
|
|
puts both results onto the stack.
|
|
|
|
This is not currently implemented as parallel processes but it can (and
|
|
should) be done.
|
|
|
|
### Crosslinks
|
|
|
|
[app1](#app1)
|
|
[app3](#app3)
|
|
[appN](#appN)
|
|
[unary](#unary)
|
|
|