Hacker News new | ask | show | jobs
by strlen 5687 days ago
> doing anything practical with languages like Erlang or Haskell

Why do learn it for a specific reason? Why not learn a language to expand your mind? Scala is awesome, but Haskell will help you make use of some of its more powerful features. By all means, learn both.

Erlang is interesting and is quite practical too (albeit Scala tends to be practical in more kinds of problems: there many times where you want an easier way to deal state shared between processes than ETS/Amnesia). Knowing Erlang you can make a better decision when to use Scala's own actor facilities and when not to.

2 comments

I don't have an opinion about erlang or scala, but I agree with the poster that it is important to do something practical with a language. How will you learn the concepts that a language tries to teach you without actually building something non-trivial in it?
Oh you can certainly build non-trivial things in the language. It's just you may not be able to use it for a work project (for different reasons). This is what I meant by practical: software that you build at work and that operations will deploy or sales will sell.

There's tons of practical applications built in both Haskell and Erlang: erlang has rabbit mq (I have some criticisms of it, but they're not related to the language it's built in), Haskell has XMonad (the window manager I use on a daily basis). Both are very practical.

I've already dabbled a bit in Erlang and Haskell. I think they are great languages.

Anyway, this was just an expression of interest that Scala might be a better all-around language for getting things done. I have no Scala experience. I could totally be wrong about this.

I should note that I have a particular project in mind that has a web-facing component and multiple nodes on the backend. It's not 100% clear to me that Haskell is the right tool for that job. Erlang could definitely do that sort of thing. But Scala might be more convenient than either.