3 ms·
Aside from the zero/one thing, if I'm understanding this right, Nock is based on the SKI combinator calculus, where the combinators are S: λxyz.xz(yz) K: λxy.
by jdpage 12y ago
Aside from the zero/one thing, if I'm understanding this right, Nock is based on the SKI combinator calculus, where the combinators are
S: λxyz.xz(yz)
K: λxy.x
I: λx.x
From there, you can express anything from the lambda calculus, and vice-versa. So I think it's reasonable to say that Nock is just a machine-friendly way of expressing the lambda calculus.
- urbit 12y agoI wouldn't say it's based on SKI - just relatively similar. There are a lot of ways to skin this cat. SKI is obviously a lot simpler mathematically, but I wouldn't want to try to use it as a compiler target...
- jacquesm 12y agoThe 'I' is optional, all you need is S and K. I = (SKK) You can go simpler still: Iota.