What is it?
It’s a Ruby-esque language leveraging the Erlang VM, thus, allows concurrent programming primitives in the language.
Some first impressions
I don’t like that Elixir that assignment is not really a variable assignment but a match for match patterns. This came from a book I read. You can check it out from this link. I am not sponsored. Obviously.
a = 1
1 = a
2 = a # errors here
The usual languages I tried usually use =
equal’s sign for assignment and ==
double equal’s sign for comparisons. This is quite new to me to be honest.
Woops
I just found out that this is because of Erlang’s usage of
=
which resembles close to algebraic math syntax such asx = y + 1
which can also be rewritten as-y = -x + 1
. That makes sense. Seems my dislike is “I am not used to this” but I will get it soon ™️.
Ruby-like
The language follows a Ruby-like syntax. I still have to expand this why because I have no idea why. Probably the creator is a Rubyist.
Reminders for myself
Programming is all about transforming data to another data. This is what I have felt off when using object-oriented programming languages because the real-world does not have real hierarchies. DNA is just “life” data for example. Chemistry is just “data”. That’s why I felt an attraction towards Functional Programming and might be why I learned faster in Rust than Python.