Haskell Isn't for Everyone
-
I stopped posting on programmers.stackexchange years ago, but I was curious after reading this article so I went back to see what was going on. This was on the front page:
My first thought was: dude, if using an equal sign in a type declaration bothers you that much, your problems with Haskell are just beginning.
What's especially interesting is that the top-voted and accepted answer advocates turning on a GHC extension to use
::
instead of=
, which is probably OK if no one else will ever read your code.
-
I saw the word Haskell and immediately blanked out. I believe this to be an immune reaction borne out of trying to learn functional programming.
Glancing at your post in between spasms, it seems to be about lizard people who are against equality. I agree, that's a WTF. Equality is for everyone.
-
I saw the word Haskell and immediately blanked out. I believe this to be an immune reaction borne out of trying to learn functional programming.
Is there a support group for that sort of thing? I'm sure you're not the only one who has had that problem.
-
I saw the title and my mind automatically revised it to "Haskell Isn't For Anyone."
For what it's worth, I don't think I'd recognize Haskell code if I was punched in the face with it.
-
It's not that bad, I made a lot of progress over the years. I can now point on the doll where Haskell touched me without going into a catatonic state.
-
I saw this on Haskell Weekly News a few years ago:
I was TA for a C++ programming course aimed at 1st year physics once.
Some girl asked for help "i wrote pseudo-code but I cannot translate it to C++".
Her pseudo-code was valid haskell. I cried.This is valid Haskell code and implements the equivalent of a nullable type:
data CanHaz a = Haz a | ButIEatedIt
-
For what it's worth, I don't think I'd recognize Haskell code if I was punched in the face with it.
I don't think I'd bother trying to recognize any code if I was being punched in the face.
-
I saw this on Haskell Weekly News a few years ago:
[the real world is] an implementation detail of IO, pay it no mind
Vaguely valid for most low-level languages (like C.)
-
[the real world is] an implementation detail of IO, pay it no mind
data Realworld = IOimplementation | PayNoMind
uh, right?
-
I don't think I'd bother trying to recognize any code if I was being punched in the face.
I dunno. It's a pretty good way of identifying your assailant to the police.
"Yeah, I didn't get his name, but he was of average build, a little taller than me, oh, and he had a bubble sort tattooed on his knuckles."
-
-
No need for stereotyping, now.
Yeah, just because they're gang-banger programs doesn't necessarily mean they're too stupid to implement a good sort algorithm.
-
Yeah, just because they're gang-banger programs doesn't necessarily mean they're too stupid to implement a good sort algorithm.
It'd be a shame if something happened to your list.
-
It'd be a shame if something happened to your list.
What kind of thing?
filed under: print(type(thing))
-
punch mergesort face
He literally rearranged his face.
-
-
This thread makes me wonder if I've got what it takes to try Haskell. But there be dragons and I be scared.
-
You can check out Learn You a Haskell. If what's in the book makes sense to you, you should be good to go.
-
You can check out Learn You a Haskell. If what's in the book makes sense to you, you should be good to go.
Blocked by mod_slotlimit. More information about this error may be available in the server error log.
Good start!
-
Thanks, I'll take a look.
-
You can check out Learn You a Haskell.
Is the book title a reference to common word order in Haskell?
-
No idea, but apparently there's been some discussion of the topic on stackexchange:
-
No, it's just hipster-talk.
-
Haskell has always had a bit of a hipster stink on it. But then, @antiquarian like it, too...
-
No, it's just hipster-talk.
Man, hipsters have the best tech. They are the nerdy equivalent of gays and fashion.
-
Haskell has always had a bit of a hipster stink on it. But then, @antiquarian like it, too...
I was using Haskell before it was cool.
-
I saw the word Haskell and immediately blanked out. I believe this to be an immune reaction borne out of trying to learn functional programming.
I saw the title and my mind automatically revised it to "Haskell Isn't For Anyone."
At least you guys were never forced to learn Prolog.
-
At least you guys were never forced to learn Prolog.
I played around a bit with Prolog. Unlike other functional languages, I can actually see this one filling a niche normal languages are less suited for. Although, I've heard performance become an issue once problems become more complicated (because it's basically using brute force approach for everything).
-
At least you guys were never forced to learn Prolog.
No, instead, we were given an assignment and told to do it in Prolog. No teaching beforehand. They gave us some sample code, though...
Although, I've heard performance become an issue once problems become more complicated (because it's basically using brute force approach for everything).
Apparently if you re-implement the same code in C, it's far, FAR faster. No one uses Prolog outside of CS courses.
-
-
Prolog
GAAAH! WE'RE UNDER FIRE! COVER ME, COVER ME! DAMN, WE NEED A MEDIC, NOW!
...sorry, I had Prolog on the first year. It... sometimes happens.
On a serious note, it's not that bad of a language... if you know very exactly what you're doing. Otherwise you'll type out a hundred rules or so, call a function to determine some output, and get
- False.
And debugging is some arcane shit there. This thing makes using WinDbg on dumps outright user-friendly. And it's not even the arcane commands that do you in, it's how the language is constructed, period.
-
Man, hipsters have the best tech. They are the nerdy equivalent of gays and fashion.
As a fashion-impaired, gay, non-hipster techy, I find your comment offensive. Actually, no, just amusing. Sorry, I get those confused sometimes.
I think I'm going to go compile some Scheme to z80 and print the resulting machine code on a handbag. Ebay for $200, yes?
-
-
I actually liked learning Prolog in university, as it was radically different from anything else I had done and doing the assignments was a nice challenge. Never touched it since then.
-
So Discourse sent me to this thread that I haven't seen before. I'm reading it and I see a post from @dhromed. He's back! I have a happy! Then I notice that this is ancient necro'd thread and @dhromed isn't back and now I have a sad.
Thanks Discourse.
And now I have another sad because Discourse has no sad face emoticon.
-
I played around a bit with Prolog. Unlike
otherfunctional languages,I can actually see this one fillinglogic programming fills a niche normal languages are less suited for.FTFY
Also, I disagree. I mean, it's a great concept in theory, but I'm pretty sure noone has ever written anything useful in Prolog. There are some useful Haskell programs, though.
-
Also, I disagree. I mean, it's a great concept in theory, but I'm pretty sure noone has ever written anything useful in Prolog. There are some useful Haskell programs, though.
The main problem is, it is stupid to treat this as a full-blown language. Prolog needs to be implemented as a DSL you can use piecemeal within other languages, like RegExp. If I had a Prolog plugin for C# or javascript, there were a few places I would have seriously considered using it.
-
I saw the word Haskell and immediately blanked out. I believe this to be an immune reaction borne out of trying to learn functional programming.
Glancing at your post in between spasms, it seems to be about lizard people who are against equality. I agree, that's a WTF. Equality is for everyone.
Actually, it's about frog people.
-
When I was at school, I had a course in Prolog. They mentioned several projects where it was used, but only one I can still name: A program to diagnose various rare diseases. Prolog is well suited to the job. But any kind of GUI or so would have ben better done in an imperative language.
But I have to confess I rather disliked the syntax and especially the editor ("wtf?! why is this false? Oh it works...oh now the editor crashed...). But I think the knowledge helped me to grok functional concepts in R and C# years later.
-
-
-
-
So, it's 185%? WTF?
-
-
So the answer isn't 185%?
-
So the answer isn't 185%?
It's like some Austrian dude's cat: it's both 90% and 95% and probably FILE_NOT_FOUND too
-
Shouldn't you be using Etsy instead?
I did say "non-hipster", right?
And now I have another sad because Discourse has no sad face emoticon.
:( This is supposed to be "frowning". It looks like the sort of face one makes upon soiling oneself in public with no way of sneaking to the loo. This face should be shouting, "And then they're going to eat me!" Unfortunately, :/ in the default font looks more like someone with a major facial injury than an expression.
It's like some Austrian dude's cat: it's both 90% and 95% and probably FILE_NOT_FOUND too
That depends on what your definition of "is" is.
-
I did say "non-hipster", right?
I assumed that was a lie.
Unfortunately, :/ in the default font looks more like someone with a major facial injury than an expression.
That's why I type colon backslash frontslash, so it looks like you typed it--which I see Discurse has declined to convert. I would swear the last time I quoted one of those it did get converted to an emoji.
-
It's like some Austrian dude's cat: it's both 90% and 95% and probably FILE_NOT_FOUND too
All at the same time.
-
but I'm pretty sure noone has ever written anything useful in Prolog.
Define "useful."A lot of research on program analysis is done in Datalog, which is a subset of Prolog. This research is what feeds into production to make compilers awesome. For example, one thing optimization depends on is an accurate points-to analysis (or alias analysis); you can actually get a pretty darn good points-to analysis in datalog.
I doubt that the Datalog survives into any real production compiler (maybe one of the weirder ones like GHC), but the datalog prototypes are often capable of handling very large, real-world programs.