Imperative Shell around the Functional Core
Elixir is the perfect language to build upon the methodology from this talk:
Imperative Shell around the Functional Core
-- from RubyConf 12 - Boundaries by Gary Bernhardt - YouTube
Elixir data structures are obviously immutable, and the code and data
are combined within the same Module
. (The FauxO
style programming
from this talk.)
And Gary even introduced Actor Model which is the concurrency model used by Elixir/Erlang.
In Ruby, we need some self-disciplines to force ourselves to write an imperative shell around the functional core. But in Elixir, the language is already encouraging us to write code in this style. I think that's why I feel so excited about Elixir.
This talk was also mentioned in: