HigherOrderCO / HigherOrderCO/Kind
Syntax in the explanation
- Dominant language
- Haskell
- Stars
- 3.8k
- Forks
- 152
- PR merge metrics
- No merged PRs in 30d
Description
I was reading https://github.com/HigherOrderCO/Kind1/blob/master/blog/1-beyond-inductive-datatypes.md, and there's one part I don't quite understand.
```
// Natural numbers
Nat: Type
self(P: Nat -> Type) ->
(zero: P(Nat.zero)) ->
(succ: (pred: Nat) -> P(Nat.succ(pred))) ->
P(self)
```
If it's like the code below, it makes sense to me.
```
// Natural numbers
Nat: Type
(self : Nat) ->
(P: Nat -> Type) ->
(zero: P(Nat.zero)) ->
(succ: (pred: Nat) -> P(Nat.succ(pred))) ->
P(self)
```
So what is `self`?
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.