The design decisions and evolution of a method definition - Ruby case study
More from zverok's space
This is a loose transcript of a keynote I gave at the EuRuKo conference in September 2024. The video of the talk is here. Unfortunately, I only could talk in recording, but it was a great honor nevertheless. The topic is pretty important to me, so I decided to share a slightly edited transcript for those who prefer text form. I have been writing...
On making the Ruby Changes, and some consequences of this work Every year since 2013, on December 25, a new Ruby version is released. (Before that, the version schedule was much unpredictable.) Every year since 2018 (Ruby 2.6), I spend several weeks in December working on updating my Ruby Changes site to prepare an annotated changelog of the...
On a new approach to implement that long-envied feature. In Elixir1, there is a pipeline operator that allows rewriting this code: a(b(c(d))) into this: d |> c() |> b() |> a() which helps to write code in clearly visible “pipelines” corresponding to the order in which data processing is happening. The concept is so captivating that many languages...
What Ruby’s top-level methods actually are, who they belong to and how they are namespaced. A few days ago, a curious question was asked on /r/ruby, which can be boiled down to this: How are the methods of the Kernel module available in the top-level scope? The question was dedicated to rand method, but (as the author correctly suggests) it also...
Some thoughts on how programming’s unlikely relations to poetry, and some implications of those relations I don’t have much time recently to work on articles about programming (especially considering my typical article length); but I have some previously written content to share. This article was drafted as a Twitter thread on my 39th birthday:...