Elm And The Power Of The Dot

This is one of those special years... It's one where yours trully is not attempting to learn a new programming language. Sure Andy Hunt would fault me for this but, there are times where paying down programming debt is a wise move over moving forward. That's really what 2017 has been about. Rather learn something new, it's been a time to further languages learned in past years.

While focusing on honing a subset of languages can be a blast, it's impossible to get away from the intoxication of learning something new. To combat this, I have decided to co-opt a 'dark horse' language of sorts for 2017. Dark horses should abide by the following rules:

  1. Be extra small (the API layer should be thin or the languages use case should be small).
  2. Be a compile target to a language that was a 'language of the year' prior.
  3. Be something that makes you happy.

For 2017, Elmlang fit's this criteria nicely. Below is a video from Jeremy Fairbank at this year's CodeMash highlighting the basics of Elm.

On top of being a wonderful introduction to Elm, it also highlights the differences between an old, grizzled vim user and that of someone who has recently moved to the editor. Jeremy throughtout most of it, uses visual mode to edit files in different locations or with 'multiple cursors'. While this is completely chill, he isn't yet thinking of text in repeatable chunks. Using the . operator to repeat operations is a tremendous part of slicing and dicing text with vim. It allows the user to be highly surgical when repeating an operation versus setting up multiple cursors. Moreover, the dot is easily currected with undo one at a time versus, the entirety of a multiple cursor insert.

Take in the video, learn some Elm, and see where a period is more powerful over a cursor.