LINUX.ORG.RU

Guile


30

1

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

GNU Guile-CV 0.3.1

Группа GNU's Not Unix

Guile-CV — это библиотека компьютерного зрения для языка программирования GNU Guile, являющаяся привязкой к библиотеке Vigra. Vigra написана на C++ и используется в Guile-CV через прослойку Vigra C. Guile — реализация языка Scheme, диалекта Lisp.

Изменения с прошлой новости (0.2.0)

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

>>> Источник

 , , , ,

mertvoprog
()

Guix System 1.1.0

Группа GNU's Not Unix

Guix System – дистрибутив Linux, основанный на пакетном менеджере GNU Guix.

Дистрибутив предоставляет расширенные функции управления пакетами, такие как обновление транзакций и откат, воспроизводимые среды сборки, управление непривилегированными пакетами и профили каждого пользователя. Последним выпуском проекта является Guix System 1.1.0, в котором представлен ряд новых функций и улучшений, в том числе возможность выполнять крупномасштабные развертывания с помощью менеджера пакетов.

Основные новвоведения:

  • Новый инструмент развертывания Guix позволяет развертывать несколько машин одновременно, будь то удаленные машины через SSH или машины на виртуальном частном сервере (VPS).
  • Авторы каналов теперь могут писать записи новостей для своих пользователей, которые легко читаются с помощью команды guix pull –news.
  • Новая команда описания системы Guix сообщает, какие коммиты были использованы для развертывания системы, а также содержит ссылку на файл конфигурации операционной системы.

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

 , , ,

ruslik
()

GNU Guile 3.0

Группа GNU's Not Unix

16 января состоялся мажорный релиз GNU Guile — встраиваемой реализации языка программирования Scheme с поддержкой многопоточности, асинхронности, работы с сетью и системными вызовами POSIX, бинарного интерфейса Си, разбора PEG, REPL по сети, XML; имеет собственную систему объекто-ориентированного программирования.

Главной особенностью новой версии является полноценная поддержка JIT-компиляции, что позволило ускорить работу программ в среднем в два раза, максимум — в тридцать два для бенчмарка mbrot. По сравнению с виртуальной машиной Guile предыдущей стабильной версии, набор инструкций стал более низкоуровневым.

Также улучшена совместимость со стандартами языка программирования Scheme R5RS и R7RS, появилась поддержка структурированных исключений и чередующихся между собой объявлений и выражений внутри лексического контекста. Написанный на Scheme eval по производительности сравнялся с аналогом на языке Си; Для разных реализаций типа Record предоставлен унифицированный набор инструментов для работы с ними; Классы в GOOPS перестали быть переопределяемыми; Подробности и прочие изменения можно прочитать в анонсе релиза.

Новой стабильной веткой языка отныне является 3.x. Она устанавливается параллельно предыдущей стабильной ветке 2.x.

>>> Анонс релиза

 , , ,

Princesska
()

GNU Guile 2.9.5 (beta)

Группа GNU's Not Unix

Guile 2.9.5 — это пятый beta-выпуск реализации языка программирования Scheme от GNU, готовящийся к стабильной ветке 3.x.

Guile поддерживает многие SRFI, предоставляет модульную систему; полный доступ к системным вызовам POSIX; поддержку сети, динамической линковки и вызова внешних функций; мощную обработку строк. Guile может интерпретировать код интерактивно, компилировать его в байткод виртуальной машины и подключаться библиотекой в качестве встроенного в приложение интерпретатора.

Изменения по сравнению с прошлой бета-версией:

  • Объединение разных видов «записей» (Record) в один.
  • Новая реализация исключений:
    • Старый throw & catch из Guile -> в более общепринятый в Scheme raise-exception & with-exception-handler.
  • Оптимизация приведения целочисленных типов к типам с плавающей запятой.
  • Определение высокоуровневых биндингов для вспомогательного синтаксиса: else, =>, ..., _.
  • Общепринятый gettext-алиас теперь G_.
  • Добавлена опция --r6rs, но поддержка неполная.
  • Добавлена поддержка R7RS (!).
  • Объявлен устаревшим вызов record-constructor с двумя аргументами.

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

 , , ,

Cirno
()

GNU Guile 2.9.1 (beta)

Группа GNU's Not Unix

Guile — это реализация языка программирования Scheme от GNU, поддерживающая многие SRFI, реализующая стандарт R5RS, предоставляющая модульную систему, полный доступ к системным вызовам POSIX, поддержку сети, нитей, динамического связывания, вызовов внешних функций и мощную обработку строк. Guile может интерпретировать код интерактивно, компилировать его в байткод виртуальной машины и даже подключаться библиотекой в качестве встроенного в приложение интерпретатора.

2.9.1 — первый beta-выпуск готовящейся к стабильному выпуску 3.0 ветки. По сравнению с текущей стабильной веткой (2.2.x), в ней добавлена JIT-компиляция, ускоряющая все Guile-программы до 4-х раз. В этом выпуске JIT поддерживается только на x86-64; в будущих выпусках планируется поддержка всех платформ, поддерживаемых GNU lightning.

Другие изменения:

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

>>> Сжатые исходники (подпись)

>>> Высокоскоростное зеркало

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

 , , ,

bodqhrohro_promo
()

GNU Guile-CV 0.2.0

Группа GNU's Not Unix

  Guile-CV — это библиотека компьютерного зрения для языка программирования GNU Guile, являющаяся привязкой к библиотеке Vigra, написанной на C++, и работающая через прослойку Vigra C. Guile — реализация языка Scheme, диалекта Lisp.

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

>>> Источник

 , , , ,

bodqhrohro_promo
()

GNU Guile-CV 0.1.9

Группа GNU's Not Unix

Guile-CV — это библиотека компьютерного зрения для языка программирования GNU Guile, являющаяся привязкой к библиотеке Vigra, написанной на C++, и работающая через прослойку Vigra C. Guile — реализация языка Scheme, диалекта Lisp.

Изменения с версии 0.1.8:

  • Обновлены зависимости. Совместимость теперь поддерживается с Vigra C от коммита a2ff675f4 и выше, из-за изменений в январе этого года: в интерфейсе vigra_nonlocalmean_c переименован аргумент, в функции vigra_medianfilter_c добавлен аргумент out-of-bound strategy.
  • Новые интерфейсы: im-median-filter, im-median-filter-channel, im-nl-means, im-nl-means-channel.
  • Исправления: в модуле (cv support latex), использующем latex-pdftoppm — недокументированной, но весьма полезной для подготовки текста к добавлению на изображения процедуре — опциональный аргумент с ключевым словом [#:res 72] фактически не использовался, теперь это исправлено.

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

 , , , ,

bodqhrohro_promo
()

GNU Guile-CV 0.1.5

Группа GNU's Not Unix

Состоялся релиз GNU Guile-CV 0.1.5 — библиотеки компьютерного зрения для языка программирования GNU Guile (одна из реализаций Scheme, диалекта Lisp). Guile-CV представляет собой биндинги к Vigra (популярной библиотеке CV, написанной на C++), для интеграции используется прослойка Vigra C.

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

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

 , , , vigra

cetjs2
()

Guile-Ncurses 2.0

Группа GNU's Not Unix

Состоялся релиз guile-ncurses 2.0 — библиотеки для создания текстовых пользовательских интерфейсов на GNU Guile, реализации функционального языка программирования Scheme. guile-ncurses является оберткой к библиотеке Ncurses.

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

>>> Анонс в рассылке

 , , ,

cetjs2
()

Emacs-интерфейс для GNU Guix

Группа GNU's Not Unix

GNU Guix (пакетный менеджер, написанный для системы GNU) теперь имеет аккуратный пользовательский интерфейс для Emacs! Он предоставляет визуальную, дружелюбную к пользователю альтернативу интерфейсу командной строки пакета guix.

Основной пользовательский интерфейс покажется довольно простым для пользователей, знакомых с package.el: команды типа guix-newest-available-packages, guix-search-by-regexp и guix-installed-packages выдают обозреваемый список пакетов. Можно выбирать отдельные пакеты и просматривать дополнительную информацию по ним, а также устанавливать и удалять с помощью соответствующих кнопок. Также можно выделить набор пакетов для установки, обновления или удаления и выполнить ряд операций в рамках одной транзакции.

Интерфейс разработан Алексом Костом и слит с Guix в среду. Он использует Geiser — обожаемую среду интерфейса и разработки для Guile/Emacs — для сообщения с подлежащим процессом Guile. Процесс Guile, в свою очередь, просто использует Guix и весь дистрибутив как библиотеки — проявление плюсов встраивания пакетного DSL в язык общего назначения.

Попробуйте и выскажите своё мнение!

>>> Источник

 , , ,

MiniRoboDancer
()

Вышел GNU Guile 2.0.10

Группа GNU's Not Unix

GNU Guile — это проект по развитию свободной реализации функционального языка программирования Scheme, поддерживающий возможность встраивания кода в приложения на других языках программирования.

Релиз содержит 253 коммита от 11 людей, принятые за 11 месяцев.

Помимо исправлений множества ошибок, релиз содержит новые возможности, таких как имплементация векторной библиотеки SRFI-43 и API для тестирования SRFI-64, частичная поддержка нового стандарта языка Scheme R7RS и расширение GDB для отладки Guile.

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

 , , ,

MiniRoboDancer
()

Вышел GNU Guile 2.0.7

Группа Open Source

Вышла новая версия реализации языка Scheme — GNU Guile 2.0.7. Несмотря на незначительное изменение номера версии, появились несколько интересных нововведений, а именно:

  • Полная поддержка инфиксных выражений (curly-infix-expressions). Теперь вместо (* a (+ b c)) можно писать {a * {b + c}}.
  • Поддержка разных опции чтения (read option) для разных портов.
  • Поддержка вложенных директив future.
  • Специальный синтаксис для добавления путей в переменные окружения GUILE_LOAD_PATH и GUILE_LOAD_COMPILED_PATH в конец списка путей, а не в начало.
  • Исправлен недочет в функции load-in-vicinity, которая не сканировала директории, установленные в переменной %load-compiled-path.
  • Исправлен порядок поиска расширений. Теперь Guile не изменяет для этого переменную окружения LD_LIBRARY_PATH.
  • Функция make-vtable-vtable помечена устаревшей, рекомендуется использовать make-vtable и <standard-vtable>.
  • Оптимизированы вызовы equal? и eqv? для случаев, когда один из аргументов — константа.
  • Новые предупреждения компилятора -Wduplicate-case-datum и -Wbad-case-datum.
  • Многочисленные незначительные улучшения и исправления ошибок.

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

 , , ,

provaton
()

Вышел GNU Guile 2.0.0

Группа GNU's Not Unix

Guile — это официальный язык расширений проекта GNU.

Данный релиз является первым стабильным релизом ветки 2.0.x и содержит множество изменений по сравнению с веткой 1.8:

  • Поддержка исполнения кода на трёх языках: Scheme, Emacs Lisp и ECMAScript.
  • Компиляция кода программы в байткод, который интерпретируется виртуальной машиной. Это позволило существенно улучшить скорость работы.
  • Поддержка метакоманд в REPL. Например, мета-команда ,compile компилирует переданное выражение, а команда ,profile профилирует исполнение переданного выражения.
  • Режим отладки в REPL. Если код вызывает ошибку, то включается режим отладки, в котором доступны метакоманды, позволяющие посмотреть стек вызовов, узнать значения переменных и т.п.
  • Реализована встроенная поддержка syntax-rules и syntax-case систем гигиенических макросов, не требующая импорта модуля (ice-9 syncase).
  • Строки Scheme могут содержать любые Unicode символы.
  • Частично поддержан стандарт R6RS. Оставшиеся несоответствия можно посмотреть в мануале.
  • Новый динамический FFI. Теперь возможно создание биндингов к библиотекам без создания кода на C.
  • Теперь используется Boehm-Demers-Weiser консервативный сборщик мусора.

Кроме того, добавлен ряд модулей:

  • (srfi srfi-45), предназначенный для реализации ленивых вычислений;
  • (system base lalr) для генерации парсеров LALR(1);
  • набор модулей (sxml ...) для работы с XML.

Сайт проекта

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

 , ,

kim-roader
()

GNU guile-ncurses версия 1.2

Группа GNU's Not Unix

Майк Грэн (Mike Gran) сообщает о выходе новой версии библиотеки GNU guile-ncurses v1.2, предназначенной для создания текстовых пользовательских интерфейсов с помощью Guile - диалекта языка Scheme - с применением средств ncurses.

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

Компоненты библиотеки адаптированы для использования функций проверки условий модулей srfi-34/35. Добавлены функции curses-wrong-type-arg-error?, curses-bad-state-error?

Новые функции: mcprint, is-subwin?, is-pad?, is-cleared?, is-idlok?, is-idcok?, is-immedok?, is-leaveok?, is-scrollok?, getscrreg, has-mouse?, is-keypad?, is-meta?, is-nodelay?, is-immedok?, is-notimeout?, getmaxx, getmaxy, getbegx, getbegy, getparx, getpary, getcurx, getcury

Новые вспомогательные функции: wcwidth, standout, standout-on, standout-off

Три функции переименованы: wsyncdown -> syncdown, wsyncup -> syncup, wcursyncup -> cursyncup

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

 , , ,

OldFatMan
()

Guile: Часть 3. Взаимодействие с языком C

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

Этот цикл статей рассказывает о GNU Guile — интерпретаторе языка программирования Scheme. Пришло время вспомнить о том, что Guile заявлен не только как интерактивная оболочка-интерпретатор, но и как встраиваемый язык расширений. Поэтому в данной статье мы рассмотрим, каким образом можно заставить совместно работать Guile и компилируемый язык программирования — на примере C.

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

 , ,

IBM_dW
()

Guile. Часть 2. Как с ним обращаться

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

Во второй статье рассматривается практическое применение интерпретатора. Интерпретатор лучше всего оценивать с точки зрения его практического применения. Разнообразные варианты командных оболочек shell, Perl, Python уже стали повседневными инструментами опытных пользователей, и на общем фоне Guile выглядит несколько непривычно. Тем не менее, этот интерпретатор способен выполнять весьма полезную работу, о чём и пойдёт речь в статье.

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

 ,

IBM_dW
()

Guile — универсальный инструмент программирования. Часть 1

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

GNU Guile представляет собой интерпретатор и «по совместительству» виртуальную машину языка программирования Scheme, то есть, его можно использовать и как командную оболочку в интерактивном режиме, и как встраиваемый в программы на компилируемых языках инструмент создания расширений. Lisp-синтаксис не всем нравится и не всем подходит (вплоть до полного неприятия), тем не менее — по моему мнению, Guile заслуживает внимания. В этой части я ограничился самыми простыми примерами, не углубляясь в тонкости применения языка программирования Scheme, поскольку это всего лишь обобщённый предварительный взгляд на интерпретируемую программную среду Guile.

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

 , ,

IBM_dW
()

Создание скриптов при помощи Guile

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

Scheme – это язык программирования, а Guile – интерпретатор и библиотека для Scheme, преобразующие его во встроенный язык сценариев, что делает его идеальным средством вдохнуть новую динамичную жизнь в ваши старые статичные приложения. Познакомьтесь с кратким обзором Guile и изучите его широкие возможности для создания гибких приложений. Ключевое свойство Guile - это расширяемость. При помощи Guile вы можете обрабатывать скрипты Scheme, динамически связывать скрипты со скомпилированными приложениями на C и даже интегрировать скомпилированные функции C в скрипты Scheme. Это означает, что пользователи смогут перекраивать или изменять ваши приложения, добавляя в них свои параметры.

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

 , ,

IBM_dW
()