Haskell → репостинг Twitter (или rss) в статус vkontakte.ru на Haskell
В данной статье речь пойдёт о небольшой программке, которая репостит твиты в статус во вконтакте.
Задача довольно простая и совершенно неоригинальная. Началось всё с того, что я прочитал статью на Хабре о том, как это решается на python'е и аналогичную статью про php. В интернетах вроде бы даже какие-то онлайн сервисы есть специально для этой задачи. Но тут весь цимус в том, чтобы решить эту несложную задачу самому, используя свои любимые инструменты. Собственно решение на php появилось позже и с такой же целью.
Ну и на чём же писал я? На haskell, natürlich!
Дальше подробно расскажу о том, как я всё сделал и как это повторить. Никаких особых знаний для понимания, пожалуй, не требуется.
Задача довольно простая и совершенно неоригинальная. Началось всё с того, что я прочитал статью на Хабре о том, как это решается на python'е и аналогичную статью про php. В интернетах вроде бы даже какие-то онлайн сервисы есть специально для этой задачи. Но тут весь цимус в том, чтобы решить эту несложную задачу самому, используя свои любимые инструменты. Собственно решение на php появилось позже и с такой же целью.
Ну и на чём же писал я? На haskell, natürlich!
Дальше подробно расскажу о том, как я всё сделал и как это повторить. Никаких особых знаний для понимания, пожалуй, не требуется.
Haskell → Новый номер журнала «Практика функционального программирования»
Вышел новый номер журнала "Практика функционального программирования". В новом номере опубликованы статьи о производительности лиспа, свертках, мономорфизме, бесточечном стиле программирования и введение в программирование на языке Clojure.
Обсуждение нового номера ведется в ЖЖ — http://community.livejournal.com/fprog/7278.html
Обсуждение нового номера ведется в ЖЖ — http://community.livejournal.com/fprog/7278.html
Haskell → Объяснение ввода-вывода в Haskell без монад
Эта статья объясняет, как выполнять ввод и вывод в Haskell, не пытаясь дать никакого понимания о монадах в целом. Мы начнём с простейшего примера, а затем постепенно перейдём к более сложным. Вы можете дочитать статью до конца, а можете остановиться после любого раздела: каждый последующий раздел позволит вам справиться с новыми задачами. Мы предполагаем знакомство с основами Haskell, в объёме глав с 1 по 6 книги «Programming in Haskell» Грэма Хаттона. [Прим. переводчика: главы «Введение», «Первые шаги», «Типы и классы», «Определение функций», «Выборки из списков», «Рекурсивные функции»]
Haskell → Комбинатор неподвижной точки
Когда мне впервые задали вопрос о том может ли существовать функция вида
Как может существовать функция у которой неоткуда взять значения? Об очевидном варианте
Func<Func<T,T>,T> без использования конструкций вида default(T) он поверг меня в глубокий когнитивный диссонанс. Как может существовать функция у которой неоткуда взять значения? Об очевидном варианте
T Fix<T>(Func<T,T> func){
return func(Fix(func));
}я не мог даже подумать. Разве возможно делать такие функции? Она будет вызываться бесконечно и не даст результата. В языках типа C# такая конструкция и правда вызовет зацикливание, но вполне может работать в языках вроде питона или хаскеля. Сейчас будет немного кода на Haskell, надеюсь синтаксис будет более-менее понятен всем.
Haskell → Вышел GHC 6.12.1
Вышла новая версия GHC с кучей всего нового — улучшенная поддержка параллельного исполнения кода, ThreadScope — инструмент для анализа параллельных программ, поддержка динамических библиотек (пока на Linux), и многое другое…
P.S. правда пока обновляться надо осторожно, старая версия cabal-install с этой версией не работает, и многие библиотеки еще не портированы на новую версию
P.S. правда пока обновляться надо осторожно, старая версия cabal-install с этой версией не работает, и многие библиотеки еще не портированы на новую версию
Блог им. notacodemonkey → Программирования видеокарт на Haskell
По ссылке находится документ в котором описан процесс разработки программной библиотеки для программирования видеокарт. В нете можно найти ещё несколько подобных публикаций и даже истории использования в академических проектах, но к сожалению мне не удалось найти где можно скачать эту/подобную библиотеку.
Erlang/OTP → Ускоряем работу Erlang системы без замедления разработки
Недавно появилась возможность использовать С для написания модулей Erlang систем (это по-моему удобнее любого из предложенных здесь методов). Возможно вы не знали о возможности использовать Haskell в связке с Erlang. Haskell очевидно не панацея и действительно критические участки кода вероятно всё равно придётся переписывать на С, но Haskell предлагает строгую типизацию и сокращение обьёма кода по сравнению с С. Я думаю что проще переписывать код с Erlang на Haskell чем на С, потому что оба языка функциоанльные. Haskell быстрее Erlang благодаря статической типизации и умной системе выведения типов. Предлагаю вашему вниманию вольный перевод статьи о Haskell/Erlang-FFI.
Ruby → Мост Руби ⇋ Хаскелль
Вы — Руби-разработчик? После серии статей (1,2,3) про Хаскелль у вас появилось новое хобби? Вы бы хотели использовать это кунг-фу в своём коде? Нет?
Haskell → Анонсирован Haskell 2010!
По ссылке открытое письмо от Simon Marlow с анонсом официального начала работ над Haskell 2010. Ранее, сообщалось о планах создания новой версии языка и вот работа началась. Особых подробностей нет, но причастным к языку, наверняка, будет интересно почитать.
