FWIW, I've been enjoying Elixir a lot for the past few years. It's an
Actor-based, dynamically typed, FP language that runs on the Erlang VM. It has Rubyish
syntax, pattern matching, syntactic macros, lightweight processes, a message-passing
framework, supervision trees, and other cool stuff.
I will note, however, that Elixir programming tends to be rather different from the stuff
I've been doing for the past 50 years. For example, processing pipelines tend to
replace sets of nested loops...
-r
On Feb 20, 2020, at 09:24, Bakul Shah
<bakul(a)bitblocks.com> wrote:
On Thu, 20 Feb 2020 08:23:08 -0800 Larry McVoy <lm(a)mcvoy.com> wrote:
Think of it this way: threads are like salt, not like pasta. You
like salt, I like salt, we all like salt. But we eat more pasta.
Go is quite salty! Erlang even more so.
A computer is a state machine. Threads are for
people who can't
program state machines.
I have written both event based (state machine) and thread
based programs. Each style has its pros and cons. Control
flow is cleaner in threads but managing shared state is
trickier. In state machines managing state is easier but
control flow is a pain. Not to mention state machine don't
benefit from multiple h/w threads.