The release of Ruby 2.0 was another step in the process of language's maturation. A lot of things have changed since the language's infancy, not only in the language itself, but also in minds of its speakers. We've learnt Ruby's arsenal of features well enough to use it as the primary tool of achieving our day-to-day goals. Both we and the language have become more mature. But there's still a lot of things to learn out there.
Ruby is just a single cell in the lively, diverse ecosystem of programming languages. They assist their users in achieving their goals using various paradigms and are based on their own ways of thinking about problems. Many of them are far different from Ruby and rely on foreign concepts, such as
These concepts seem different. They seem opaque. Their value is not immediately visible to a naked eye. However, trying to learn them and trying to understand how they can assist us in our daily job is a fruitful undertaking.
This talk will be dedicated to presenting various approaches to solving problems which despite being absent in Ruby are core building blocks of other, less known languages. Apart from discussing their potential I'm going to demonstrate how we can learn from them and apply them in Ruby. After all, there's nothing in our language which would prevent us from doing so.
My main goal will be to kindle your interest. To make you curious. To make you ask questions. To make you want to learn. To make you want to broaden your horizons. Will I succeed? Let's give it a try.
Just a grammar correction: change "They're value" to "Their value"