Занимательное функциональное программирование в Ruby
13 мин
Перевод

Эта статья посвящена бесцельному путешествию по вырожденной форме Ruby в попытках узнать больше о функциональном программировании, простоте и дизайне программных интерфейсов.
Предположим, что единственный способ представления кода — лямбда-выражение, а единственная доступная структура данных — массив:
square = ->(x) { x * x }
square.(4) # => 16
person = ["Dave",:male]
print_person = ->((name,gender)) {
puts "#{name} is a #{gender}"
}
print_person.(person)
Это самые основы функционального программирования: функции — единственное, что у нас есть. Давайте попробуем написать что-то более похожее на реальный код в таком же стиле. Посмотрим, как далеко мы сможем зайти без особых мучений.
В последнее время я начал замечать, как трудно разрабатывать под окружение рабочего стола, которое сам не используешь. И, поскольку большая часть моей работы сейчас относится к GNOME (и KDE), я понял, что мне придется использовать новый GNOME 3. К сожалению, Ubuntu 11.04 с GNOME 3 работает не слишком стабильно, на мой взгляд.
Сегодня в блоге Qt Labs
Термин «свободное ПО» может иметь разное значение, в зависимости от того, с какой стороны вы на него смотрите. Для многих, в частности для меня и большинства читателей моего блога, свободное ПО означает открытый исходный код. Для мира в целом это понятие имеет совершенно другое значение.
Сегодня в блоге 
Марк Шаттлворт объявил, что следующая после Natty Narwhal версия Ubuntu будет называться Oneiric Ocelot.
С точки зрения пользователя относительно просто сделать выбор между Debian и Ubuntu. У каждого есть свои личные предпочтения, и попробовать обе ОС не займет слишком много времени. Но когда дело доходит до вклада в разработку, времени для этого потребуется гораздо больше, и вам наверняка захочется подумать об этом дважды, прежде чем начинать. Так на какую систему лучше потратить свое время?
Здравствуйте, хабражители. Думаю, многие из вас слышали о программируемых калькуляторах (а некоторые даже использовали их). Как ни странно, здесь я не нашел ни одной статьи, рассказывающей о такой интересной вещи, и поэтому решил восполнить этот пробел и рассказать об основах программирования на калькуляторах.