LINUX.ORG.RU

Haskell


173

8

Всего сообщений: 53

Haste - компилятор Haskell в JavaScript

Группа Open Source

Идёт разработка Haste (HASkell To Ecmascript) - компилятора из Haskell в JavaScript.

Перед проектом стоит цель создать практичный компилятор из Haskell в Javascript.

( читать дальше... )

>>> Подробности

 , haste,

vi0
()

GHC 7.8.1

Группа Open Source

Спустя почти год с выпуска предыдущей версии, вышла новая версия GHC 7.8.1 — одного из самых мощных и развитых на сегодняшний день компиляторов функционального языка программирования Haskell, который разрабатывается свободной рабочей группой из многочисленных разработчиков, собранных по всему миру и координируемых из лаборатории университета Глазго.

Основные изменения:

  • добавлена поддержка OS X Mavericks и XCode 5. В связи с этим GHC использует Clang для препроцессорной обработки кода для билдов Mavericks;
  • добавлено новое предупреждение по умолчанию -fwarn-typed-holes, подробнее в Typed Holes;
  • возможность выполнять вычисления над натуральными числами на уровне типов при использовании расширения DataKinds;
  • добавлены Closed Type Families;
  • при использовании расширения GeneralizedNewtypeDeriving теперь проводится проверка ролей, подробнее в Roles;
  • добавлены Overloaded Lists;
  • добавлено расширение Pattern Synonyms;
  • переработаны механизмы вывода типов, увеличена скорость, уменьшено потребление памяти;
  • по умолчанию 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);
  • добавлено расширение InterruptibleFFI extension, подробнее Interruptible foreign calls;
  • добавлен модуль Hooks в GHC API;
  • кодогенератор LLVM теперь поддерживает динамическую линковку;
  • добавлена поддержка Unicode left/right single quotation marks (i.e. U+2018 and U+2019) для сообщений компилятора, если текущая локаль поддерживает Юникод.

Страница загрузки

>>> Подробности

 ,

encyrtid
()

Встреча московской группы пользователей Haskell: MskHUG Fall 2013

Группа Конференции и встречи

30 октября в Москве состоится неформальная встреча Haskell-программистов для общения и обмена опытом.

На встрече будут представлены два доклада:

Участие бесплатное, но зарегистрироваться необходимо.

30 октября, в среду, с 18:30 ждем участников по адресу: Москва, ул. Льва Толстого 16, офис Яндекса, зал Экстрополис.

>>> Подробности

 ,

ymn
()

Вышла книжка по функциональному программированию на Haskell

Группа Документация

Григорий Макеев выложил в свободный доступ книгу «Основы функционального программирования на языке Haskell».
Скачать можно тут.

>>> Подробности

 ,

cab
()

Вышел тайлинговый менеджер xmonad 0.11

Группа Linux General

Спустя более года относительно активной разработки, команда разработчиков представила xmonad 0.11!

XMonad — это тайлинговый менеджер окон, который известен своей лёгкостью, надёжностью, расширяемостью и эффективностью. Он поддерживает настоящий многопоточный тайлинг, у него богатые и простые возможности настройки. Легко портируем, работает на обычных десктопах, ноутбуках, нетбуках, телефонах, игровых консолях, OLPC и т.п.

Возможности:

  • автоматическое управление окнами;
  • основное управление с помощью клавиатуры: мышь не нужна;
  • полная поддержка тайлинг окон на multi-head дисплеях;
  • полная поддержка плавающих окон, табов и декораций окон;
  • полная поддержка утилит Gnome и KDE;
  • поддержка XRandr для поворотов, добавления и удаления мониторов;
  • поддержка композитинга;
  • большая библиотека расширений;
  • отличная документация;
  • большая и активная команда разработчиков, поддержки и сообщество.

Наконец-то исправлена ошибка #177 (фокус в Java-приложениях).

>>> Подробности

 , ,

qnikst
()

Glasgow Haskell Compiler 7.6.1

Группа Open Source

Вышла новая версия GHC 7.6.1 — одного из самых мощных и развитых на сегодняшний день компиляторов функционального языка программирования Haskell, который разрабатывается свободной рабочей группой из многочисленных разработчиков, собранных по всему миру и координируемых из лаборатории университета Глазго.

Основные изменения:

  • polymorphic kinds и data promotion полностью реализованы, Kind polymorphism;
  • реализована поддержка платформы Windows 64bit;
  • флаг -fdefer-type-error позволяет отложить обнаружение ошибок типов в рантайме, Deferring type errors to runtime;
  • опцию RTS -N возможно изменять в рантайме с помощью Control.Concurrent.setNumCapabilities, RTS options for SMP parallelism;
  • новое расширение 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;
  • исправление ошибок и улучшение производительности.

>>> Подробности

 , ,

encyrtid
()

Glasgow Haskell Compiler 7.4.2

Группа Open Source

Вышла новая версия GHC 7.4.2 — одного из самых мощных и развитых на сегодняшний день компиляторов функционального языка программирования Haskell, который разрабатывается свободной рабочей группой из многочисленных разработчиков, собранных по всему миру и координируемых из лаборатории университета Глазго.

7.4.2 — bugfix-релиз, исправлено более 30 различных ошибок в компиляторе, интерпретаторе и библиотеках.

Подробный список изменений

>>> Подробности

 , ,

encyrtid
()

Вышел пятый выпуск Haskell Platform

Группа Open Source

Вчера, 3 июня, спустя примерно полгода со времени предыдущего релиза, вышел пятый (за номером 2012.2.0.0) выпуск Haskell Platform — простого в установке окружения разработки для языка Haskell.

( читать дальше... )

>>> Подробности

 , , , ,

quasimoto
()

Вышел GHC 7.4.1

Группа Open Source

Вышел GHC 7.4.1 – новый релиз компилятора функционального языка программирования Haskell. Это первый релиз стабильной ветки 7.4, которая станет основой для будущих версий платформы Haskell. Предыдущая ветка 7.2 была скорее полигоном для новых идей.

Основные изменения по сравнению с веткой 7.0:

  • Класс типов Num более не наследуется от классов Eq и Show. Как следствие, многие функции получили явные ограничения Eq и Show.
  • Новая возможность Safe Haskell (-XSafe, -XTrustworthy, -XUnsafe). Позволяет ввести более строгую проверку безопасности типов во время компиляции, а также служит для компиляции и выполнения «ненадёжного» кода.
  • Новая возможность полиморфизм видов (kind polymorhphism) (-XPolyKinds).
  • Новая возможность виды-ограничения (constraint kinds) (-XConstraintKinds). Любой тип вида Constraint может использоваться как ограничение типа.
  • Теперь можно задавать любые объявления в строке ввода ghci.
  • Реализации профилирования и hpc (проверки покрытия кода программ) были объединены и капитально переработаны.
  • Теперь можно писать плагины для компилятора.
  • Поддержка DPH (Data Paralell Haskell) значительно улучшена.
  • Предварительная поддержка регистровой (registerised) компиляции для платформы ARM, использующей LLVM.

>>> Подробности

 , ,

pitekantrop
()

Вышел в свет GHC 7.4.1 RC1

Группа Open Source

21 декабря вышел в свет релиз-кандидат GHC (Glasgow Haskell Compiler) - одного из самых мощных и развитых на сегодняшний день компиляторов функционального языка программирования Haskell, который разрабатывается свободной рабочей группой из многочисленных разработчиков, собранных по всему миру и координируемых из лаборатории университета Глазго.

Доступны исходные коды, установщики для Windows и Mac OS X, а также бинарные сборки для amd64/Linux, i386/Linux, amd64/FreeBSD и i386/FreeBSD.

Среди нововведений можно отметить:

  • kind polymorphism (-XPolyKinds).
  • Создание плагинов для компилятора.
  • Предварительная поддержка трансляции с использованием LLVM на ARM-платформу.

>>> Подробности

 , ,

ymn
()

Glasgow Haskell Compiler 7.2.1

Группа Open Source

Вышла новая версия GHC 7.2.1 - одного из самых мощных и развитых на сегодняшний день компиляторов функционального языка программирования Haskell, который разрабатывается свободной рабочей группой из многочисленных разработчиков, собранных по всему миру и координируемых из лаборатории университета Глазго.

Основные изменения, по сравнению с предыдущей версией 7.0.4:

  • Значительно улучшена поддержка DPH (Data Parallel Haskell);
  • Добавлена реализация «Safe Haskell»;
  • Добавлена возможность написания плагинов для компилятора;
  • Новые расширения для языка;
  • Изменения в компиляторе, интерпретаторе и рантайме;
  • Множество различных обновлений.

Changelog

>>> Подробности

 , ,

encyrtid
()

Вышел Iptadmin 1.0.0 - web-интерфейс для Iptables

Группа Open Source

Тихо и незаметно был выпущен Iptadmin 1.0.0.

Это простой веб-интерфейс для Iptables, который поддерживает пока только несколько опций. Отличительная особенность - подробные сообщения об ошибках.

Iptadmin запускается в режиме демона. Программа не хранит в системе никакие промежуточные файлы, информация берётся прямо из iptables-save. Правила редактируются с помощью вызова iptables и сохраняются командой /etc/init.d/iptables save. Для таких дистрибутивов, как debian, сохранение правил настраивается дополнительно.

Авторизация осуществляется с помощью PAM. Доступ разрешён пользователю root и любому другому пользователю из группы iptadmin.

Iptadmin не поддерживает работу по https. Чтобы исключить передачу системных паролей по сети в открытом виде, web-интерфейс работает только на локальном сетевом интерфейсе. Для удалённого доступа необходимо настроить работу по https с помощью стороннего web-сервера.

Программа задумывалась в помощь системным администраторам и аутсорсерам. С помощью неё и нескольких простых инструкций неквалифицированный пользователь сможет управлять сетевым экраном в Linux.

>>> Подробности

 , ,

tranquil
()

Доступна альфа-версия игры «Nikki and the Robots» от Joyride Laboratories

Группа Игры

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

В игре уже имеются различные уровни, редактор и функционал для сетевого режима. Все это доступно под лицензиями LGPL и Creative Commons. Позже в том году появится режим с сюжетной линией, в которой будет раскрываться история о Nikki, Dr. Lacroix и его роботах в четырех эпизодах, которые будут доступны для скачивания за небольшую плату.

Nikki and the Robots представляет собой классический платформер 80х - 90х годов, но в основе игрового процесса лежит уникальная идея. Nikki, не использует какого-либо оружия или снаряжения во время выполнения своего задания, и может только прыгать и бегать по уровню, но зато имеется возможность взламывать роботов Dr. Lacroix, перехватывая управление над ними, с помощью компьютерных терминалов. Благодаря использованию роботов и их особенностям у Nikki появляется возможность решать головоломки, обходить препятствия и выполнять задания, имеющиеся в игре.

Основным языком разработки является Haskell. Для отрисовки 2D-графики, а также некоторых других элементов, используется Qt с аппаратно-ускоренным OpenGL бэкендом. Для реализации физики в игре использовались физический движок Chipmunk и биндинги к нему.

Скачать

Скриншоты

Исходный код

>>> Подробности

 , , , , , ,

rival
()

7-й номер журнала «Практика функционального программирования»

Группа Документация

Вышел свежий, 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р, доступны и все предыдущие номера, комплекты еще дешевле, доставка куда угодно, в Москве можно самовывозом).

>>> Обсуждение свежего номера

 , , refal, , , , , ,

ott
()

Языку Haskell исполнился 21 год

Группа Open Source

1 апреля 1990 года был опубликован документ под названием «The Haskell Report», а также первый стабильный релиз того самого ЯП для штангистов.

>>> Подробности

 ,

folone
()

The Haskell Platform 2011.2

Группа Open Source

Вышла новая версия комплекта для разработки на популярном функциональном языке Haskell — «The Haskell Platform 2011.2». Данная сборка содержит всё необходимое не только для освоения, но и успешной разработки на данном языке.

В комплект включены такие важные компоненты, как:

  • GHC 7.0.2 — оптимизирующий компилятор языка Haskell, поддерживающий REPL и содержащий интерактивный отладчик;
  • Haddock — генератор документации из аннотированного исходного кода (аналог doxygen);
  • Cabal — пакетный менеджер, позволяющий «одной командой» устанавливать различные программы и библиотеки с Hackage;
  • Happy, Alex, Parsec — для упрощения написания лексических анализаторов и парсеров;
  • библиотеки для работы с OpenGL/GLU/GLUT;
  • а также многое другое.

>>> Подробности

 , , ,

ky-san
()

6-й номер журнала «Практика функционального программирования»

Группа Документация

После долгого перерыва вышел 6-й номер журнала «Практика функционального программирования», который также стал доступен и в печатном виде.

В номере вы можете найти:

  • эксклюзивные интервью с титанами функционального мира, создателями языков Haskell и Erlang: Саймон Пейтон Джонс и Джо Армстронг поделятся мыслями и ответят на вопросы о своих детищах и обо всем остальном, от работы в Microsoft Research до творчества Тарковского (обсуждение: Саймон Пейтон-Джонс, Джо Армстронг);
  • сравнение Node.js и Erlang (Дмитрий Демещук);
  • обзор языка Scala (Влад Патрышев);
  • перевод статьи Дэна Пипони о быстром сопоставлении с регулярными выражениями при помощи моноидов;
  • статью Евгения Кирпичёва, в которой идеи Дэна Пипони реализованы в коде

Кроме этого, начат проект «Библиотечка ПФП» в рамках которого будут публиковаться переводы известных статей на тему функционального программирования.

>>> Официальный анонс

 , , , , , , , ,

ott
()

Встречайте новый язык программирования — Sifflet 1.0

Группа Open Source

Первая версия визуального функционального языка программирования Sifflet отныне доступна на hackage.

Назначение этого языка — помочь студентам познать рекурсию.

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

Помимо, собственно, исполнения программ на Sifflet, начиная с этого выпуска появилась возможность экспорта самой программы на другие языки, в частности Scheme (Lisp), Python и Haskell. Помимо самой программы также предоставляется небольшая библиотека для поддержки необходимого функционального минимума на выбранной платформе.

Данная возможность позиционируется авторами как вспомогательная и в познавательных целях.

Почитать про новый язык можно на странице проекта

Учебник.

>>> Анонс выпуска

 , , sifflet,

AVL2
()

Haskell On a Horse — веб-фреймворк со стрелочками!

Группа Open Source

Haskell On a Horse — новый веб-фреймворк для языка Haskell.
На текущий момент библиотека находится в стадии разработки, но хакеры могут попробовать её уже сейчас.
Библиотека выпускается под свободной лицензией BSD3. На сайте находятся интерактивные примеры и документация.

>>> Подробности

 , ,

oh
()

Вышел новый стандарт Haskell

Группа Документация

Саймон Марлоу (Simon Marlow) опубликовал анонсированный ранее Haskell 2010 Report (HTML, PDF).

Основные изменения:

  • Добавлен Numeric
  • Добавлено System.IO.Error.{catch,try,ioError}
  • Исправлено множество багов.

Также Саймон указал на то, что чуть позже, в этом году появится новая ревизия Хаскелля, а также что с этого момента он передаёт полномочия главного редактора документа спецификаций главе комитета Хаскелля 2011 года, Малькольму Воллесу (Malcolm Wallace).

>>> Подробности

 ,

folone
()