‪Could we call Erlang/Elixir are Architecture Oriented Languages (AOL)?

A my friend asked me why I’m interested in Erlang/Elixir and what is the motto of them?

I said that:

  1. “write once, run forever”.
    [Joe Armstrong remarked in an interview with Rackspace in 2013: "If Java is ‘write once, run anywhere’, then Erlang is ‘write once, run forever’.”
  2. Nanoservices
    [José Valim mentioned “You are already designing your system around tiny processes that are isolated and distributed. Call them nanoservices if you’d like to!”


…and Erlang/Elixir are Architecture Oriented Languages (AOL).
[I thought that as the favor of OTP and BEAM]
Then my friend: “WOW! lemme touch AOL”.
[A chat in lockdown time :wink: ]

1 Like

I like that naming convention a lot!

I tend to organize my code with equal attention to the functional aspects of the language and the integration with OTP - so I think in some ways that’s a fair statement.

… But at the same time do we consider OTP and Erlang integration to be core to the elixir language… not sure! I sure do but others may have different opinions

1 Like

Joe Armstrong liked to use the term “Concurrency Oriented Programming”, there’s even a publication wrote by him

For a language to qualify as a “Concurrent Oriented Language” the following criteria should apply:

  • We should be able to create large numbers of processes.
  • Processes creation and destruction should be an efficient operation.
  • Message passing between process should be inexpensive.
  • Processes should share no data and operate as if they ran on physically separated processors