Why is Idris 2 so much faster than Idris 1?
type-driven.org.uk
Why is Idris 2 so much faster than Idris 1?
1–10 of 88 posts
Re: Why is Idris 2 so much faster than Idris 1?
#2Re: Why is Idris 2 so much faster than Idris 1?
#3What language features are needed in order to implement dependent types? Can you implement it on top of existing features of say Rust or Swift?
You don't bolt this functionality on to an existing language; it requires changes to your whole compiler pipeline to be useful.
Re: Why is Idris 2 so much faster than Idris 1?
#4What language features are needed in order to implement dependent types? Can you implement it on top of existing features of say Rust or Swift?
So yes to all of your questions.
Re: Why is Idris 2 so much faster than Idris 1?
#5Re: Why is Idris 2 so much faster than Idris 1?
#6What language features are needed in order to implement dependent types? Can you implement it on top of existing features of say Rust or Swift?
You can implement any language in any language that is Turing complete. Or practically anything with conditionals, looping and recursion. So yes to all of your questions.
If you want dependent types IN Rust or Swift then Turing-completeness won’t help you, because neither of them have Turing-complete type checkers. You’d have to modify the compiler for them (and thus change the language itself).
Re: Why is Idris 2 so much faster than Idris 1?
#7What language features are needed in order to implement dependent types? Can you implement it on top of existing features of say Rust or Swift?
Re: Why is Idris 2 so much faster than Idris 1?
#8It really cool to see a little used lisp have such a great impact.
[1] https://news.ycombinator.com/item?id=15156027
[2] https://blog.racket-lang.org/2020/02/racket-on-chez-status.h...
Re: Why is Idris 2 so much faster than Idris 1?
#9Earlier quoted context omitted.
You can implement any language in any language that is Turing complete. Or practically anything with conditionals, looping and recursion. So yes to all of your questions.
You mean you could write a compiler for Idris (or any other dependent typed language) in a Turing complete language. That’s fine but it’s not a very useful statement. If you want dependent types IN Rust or Swift then Turing-completeness won’t help you, because neither of them have Turing-complete type checkers. You’d have to modify the compiler for them (and thus change the language itself).
Re: Why is Idris 2 so much faster than Idris 1?
#10What language features are needed in order to implement dependent types? Can you implement it on top of existing features of say Rust or Swift?
I'm not sure that this question even makes sense. It's like asking: "What language features are needed in order to implement a borrow checker?" You don't bolt this functionality on to an existing language; it requires changes to your whole compiler pipeline to be useful.