LINUX.ORG.RU

Lisp


159

8

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

Ceramic — кросплатформенный GUI на Common Lisp

Группа Open Source

Вышла в свет платформа Ceramic — инструментарий для создания кроссплатформенных приложений с помощью веб-технологий.

Ceramic написан поверх Electron, аналогично текстовому редактору Atom от Github. Примечательным моментом является использование Common Lisp в качестве языка разработки. По словам авторов, Lisp обспечивает быстрый старт и высокую скорость разработки в сочетании с высокой производительностью и зарекомендовавшей себя промышленной надежностью.

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

 ,

zarkone
()

Вышел новый релиз LispWorks 7.0

Группа Проприетарное ПО

LispWorks Ltd рада представить новый релиз LispWorks 7.0 на Windows®, Macintosh®, x86/x86_64 Linux®, ARM Linux®, FreeBSD®, AIX®, x86/x64 Solaris™ и SPARC/Solaris™ платформах.

Также представлен новый продукт: LispWorks for Mobile Runtime для разработки приложений на Android и iOS платформах.

LispWorks 7.0 предоставляет новые возможности:

  • 32-бит реализации для ARM Linux.
  • 32-бит и 64-бит реализации для PowerPC/AIX.
  • Интерфейс с Java.
  • Полная поддержка Unicode в строках.
  • Полная поддержка Unicode в редакторе, включая китайские и японские символы.
  • Улучшена гипертекстовая документация CAPI интерфейса с примерами.
  • Инструменты для анализа кода.
  • Асинхронное API ввода-вывода для TCP и UDP сокетов.
  • Редактор поддерживает больше шрифтов в Cocoa.
  • Поддержка multi-touch gestures.
  • Новая Graphic Tools API (beta quality).
  • Много улучшений в CAPI.
  • Улучшения в IDE включая режим Directory и списка буферов опций в редакторе.
  • Другие новые возможности:
    • Потокобезопасные операции над хеш-таблицами.
    • Оптимизированный доступ к 8 битным simple vectors.
    • Тип FLI для хранения адреса на foreign symbol (используется в коллбеках из C в Lisp).
    • Поддержка 64 битного целого в типах FLI в 32 битной версии LispWorks.
    • Эффективные арифметические операции над 64 битными raw целыми и доступ к елементам вектора в 64 битной версии LispWorks.
    • Поддержка UTF-16 и KOI8-R кодировок.
    • Оптимизация копирования объектов в CLOS.
    • На Windows, собранные DLLs могут использовать другую поставляемую копию MSVCRT рантайма.
    • На OSX улучшена обработка ошибок в Cocoa IDE event loop и используется новая защита от deadlocks.
  • Множество других исправлений ошибок.

Теперь 64 битные версии LispWorks доступны также в LispWorks Professional редакции.

Для некоммерческих целей также доступны новые редакции LispWorks Hobbyist и HobbyistDV с полнофункциональной средой Common Lisp IDE.

Таблица сравнения редакций

LispWorks for Android Runtime позволяет создавать ядро приложения в виде динамической библиотеки, которая затем может интегрироваться с GUI, созданным стандартным средставами разработки для Android.

LispWorks for iOS позволяет создавать ядро приложения в виде динамической библиотеки, которая затем может интегрироваться с GUI, созданным стандартным средствами XCode. 64 битная версия появится позже.

LispWorks 7.0 Personal Edition будет доступен позже в этом году.

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

 , ,

Oxdeadbeef
()

Вышел Emacs 24.5

Группа GNU's Not Unix

Как указано в примечании к выпуску, ничего особо впечатляющего или нового добавлено не было, в основном были закрыты некоторые баги и сделаны небольшие изменения в пакетах и настройках.

  • изменено значение history-length, теперь оно равно 100, переменная redisplay-dont-pause объявлена устаревшей
  • пакеты cc-compat.el, crisp.el, tpu-edt.el, ws-mode.el помечены как устаревшие, кроме них так же помечены пакеты vi.el, vip.el
  • и некоторое количество исправлений и новых ошибок

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

 , ,

msgxx
()

30 лет Symbolics.com

Группа Интернет

15 марта исполняется ровно 30 лет первому зарегистрированному доменному имени в Интернете.

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

 , ,

beastie
()

Common Lisp 21-го века

Группа Open Source

Начат проект по приведению Commons Lisp к нормам 21-го века.

  • Более объектно-ориентированный
  • Более функциональный
  • Разбиение стандартной библиотеки по пакетам
  • Добавление MOP - MetaObject Protocol
  • Синтаксис для регулярных выражений
  • Основан на чистом Common Lisp

Требования:

  • Любая современная реализация Common Listp (SBCL, Clozure CL, GNU CLISP или Allegro CL)
  • Quicklisp

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

 , ,

DiKeert
()

Вышел GNU Common Lisp 2.6.11

Группа GNU's Not Unix

Команда GCL рада представить выход версии 2.6.11 — последнего достижения в «стабильной» (в противовес «разрабатываемой») ветке. Информация о загрузке размещена на http://www.gnu.org/software/gcl.

GNU Common Lisp в настоящее время совместим со стандартом CLtL1. Компиляция Lisp выдаёт нативный код посредством системного компилятора C, благодаря чему GCL получает высокую производительность и поверхностную переносимость. Для GUI используется TCL/Tk.

Особенности выпуска:

  • Лучшая обработка точности вычислений с плавающей точкой.
  • Поддержка cygwin, arm64, ppc64, ppc64le и solaris.
  • Более прочный SGC.
  • Точная инициализация vararg.
  • Отлавливание SIGFPE через #'si::break-on-floating-point-exceptions.
  • Поддержка дизассемблирования инструкций libopcode на x86 через #'si::disassemble-instruction.
  • Упрощены зависимости для сборки.
  • Ускорены gcd, lcm, typep, принуждения, 1+-, предикаты, кэш pcl, SGC, быстрое связывание, вызовы замыканий и скомпилированные большие числа.
  • Компиляция форм замыкания высшего уровня по умолчанию.
  • Мемоизация обработки типа массива.
  • Поддержка аппаратной работы с длинными целыми и возврат объектов в разные регистры.
  • Значительно уменьшен cmpinclude.h.
  • Поддержка предварительного связывания.
  • Поддержка флагов компилятора по умолчанию для Debian (в особенности stack-guard).
  • Новые функции связывания и диагностики быстрого связывания.
  • Некоторая поддержка selinux через личность READ_IMPLIES_EXEC.
  • Множество других исправлений ошибок и обходов ошибок во внешних системах.

>>> Источник

 , ,

MiniRoboDancer
()

Опубликован перевод книги «Lisp in Small Pieces»

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

Это достаточно известная книга Кристиана Кеннека, рассматривающая семантику Лиспа и основы его реализации на примере диалекта Scheme. В процессе повествования разбирается множество аспектов семантики языка, начиная разнообразными вариантами окружений, проходя через продолжения и исключения, заканчивая рефлексией, сутью макросов, компилятором в Си и объектной системой.

Книга содержит 11 интерпретаторов, 2 компилятора, стопку упражнений в каждой главе, уйму интересного материала об истории Лиспа и причинах принятия тех или иных решений в дизайне языка, некоторое количество аллюзий на современные языки программирования, а также небольшой вагончик литературы впридачу.

Здесь нет откровений, невероятно эффективных оптимизаций, мощных систем типов и прочих атрибутов современной computer science (книге 20 лет всё же), но есть отличное твёрдое введение в реализацию языков программирования, призванное заинтересовать новичков, познакомить их с основными понятиями и приёмами этого дела, построив таким образом фундамент для дальнейшего развития.

( Исходники и прочие детали )

>>> Скачать PDF

 , , , ,

ilammy
()

Релиз Deep Space Window manager 0.1

Группа Open Source

После более года разработки вышла версия DSWM 0.1 — форка StumpWM, оконного менеджера написанного на common lisp. Форк был создан как альтернатива StumpWM с улучшеной юзабельностью, функциональностью и более быстрым развитием. На сегодняшний день DSWM является самостоятельным оконным менеджером, во многом не совместимым со StumpWM, хотя, по возможности, обратная совместимость сохраняется. Список основных изменений, видимых для пользователя:

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

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

 , ,

c0smonaut
()

MetaJS — первый Lisp, который угадывает мысли

Группа Open Source

На GitHub выложен исходный код нового языка программирования MetaJS. Синтаксис языка близок к Clojure, MetaJS также как ClojureScript компилируется в JavaScript, но без внешних зависимостей.

MetaJS разрабатывается в рамках проекта Coect.net, поставившего амбициозную задачу заменить электронную почту, XMPP (Jabber) и социальные сети открытым универсальным протоколом.

MetaJS полностью реализован на MetaJS и может перекомпилировать себя. MetaJS обладает рядом интересных возможностей, среди которых можно выделить специальный синтаксис для упрощения последовательных вызовов методов одного объекта (часто применяется, например, в jQuery). MetaJS поддерживет стандартный для Lisp-языков синтаксис определения макросов, короткие анонимные функции в стиле Clojure #(> %1 %2) и деструктуризацию параметров.

Но главная особенность MetaJS — способность в определенных случаях угадывать мысли программиста и генерировать недостающий код. Демонстрация и разоблачение.

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

 , , ,

dogada
()

Lisp Hackers. Бесплатная книга, содержащая интервью с разработчиками и пользователями Lisp

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

Книга содержит интервью с 14 разработчиками и пользователями Лиспа.

В ходе интервью задавались вопросы о текущей работе, используется ли Лисп в рабочих проектах, каким образом разработчики пришли в мир Лиспа, достоинства и недостатки этого семейства языков, рабочие инструменты и т. д.

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

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

 , ,

rikardoac
()

Представлен новый релиз Scheme48 1.9

Группа Open Source

Сегодня, 22 января 2013 года, состоялся новый релиз широко известного в узких кругах интерпретатора языка программирования Scheme — Scheme48, разработчиком которого является один из основных членов Руководящего комитета (Steering committee) Scheme Джонатан Риз. Релиз имеет номер 1.9 и является достаточно долгожданным, поскольку интерпретатор не обновлялся сравнительно давно.

Основные добавления таковы:

  • добавлен новый механизм FFI (старый пока тоже доступен, однако, в скором времени будет удален);
  • добавлен набор функций для поддержки сети (с полной поддержкой IPv6 и UDP, пока не документирован);
  • записи теперь поддерживают наследование (доступно через пакет r6rs-records);
  • добавлен letrec*;
  • интерпретатор теперь предупреждает о циклических зависимостях и переопределениях в модулях;
  • добавлен статистический профилировщик;
  • если VM интерпретатора собирается компилятором, поддерживающим GNU C, то используется прямой шитый код, что позволяет ускорить выполнение;
  • другие добавления, касающиеся поддержки возможностей R6RS, системы сборки и лицензирования (по ссылке «Подробности»).

Список важнейших изменений:

  • переработан собственный сборщик мусора BIBOP GC, который теперь используется по умолчанию;
  • переписана реализация syntax-rules;
  • другие изменения, касающиеся системы сборки, лицензирования и поддержки POSIX (по ссылке «Подробности»).

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

 , , scheme48

buddhist
()

Релиз LispWorks 6.1.1 Personal Edition

Группа Проприетарное ПО

LispWorks Ltd с радостью сообщает о выходе версии LispWorks 6.1.1 Personal Edition для Windows, Macintosh, Linux, FreeBSD и x86/x64 Solaris.

LispWorks Personal Edition доступна для загрузки бесплатно.

Ядро этой версии LispWorks Personal Edition обновлено до версий Professional и Enterprise Editions.

LispWorks Personal Edition теперь предоставляет:

  • API для доступа к окружению (augment-environment etc)
  • высококачественная отрисовка на всех платформах, включая anti-aliasing
  • нативная поддержка печати в GTK+
  • поддержка различных методов многоязыкового ввода
  • поддержка записи в форматах JPEG, PNG, TIFF
  • улучшение Drag'n'drop в GTK+
  • поддержка capi:browser-pane в Windows и Cocoa
  • поддержка одновременного подключения нескольких дисплеев
  • расширен многопроцессорный API
  • поддержка IPv6 сокетов
  • поддержка 'foreign blocks' в FLI
  • добавлен ASDF2
  • улучшена документация и добавлено больше примеров
  • другие улучшения и новые возможности в CAPI и IDE
  • множество исправлений ошибок

Не все перечисленные возможности поддерживаются на всех платформах. Об этой информации можно узнать по адресу:

http://www.lispworks.com/products/features.html

Полный список изменений доступен по адресу:

http://www.lispworks.com/documentation/lw61/RNIG/html/readme-292.htm

Загрузить LispWorks Personal Edition можно по адресу:

http://www.lispworks.com/downloads/

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

 , , ,

gensym
()

SBCL 1.1.3

Группа Open Source

31.12.2012 вышла новая версия Steel Bank Common Lisp, свободной реализации языка программирования Common Lisp.

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

  • добавлены предупреждения о некорректных настройках локалей (LANG, LC_CTYPE, ...);
  • поддержка прерывания фоновых потоков по С-с на платформе Windows;
  • добавлены STDCALL alien callbacks;
  • на POSIX-платформах возможна опциональная сборка safepoint-build без псевдо-атомарных последовательностей (pseudo-atomic sequences) и их накладных расходов в рантайме;
  • потоки, созданные вне lisp'a могут взаимодействовать с образом через alien-callback'и и выступать в роли Lisp-потоков во время вызова функций. Работает только на safepoint-build;
  • различные улучшения namestring'ов и нижележащих вызовов функций ОС для доступа к файловой системе на платформе Windows;
  • make.sh --help больше не запускает clean.sh;
  • исправлен ряд багов;
  • добавлено несколько улучшений для платформы Windows;

Тарболл

SourceForge:

git clone git://sbcl.git.sourceforge.net/gitroot/sbcl/sbcl.git

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

 , ,

encyrtid
()

Вышла новая версия ABCL 1.1.0 — реализации языка программирования Common Lisp

Группа Open Source

Armed Bear Common Lisp (ABCL) — полная реализация стандарта языка программирования Common Lisp, включающая интерпретатор и компилятор, и работающая на JVM. Изначально будучи скриптовым языком расширения для текстового редактора J, реализация теперь поддерживает JSR-223 (API скриптовoго языкa расширения для Java): то есть может быть скриптовым движком в любом приложении, написанном на Java. Вдобавок можно использовать Java <--> Lisp API интеграции для реализации (отдельных частей) на Java или Lisp.

В этом долгожданном релизе (с 9 января 2012) исправлено множество ошибок и добавлены новые возможности:

  • Рабочая реализация (A)MOP (Metaobject Protocol) благодаря упорной работе Rudi Schlatte (@rudi).
  • Эта реализация теперь может работать на большем количестве Quicklisp-инсталляций благодаря обширному тестированию. Спасибо @xach!
    Все перечисленные ниже системы нуждаются в патчах, которые появятся в следующих релизах Quicklisp:
    • CLOSER-MOP — в связи с реализацией MOP в этом релизе, ведется работа по добавлению поддержки ABCL в closer-mop;
    • CFFI;
    • HUNCHENTOOT;
    • CXML.
  • Компилятор байткода Java 5. Внутренний Lisp-to-Java байткод компилятор покрыт большим количеством регрессионных тестов с использованием Quicklisp-библиотек.
  • Возможность создания классов в рантайме через JNEW-RUNTIME-CLASS (@astalla). Довольно близко к полному покрытию примитивов для создания synthethic Java-классов в рантайме. Легко расширяемая по вашим потребностям, с разумными опциями по умолчанию.
  • Обновлен ASDF до версии 2.26.6 с включенными патчами для расширений реализации в дополнении к ANSI: URL-PATHAME и JAR-PATHNAME.
  • ABCL-CONTRIB:
    • ABCL-ASDF — инсталляция по сети с использованием Maven;
    • JSS;
    • JFLI.

Поддерживаются следующие платформы: Windows, Linux, MacOS X, OpenBSD, NetBSD, FreeBSD, Solaris или Google App Engine.

Для клиентских установок необходимы следующие версии JRE:

  • JRE 1.5.0
  • JRE 1.6.0 (patch level 10 или выше)
  • JRE 1.7.0

Для разработки/компиляции необходимы следующие версии JDK и Ant:

  • JDK 1.5.0
  • JDK 1.6.0 (patch level 10 или выше)
  • JDK 1.7.0
  • Ant 1.7.1 или выше

Бинарную сборку в архиве можно загрузить по ссылкам:

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

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

 , , , ,

gensym
()

Перевод книги «ANSI Common Lisp» доступен по свободной цене

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

Издательство Books.ru, выпустившее недавно перевод книги «ANSI Common Lisp», предлагает приобрести электронную версию книги по свободной цене.

Наш книжный магазин впервые ввел возможность купить электронную книгу (файл) по произвольной цене. Благодаря сотрудничеству с издательством «Символ-Плюс» в продажу выставлена совершенно новая книга — известная работа Пола Грэма «ANSI Common Lisp». Книгу действительно можно купить по любой цене (минимум — 1 рубль) и скачать в одном из двух форматов: pdf или epub.
...
Мы не можем запретить пользоваться пиратскими сайтами. Но в наших силах сделать так, чтобы в этом не было смысла.

По отзывам купивших, лучше взять в формате PDF, так как в EPUB были проблемы.

Спасибо lispnik за предоставленную информацию.

>>> Подробности на сайте издательства

 ,

tmplsr
()

Вышла новая версия ECL 12.12.1 — реализации языка программирования Common Lisp

Группа Open Source

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

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

 , , ,

gensym
()

Вышел перевод книги «ANSI Common Lisp»

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

На днях издательство «Символ-Плюс» выпустило русский перевод книги «ANSI Common Lisp». Автор книги — Пол Грэм (Paul Graham), который известен как создатель системы Viaweb, эссеист, автор других книг по Lisp. На данный момент имеется только бумажный вариант книги.

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

 

cab
()

Deep Space Window manager 0.0.5

Группа Open Source

Вышла версия 0.0.5 DSWM — форка StumpWM, оконного менеджера написанного на common lisp. В DSWM по сравнению с оригинальным stumpwm был внесен ряд изменений, а также некоторый рефакторинг кода. Список основных изменений, видимых для пользователя:

  • Переписана подсистема клавиатурного ввода.
  • История ввода команд заменена с общей на раздельную для разных команд (например, отдельная история для 'colon', 'run' и т.п.).
  • Добавлено автодополнение и возможность редактирования для некоторых команд.
  • Добавлена поддержка hex-обозначений цветов,
    например: (set-bg-color (make-color-hex «#000000»)) также можно использовать (set-bg-color «red») как и раньше.
  • Изменен формат модулей на asdf-совместимый. Также добавлены команды для управления модулями.
  • Изменено поведение mode-line. Теперь она состоит из двух строк — списка окон и информации и задаются установкой переменных *info-line-format* і *window-list-line-format* соответственно. Для обратной совместимости, при установке *mode-line-format*, mode-line преобретает классический вид.
  • Добавлена функция 'startup-only', которая выполняет код, заданный в качестве аргумента, только во время загрузки (код не выполняется во время выполнения 'loadrc').
  • Добавлены команды для сохранения и восстановления правил разбивки рабочего стола на фреймы и правил размещения окон во фреймах.
  • Добавлена корректная (с прозрачной навигацией: команды 'gother', 'gprev', 'gnext' и т.п. «не замечают» этой группы) поддержка scratchpad — группы для размещения приложений, к которым часто обращаются.
  • Добавлены функции для работы с параметрами mode-line.
  • Добавлены новые модули (web, todo).
  • Изменен порядок интерпретации конфиг-файлов (/etc/dss/dswm/dswm.lisp → (~/.dswm или ~/.dswm.d/init.lisp).

Текущая версия DSWM: 0.0.5r2
Скриншоты: http://dss-project.org/ru/?DSWM:Skrinshoty
Cкачать sourceforge.
Также имеются сборки для Debian/Ubuntu и Arch Linux (AUR) и готовится ebuild для Gentoo.

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

 

c0smonaut
()

Руководству программиста по LISP 1.5 исполнилось 50 лет

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

Лисперам и олдфагам посвящается.

50 лет назад, а точнее 17 августа 1962 года, было впервые опубликовано Руководство программиста по LISP 1.5, которое всё ещё находится в печати.

Cite: John McCarthy, Paul W. Abrahams, Daniel J. Edwards, Timothy P. Hart, Michael I. Levin. LISP 1.5 Programmer’s Manual. MIT Press, Cambridge, Massachusetts, 1962.

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

 ,

beastie
()

Релиз Allegro CL 9.0

Группа Проприетарное ПО

Вышла новая версия реализации среды программирования Common Lisp — Allegro CL 9.0.

Allegro CL® является динамической объектно-ориентированной средой программирования, подходящей для разработки сложных энтерпрайз-ориентированных приложений. Разработка такого рода приложений с миллиардами объектов теперь стала еще проще с новым Allegro CL 9.0. Сложность сегодняшних программных комплексов и взрывной рост объемов данных получили широкое распространение во всех областях, начиная с наук о жизни (Life Sciences) и кончая финансовым анализом (Financial Analytics).

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

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

 , , ,

gensym
()