суббота, 8 декабря 2007 г.

Amazing ruby

Сегодня на учебе я увидел, что мой знакомый внимательно пытается чего-то разглядеть у себя на ноуте в переменной PATH, к счастью, у него на компе находился руби (результат - предыдущих безуспешных попыток подсадить его на руби).

Одна строчка в консоли:
ruby -e "puts ENV['PATH'].split(';').sort"

(; - так как действие проиходило в windows)
и он обладатель читабельного приятного списка. Удивительно, но данный пример поразил его настолько, что он наконец признал, что в руби есть что-то очень хорошее =)))


Также сегодня перевел код знакомого из:
r = []; a.each { |x| b.each { |y| r << [x,y] } };
в
(a*b.size).zip(b*a.size)

Демонстрация,
a, b = [1,2,3], [:a, :b]
p (a*b.size).zip(b*a.size) # => [[1, :a], [2, :b], [3, :a], [1, :b], [2, :a], [3, :b]]

Интересно, потянет на http://www.novemberain.com/tags/TiaBWTDI ? =))