Live data from Hacker News

Why isn't Haskell popular in industry?

palgorithm.co.uk

101–110 of 145 posts

Re: Why isn't Haskell popular in industry?

#101
post #100
post #47

Haskell is not popular because to be popular you must cater to the average Joe. And to cater to average Joe your foremost goal must be not making him uncomfortable about himself. Never forget this. And since most average Joes just work to pay their bills, they don't give a damn about technical superiority, you know.

I'd like to add that I've not said "average Joe" in a dismissing tone. I just meant that most people are not that interested in living their lives to their fullest, and are just not interested in asking deep questions in whatever domain. Moreover, hating to feel uncomfortable about yourself is just a human trait and most people just like following the path of least pain (another human trait, I think).

I just meant that most people are not that interested in living their lives to their fullest, and are just not interested in asking deep questions in whatever domain.

Now if that isn't an insult I don't know what one is. You don't have to grok Haskell to live your life to the fullest(especially if your Domain isn't programming languages.)

Re: Why isn't Haskell popular in industry?

#102
post #85

Earlier quoted context omitted.

You made a point. I've been rumbling on this lately, and I'm sharing my current conclusion here to hear HNers' opinions. Let's consider Common Lisp. Newcomers and outsiders complain that CL doesn't catch up because there aren't free CL environments around with a thoughtless setup (I've been in this camp too). However, if you read comp.lang.lisp, it jumps into your eyes that many lispers are accomplished and sharp pro…

I don't think it works like that. Put enough barriers to adoption (lack of: easy install, good documentation, friendly community, good error messages, bug free implementation, good libraries) in front of your prospective hacker audience and you'll find that adoption will suffer. Not because they're not experienced enough or because in principle they can't make it work (I'm sure they could) but simply because there is…

> I don't think it works like that. Put enough barriers to adoption (lack of: easy install, good documentation, friendly community, good error messages, bug free implementation, good libraries) in front of your prospective hacker audience and you'll find that adoption will suffer.

I can see your point, and I agree on principles. I disagree on "good documentation", "friendly community", "bug free implementation", "good libraries"... If there are either lacking of "good documentation" or "bug free implementation" or "good libraries", that just means a language either is academic or not ready yet for production, thus you'd better skip it. About "friendly community", I'd rather say that there are self-selecting communities. For instance, many people complain about "social problems" of Lisp, yet I had a very nice experience while asking even controversial questions on comp.lang.lisp.

> If you haven't reached a certain level of confidence that a path is the right one within a given amount of time the natural thing for an experienced programmer is to abandon the path, after all, there are so many technologies to choose from that you can't afford to invest too much time into something that feels like a dead-end, even if in the longer term it might turn out to be great.

That's why I've resolved to put my time only in both time and battle tested languages like Common Lisp and Erlang.

Thanks for sharing your view, Jacquesm :)

Re: Why isn't Haskell popular in industry?

#103
post #100

Earlier quoted context omitted.

I'd like to add that I've not said "average Joe" in a dismissing tone. I just meant that most people are not that interested in living their lives to their fullest, and are just not interested in asking deep questions in whatever domain. Moreover, hating to feel uncomfortable about yourself is just a human trait and most people just like following the path of least pain (another human trait, I think).

I just meant that most people are not that interested in living their lives to their fullest, and are just not interested in asking deep questions in whatever domain. Now if that isn't an insult I don't know what one is. You don't have to grok Haskell to live your life to the fullest(especially if your Domain isn't programming languages.)

Why an insult? Actions speak louder than words. How many people say health is one's most important asset, yet they don't take any action to really take care of it? Would you still think they care that much about their health? How many people would like to do that and that, still they don't take any action toward it? OTOH, if those same people were starved to near death, don't you think they would resort to extreme actions, because then their foremost interest would be getting food?

Again, I don't mean using a dismissive tone. If it feels like that, that's just because I'm not a native English speaker, and I already struggle to say what I think.

I do think that many people taking it easy are sorely needed by society. Innovative minds do push our culture forward, yet armies of "average Joes" - who just take every day as it comes - keep up with day-to-day tasks, are loving and unselfish people, and so on.

And of course you don't need to grok Haskell or even programming to live your life to the fullest.

Not being interested in some smart subject does not mean you're stupid.

Peace.

Re: Why isn't Haskell popular in industry?

#104
post #31

I think there are a couple reason. Haskell is a significant departure from most other languages commonly used by industrial programmers. It's a relatively shallow learning curve from Java to Python to JavaScript, but making the leap to a pure functional language is very difficult. Path-dependence plays a huge part here. This isn't just a matter of "people being afraid of what's different" as the article suggests; the…

Another, more important reason, is that Haskell is too intellectually demanding for most industrial programmers. t While that's often stated as a reason, I don't believe it myself, simply on the grounds that anyone smart enough to use C++ "in anger" is smart enough to learn any language. The reason that Haskell isn't popular (IMHO) is that a lot of programming isn't clever algorithms, it's forms (interfaces for getti…

Lenovo used Haskell to glue packages and configuration pipelines with great success.

http://cufp.org/archive/2006/slides/CliffordBeshers.pdf

They used Haskell's strong static type system to safely glue things together.

Re: Why isn't Haskell popular in industry?

#105
post #47

Haskell is not popular because to be popular you must cater to the average Joe. And to cater to average Joe your foremost goal must be not making him uncomfortable about himself. Never forget this. And since most average Joes just work to pay their bills, they don't give a damn about technical superiority, you know.

Speaking as a very experienced average Joe, all I need to see is a use case that shows how learning all of the weirdness discussed in the other comments in this thread will help me do my job. I can't remember the last time I had trouble getting something done in C because it didn't support Kleisli arrows, or whatever.

OK, but one of the things that C programmers often say differentiates them from non-C-programmers is their ability to grok pointers.

E.g. "I can't remember the last time I had trouble getting something done in Pascal because it didn't support pointers" :-)

Re: Why isn't Haskell popular in industry?

#106
post #85
post #76

Earlier quoted context omitted.

I'll have to correct you a bit. Judging by the article, Haskell currently isn't usable for work. So why should average Joe choose half-finished product? So why even the brightest hacker choose it when he already has all the tools he need?

You made a point. I've been rumbling on this lately, and I'm sharing my current conclusion here to hear HNers' opinions. Let's consider Common Lisp. Newcomers and outsiders complain that CL doesn't catch up because there aren't free CL environments around with a thoughtless setup (I've been in this camp too). However, if you read comp.lang.lisp, it jumps into your eyes that many lispers are accomplished and sharp pro…

That is, if you can't setup a CL system, you simply are not skilled enough as a programmer

But these things are unrelated! Your ability as a Lisp programmer is entirely unrelated to your ability as a Windows/Linux/whatever sysadmin/build engineer/whatever. If anything it's the old "it works on my computer" excuse that (bad) tech support trots out. That's the thing that sets the Clojure guys apart, they actually are interested in making it possible to take it for a spin.

I'm reminded of the difference between PADI and BSAC, two competing dive schools. PADI says let's get you in the water as soon as we can, don't worry, it's only a swimming pool and we have instructors and lifeguards on hand, and when you're ready we'll go out to sea and continue learning there. BSAC says study in a classroom for 6 months, then let's go dive a wreck at 50m...

Re: Why isn't Haskell popular in industry?

#107

Earlier quoted context omitted.

A Kleisli arrow is just an arrow that works like a monad: -- | Kleisli arrows of a monad. newtype Kleisli m a b = Kleisli { runKleisli :: a -> m b } instance Monad m => Category (Kleisli m) where id = Kleisli return (Kleisli f) . (Kleisli g) = Kleisli (\b -> g b >>= f) I only brought it up to show that we can use the same operator, Control.Category.., to compose functions, monads, and arrows and that they are not all…

Way to make his point. Only programming language where Arrows ever come up, Haskell. Wiki page on Arrows "Generalized Monads". So far our definition of a Monad is a specialized version of the generalization of Monads.

Hear hear. I looked at Haskell years ago, liked the functional aspects, recursion, lists, etc., but monads for I/O, database, was like hitting a wall. Switched to ocaml, it had enough imperativeness for that, but I got turned off when I got to functors of modules or something like that. Worked in Common Lisp for a while, but now I'm happy in Clojure, I got back the FP but I don't need a PhD for talking to a database.

Re: Why isn't Haskell popular in industry?

#108
post #28

Because it doesn't run on the JVM. For a variety of reasons — including critical third-party libraries — anything that doesn't run on the JVM and interoperate with legacy Java code is just a non starter for my company. I suspect many other organizations are in a similar situation. It looks like someone is working on a JVM port now so hopefully we'll see something usable in a few years.

Just to be sure: do (or would) your company use Clojure?

It's under consideration, among other options.

Re: Why isn't Haskell popular in industry?

#109

Earlier quoted context omitted.

A Kleisli arrow is just an arrow that works like a monad: -- | Kleisli arrows of a monad. newtype Kleisli m a b = Kleisli { runKleisli :: a -> m b } instance Monad m => Category (Kleisli m) where id = Kleisli return (Kleisli f) . (Kleisli g) = Kleisli (\b -> g b >>= f) I only brought it up to show that we can use the same operator, Control.Category.., to compose functions, monads, and arrows and that they are not all…

Way to make his point. Only programming language where Arrows ever come up, Haskell. Wiki page on Arrows "Generalized Monads". So far our definition of a Monad is a specialized version of the generalization of Monads.

Problem is, when you use a programming language without arrows, you end up rewriting generic plumbing every time. If you want to write more code in your app to avoid using the word "monad", that's fine, but probably not rational.

Re: Why isn't Haskell popular in industry?

#110
post #35

I think there are a couple reason. Haskell is a significant departure from most other languages commonly used by industrial programmers. It's a relatively shallow learning curve from Java to Python to JavaScript, but making the leap to a pure functional language is very difficult. Path-dependence plays a huge part here. This isn't just a matter of "people being afraid of what's different" as the article suggests; the…

achieving anything practical using purely functional code remains extremely difficult ... Excel is pretty much a functional language (though it is a little disabled), and people do amazing things in it. The problem isn't that functional languages are hard. They are a bit different, but good code is often fairly functional anyway. The problem is that most of the community seems to be obsessed with showing that functio…

It's interesting to see Wisty's post and the replies immediately prove his point. BTW I like Haskell.
Post reply on HN