spidr
spidr copied to clipboard
Eliminate indexing errors in compiler
We use List and Nat for stack and pointer, respectively. This means we have to handle indexing errors, which risk failing at runtime, and require either use of idris_crash/die, or (slow?) EitherT monad. If instead we use Vect n and Fin n, we can remove this problem at compile time. This would probably require changing the way we handle nested functions, but that might be a good thing on its own.
This might be impossible as we don't want to expose this indexing in the user API