Hacker News new | past | comments | ask | show | jobs | submit login

> Some companies are using haskell for non trivial needs, they just dont talk much about it.

Sorry but doesn't this statement fit better to the definition of "borderline" something?




Apologies if my comment felt offending. I've just seen a few stories about companies using non mainstream tools for important matter without making a product out of it. Caring only about known programs made in <lang> is shallow IMO


Well, to my mind the fact that Haskell has a large amount of mind share in academia and smart programmers, has been around for decades and there is very little to show for it[*] that I'm aware off makes me think it almost certainly has negative average utility for developing useful software. Why would you think otherwise? I'm not saying it will necessarily have negative utility for your particular problem, or that the negative utility it has might not be a cost worth swallowing in order to hire some really smart programmers who happen to like it.


You could argue the opposite too. How many pure fp things from academia managed to even survive out of the publication phase ?

I'm not that pro-haskell but I also see how all languages in the last decade shifted toward fp idioms clearly. I mean redux is a fold.


I don't understand your argument, in that I really can't see how one can equally argue the opposite. I fully acknowledge that Haskell has been successful as a test bed for PL research, and I also think Haskell is an interesting language worth studying. It is also true that FP ideas have increasingly bled into mainstream languages over the past two decades. But that does in no way imply that Haskell is in any way a good general choice for writing useful software.

And although a lot of practically useful stuff has come out of Haskell-land (property based testing, for example), it's not even obvious to me that Haskell has been a huge part of the shift to more FP-y idioms (compared, to say, scheme or SML). Your own example, fold, has been around decades before Haskell.


What can I say, I didn't read why es6, php or cpp lifted closures into the language. I consider this is pure FP influence which haskell is the most known instance. And yeah scheme and sml were prior art, but sml is not even on the map of PL choices (I saw it mentionned in rust history, but I think it's mostly the eager semantics, otherwise you could replace it with any pure FP language)


What do you mean with es6 lifted closures into the language? As far as I remember, closures have been in JS right from the start (and given that Brendan Eich joined mozilla to "do scheme in the browser", we can be pretty sure where they came from). ES6 just added a more lightweight syntax.

I agree that SML isn't even on the map, in terms of practical programming language choices (one of the most hilariously titled CS books of all time must _ML for the working programmer_ where the final "real project" chapters consist of writing such working programer perennials as a lambda calculus interpreter and a theorem prover). And I believe that even scheme is less suited to write almost any type of practical software than Haskell. But that's precisely my point: a language having a positive influence on the state of applied programming does not mean that it is actually a good choice for solving practical problems with. And vice versa.


You're right, I just meant the lexical closure syntax (..) => (giving a clear fp feel to the language by promoting closure syntactically). and this is part of a wide move from all dyn langs to lift fp features like destructuring. es6 was just one tiny point that I had in mind when commenting above.

btw I love sml. I'm just being realist about it's mainstream existence.

Lastly, it's as if you consider haskell as proof of concept and nothing more. I don't see any real hurdles why haskell is less practical than typescript (except the fact that TS relies on the years of js project they can compile and interop with)


How about: a typical typescript project does not start off with a dozen compiler pragmas non-trivially changing language semantics? Or: no matter their background, it will take at least 10x more time to spin up new developers with Haskell than typescript?


Haskell language extensions do not change the language semantics. They extend the semantics with additional functionality. Existing code does not change its meaning when you enable an extension.


Strict. Not a change in language semantics at all.


Ah, great counterexample! StrictData is another. Do you know any others that change language semantics non-trivially? I would roughly define "non-trivially" to mean "correct programs become incorrect".

By the way, I'm particularly interested because I am writing about Haskell myths. I have a very rough draft at http://h2.jaguarpaw.co.uk/posts/haskell-myths/


There’s also QuasiQuoter which can make valid code with list comprehensions not compile, but it doesn’t just compile it, it gets stuck looking for the end tag. Not sure if that qualifies :P


Oh, I would happily admit that Haskell has had some influence on languages -- as expected from a research language.


If a language is used at a company and its use is not spreading rapidly within that company (as has happened with Fortran and C and Java/Python) you do ask yourself, is the language actually serving a business purpose, or is the business serving a "language purpose" by giving some fans their entertainment? I can't think of a worse signal for a language's value, or perhaps the size of its useful domain, than it being used for years at a company without spreading.


Mild point, there's no way a single language would suddenly progress through all layers no matter what its qualities.

I understand your question though, it's highly possible that the devs picked haskell for their own interest. But so far it's been a few years and the haskell "module" is dealing with the core of their business.


> there's no way a single language would suddenly progress through all layers no matter what its qualities.

Except that's exactly what languages that provide a business value do (like the ones I mentioned). Maybe not always in all layers, but they tend to fill a big, wide niche at a company very quickly.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: