Linux.org.ru: Новости's Journal
 
[Most Recent Entries] [Calendar View]

Saturday, December 8th, 2012

    Time Event
    6:31p
    Вышла новая версия ECL 12.12.1 -- реализации языка программирования Common Lisp

    ECL (Embeddable Common Lisp) — это одна из многочисленных реализаций языка программирования Common Lisp со стандартом ANSI INCITS 226-1994 (R2004).

    Основной особенностью ECL является то, что он компилирует исходный Common Lisp код в байт-код или в портабельный Си-код, который затем компилируется стандартным Си компилятором текущей платформы, что делает компилятор ECL легко переносимым — например известны порты ECL на ARM которые работают на платформах Android и iOS.

    ECL также может легко встраиваться в приложения написанные на других языках, как скриптовый язык, но с более богатыми возможностями: Common Lisp, компиляция в байт-код или машинный код (если доступен компилятор языка Си).

    • Основые видимые изменения:
      • DELETE-FILE, RENAME-FILE, chdir, mkdir и chmod теперь сигналят ошибки (работы с файлами).
      • Обновлен ASDF со встроенным ASDF-BUNDLE вместо ASDF-ECL.
      • SYS:FUNCTION-LAMBDA-LIST снова работает с макросами и специальным операторами.
      • Линковка с ecl-help для безпроблемного использования DOCUMENTATION в уже готовых приложениях.
      • ECL теперь генерирует более читабельный Си-код с правильными отступами, меньшим количеством меток и с более стандартными конструкциями.
    • Исправленные ошибки:
      • Улучшена производительность новой библиотеки для поддержки SMP.
      • Исправления ошибок в очереди POSIX сигналов, которые вызывали повторяющуюся потерю Ctrl-C.
      • Исправления опечаток, которые вызывали проблемы поддержки long long и unsigned long long.
      • Код в ecl_import_current_thread() не был совместим GC API.
      • Версия COMPILE-FILE, которая компилировала в байт-код, не поддерживала :EXTERNAL-FORMAT параметр.
      • Скомпилированная версия DOTIMES вычисляла выходную форму в неправильном контексте.
      • ecl_import_current_thread() не связывала *CURRENT-PROCESS*.
      • Изменен алгоритм для определения является ли функция замыканием или нет, и который тип Си-реализации замыкания необходим для этого.
    • Мета-объектный протокол:
      • Теперь ECL полностью поддерживает MOP.
      • Полностью изменен протокол начального этапа сборки/загрузки классов (class bootstrapping protocol), который теперь проще и более эффективен, позволяя нам иметь доступ ко всем классам на начальном этапе (сборки образа).
      • Все методы доступа переопределены, как обобщеные функции, после начальной сборки образа (bootstrapping) ECL.
      • Методы доступа стандартных классов теперь оптимизированы. Это стало возможным благодаря тому, что они полагаются на SLOT-VALUE, которые (по MOP) не могут быть переопределены или "обернуты" без ввода новых мета-классов.
      • Компилятор больше не "инлайнит" методы доступа к слотам мета-объектов, которые могут быть переопределены.
      • (SETF SLOT-VALUE) не всегда возращал присвоенное значение.
      • SLOT-BOUNDP возвращал дополнителные значиния при ошибках.
      • SLOT-VALUE-USING-CLASS не вызывал SLOT-UNBOUND

    Исходный код ECL можно загрузить по адресу:

    http://sourceforge.net/projects/ecls/files/latest/download

     , , ,

    Image
    8:02p
    Jono Bacon ответил на претензии Ричарда Столлмана по поводу «несвободы Ubuntu»

    Вслед за высказанной Ричардом Столлманом критики Ubuntu, в блоге компании Canonical опубликован обзор планов по дальнейшему развитию средств online-поиска в Dash. Кроме того, Джоно Бэкон (Jono Bacon), менеджер Canonical по работе с сообществом, опубликовал развёрнутый ответ, в котором назвал сообщение Столлмана необоснованным, однобоким и излишне категоричным, не считающимся с точкой зрения другой стороны и способствующим нагнетанию негатива (FUD).

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

    P.S. Перевод Ubuntu Ru-LoCo в G+.

     , ,

    Image

    << Previous Day 2012/12/08
    [Calendar]
    Next Day >>

Linux.org.ru: Новости   About LJ.Rossia.org