This is an interesting idea but is there any description of the soundness of this approach? Any functionality capable of subsuming not just inductive types but higher-inductive types is going to be very subtle. I looked around on the repository but I can't find any formal description of the language or type theory, which is worrying for a proof tool.
So, on one hand I totally think there’s some really cool expressivity in these “everything is a lambda” language experiments.
On the other hand, it makes efficient runtime (runtime is a tricky word here ;) ) representation of data types a bit more opaque! Or at the very least I’ve seen little work that attacks that problem.
That said, perhaps all the optimization tricks developed for self and small talk etc are the answer here?