
Ask HN: Relative Pro/Con of These Functional Languages - qrco
I&#x27;m trying to get a relative assessment of both the functional and practical* nature for the following languages:<p>- Erlang&#x2F;Elixir<p>- F#<p>- Scala<p>- Clojure<p>- Haskell<p>- Elm<p>Are there others you&#x27;d like to mention?<p>I don&#x27;t expect a singular &quot;best&quot; list, more a &quot;best for&quot;.
The context would be for a general distributed tech stack.<p>* &quot;practical&quot; means actual use regardless of functional capacity.
======
WorldMaker
A big "best for" criteria difference across your list is the question of
broader code ecosystem: F# works well with other CLR code (such as existing C#
libraries and applications); Clojure works well with other JVM code (such as
existing Java libraries and applications); Elm works well with other JS/ES
code.

If you already have investments in one ecosystem or the other (whether in
employee skills or in existing, possibly "legacy" applications), that should
narrow a choice fairly easily. Similarly if you might expect investments into
an ecosystem could give you market leverage (things like "we want our code to
be usable/scriptable/API-able by other companies that only know C#/Java/JS").

~~~
qrco
That's great to know and is along the lines of what I was hoping to learn.
Thanks!

------
im_down_w_otp
Only one of those was purpose-built for distributed systems/application
programming. The language, the runtime, and the standard library all designed
together, in parallel to service the needs of writing, testing, deploying and
debugging distributed systems/application software.

For all the rest, that ethos/use-case is a bolt-on set of libraries or
frameworks.

