3 ms·
You can specify types in Common Lisp just fine if you so desire: https://lispcookbook.github.io/cl-cookbook/type.html https://lispcookbook.github.io/cl-cookbook
by mepian 4y ago
You can specify types in Common Lisp just fine if you so desire: https://lispcookbook.github.io/cl-cookbook/type.html https://lispcookbook.github.io/cl-cookbook/type.html
- georgia_peach 4y agoYes, I know this. Most people on HN know this. When most of the base libs, built-ins, & legacy code don't declare types, static typing loses a lot of its value. In something like Go/Pascal/Java/Rust/C, if I introduce an impedance mismatch during a re-factor, the compiler catches it in seconds or less, and can tell me every file & line to adjust. In classic Lisp, this becomes a runtime error, and it can be days/weeks/months/years (if ever!) before the bugs are shaken out. In typed Lisp, it's a split between the two. Splitting the difference for the sake of a legacy codebase (like PHP->Hack), or because you've had a language thrust upon you (Javascript->Typescript) is a reasonable choice. To double-down on a predominantly type-declarations-optional language in 2022 is nuts. Lisp is good, but it's not that good.