
The Zen of Erlang (2016) - jxub
https://ferd.ca/the-zen-of-erlang.html
======
autocorr
Does anyone know of erlang being used for scientfic computing? The ideas and
"let it crash" scheme outlined in the article are really cool, and it made me
think how it would actually be very useful for making robust data pipelines in
scientific contexts. For example, in astronomy you would have a telescope
spitting out raw data, and a pipeline processing the data to create more
inspectable intermediate products. Typically these are brittle C/C++ programs,
with lots of state and branching logic, and further they become extremely hard
to refactor because their function is so integral to running the facility.
Erlang seems like it would be very useful for a control and pipeline system
like this that needs to stay alive and not crash, but it's hard to tell (for
me) if it's well suited to numeric/scientific computing tasks. Do people know
of libraries or resources that would be useful for that? I did find this neat
lsci[1] package that aims to call python modules like numpy/matplotlib (which
would be perfect) but is sadly in a nascent state.

[1] [https://github.com/lfex/lsci](https://github.com/lfex/lsci)

~~~
jiangplus
What you need should be a language/framework to better model the complex state
of your system, and handle distributing processing, monitoring, fault
tolerance, recovery and retries.

Consider a functional programming language with immutability and pattern
matching, which should help a lot.

~~~
codetrotter
> Consider a functional programming language with immutability and pattern
> matching, which should help a lot.

So Erlang then

~~~
farresito
Erlang is not particularly performant, and it seems like what the top comment
is describing requires something faster.

~~~
tormeh
You only use Erlang for the orchestration part. Probably Fortran or something
for the actual number crunching.

------
mumrah
If you like this, I recommend checking out Learn You Some Erlang (for great
good)
[http://learnyousomeerlang.com/content](http://learnyousomeerlang.com/content)

~~~
_asummers
His other writings are good too. I recommend Erlang in Anger.

~~~
mononcqc
I've also written [http://propertesting.com/](http://propertesting.com/),
which I'm currently working to turn into a full book with Pragmatic
Programmers (with Elixir translations included as well, so that everyone on
the BEAM can benefit :) )

------
kuon
I really like the "let it crash" philosophy. I have been working with elixir
for a year now and it makes software much more reliable and easier to write.

------
snarfy
"We all know the saying it’s better to ask for forgiveness than permission.
And everyone knows that, but I think there is a corollary: If everyone is
trying to prevent error, it screws things up. It’s better to fix problems than
to prevent them. " [1]

[1] - [https://signalvnoise.com/posts/2440-we-all-know-the-
saying-i...](https://signalvnoise.com/posts/2440-we-all-know-the-saying-its-
better-to-ask-f)

------
Ceezy
That s a MUST READ

