Haxl — библиотека на языке Haskell, которая упрощает доступ к ресурсам, таким как базы данных или web-сервисы. Haxl может обрабатывать в пакетном режиме запросы к одному источнику данных, конкуррентно обрабатывать запросы к многим источникам данных и кешировать предыдущие запросы.
Таким образом, получающий данные код может быть более компактным и понятным, чем если бы вам пришлось разрабатывать его самостоятельно.
Спустя почти год с выпуска предыдущей версии, вышла новая версия GHC 7.8.1 — одного из самых мощных и развитых на сегодняшний день компиляторов функционального языка программирования Haskell, который разрабатывается свободной рабочей группой из многочисленных разработчиков, собранных по всему миру и координируемых из лаборатории университета Глазго.
Основные изменения:
добавлена поддержка OS X Mavericks и XCode 5. В связи с этим GHC использует Clang для препроцессорной обработки кода для билдов Mavericks;
добавлено новое предупреждение по умолчанию -fwarn-typed-holes, подробнее в Typed Holes;
возможность выполнять вычисления над натуральными числами на уровне типов при использовании расширения DataKinds;
по умолчанию GHC проводит unboxing всех строгих полей «малых» типов для datatype'ов. «Малые» типы — это типы, размер которых меньше, либо равен машинному слову. Это означает что больше не нужно использовать прагму UNPACK для строгих полей с типом Int. Это также относится к типам с плавающей точкой;
новый менеджер IO, который значительно лучше масштабируется по сравнению с предыдущим;
LLVM-backend поддерживает 128-и и 256-битные SIMD операции;
полностью переписан кодогенератор;
улучшена поддержка кросскомпиляции;
PrimOps для сравнения unboxed значений теперь возвращает Int# вместо Bool;
новые PrimOps для атомарных операций;
Typeable теперь poly-kinded, типы Typeable1, Typeable2 и т.д. объявлены устаревшими и перемещены в Data.OldTypeable;
добавлена возможность параллельной компиляции;
добавлена поддержка новой прагмы {-# MINIMAL #-}, разрешающей явную декларацию минимального полного определения класса;
в версии 7.10 Applicative станет суперклассом Monad, что потенциально приведет к неработоспособности большого количества кода. Для облегчения миграции GHC теперь генерирует предупреждения о конфликтах Applicative-Monad Proposal (AMP);
кодогенератор LLVM теперь поддерживает динамическую линковку;
добавлена поддержка Unicode left/right single quotation marks (i.e. U+2018 and U+2019) для сообщений компилятора, если текущая локаль поддерживает Юникод.
Спустя более года относительно активной разработки, команда разработчиков представила xmonad 0.11!
XMonad — это тайлинговый менеджер окон, который известен своей лёгкостью, надёжностью, расширяемостью и эффективностью. Он поддерживает настоящий многопоточный тайлинг, у него богатые и простые возможности настройки. Легко портируем, работает на обычных десктопах, ноутбуках, нетбуках, телефонах, игровых консолях, OLPC и т.п.
Возможности:
автоматическое управление окнами;
основное управление с помощью клавиатуры: мышь не нужна;
полная поддержка тайлинг окон на multi-head дисплеях;
полная поддержка плавающих окон, табов и декораций окон;
полная поддержка утилит Gnome и KDE;
поддержка XRandr для поворотов, добавления и удаления мониторов;
поддержка композитинга;
большая библиотека расширений;
отличная документация;
большая и активная команда разработчиков, поддержки и сообщество.
Наконец-то исправлена ошибка #177 (фокус в Java-приложениях).
Вышла новая версия GHC 7.6.1 — одного из самых мощных и развитых на сегодняшний день компиляторов функционального языка программирования Haskell, который разрабатывается свободной рабочей группой из многочисленных разработчиков, собранных по всему миру и координируемых из лаборатории университета Глазго.
Основные изменения:
polymorphic kinds и data promotion полностью реализованы, Kind polymorphism;
новое расширение ExplicitNamespaces, которое разрешает ограничивать экспорт типов с ключевым словом type;
изменено поведение расширения TypeOperator;
добавлена возможность вывести экземпляры Generic1 автоматически, Generic programming;
новое соглашение о вызовах FFI capi, включаемое через расширение CAPI;
новая прагма CTYPE, используемая с CAPI;
новое расширение InstanceSigs, которое разрешает типам сигнатур быть специфицированными в instance;
GHC поддерживает числовые и строковые (включаемые через DataKinds) и символьные литералы, Promoted Literals;
тип Any может быть использован как аргумент для foreign prim functions;
ключевое слово mdo вновь введено. Оно может быть использовано для создания do-выражения с рекурсивными привязками. Поведение ключевого слова rec было изменено;
новая синтаксическая конструкция (включаемая через расширение LambdaCase) для создания анонимной функции из case-выражения, Lamda-case;
исправление ошибок и улучшение производительности.
Вышла новая версия GHC 7.4.2 — одного из самых мощных и развитых на сегодняшний день компиляторов функционального языка программирования Haskell, который разрабатывается свободной рабочей группой из многочисленных разработчиков, собранных по всему миру и координируемых из лаборатории университета Глазго.
7.4.2 — bugfix-релиз, исправлено более 30 различных ошибок в компиляторе, интерпретаторе и библиотеках.
Вчера, 3 июня, спустя примерно полгода со времени предыдущего релиза, вышел пятый (за номером 2012.2.0.0) выпуск Haskell Platform — простого в установке окружения разработки для языка Haskell.
Вышел GHC 7.4.1 – новый релиз компилятора функционального языка программирования Haskell. Это первый релиз стабильной ветки 7.4, которая станет основой для будущих версий платформы Haskell. Предыдущая ветка 7.2 была скорее полигоном для новых идей.
Основные изменения по сравнению с веткой 7.0:
Класс типов Num более не наследуется от классов Eq и Show. Как следствие, многие функции получили явные ограничения Eq и Show.
Новая возможность Safe Haskell (-XSafe, -XTrustworthy, -XUnsafe). Позволяет ввести более строгую проверку безопасности типов во время компиляции, а также служит для компиляции и выполнения «ненадёжного» кода.
21 декабря вышел в свет релиз-кандидат GHC (Glasgow Haskell Compiler) - одного из самых мощных и развитых на сегодняшний день компиляторов функционального языка программирования Haskell, который разрабатывается свободной рабочей группой из многочисленных разработчиков, собранных по всему миру и координируемых из лаборатории университета Глазго.
Доступны исходные коды, установщики для Windows и Mac OS X, а также бинарные сборки для amd64/Linux, i386/Linux, amd64/FreeBSD и i386/FreeBSD.
Вышла новая версия GHC 7.2.1 - одного из самых мощных и развитых на сегодняшний день компиляторов функционального языка программирования Haskell, который разрабатывается свободной рабочей группой из многочисленных разработчиков, собранных по всему миру и координируемых из лаборатории университета Глазго.
Основные изменения, по сравнению с предыдущей версией 7.0.4:
Значительно улучшена поддержка DPH (Data Parallel Haskell);
Это простой веб-интерфейс для Iptables, который поддерживает пока только несколько опций. Отличительная особенность - подробные сообщения об ошибках.
Iptadmin запускается в режиме демона. Программа не хранит в системе никакие промежуточные файлы, информация берётся прямо из iptables-save. Правила редактируются с помощью вызова iptables и сохраняются командой /etc/init.d/iptables save. Для таких дистрибутивов, как debian, сохранение правил настраивается дополнительно.
Авторизация осуществляется с помощью PAM. Доступ разрешён пользователю root и любому другому пользователю из группы iptadmin.
Iptadmin не поддерживает работу по https. Чтобы исключить передачу системных паролей по сети в открытом виде, web-интерфейс работает только на локальном сетевом интерфейсе. Для удалённого доступа необходимо настроить работу по https с помощью стороннего web-сервера.
Программа задумывалась в помощь системным администраторам и аутсорсерам. С помощью неё и нескольких простых инструкций неквалифицированный пользователь сможет управлять сетевым экраном в Linux.
В вымышленном мире будущего знаменитый злодей Dr. Lacroix планирует захватить власть над миром с помощью своей армии роботов. Вы берете на себя роль Nikki, члена секретной организации, ваша цель - помешать этим злобным планам. Действие игры проходит в самых разнообразных местах: от футуристических метрополисов до подводных сооружений, плавучих островов и даже орбитальных станций.
В игре уже имеются различные уровни, редактор и функционал для сетевого режима. Все это доступно под лицензиями LGPL и Creative Commons. Позже в том году появится режим с сюжетной линией, в которой будет раскрываться история о Nikki, Dr. Lacroix и его роботах в четырех эпизодах, которые будут доступны для скачивания за небольшую плату.
Nikki and the Robots представляет собой классический платформер 80х - 90х годов, но в основе игрового процесса лежит уникальная идея. Nikki, не использует какого-либо оружия или снаряжения во время выполнения своего задания, и может только прыгать и бегать по уровню, но зато имеется возможность взламывать роботов Dr. Lacroix, перехватывая управление над ними, с помощью компьютерных терминалов. Благодаря использованию роботов и их особенностям у Nikki появляется возможность решать головоломки, обходить препятствия и выполнять задания, имеющиеся в игре.
Основным языком разработки является Haskell. Для отрисовки 2D-графики, а также некоторых других элементов, используется Qt с аппаратно-ускоренным OpenGL бэкендом. Для реализации физики в игре использовались физический движок Chipmunk и биндинги к нему.
Вышел свежий, 7-й номер журнала «Практика функционального программирования». В новом номере вы можете прочитать следующие статьи:
«Язык РЕФАЛ — взгляд со стороны». Бойко Банчев расскажет о сущности, истории и современном состоянии языка РЕФАЛ — детища Валентина Фёдоровича Турчина; языке незаслуженно подзабытом, но на десятилетия опередившем своё время и пустившем корни во множество современных ЯП (как, например, Mathematica).
«Circumflex — веб-фреймворк на Scala comme il faut». Александр Темерев даст урок использования этого «обезжиренного» и гибкого веб-фреймворка, написанного на Scala российской командой во главе с Борисом Окунским.
«Разработка алгоритма обнаружения движения в среде программирования Mathematica». Вадим Залива расскажет об опыте прототипирования такого алгоритма при разработке iPhone-приложения iSentry. Хотя Mathematica и не является в полном смысле этого слова функциональным языком программирования, но программирование в этой среде задействует множество не очень распространенных пока в мейнстриме, но очень важных и заслуживающих внимание средств: интерактивный интерпретатор, гомоиконность (единство кода и данных), сопоставление с образцами, wholemeal programming (оперирование целыми структурами данных, а не их частями), акцент на «чистое» программирование, dataflow programming (Manipulate) и т.п.
«Как написать LDAP-сервер на Erlang» и «Как написать LDAP-сервер на Си». Максим Сохацкий и Олег Смирнов обменяются любезностями со Львом Валкиным: Максим и Олег похвалят Erlang за то, что на нем можно за 20 минут написать LDAP-сервер, а Лев докажет, что дело тут вовсе не в Erlang.
«Продолжения в практике». Алексей Вознюк (человек, написавший на LISP самую быструю программу к конкурсу в ПФП №3) расскажет об использовании продолжений для упрятывания асинхронности кода за обыкновенным «последовательным» синтаксисом. Эта тема особенно актуальна в контексте взрывного роста Веба и сетевых сервисов, но интересна и потому, что открывает целый пласт неожиданных структур управления. Рекомендуем перед прочтением ознакомиться с недавно опубликованным в «Библиотечке ПФП» переводом статьи «Паттерны использования call-with-current-continuation».
«Суперкомпиляция: идеи и методы». Илья Ключников, занимающийся суперкомпиляцией в Институте прикладной математики им. М. В. Келдыша, расскажет о суперкомпиляции (кстати, изобретенной также В. Ф. Турчиным в контексте языка РЕФАЛ), построив поразительно компактный и понятный суперкомпилятор простого языка, и покажет, что она применима не только для удивительно мощной оптимизации многих классов программ, но имеет и другие неожиданные применения.
Кроме этого, журнал доступен и в печатном виде (200р, доступны и все предыдущие номера, комплекты еще дешевле, доставка куда угодно, в Москве можно самовывозом).
Вышла новая версия комплекта для разработки на популярном функциональном языке Haskell — «The Haskell Platform 2011.2». Данная сборка содержит всё необходимое не только для освоения, но и успешной разработки на данном языке.
В комплект включены такие важные компоненты, как:
GHC 7.0.2 — оптимизирующий компилятор языка Haskell, поддерживающий REPL и содержащий интерактивный отладчик;
Haddock — генератор документации из аннотированного исходного кода (аналог doxygen);
Cabal — пакетный менеджер, позволяющий «одной командой» устанавливать различные программы и библиотеки с Hackage;
Happy, Alex, Parsec — для упрощения написания лексических анализаторов и парсеров;
После долгого перерыва вышел 6-й номер журнала «Практика функционального программирования», который также стал доступен и в печатном виде.
В номере вы можете найти:
эксклюзивные интервью с титанами функционального мира, создателями языков Haskell и Erlang: Саймон Пейтон Джонс и Джо Армстронг поделятся мыслями и ответят на вопросы о своих детищах и обо всем остальном, от работы в Microsoft Research до творчества Тарковского (обсуждение: Саймон Пейтон-Джонс, Джо Армстронг);
сравнение Node.js и Erlang (Дмитрий Демещук);
обзор языка Scala (Влад Патрышев);
перевод статьи Дэна Пипони о быстром сопоставлении с регулярными выражениями при помощи моноидов;
статью Евгения Кирпичёва, в которой идеи Дэна Пипони реализованы в коде
Кроме этого, начат проект «Библиотечка ПФП» в рамках которого будут публиковаться переводы известных статей на тему функционального программирования.
Первая версия визуального функционального языка программирования Sifflet отныне доступна на hackage.
Назначение этого языка — помочь студентам познать рекурсию.
Программирование функций в этом языке сводится к черчению в визуальном редакторе диаграмм. В свою очередь, интерпретатор в процессе выполнения программы также чертит диаграммы, отображая таким образом что и зачем было вызвано и как исполнено.
Помимо, собственно, исполнения программ на Sifflet, начиная с этого выпуска появилась возможность экспорта самой программы на другие языки, в частности Scheme (Lisp), Python и Haskell. Помимо самой программы также предоставляется небольшая библиотека для поддержки необходимого функционального минимума на выбранной платформе.
Данная возможность позиционируется авторами как вспомогательная и в познавательных целях.