Что не говори, а изучение новых языков программирования редко оказывается пустой тратой времени. Даже если изучаемый язык не придется использовать на практике, в процессе изучения вы скорее всего в той или иной мере сломаете себе мозг (в хорошем смысле), то есть, откроете для себя новые подходы к решению неких проблем. В дальнейшем эти подходы могут быть использованы вами независимо от языка программирования.

А тем временем работы над русским переводом книги «Developing Web Applications with Haskell and Yesod» идут с бешеной скоростью. В этой заметке я предлагаю вашему вниманию черновой вариант перевода шестнадцатой главы книги, посвященной интернационализации. Есть подозрения, что эта глава заинтересует вас даже в том случае, если в обозримом будущем вы не собираетесь использовать ни Haskell, ни Yesod.

Позвольте громогласно объявить о том, что недавно небольшая группа энтузиастов, среди которых есть и я, начала работу над русским переводом книги Developing Web Applications with Haskell and Yesod. В сей заметке я хотел бы представить вашему вниманию черновой вариант перевода первой главы этой книги. Из нее вы узнаете, что это за Yesod такой и чем он может быть полезен. Кстати, мы будем рады всем желающим присоединиться к проекту!

Сегодня совместными усилиями мы с вами создадим простенький скриптовый язык программирования. В нем не будет массивов или условных операторов, зато будут целочисленные переменные и множество операций над ними. Писать, как вы уже поняли, будем на замечательном языке Haskell. Также мы познакомимся с «компиляторами компиляторов» Alex и Happy.

В сей заметке речь пойдет о языке Go, с которым я имел удовольствие познакомиться несколько недель назад. Будут освещены особенности языка и разобрана небольшая программка на нем. Напоследок я поделюсь своими субъективными впечатлениями от работы с Go.

Добавлять модули на CPAN оказалось до неприличия просто. В этой заметке вы найдете пошаговую инструкцию, как это делается. Но будьте осторожны! У вас может возникнуть непреодолимое желание штамповать модули один за другим, позабыв о сне, здоровом питании и личной гигиене.

Решил вот написать свой HTTP сниффер. Не то, чтобы существующие решения, всякие там FireBug, Wireshark, tcpdump и urlsnarf, плохо работали. Просто какие-то они не совсем удобные или не всегда делают то, что мне действительно нужно.

Помните, я как-то писал про разработку GUI приложений на Haskell с использованием библиотеки wxWidgets? Мне стало интересно, а нельзя ли сгенерировать код GUI на языке C++ в wxGlade или Code::Blocks, а затем связать этот код с кодом на Haskell, реализующим собственно функционал приложения? Оказалось, что можно, и довольно просто.

Некоторое время назад мне захотелось очень простой вещи — чтобы при получении новой электронной почты где-то в углу экрана появлялось уведомление об этом. Притом мне нужны были только уведомления, а не полноценный почтовый клиент, поскольку почту я предпочитаю читать через веб-интерфейс. После непродолжительного поиска мне удалось найти парочку соответствующих приложений.

Тем временем я продолжаю почитывать книги по искусственному интеллекту и нахожу в них массу интересных вещей. В этой заметке я предлагаю вашему вниманию задачу о роботе-пылесосе, которая формулируется примерно следующим образом.