(no title)
amm | 13 years ago
From personal experience however, I will not be using Haskell again for a larger professional project, because our team ran into too many time consuming issues and problems that have been solved successfully in other languages/environments (especially the JVM) like dependency management or reasoning over runtime characteristics before deploying the application on production systems. Especially memory consumption is very hard to predict.
Of course, the language also has its benefits and even after some years it tickles your brain just the right way.
I like programming in Haskell very much, but in real world projects (you know - when you work in a team not only consisting of PhDs) I prefer Scala or Java, because getting a war file deployed or profiling an application is just so much easier.
YMMV, of course.
Peaker|13 years ago
The dependency hell situation has vastly improved (and there are plans to make it much better still).
I agree that a downside of Haskell's very high level nature is difficulty to predict some runtime characteristics. This is just an instance of the general trade-off between low-level and high-level languages. Everyone is already comfortable with the loss of easily predictable performance incurred by GC, but people are still not comfortable with the same w.r.t laziness.
I use Haskell for real world projects, and I find it more practical and more suitable than any other language I've ever used. Laziness rarely bites me, and has incredible real-world benefits such as easy refactoring and simpler code.
I think the silliness about PhD's is very very silly. Of the Haskell programmers I know, the majority don't have a first degree...
About profiling -- I have never profiled a Scala/Java application, but how much easier is it compared with: "cabal configure --enable-executable-profiling", and then running the program with "+RTS -p"? It may not be point-and-click, but it really is not hard at all.
amm|13 years ago
Roughly two years ago.
>I think the silliness about PhD's is very very silly.
Of course it is. I just wanted to make a point that the "average programmer" has probably never seen a single line of ML-syntax before.
>About profiling -- I have never profiled a Scala/Java application, but how much easier is it compared with: "cabal configure --enable executable-profiling", and then running the program with "+RTS -p"? It may not be point-and-click, but it really is not hard at all.
I don't remember exactly what we tried, what worked and what didn't; we had no experts on the team, and just came to the conclusion that hooking up jconsole/yourkit/<insert jvm profiler here> to a running jvm process and see what's happening in real time on an app server was so much more comfortable.
Uchikoma|13 years ago
lumberjack|13 years ago
http://www.langpop.com/
gtani|13 years ago
http://www.drewconway.com/zia/?p=2892
http://www.wired.com/wiredenterprise/2012/06/berkeley-progra...
vellamike|13 years ago
dysoco|13 years ago
However I'd say that Scala is far more popular for building bussiness/real software than Haskell is (Twitter for example).
eru|13 years ago
mahmoudhossam|13 years ago
martinced|13 years ago
Basically a lot of sites you go to have been deployed by dropping a .war file in a Java web application server. That technologically powers a gigantic part of the Internet (just look at SO or Quora or expert exchange or any TIOOBE index or any Java job offer: Java webapps are pretty much powering the Real-World [TM]).
papsosouid|13 years ago