5 ms·
Good to see that the Haskell community is looking for ways to be more accessible to newcomers. I'm not very familiar with Haskell, but I have long heard that th
by fumplethumb 10y ago
Good to see that the Haskell community is looking for ways to be more accessible to newcomers. I'm not very familiar with Haskell, but I have long heard that the Haskell community wasn't interested in popularity. Has there been a shift in their thinking?
- chriswarbo 10y agoThe Haskell motto is "avoid success at all costs", usually clarified to "avoid 'success at all costs'". In other words, "success" (popularity, widespread use in industry, teaching, etc.) is not a justification for "costs" such as limiting expressiveness, making things less safe, restricting research possibilities, etc. Haskell would prefer to be powerful, safe, efficient, obscure and niche; rather than popular, industry-standard, widely-known, highly compatible, unsafe, insecure, inefficient and restricted (besides, we have loads of languages of this sort!). Crippling the language to make things easier for new users is not an option. However, there are many ways the language could be made easier without impacting any core values. For example, there are long-standing issues with strings, records, error messages, dependency handling, etc. which people are working on. Also, for those who do want to learn Haskell, I've found the community to be very welcoming and tolerant of newbies. Just ignore some of the more math-heavy blog posts (for now, at least), or your head might explode :P
- fumplethumb 10y agoThanks for the reply! I've heard that motto before and didn't understand it until now. Makes perfect sense. To your point about making Haskell easier for newbies without impacting the core values... Rust is a great example of that. Rust can be difficult to learn, but the Rust community does a great job of explaining (and re-explaining in many cases) Rust's approach to newcomers. This is especially true when Rust handles a problem in a way that may be counter-intuitive to the inexperienced. Here's a great example from r/Rust where a new Rust user trashes traits and the Result type: https://www.reddit.com/r/rust/comments/4rev26/why_is_rust_making_things_so_hard/ https://www.reddit.com/r/rust/comments/4rev26/why_is_rust_ma...
- chriswarbo 10y ago> Rust can be difficult to learn, but the Rust community does a great job of explaining (and re-explaining in many cases) Rust's approach to newcomers. Whilst communicating why and how things work is certainly important (all of the Haskell monad tutorials come to mind!), I was actually refering to cases where "Haskell's approach" is known to be bad. For example: http://www.alexeyshmalko.com/2015/haskell-string-types http://www.alexeyshmalko.com/2015/haskell-string-types https://ghc.haskell.org/trac/ghc/wiki/Records https://ghc.haskell.org/trac/ghc/wiki/Records http://foswiki.cs.uu.nl/foswiki/Helium/Features#Messages http://foswiki.cs.uu.nl/foswiki/Helium/Features#Messages
- MustardTiger 10y agoNo. This is not the community's doing. It is FP Complete, a corporation attempting to subvert the haskell community for their financial benefit. The purpose of this site is to make newcomers think the FP complete tools are the tools to use, rather than the official ones.
- tome 10y ago> rather than the official ones What makes them "official"?
- MustardTiger 10y agoWhat makes python "official"?
- tome 10y agoYou're the one who is claiming there are "official" Haskell tools, so back up your claim. What makes them "official"?
- MustardTiger 10y agoI already did. The same thing that makes every other official tool official. Being released by the organization behind the language/platform/whatever.
- tome 10y agoSo who's behind C? C++? Haskell has a language standard and has historically had competing implementations. None of them is "official", nor is any of the infrastructure.
- MustardTiger 10y agoWe're talking about GHC.