4 ms·
I agree. I don't know Haskell but this guide sure turned me off of it. They seem to try and do their best at showing the most complicated and unappealing aspect
by giladvdn 15y ago
I agree. I don't know Haskell but this guide sure turned me off of it. They seem to try and do their best at showing the most complicated and unappealing aspects of the language. Even the basic HelloWorld program demonstrated is weird and long and I get the feeling that Haskell is convoluted and not worth it.
- kscaldef 15y agolong? There's 1 import statement, 1 optional type declaration, and 2 lines of code. It could be just the import and 1 line of code, but that would violate 2 Haskell best practices: include explicit type declarations for your public interface, and separate pure and impure functionality. Honestly, if the intent were to be pedagogical in this specific regard (which is isn't), I would say that the example is unnecessarily terse (which is why you describe it as "weird").
- davidw 15y agoI wouldn't judge Haskell by this guide. It just made me smile a bit as it seemed to put the cart before the horse, as well as the guy who made the cart, and the people who made the road.
- ionfish 15y agoI'm a bit baffled by this response. If you go to the front page of haskell.org there is a 'Learn Haskell' section with six links. This is not one of them. Nowhere in the article does it claim to be a beginner's guide to Haskell. It doesn't make the mistake you attribute to it; this is entirely a projection on your and others' part.
- davidw 15y agoWhy do you think I'd make that projection from an article called "How to write a Haskell program"? The title has two meanings, and you are seeing "how a Haskell program ought to be written", whereas other people are seeing it as a tutorial that explains... well, "how to write a Haskell program". And there are definitely some steps in there, it's not merely a set of guidelines. So I think the second interpretation is not entirely unexpected, since the link goes directly to it with no explanation for those of us who are not familiar with Haskell, rather than, as you say, to the front page of Haskell's site. That's where I'm getting the "neither here nor there" from. I have no axe to grind with Haskell, and indeed counseled the other poster to not be put off by what he (and I) mistakenly thought was a poorly done tutorial.
- ionfish 15y agoTitles invariably fail to capture the entire content of the article they introduce; if they succeeded, there would be no need to write the article. Perhaps this particular title is problematic because it is apparently confusing outside its original context of presentation, as part of a corpus of Haskell guides on the haskell.org wiki, linked to (for example) by other articles dealing with prerequisites to this one, such as learning the language. However, in its original context it makes perfect sense and the meaning is clear. If I had submitted the article here I would probably have changed the title in an attempt to impart some of that context. The purpose of the article, though, is consistent, and the execution is reasonably thorough. My confusion about your reaction stems not from the assumption that the title perfectly encapsulates the intentions of the article—it doesn't—but from the fact that you apparently made no attempt to understand the original context of presentation, instead going on about it putting the cart before the horse and generally making all sorts of (incorrect) presumptions about the goals of the authors and its place in the community documentation generally. I agree it's not merely a set of guidelines; I said it had a normative aspect, not that that captured the entirety of its purpose or content. It's a guide: the concept could be summarised as "Here's the way we write Haskell programs, we think these processes and tools are broadly speaking a good idea, and if you follow them you won't go too far wrong." In other words, it's "How to write a maintainable Haskell program", not "How to write your first Haskell program", or "How to write a Haskell program simple enough not to need a build system or a test suite or revision control or be made publicly available to anyone". Yes, one can write a Haskell program in a single file and then compile it with `ghc --make myprogram`, but that's not a good idea if one's program is thousands of lines of code, depends on multiple libraries, exposes an API, and so on. It's not "neither here nor there"; it's definitely there, which is not where you expected it to be based on the title, but what do you expect from a totally decontextualised link on a news site?
- davidw 15y agoIf you are annoyed that I didn't "get it" after a cursory glance at the site, you have a couple of choices: * Decide that I'm stupid or a troll and ignore what I have to say. * Think about the presentation and framing of said content. For instance, what impact would it have to lead with a box "if you're looking for Haskell tutorials, go here, this is a guide to the best practices for creating and maintaining Haskell projects" ? I don't really care one way or another. I do, however, think that the defensive mentality (and the presumption of malice or stupidity) on display is not generally a good one for communities who wish to attract people to them.
- ionfish 15y agoYou're missing the point. This is not meant to be an introductory tutorial explaining the language; it's a guide to best-practice Haskell development, giving the reader an overview of the basic toolchain and how to use it. Please see my response to davidw's comment for a more complete articulation of this point.