Re:Leaving Haskell Behind
by friend_and_foe on Thursday August 24, 2023 @04:15PM
(#37253976)
Yeah most tooling sucks. I think tooling in general was a bad idea. A compiler and an interactive shell/interpreter are all you need, you look at NPM and the current state of the python package management system, a total disaster. I personally would rather use a language where I had to include all dependencies within my program, rather than automatically fetching them from a remote server, deal with versions and version locks, all that stuff was a bad idea.
[ Parent
| on HN ]
Re:Leaving Haskell Behind
by throwawaymaths on Thursday August 24, 2023 @04:19PM
(#37254020)
> A compiler and an interactive shell/interpreter are all you need
You might also want a good testing in the lang or stdlib, and a documentation system.
Re:Leaving Haskell Behind
by friend_and_foe on Thursday August 24, 2023 @10:20PM
(#37257148)
Well the thing about testing with Haskell, the type system ensures that you're not going to have the most common bugs. If there's an error, it's probably an error in your logic or you did some math wrong or something like that. So testing, you'd basically write tests for your mental model of how the program should operate. And because of the type system you're probably going to use unsafe for a lot of test code.
Re:Leaving Haskell Behind
by throwawaymaths on Thursday August 24, 2023 @10:31PM
(#37257254)
Clearly the type system is comprehensively self documenting too.
Python and JavaScript both had their various fragmented package management systems added well after the language was invented and suffer for it. JavaScript is especially hobbled by the need for an intermediary bundling step.
More modern languages like Rust, where tooling was carefully designed in tandem with the initial language release, fare much better in this regard.