4 ms·
There are at least a few nascent statically typed languages (as in, full static typing rather than gradual) which nevertheless let code with type errors compile
by zogrodea 2y ago
There are at least a few nascent statically typed languages (as in, full static typing rather than gradual) which nevertheless let code with type errors compile for the sake of testing.
The two that I know of are Darklang [0] and Roc [1] which aim to let you compile code with type errors for the same reason you suggest.
[0] "Dark is designed for continuous delivery. As such, we don’t like requiring you to make large scale changes across your program, like changing a type everywhere. Instead, we want you to quickly discover that bad ideas won’t work, without first requiring you to propagate the type changes throughout your program."
https://blog.darklang.com/real-problems-with-functional-languages/ https://blog.darklang.com/real-problems-with-functional-lang...
[1] "If you like, you can run a program that has compile-time errors like this. (If the program reaches the error at runtime, it will crash.)"
https://www.roc-lang.org/friendly https://www.roc-lang.org/friendly
- valcron1000 2y agoLet me introduce you to `-fdefer-type-errors` in GHC Haskell: https://ghc.gitlab.haskell.org/ghc/doc/users_guide/exts/defer_type_errors.html https://ghc.gitlab.haskell.org/ghc/doc/users_guide/exts/defe...
- zogrodea 2y agoThat's pretty cool! Wouldn't have guessed that Haskell would has had this feature since 2015.