Позвольте громогласно объявить о том, что недавно небольшая группа энтузиастов, среди которых есть и я, начала работу над русским переводом книги Developing Web Applications with Haskell and Yesod. В сей заметке я хотел бы представить вашему вниманию черновой вариант перевода первой главы этой книги. Из нее вы узнаете, что это за Yesod такой и чем он может быть полезен. Кстати, мы будем рады всем желающим присоединиться к проекту!
Сегодня совместными усилиями мы с вами создадим простенький скриптовый язык программирования. В нем не будет массивов или условных операторов, зато будут целочисленные переменные и множество операций над ними. Писать, как вы уже поняли, будем на замечательном языке Haskell. Также мы познакомимся с «компиляторами компиляторов» Alex и Happy.
Помните, я как-то писал про разработку GUI приложений на Haskell с использованием библиотеки wxWidgets? Мне стало интересно, а нельзя ли сгенерировать код GUI на языке C++ в wxGlade или Code::Blocks, а затем связать этот код с кодом на Haskell, реализующим собственно функционал приложения? Оказалось, что можно, и довольно просто.
Тем временем я продолжаю почитывать книги по искусственному интеллекту и нахожу в них массу интересных вещей. В этой заметке я предлагаю вашему вниманию задачу о роботе-пылесосе, которая формулируется примерно следующим образом.
Вы когда-нибудь пробовали написать программу, решающую судоку, задачу о волке, козе и капусте или головоломку вроде кубика Рубика? У этих задач есть кое-что общее — точно известно начальное условие и к какому условию требуется прийти, но придумать алгоритм решения задачи не так-то просто. Такие задачи решаются с помощью поиска на графах.
Недавно в блоге Даркуса была поднята тема генерации уникальных текстов, содержащих в себе некоторый смысл. То есть речь идет о генерации нормальных текстов, вроде того, что вы читаете в данный момент, а не простой мешанины из слов. Тема меня «зацепила» и со второй попытки мне удалось написать довольно неплохой, как мне кажется, генератор. Однако, будучи блогером-графоманом, начну я немного издалека…
На прошлой неделе я в очередной раз принял участие в конкурсе по функциональному программированию от Даркуса. В этой заметке вы найдете постановку задачи, ее решение, а также кое-какие мои наблюдения касательно функционального программирования.
Спустя некоторое время после знакомства с Haskell, я заметил, что некоторые задачи уж больно легко решаются при помощи функционального подхода. Возник вполне закономерный (для меня) вопрос. А можно ли применить этот подход в Perl?
Последний выпуск подкаста Radio-T (номер 253) получился на редкость интересным. Речь зашла о Scala, рефакторинге, TDD, багтрекерах, и даже (наконец-то!) о моем любимом Haskell. К сожалению, тема «чем же так хорош этот ваш Haskell» не была в должной мере раскрыта. Такое чувство, что большинство айтишников действительно не понимают плюсов функционального программирования. В этой заметке я постарался развернуто описать, за что лично мне нравится Haskell.
В рамках серии экспериментов с прокачкой мозгов, я решил принять участие в небольшом программистском конкурсе от Романа Душкина. И я не без удовольствия воспринял новость о том, что вошел в пятерку победителей, полностью решивших задачу (места не пронумерованы, но если бы были, то я бы точно занял не первое и не второе место).