4 ms·
This is a bit harsh. It’s still early in the language’s development, and the quality of the compiler/generated code shouldn’t be conflated with the principles o
by docandrew 4y ago
This is a bit harsh. It’s still early in the language’s development, and the quality of the compiler/generated code shouldn’t be conflated with the principles of the language itself.
- still_grokking 4y agoIt does crash "on principle" though. That's not an implementation bug! If you `recur` less often it works just fine. Like I said, the language as such can't catch such bugs, as I see it.
- docandrew 4y agoThat’s not a bug, it’s a limitation of your operating environment. Increase the stack size and it would work. What else would you expect to happen?
- still_grokking 4y ago> That’s not a bug, […] Yes, I've mentioned this. > […] it’s a limitation of your operating environment. No, it isn't. Memory is finite. If your language doesn't handle this fact it's inherently unsafe, and a ticking time bomb. > What else would you expect to happen? Simply: No random crashes. Especially as such a crash relies on the environment where the code is run. So it may work just fine "on your machine" but than crash in production… That's imho a big no-no for anything that wants to be a "safe systems language" (especially as the post is mentioning things like nuclear power plants as target audience).
- JonChesterfield 4y agoUh, that one is an implementation bug. It's presumably compiling the call to recur as a normal C call. It should either be a goto (or loop, w/e) or use the musttail compiler extension.