Hacker News new | ask | show | jobs
by nostrademons 3127 days ago
Erlang is typically used for problem domains (eg. fault-tolerant servers, network brokers & routers, message queues) where immutability fits the problem domain pretty well. If you want fault tolerance, you typically need to store all your state externally anyway so you can replicate it, and make all your logic stateless so you can restart & re-run it if a node fails.

There are some problem domains - eg. GUI software, web browsers, simulations, many of the more complicated parsing, data extraction, or graph-traversal algorithms - that are inherently mutable, and Erlang is not used very much in these domains. C++ still rules the roost there, even though many of its practitioners hate its shortcomings.

1 comments

> C++ still rules the roost there, even though many of its practitioners hate its shortcomings.

The solution has been to move it down the stack, as visible on all Apple, Google and Microsoft OSes, even on Qt.

It is there, making full use of the hardware in all performance critical code, but then the actual GUI code gets written in something else.