I’ve pushed hard at schoolwork for the past two weeks, and a day of Rest presented itself. No new studies, no reviews, no school.

But what to do?

Polyglot that I am, the day’s learning was set aside to learn a new language: Elixir. I’ve played with some functional languages previously, notably Clojure and Rust, but neither truly caught my heart. Elixir has frequently popped up in comparison to one of my current favorites, Go, which has a somewhat similar concurrency philosophy.

Installing it was simple, pacman -S elixir handling everything that was needed. Before launching into exercises directly I read through the official getting started guide, then looked around for a style guide along the lines of gofmt or autopep8. Nothing exactly right was there, but the lovely Elixir Koans kept me thrumming back and forth in the guts of the language’s syntax. Setting Vim up to auto-save made this particularly pleasurable. Afterwards I exercised and tried to think/write/code in the proper paradigm.

And that was more or less all I had time for.

The language has its oddities (|>?) but was sharply functional, not tied to the sluggishly starting JVM, and easy to work with. I suspect I will return to it. The Actor model of concurrency is distinctly interesting and had me imagining what it could do in the kind of heavy simulation ala Dwarf Fortress that I’ve been interested in pursuing.