Erlang
Erlang is a general-purpose, garbage-collected programming language and runtime environment, with built-in support for concurrency, distribution and fault tolerance.
Ocaml
OCaml is a strict statically-typed functional programming language, focusing on expressiveness, correctness, and efficiency.
Others
Example |
---|
While erlang is more expressive ocaml pattern matching is simpler which means a simpler language definition compiler etc. and you still can do what you need at the cost of writing more code from question Why is OCaml's pattern matching weaker than Erlang's? |
The erlang pattern is more powerful because the erlang pattern can match against something determined at run time;the ocaml patterns match against things fixed at compile time from question Why is OCaml's pattern matching weaker than Erlang's? |
Erlang is more practical but not quite as amenable to metaprogramming;ocaml is another possible choice but suffers a bit on the practicality front as well from question Language to learn metaprogramming |