Slashdot Mirror


Paul Hudak, Co-creator of Haskell, Has Died

Esther Schindler writes: Yale is reporting that Paul Hudak, professor of computer science and master of Saybrook College, died last night after a long battle with leukemia. He was known as one of the principal designers of Haskell, which you probably don't need to be told he defined as "a purely functional programming language."

138 comments

  1. with lazy evaluation by Eunuchswear · · Score: 0

    But I can't be arsed to write any more

    --
    Watch this Heartland Institute video
    1. Re:with lazy evaluation by Pseudonym · · Score: 2

      But you have to, since output has been demanded.

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
    2. Re:with lazy evaluation by Eunuchswear · · Score: 1

      Isn't amazing how dumb slashdot has got these days -- I make a joke about lazy evaluation (ok, maybe not a funny joke, but a joke none the less), and some moron mods it "offtopic".

      Offtopic? Don't they even have a clue about what Haskell is?

      Overrated I could understand, troll or flamebait if you think I'm dissing Hudak, but offtopic?

      --
      Watch this Heartland Institute video
  2. Re:Hudak was a great man by mark-t · · Score: 1

    What are you talking about? Steven Wozniak built the first Apple computer.

  3. Re:Hudak was a great man by Anonymous Coward · · Score: 0

    Woz designed the first Apple computer. Slaves on a chain gang in Steve Jobs garage built the first Apple computer.

  4. Re:Haskell? by Anonymous Coward · · Score: 3, Informative

    You're either trolling or you've missed out on one of the hottest languages since Lisp.

  5. Re:Hudak was a great man by Guy+Harris · · Score: 1

    What are you talking about? Steven Wozniak built the first Apple computer.

    YHBT.

  6. Principle? by Anonymous Coward · · Score: 0

    Which you don't need to be told means "an idea", and not "principal", which means "main". Funny how programmers who learn 50 languages and can make sense of $%$%!!!@#x_stuff&&_do have a hard time with simple english...

    1. Re:Principle? by edittard · · Score: 1

      simple English

      Just sayin'. Not that the original mistake isn't utterly retarded.

      --
      At the bottom of the /. main page it says 'Yesterday's News'. Well they got that right.
    2. Re:Principle? by Anonymous Coward · · Score: 0

      Nah, English is a nationality.

    3. Re:Principle? by Anonymous Coward · · Score: 0

      English is a proper noun and should be capitalized, regardless of the definition you're using at the moment.

    4. Re:Principle? by Anonymous Coward · · Score: 0

      'English' is a proper noun.

      dolt!

  7. Re:Haskell? by Anonymous Coward · · Score: 0

    It's like Erlang and Common LISP got together and a singularity opened up.

  8. Principal, dammit. by Anonymous Coward · · Score: 0

    That is all.

  9. I remember him From Usenet as quite a gentleman by shoor · · Score: 4, Informative

    I posted on one of the Usenet groups (probably sci.lang.functional or sci.lang.haskell) about his book The Haskell School of Expression. It's been awhile, but I vaguely remember posting about a mistake or typo, and he replied right there on Usenet acknowledging the error. He was generally very generous and helpful on the newsgroup.

    --
    In theory, theory and practice are the same; in practice they're different. (Yogi Berra & A. Einstein)
    1. Re:I remember him From Usenet as quite a gentleman by antiperimetaparalogo · · Score: 2

      I posted on one of the Usenet groups (probably sci.lang.functional or sci.lang.haskell) about his book The Haskell School of Expression. It's been awhile, but I vaguely remember posting about a mistake or typo, and he replied right there on Usenet acknowledging the error. He was generally very generous and helpful on the newsgroup.

      A great "eulogy" (sorry for the Greek, i don't know the English word for when you say something nice about a deceased - the Greek is translated as "eu [nice] - logos [word]") - never really tried to understand Haskell, but that "eulogy" was a great expression of what is missing from many current projects/groups.

      --
      Antisthenes: "Wisdom begins by examining the words/names." - excuse my English, i am (slightly...) better with my Greek!
    2. Re:I remember him From Usenet as quite a gentleman by Eunuchswear · · Score: 2

      The English word for eulogy is eulogy.

      You have a nice word? English will rip it out of your hands.

      --
      Watch this Heartland Institute video
    3. Re:I remember him From Usenet as quite a gentleman by antiperimetaparalogo · · Score: 2

      The English word for eulogy is eulogy.

      BUT IT"S GREEK: "eu [nice] - logos [word]".

      You have a nice word?

      Well, being Greeks, yea, we may have some!

      English will rip it out of your hands.

      What? But it's not yours, it's ours. O.K., keep it, it makes barbaric (excuse me, i meant English...) easier for us.

      --
      Antisthenes: "Wisdom begins by examining the words/names." - excuse my English, i am (slightly...) better with my Greek!
    4. Re:I remember him From Usenet as quite a gentleman by Pseudonym · · Score: 1

      O.K., keep it, it makes barbaric (excuse me, i meant English...) easier for us.

      That's not polite.

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
    5. Re:I remember him From Usenet as quite a gentleman by antiperimetaparalogo · · Score: 2

      O.K., keep it, it makes barbaric (excuse me, i meant English...) easier for us.

      That's not polite.

      We Greeks were minding our own business (you know, making up the greatest words in the world), when suddenly... English and its gang (Latin, German. Slavic, etc) comes and steals from us one more word - well, excuse me if i am not so polite, i will try harder!

      --
      Antisthenes: "Wisdom begins by examining the words/names." - excuse my English, i am (slightly...) better with my Greek!
    6. Re:I remember him From Usenet as quite a gentleman by Pseudonym · · Score: 2

      I thought I was making a joke in Greek, since polites is the antonym of barbaros. Did I do it wrong?

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
    7. Re:I remember him From Usenet as quite a gentleman by antiperimetaparalogo · · Score: 3, Informative

      I thought I was making a joke in Greek, since polites is the antonym of barbaros. Did I do it wrong?

      No, you did it (almost*) right - i had to go with my first version, since your "pseudonym" (!) was a hint for me that you may understand it... but i was afraid that too much of the (in)famous Greek pride from a new Slashdot member like me (and some lack of Greek language understanding and Greek humor appreciation from the "barbarus" /. crowd) will send my (/.) "karma" back to "terrible" (from which i just recovered!)...

      * "politis (singular) - polites (plural)" (meaning: 1. (Greek) citizen) is not a direct antonym of "barbaros (singular) - barbari/oi/(us/ous) (plural)" (meaning: 1. -mainly- someone speaking non-Greek; 2. -as a consequence of 1- a non-citizen/Greek/politi; 3. -what is understood by most barbarous- an uncivilized person, i.e.,.... a non-Greek!)

      --
      Antisthenes: "Wisdom begins by examining the words/names." - excuse my English, i am (slightly...) better with my Greek!
    8. Re:I remember him From Usenet as quite a gentleman by swillden · · Score: 1

      English will rip it out of your hands.

      What? But it's not yours, it's ours. O.K., keep it, it makes barbaric (excuse me, i meant English...) easier for us.

      James Nicoll put it best:

      The problem with defending the purity of the English language is that English is about as pure as a cribhouse whore. We don't just borrow words; on occasion, English has pursued other languages down alleyways to beat them unconscious and rifle their pockets for new vocabulary.

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
    9. Re:I remember him From Usenet as quite a gentleman by NoImNotNineVolt · · Score: 1

      I logged in for the first time in weeks to post this:

      Thank you. That was great. I don't have any mod points, but this was the most offtopic thread I've seen in a while. I'm still laughing a bit.

      --
      Chuuch. Preach. Tabernacle.
    10. Re:I remember him From Usenet as quite a gentleman by Pseudonym · · Score: 1

      Thank you! I'm relieved that you got it without me having to explain it.

      And it looks like some of hoi polloi(or should that be hoi barbaroi?) appreciated it too.

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
    11. Re:I remember him From Usenet as quite a gentleman by antiperimetaparalogo · · Score: 1

      English will rip it out of your hands.

      What? But it's not yours, it's ours. O.K., keep it, it makes barbaric (excuse me, i meant English...) easier for us.

      James Nicoll put it best:

      The problem with defending the purity of the English language is that English is about as pure as a cribhouse whore. We don't just borrow words; on occasion, English has pursued other languages down alleyways to beat them unconscious and rifle their pockets for new vocabulary.

      Indeed, a great description of the "crime" from an native English speaker (and a writer/reviewer... i just researched about his work) - i will keep this quotation as a reference!

      --
      Antisthenes: "Wisdom begins by examining the words/names." - excuse my English, i am (slightly...) better with my Greek!
    12. Re:I remember him From Usenet as quite a gentleman by antiperimetaparalogo · · Score: 1

      I logged in for the first time in weeks to post this: Thank you. That was great. I don't have any mod points, but this was the most offtopic thread I've seen in a while. I'm still laughing a bit.

      You are welcome my dear barbarus, and since in Greece we say "Greek is not a nationality, it is a profession"... i thank you for appreciating my professional skills!

      --
      Antisthenes: "Wisdom begins by examining the words/names." - excuse my English, i am (slightly...) better with my Greek!
    13. Re:I remember him From Usenet as quite a gentleman by antiperimetaparalogo · · Score: 1

      Thank you! I'm relieved that you got it without me having to explain it.

      Yes, i got it... it was good! But it was better to not continued from where you left it with my first version (the unpublished, self-censored), because it was going to be veeeryyy un-polite (!), in an "Aristophanic" way my fellow Slashdoter!

      And it looks like some of hoi polloi(or should that be hoi barbaroi?) appreciated it too.

      Hmmm... yes, i must have a little more confidence to my fellow Slashdoters, especially since it appears that some of them could be(come) fellow... Greeks!

      Often (but not always) hoi polloi (even among only Greeks) end up to become barbaroi - i am glad that among (linguistic) barbarians exist people who can demonstrate their (-specific- linguistic... and -generic- cultural!) "Greekness", even to (biological) Greeks like me.

      As a Greek Orthodox Christian i think some relevant parts of Paul's (the "Apostle of nations" as we call him in Greece) first Epistle to Corinthians about how important -for God's sake- is the knowledge of languages (even if often mis-translated from the original Greek, or, in my humble opinion, mis-understood, especially in some Protestantic -especially in USA- churches, because of a more literal interpretation), are very wise - please don't take it as a "catechism" (not that it would be bad if i did it that way), i just mention it because i am always impressed by barbarians who possess one of the most precious talents given by Zeus.

      --
      Antisthenes: "Wisdom begins by examining the words/names." - excuse my English, i am (slightly...) better with my Greek!
  10. Re:Haskell? by turbidostato · · Score: 1

    "I'm sorry, but this is the first time I ever hear about Haskell. There's just too many fringe projects, languages, frameworks, widgets and services out there, you can't know about them all."

    Yeah, it is not as this were Slashdot and if Haskell was like 25 years old and considered as "THE" pure functional programming language, you, Mr Troll.

  11. Now we finally know: Paul Hudak was born. by netsavior · · Score: 5, Funny

    (lazy evaluation)

    1. Re:Now we finally know: Paul Hudak was born. by abulafia · · Score: 2

      Damn, wish I hadn't used my mod points.

      --
      I forget what 8 was for.
    2. Re:Now we finally know: Paul Hudak was born. by Cafe+Alpha · · Score: 3, Funny

      (lazy moderation, funny)

    3. Re:Now we finally know: Paul Hudak was born. by ChunderDownunder · · Score: 2

      An s-expression, really?

      The man co-authored Haskell, not LISP!

    4. Re:Now we finally know: Paul Hudak was born. by Zeroko · · Score: 1

      It is fine...Haskell ignores extra parentheses. (Or maybe they did not feel like specifying (or looking up...) the precedence of their operators.)

  12. As opposed to non-functional? by Anonymous Coward · · Score: 2, Funny

    Why would someone develop a language that didn't work?

    1. Re:As opposed to non-functional? by pecosdave · · Score: 2

      You mean like J-Script and C#?

      --
      The preceding post was not a Slashvertisement.
    2. Re:As opposed to non-functional? by Anonymous Coward · · Score: 1

      That was a good attempt at a joke if it weren't for the fact that using C# doesn't really make sense given that it's the most well designed OO language in heavy use today. C# is kind of the antithesis of a broken language in a world plagued by Javascript and PHP.

    3. Re:As opposed to non-functional? by Anonymous Coward · · Score: 0

      It knows how to work, but it's too lazy.

  13. Re:Haskell? by goose-incarnated · · Score: 1

    He was known as one of the principle designers of Haskell, which you probably don't need to be told he defined as "a purely functional programming language."

    I'm sorry, but this is the first time I ever hear about Haskell. There's just too many fringe projects, languages, frameworks, widgets and services out there, you can't know about them all.

    The others bring almost nothing new to the party. Lisp, Erlang and Haskell all brought something new. Python, PHP and Rust didn't. Being functionally proficient in Lisp, Erlang and Haskell gives you skills that vastly improves your Java/C++/Whatever. Being proficient in Python and PHP gives you no new skills other than Python or PHP and perhaps some hipster cred.

    --
    I'm a minority race. Save your vitriol for white people.
  14. Re:Haskell? by Guspaz · · Score: 1

    Haskell is really far from fringe, and it's what's commonly used to teach functional programming in schools.

    That said, it's terrible and I hate it.

  15. Re:Haskell? by Anonymous Coward · · Score: 0

    The fact that you listed C# and PHP is all we need to know.

  16. One of the principle? by Anonymous Coward · · Score: 0

    May be thats why it's design is so cool. Its a cool language.

    1. Re:One of the principle? by Anonymous Coward · · Score: 1

      May be thats why it's design is so cool. Its a cool language.

      I don't think you'd like Perl. It requires that all the punctuation be in the right place.

  17. Re:Haskell? by grimmjeeper · · Score: 0

    Considering the language was originally developed in the 80's and went basically nowhere, I wouldn't be at all surprised if half or more of the audience here has never heard of it. I'm nearing greybeard status myself and I had completely forgotten about it. And even though I remember the language by name, I couldn't tell you the first thing about how it works. I had to go and wiki it to remind myself where I had seen it before. Sure, it may have had some really keen features and maybe had influence on modern programming, it's a language that has been filed away in the "(almost) nobody uses this" cabinet for a long time now. So I agree with you, there is no reason for your opening post to be thought of as a troll.

  18. Re:Haskell? by Okian+Warrior · · Score: 0

    The others bring almost nothing new to the party. Lisp, Erlang and Haskell all brought something new. Python, PHP and Rust didn't. Being functionally proficient in Lisp, Erlang and Haskell gives you skills that vastly improves your Java/C++/Whatever. Being proficient in Python and PHP gives you no new skills other than Python or PHP and perhaps some hipster cred.

    I've got a 'kind of bingo card that I use to keep track of languages. I place checkmarks for each language depending on how it's different from all the other languages.

    Help me out. Does Haskell require or not require a block after an "if" statement? Is the block introduced by brace, bracket, "then" or something else?

    Or... does it use some completely lateral way to specify an "if" statement?

    I may have to update my bingo card to accommodate.

  19. Re:Haskell? by ZeroInt · · Score: 0

    I've picked up and put down the language a few times. It's easier coming back. This page has helped me so much.

  20. Re:Haskell? by grimmjeeper · · Score: 1

    I'm much closer to greybeard than hipster. So don't take this as a smug "we don't need that old crap now" post. Because I've been there and I've done that and my foundation of "that old crap" is what gives me an edge over all of these kids out there who can't program without pretty pictures.

    That being sad, I've spent my share of time poking around inside functional languages. Lisp primarily, but I've touched several others. And I have to question your assertion that work in functional programming helps your work in iterative and OO languages. And I'm sure that knowing about functional programming helps in some cases with certain tasks. However, I really do think that the subset of tasks where a functional approach will help is significantly smaller than you think. Quite frankly, I find that the functional programming enthusiast crowd is a group of people who only know how to use hammers and they're trying to convince the world that every problem is a nail.

    Of course, because you'll take that the wrong way, I will state clearly that I believe there are a great many problems that could benefit from functional programming. And functional languages are a good tool to have with you all the time. It's just that there's not always a need to take that tool out and use it.

  21. Re:Haskell? by Anonymous Coward · · Score: 0

    That said, it's terrible and I hate it.

    Why? Don't like the syntax? Don't like lazy evaluation?

  22. Re:Haskell? by Anonymous Coward · · Score: 3, Informative

    It's a strictly typed, lazy, purely functional language with abstractions built around category theory. These are very hard to grasp, but once you do you can use them for things.

    It's not just a different syntax.

  23. Re:Haskell? by grimmjeeper · · Score: 0

    I worked with a few functional programming languages when I was in school. And back when I took an intro to AI course, they were using Lisp. Not sure if they're still doing that as I took my career in an entirely different direction and that was a long time ago.

    My question to you is, where is functional programming used in the real world? Sure, it's a course you can take in school. But what niches use functional programming and how extensive are they? I mean, I don't see it being useful in anything out of a few very specific areas. I mean, Pascal was a good teaching language for the basics of iterative programming but in the real world, outside of a few people trying to mash that square peg in a round hole, it really didn't see any use outside of academia and is now not much more than an afterthought.

  24. Haskell failed him by Anonymous Coward · · Score: 0

    It tried to compute a cure for leukemia, but kept failing due to performance bottlenecks.

    1. Re:Haskell failed him by Darinbob · · Score: 1

      It also had these pesky side effects.

  25. Re:Haskell? by Anonymous Coward · · Score: 0

    Putting C# anywhere near the same category of language as PHP shows you to be a moron.

  26. Re:Haskell? by Anonymous Coward · · Score: 0

    That he knows about incredibly common, often-used languages? Have fun coding in Lisp with the five other people that use it.

  27. Re:Haskell? by Anonymous Coward · · Score: 0

    Haskell may be 25 years old, but I only heard about in the last couple of years in the "functional programming" craze. If I didn't follow along on reddit's /r/programming then I'd have never heard of it, either.

    Haskell has some ardent followers but is not widely known. Your experience is not the experience of others.

  28. He died ... by PPH · · Score: 1

    .... waiting to handle an event.

    --
    Have gnu, will travel.
  29. Re:Haskell? by LWATCDR · · Score: 1

    "So I agree with you, there is no reason for your opening post to be thought of as a troll."
    Actually yes there is.
    You see we have this thing called the internet and the internet has services one is called Google and another is called Wikipedia.
    You see something you do not know about you have too options.
    1. Look it up and find out what it is.
    or
    2. Dismiss it because it is outside your area of knowledge.

    By dismissing it you are being a jerk. This is Slashdot so a cool programing language is still a cool programing language even it it is not super popular. Here are some systems written in Haskell
    https://wiki.haskell.org/Haske...

    In other words it is really dumb to take pride in what you do not know.

    --
    See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
  30. Re:Haskell? by goose-incarnated · · Score: 3, Insightful

    The others bring almost nothing new to the party. Lisp, Erlang and Haskell all brought something new. Python, PHP and Rust didn't. Being functionally proficient in Lisp, Erlang and Haskell gives you skills that vastly improves your Java/C++/Whatever. Being proficient in Python and PHP gives you no new skills other than Python or PHP and perhaps some hipster cred.

    I've got a 'kind of bingo card that I use to keep track of languages. I place checkmarks for each language depending on how it's different from all the other languages.

    Help me out. Does Haskell require or not require a block after an "if" statement? Is the block introduced by brace, bracket, "then" or something else?

    Or... does it use some completely lateral way to specify an "if" statement?

    I may have to update my bingo card to accommodate.

    I urge you (in the friendliest terms possible) to learn one of Lisp, Erlang or Haskell. Until you do you are going to continue assuming that the only differences between languages are purely cosmetic ones ("where does the brace go?", "how do you start a block?", etc). If you're going the Lisp route, pick a dialect of scheme.

    TLDR; If the only language differences that you can imagine ever existing are cosmetic ones such as those in your post, then you have not been exposed to enough other languages.

    As a quick example, using any language you know... can you /add/ to that language a feature that implements say... a switch/case statement (assuming that it didn't already exist, of course). How about an object system based on ... classes? If your language did not offer a way to define, create and instantiate objects would you be able to add the "class" keyword in? How about new operators? Every language lets you add functions, few let you add operators.

    As it turns out, even though I hardly ever use those languages for anything these days, the deep possibility tree they open your eyes to gives you a more than passing mastery of concepts that all the other languages implement in an incomplete, half-assed way (looking at C++ lambdas here, btw).

    --
    I'm a minority race. Save your vitriol for white people.
  31. Re:Haskell? by grimmjeeper · · Score: 0

    I'd say it's more troll like to judge people for not knowing about a language that is, at best, obscure and not well known outside of academia and research. After all, this website is full of people who have no reason to have known about an obscure niche language, regardless of it's significance and importance.

  32. Re:Haskell? by tuffy · · Score: 2

    Haskell doesn't really have an "if" statement as such. It has an "if" expression (analogous to C's [expr] ? [expr] : [expr] conditional expression) but it's not widely used in my experience. Haskell folks would rather use guards and pattern matching to do the same job.

    --

    Ita erat quando hic adveni.

  33. Re:Haskell? by goose-incarnated · · Score: 2

    my foundation of "that old crap" is what gives me an edge over all of these kids out there who can't program without pretty pictures.

    However, I really do think that the subset of tasks where a functional approach will help is significantly smaller than you think.

    While you may never use the functional approach, I find that knowledge of that functional approach is what gives me an edge ;-) It's not the functional approach that you use, it's the problem-solving ability that you gain that helps. For example, writing mini-DSL's in C++ is a damn sight faster if you're already used to the Lispish way of doing things. Writing anonymous functions in Java is a great deal easier after scheme thumped home the concept of closures (and lexical vs dynamic scoping).

    Quite frankly, I find that the functional programming enthusiast crowd is a group of people who only know how to use hammers and they're trying to convince the world that every problem is a nail.

    They are quite an annoying bunch, aren't they? I long ago stopped reading/posting to comp.lang.lisp purely because of the hostile and aggressive nature of that community. The NIH syndrome is especially strong with the lisp programmers - there's a reason that Lisp hasn't taken over the world even though it has all the language functionality present in almost every language that came after it (including Javascript, Java, C++, C#, Python, etc).

    --
    I'm a minority race. Save your vitriol for white people.
  34. pandoc by John+Bokma · · Score: 3, Informative

    For those who never heard of Haskell and are looking for an example project written using this language check out Pandoc: http://pandoc.org/. Other examples are Darcs (version control) and xmonad (tiling window manager).

    1. Re:pandoc by Anonymous Coward · · Score: 0

      and git-annex.

  35. Re:Haskell? by goose-incarnated · · Score: 2

    That he knows about incredibly common, often-used languages? Have fun coding in Lisp with the five other people that use it.

    I suspect there's only four of us :-)

    --
    I'm a minority race. Save your vitriol for white people.
  36. Editors by Anonymous Coward · · Score: 0

    why won't you edit?

  37. Re:Haskell? by Hognoxious · · Score: 1

    It's no worse than putting an elephant near[sic] the same category as a crocodile.

    I for one wouldn't try to fuck either.

    --
    Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  38. Re:Haskell? by John+Bokma · · Score: 2

    Facebook, Google, Microsoft, Intel, see: Haskell in industry: https://wiki.haskell.org/Haske... I don't know when you were in school, but if it was in the 90s (like me); the FP landscape has changed quite a bit since then. I did the edX course FP101x Introduction to Functional Programming (98%), which I can highly recommend to get a feel for Haskell.

  39. Re:Haskell? by Anonymous Coward · · Score: 0

    You can do something like:

    if [something] then [someFunction(params)] else [someFunction(params)]

    but you can also do something like:

    foo :: Int -> [Int] -> Int
    foo x list
            | [somecheck on list] = [doSomething]
            | otherwise = [doSomethingElse]

    That all really misses the point of Haskell though. It is a purely functional language so you really need to change how you approach problems and how you code solutions.

    It is a completely different mentality needed for functional programming.

  40. Re:Haskell? by grimmjeeper · · Score: 1

    Like I say, if it's a tool that you find useful to do real work where that tool is the best one to use and you're not just trying to justify using the tool on anything and everything, it's a good thing to have.

    I took a couple of undergraduate symbolic logic classes, including a senior level seminar, offered by the philosophy department in my school. That was probably one of the best things I could have done considering how much boolean algebra I have to sift through in my jobs. I've mostly forgotten my Lisp because it was 25 years ago but I work in a niche industry and I don't find much use for it here. But if I did, I certainly would go back and refresh my knowledge so I could use the right tool for the job.

  41. Re:Haskell? by goose-incarnated · · Score: 1

    it really didn't see any use outside of academia and is now not much more than an afterthought.

    Someone has to do those experimental language features that eventually filter down to the more often-used languages. Those people are generally in academia. If the academia didn't exist we'd get more carelessly-designed languages like Python and PHP.

    --
    I'm a minority race. Save your vitriol for white people.
  42. Re:Haskell? by Anonymous Coward · · Score: 3, Insightful

    It's not that niche. For those of us who are programmers I'm sure the majority haven't used it. But I'm sure most HAVE at least heard of it!

    I know I heard of it in college although it was only a passing reference. I can't say where I have heard of it since until yesterday but I know it gets mentioned often enough not to forget it. As for yesterday.. I keep hearing people tell me I should check out this tiling window manager, xmonad. http://xmonad.org/ Guess what, it's not only written in Haskell, it is configured in Haskell! So.. I guess anyone who uses xmonad and changes anything about the configuration has at least a tiny little exposure to Haskell.

    Further.. Who cares if it is obscure? This is Slashdot! Everything here is obscure to the majority of the population. We all have some obscure interests or we wouldn't be here! We don't all share the exact same obscure interests though. I know I never click on the majority of the articles here although I do read several per day. If he doesn't know what Haskel is then why even bother clicking? Why bother commenting that you aren't interested in an article? Because you are interested in every other article and this one is uniquely dull to you? BS! The only reason to make that kind of comment is b/c you know that programming languages like operating systems and text editors have rabid fanbois who will get all hot and bothered and post back. Obscure ones are best because they already feel cornered and will be extra defensive.

    Yup... textbook troll!

  43. Re:Haskell? by grimmjeeper · · Score: 1

    I figured there has been a lot of change. I started school in the 80's and finished in the early 90's so maybe a few years before you. I would have been surprised if the landscape hadn't changed dramatically since then.

  44. Re:Haskell? by grimmjeeper · · Score: 0

    It's not that niche. For those of us who are programmers I'm sure the majority haven't used it. But I'm sure most HAVE at least heard of it!

    I think you're significantly overestimating the average slashdotter. Sure, if you went through school and spent much time getting a comp sci degree or the like, you should have been exposed. But outside of that group (which may be your entire world but it's hardly representative of the rest of the world), the chances of people hearing about it are far more slim.

  45. Re:Haskell? by turbidostato · · Score: 1

    "Haskell has some ardent followers but is not widely known."

    Of course not. I can go to the supermarket and noone will know about it. But this is what it is: if you are a programmer you have heard about Haskell (even if you know nothing about functional programming). The grandparent is a troll.

  46. Put away the bingo card by dwheeler · · Score: 4, Interesting

    Put away the bingo card. Some languages, like Lisp and Haskell, actually DO bring seriously different ideas to the table, and there are tasks where their ideas are useful. A few examples may help. Once a "variable" is set, you cannot change its value (though it CAN go out of scope). This has serious reasoning and optimization advantages, but it requires a different way of thinking. Haskell has lazy evaluation, i.e., it computes nothing until you ask for it. It's routine to define infinitely-large data structures, which is a non-problem because only the parts you need are calculated. If you're only familiar with the ALGOL language family (C, C++, Objective-C, Java, C#, PHP, Python, etc.), you'll need to do some real learning.

    --
    - David A. Wheeler (see my Secure Programming HOWTO)
    1. Re:Put away the bingo card by rch7 · · Score: 1

      You cannot change variable, but then you are forced to invent all kinds of ugly hacks like "records" in Erlang that perform the same thing in an ugly way.

    2. Re:Put away the bingo card by Anonymous Coward · · Score: 0

      ALGOL language family (C, C++, Objective-C, Java, C#, PHP, Python, etc.)

      Most of those languages are less closely related to Algol than Haskell is!

  47. Re: Haskell? by Anonymous Coward · · Score: 0

    Haskell doesn't have statements, it has expressions. Case analysis is mostly done with pattern matching and guards, like in maths. There is an if expression but doesn't need to be as it could just be a library function. Also, it's normally best to avoid if due to Boolean blindness.

  48. Re:Haskell? by frank_adrian314159 · · Score: 1

    Do you count scheme and clojure? If so, that's nine or so...

    --
    That is all.
  49. Re:Haskell? by AqD · · Score: 1

    Being functionally proficient in Lisp, Erlang and Haskell gives you skills that vastly improves your Java/C++/Whatever.

    Nope it doesn't. It only increases your frustration and complaint at coding because common industry languages such as COBOL and Java are so fucked up beyond hope. Every time you write them you feel the rage to stab their creators a thousand times and send their heads off to IS.

  50. Re:Haskell? by Alomex · · Score: 1

    Python, PHP and Rust didn't.

    Python brought a unique mixture of functional and imperative syntax and semantics. That is a unique contribution, regardless if you liked the end result or not.

  51. Re:Haskell? by rochrist · · Score: 1

    It's also pretty popular, according the recent surveys.

  52. Re:Haskell? by rochrist · · Score: 1

    It's not that freaking obscure. If you pretend to be even minimally aware of current trends in CS, you ought to be aware of Haskell.

  53. Re:Haskell? by grimmjeeper · · Score: 0, Troll

    I would suggest that "minimally aware of current trends in CS" is a much higher threshold than you may think. Even on /.

  54. Re: Haskell? by Anonymous Coward · · Score: 0

    So when auto mechanics write messages on a forum, they should care about some Pussies who also read their forum. That's what you are saying ?

    Get yourself a real CS education, boy.

  55. Re: Haskell? by Anonymous Coward · · Score: 1

    First, Pascal is not a toy. Rather it is the shining light on the hill compared to C, the Father Of Cyber War. HP MPE was written in some sort of Pascal and the customer loved it for maximum reliability. They would still buy it if HP would sell it.

    Secondly, functional languages are used in many places e.g. finance or in Computer Algebra. I assume you dont know what the latter is and why it is important to our civilization. If you want to clue yourself, look it up. All of mechanical and electrical engineering does algebra. So you might have a clue.

    In General, because you cannot appreciate the relevance of something means NOTHING. You probably live in a bubble of ignorants with you being the most educated one. It happens to others. Just dont complain.

  56. Re:Haskell? by Pseudonym · · Score: 1

    I count emacs-lisp, so that's at least a thousand more people who have each written two lines in the last ten years.

    --
    sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
  57. Re:Haskell? by Darinbob · · Score: 1

    I wouldn't call Haskell "fringe" by any means. Anyone with a real computer science degree since it was invented should have heard of it or something from the same family.

  58. Re: Haskell? by grimmjeeper · · Score: 0

    I probably had my real CS education before you were born, son.

  59. Re:Haskell? by Darinbob · · Score: 1

    Five, I forgot to fill out the survey last year, sorry.

  60. Re:Haskell? by Darinbob · · Score: 1

    I think the problem is the disctinction between computer science as a science, and programming as a 9 to 5 job that you can get merely by reading a book and paying for a certificate.

  61. Re:Haskell? by rochrist · · Score: 1

    I suppose. Sad, if true.

  62. Re: I remember him From Usenet as quite a gentlema by Anonymous Coward · · Score: 0

    I suggest your Grecos make a big fuss and then demand from any English-speaking person who uses a greek-derived word something like 10 Euros per greco word.

    That would enable you to contiune to live the life of Diogenes In The Barrel. If the English are so naive as the Germans. I guess not, but you better try before you even think of real work. How would the world end if greeks did any work ???

  63. Re:Haskell? by Pseudonym · · Score: 1

    I'm much closer to greybeard than hipster.

    As am I. My neckbeard is going grey.

    And I have to question your assertion that work in functional programming helps your work in iterative and OO languages.

    Well, it does. I know about 60 programming languages to varying levels of fluency (if that sounds like a lot, it's because I used to research programming languages, and contrary to the Pragmatic Programmers advice, I tend to learn two a year), but I do most of my work in C++ and (sadly) node.js. I can tell which languages improve my "traditional" programming and which ones don't. The ones which do are the ones which force you to think in different ways, because they are the ones which open you up to new possibilities.

    You can do Haskell in any language. But until you've done Haskell, you really can't grok what it means to do Haskell or what this buys you.

    Quite frankly, I find that the functional programming enthusiast crowd is a group of people who only know how to use hammers and they're trying to convince the world that every problem is a nail.

    That's probably true of Lisp. It's certainly true of Paul Graham. However, exactly the opposite is true of Haskell.

    Haskell's unofficial motto is "avoid success at all costs" (which may explain the thread-originating post). This means several things, but one corollary is that if there isn't a mathematically pure way to do provide some feature, Haskell does not get that feature until such a way is found. Haskell people do not only know how to use hammers. On the contrary, Haskellers firmly believe that for many problems, we don't know what the right tool for the job is because the right tool hasn't been invented yet.

    If you don't understand why this is important, go watch Bret Victor's talk on The Future of Programming .

    --
    sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
  64. Re:Haskell? by Darinbob · · Score: 1

    But this is slashdot. The intended audience is chock full of people who should know what it is. I'm not saying most slashdotters who are programming nerds have used it, but they should have heard of it.

    I'm disappointed to see though that Haskell is pretty high in mentions on programming.reddit.com and low for Slashdot. Maybe Slashdot should turn in its nerd card for renewal

    (langpop.com is interesting for things like this too)

  65. Re:Haskell? by Darinbob · · Score: 1

    Or underestimating the decline of Slashdot?

  66. Re:Haskell? by Darinbob · · Score: 1

    COBOL is not widely known, but it's hard to find a programmer who hasn't heard of it. And Haskell seems to be more popular than COBOL (langpop.com).

  67. Re:Haskell? by Stormy+Dragon · · Score: 1

    There's actually only one LISP programmer, but he used (rplacd x x) to make it look like there's a lot more of them.

  68. Re:Haskell? by foreverdisillusioned · · Score: 1

    If you're going the Lisp route, pick a dialect of Scheme.

    Bah. Pick Scheme if you don't care about performance, if you want to write your own compiler, or if you enjoy using gratuitous recursive calls for no good reason.

    Otherwise, pick Common Lisp. Damn fast, macros that are both more intuitive and more powerful (if a little more dangerous), and one of the greatest object oriented frameworks ever designed (CLOS.)

  69. Miranda anyone? by hlee · · Score: 1

    I was taught Miranda (precursor to Haskell) some twenty years ago in my undergraduate degree. To this day I use still functional programming (Haskell) to prototype any reasonably complex algorithm.

    To give you an idea of how compact functional programming languages can express complex algorithms - here's quicksort:
    qsort (x:xs) = qsort (filter ( x) xs)

    Couple high level functions with closure gives us a very powerful tool to express complex algorithms.

    1. Re: Miranda anyone? by xenog · · Score: 1

      Hello, that doesnâ(TM)t seem right. [code] qsort (x:xs) = qsort (filter (=x) xs) qsort [] = [] [/code] This performs better: [code] qsort (x:xs) = qsort ls ++ [x] ++ qsort rs where (ls,rs) = foldl f ([],[]) xs f (ls',rs') (x':xs') | x' x = ((x':ls'),rs') | otherwise = (ls',(x':rs')) [/code] Excuses if the code does not compile or run. I am on a mobile device and havenâ(TM)t attempted to compile it.

    2. Re:Miranda anyone? by Anonymous Coward · · Score: 0

      At uni we were taught using Orwell, which I understood to be Miranda without the licensing restrictions.

      They taught us to be cheap early.

    3. Re: Miranda anyone? by xenog · · Score: 1

      I’m sorry, that was horrible. Let me try again.

      The QuickSort code published by the commenter to whom I replied was incomplete. Here is the correct code: http://lpaste.net/131815. Here is also an alternative implementation that performs better, since it does not do two list traversals per sorting operation: http://lpaste.net/131814. Note: The problem with the code in the original comment that I was replying to is due to the way that Slashdot parsed it.

  70. Re:Haskell? by Anonymous Coward · · Score: 0

    They're both tenuously derived from Algol... /me ducks

  71. Re:Haskell? by omfgnosis · · Score: 2

    You've more or less described almost every functional programming language. And many of them, quite old, are gaining in popularity well past their introduction, in no small part because functional programming turns out to be well suited for parallel computing (and therefore to distributed computing and multiple processor cores). It should not be surprising to hear more about languages like Erlang (1986) and Haskell (1990), or to see new functional languages introduced going forward.

  72. Re:Haskell? by Zeroko · · Score: 1

    I found that I can write much more efficient QBASIC code after learning & using Haskell. (^_^)

    Now, if only graphics in Haskell were as easy as QBASIC. (Unless one of the million or so mutually-incompatible graphics-related packages on Hackage does everything I want but I missed it.)

  73. Re:Haskell? by Anonymous Coward · · Score: 0

    Haskell is (or was, it's been a few years) the first language taught to CS students at UNSW.

    My god I hated that language.

  74. Re: Haskell? by Anonymous Coward · · Score: 1

    According to my copy of the Haskell report, Haskell definitely has statements. There are four kinds of them: plain expressions, pattern bindings, let bindings, and empty statements. Grammatically, they occur inside a do block.

  75. Re:Haskell? by Anonymous Coward · · Score: 0

    It's not about the quality of the language. But php is an easy 'programming language' available on a lot of linux webservers. And Haskell is a little bit more obscure, I personally have never seen Haskell source code, and I'm, after seeing it, also not inclined to ever learn it...

  76. Re: Haskell? by xenog · · Score: 1

    I am a Haskell programmer, and I have used Haskell pretty much for everything during the last three years. I do not know only Haskell. I know Perl, JavaScript, Python, Java, C, C++ and Scala fluently, as well as an assortment of smaller and special-purpose languages like PHP and Bash. It cannot be said of me that I only know how to use a hammer. Quite the contrary, it was frustration with the high error rate of my programs, along with some best practices I started to develop on my own, unaware of functional programming, which led me down the Haskell road. I find that your description of the Haskell ethos is accurate. We like correct solutions for problems, and we know that many of these solutions do not yet exist, so instead of hacking something together, we tend to prefer to explore the problem space logically until a mathematically sound solution can be found. That solution will map to Haskell painlessly, once found.

  77. Re:Haskell? by TheRaven64 · · Score: 1

    Understanding monads is very helpful if you're writing code that wants to do speculative execution or is highly concurrent, even if you end up implementing the code using something purely imperative.

    --
    I am TheRaven on Soylent News
  78. Re:Haskell? by TheRaven64 · · Score: 1

    Python brought a unique mixture of functional and imperative syntax and semantics

    Various ML dialects had that before Python. The thing Python brought was a poor performance implementation of a language from the C++ school of language design: keep adding features without regard to how they interact and expect programmers to know all of them (if they ever work with anyone else) but only use a subset if they don't want totally unmaintainable code.

    --
    I am TheRaven on Soylent News
  79. Re:Haskell? by TheRaven64 · · Score: 1

    This isn't even a good troll. If you don't know one actor-model programming language and one pure functional programming language, then you have no business describing yourself as a programmer. You certainly don't get to use your ignorance as the benchmark for others.

    --
    I am TheRaven on Soylent News
  80. Re:Haskell? by Anonymous Coward · · Score: 0

    Pascal was a good teaching language for the basics of iterative programming but in the real world, outside of a few people trying to mash that square peg in a round hole, it really didn't see any use outside of academia and is now not much more than an afterthought.

    Borland Delphi, a Visual Basic-like visual IDE that used a variant of Pascal for its programming language was a bit of a big deal in the mid to late nineties I think.

  81. Re:Haskell? by Anonymous Coward · · Score: 0

    > If you don't know one actor-model programming language and one pure functional programming language, then you have no business describing yourself as a programmer

    I hear they're not a true Scotsman either.

  82. Re:Haskell? by Megol · · Score: 1

    I guess you haven't heard of Microsoft Windows and Apple Mac OS? They were both using Pascal as a system programming language in the beginning.
    There have been Unix type systems written in Pascal and derivatives (Modula), a lot of famous software was started in Pascal.

  83. Re:Haskell? by Megol · · Score: 1

    If you hate it you simply haven't learned it. It is a clean, logical language with constructs that just work. It isn't an ad hoc mess of things that almost work together like most common programming languages.

    Not liking it is valid but saying you hate it is a statement of ignorance.

  84. Re: Haskell? by Anonymous Coward · · Score: 0

    Take your meds, son; take your meds.

  85. Re:Haskell? by grimmjeeper · · Score: 1

    What's the current state of those projects?

    I did all my undergraduate work in Pascal, as did pretty much everyone else in my generation. But that was decades ago and while there was some significant work in Pascal and its derivatives at the time, it's pretty much disappeared from the landscape at this point and is not much more than a footnote in history. It's only real significance is how it influenced what is being used today.

  86. Re:Haskell? by Anonymous Coward · · Score: 0

    Modernized versions of Pascal live on in Embarcadero Delphi, previously Borland Delphi, and a few other tools. It now targets Windows (except Phone), OSX, iOS, and Android (except 3.x). The user base remains small, but surprisingly dedicated. There's also FreePascal/Lazarus and RemObjects Oxygene/Prism, but I haven't kept up with those projects.

    FWIW, we were probably attended college close to the same time, with most of my BS being done with Pascal and C, with occasional diversions into Fortran, Ada, and Lisp.

    - T

  87. Re:Haskell? by Anonymous Coward · · Score: 0

    My question to you is, where is functional programming used in the real world?

    My employer uses FP a *lot* for building mathematical models (which is, essentially, what our business is built around). We're not alone in that in our marketplace - and we're not the only marketplace where it's used.

  88. Focus! Celebrate Paul Hudak by Anonymous Coward · · Score: 0

    Paul Hudak was a great man and friend to those who knew him. Please read his full obituary and honor the memory of this humble and multi-talented genius.

  89. Re: Haskell? by Anonymous Coward · · Score: 0

    The IF in Haskell is similar to the ternary ?: operator in C (and yes, there has to be an ELSE)

  90. Re:Haskell? by Anonymous Coward · · Score: 0

    Because COBOL has seen widespread use in the past. There has been many articles about how it has lived past its prime, that many organizations are still using it, and it is hard to find people who have experience with it to maintain the existing code.

    Haskell doesn't have that type of history.

  91. Re:Haskell? by Anonymous Coward · · Score: 0

    So are Erlang, Common Lisp (lexical scope via Scheme), and Haskell.

  92. Re:Haskell? by LWATCDR · · Score: 1

    "After all, this website is full of people who have no reason to have known about an obscure niche language, regardless of it's significance and importance."
    This is Slashdot and not CNN or People magazine online. This is News for Nerds.
    "I'd say it's more troll like to judge people for not knowing about a language that is, at best, obscure and not well known outside of academia and research."

    Ahh... You see that is where you are missing it.
    Lots of people don't know about Haskell and that is fine.
    I judged people not because they lacked knowledge but because they dismissed the value of that knowledge and make no effort to increase their knowledge.
    Or to put it in simple terms.

    Hear about the death of the creator of something you never heard about.
    1. Google it and learn what it is.
    2. Dismiss it because you don't know about it.
    Which is the better path?

    --
    See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
  93. Re:Haskell? by grimmjeeper · · Score: 1

    That's an interesting false dilemma logical fallacy.

  94. Re:Haskell? by Anonymous Coward · · Score: 0

    So, basically you are an ignorant piece of shit.

    Good to know you are so open about letting the world know.

  95. Re:Haskell? by vilanye · · Score: 1

    What?

    Are you are claiming that a professional programmer can be ignorant of FP and actor-model?

    Or is reading PHP for moron sufficiently professional enough for you?

  96. Re:Haskell? by Anonymous Coward · · Score: 0

    Monads are an ugly hack to bolt of state to a stateless language.

    Languages that have state have no need for monads.

  97. Re:Haskell? by LWATCDR · · Score: 1

    Sigh... You really need to go back to your Logic class...
    A false dilemma fallacy requires that the choices be limited. I did not say that those were the only two options. You have many good and bad options to the dilemma. What I was showing was simply that a much better option was available and that they the one being defended was not a good option.
    Yes there are worse options but the one your are defending is very far from a good one.

    --
    See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
  98. Re:Haskell? by Anonymous Coward · · Score: 0

    You must be a PHP monkey. How the fuck does someone in the programmer world not hear about at least one of them?

  99. Re:Haskell? by Anonymous Coward · · Score: 0

    What the fuck?

    Do you really believe that syntax is the only difference between languages?

    When did slashdot become a haven for the proudly ignorant?

  100. Re: Haskell? by Anonymous Coward · · Score: 0

    Do you know the difference between a statement and expression? There is a reason you need some math background in CS.

    Expressions always return a value, statements do not.