> A process is a goofy, unfortunately loaded name for an independent unit of execution. It is not an OS process, and it is not an OS thread.
It's such a small thing, but I do get bored of having to explain that unfortunate naming. Now I just say 'actor' or 'Erlang process' then clarify that's not the same as a process, or thread/LWP. It's like how system can mean 'kernel space' (performance tools) or 'service management' (systemd).
There's argument on Twitter currently raging between Nick Sutterer, creator of Trailblazer (alternative architecture for Rails apps) and Jose Valim, Elixir's creator [1].
The argument is focused on the premise from Nick that the Phoenix framework, built on Elixir, is simply a port of Rails to Elixir with a few extra features and thus suffers from the same problems. Mainly that all Rails apps lead to monolithic architectures.
7 comments
[ 2.0 ms ] story [ 18.7 ms ] threadIt's such a small thing, but I do get bored of having to explain that unfortunate naming. Now I just say 'actor' or 'Erlang process' then clarify that's not the same as a process, or thread/LWP. It's like how system can mean 'kernel space' (performance tools) or 'service management' (systemd).
Keep in mind there are architectures where the BEAM VM runs without a traditional OS below it.
Before: Physical Machine (x86) + x86 VM + Hypervisor + OS + BEAM
After: Physical Machine (x86) + x86 VM + Hypervisor + BEAM
Eventually we might get down to: Physical Machine (ARM) + BEAM
The hypervisor has domains, the OS has processes, and the BEAM VM also has processes. Why introduce yet another name?
That's really interesting - where can I read more?
> Why introduce yet another name?
I've already explained my own perspective, but I'm happy to disagree.
The argument is focused on the premise from Nick that the Phoenix framework, built on Elixir, is simply a port of Rails to Elixir with a few extra features and thus suffers from the same problems. Mainly that all Rails apps lead to monolithic architectures.
Nick posted the above link.
[1] - https://twitter.com/apotonick/status/659966637236428800