The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  правила/FAQ  поиск  регистрация  вход/выход  слежка  RSS
"Доступен GNU Guile 2.2 "
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Доступен GNU Guile 2.2 "  +/
Сообщение от opennews (ok) on 16-Мрт-17, 18:39 
После шести лет разработки  подготовлен (https://lists.gnu.org/archive/html/guile-devel/2017-03/msg00...) релиз проекта GNU Guile 2.2 (http://www.gnu.org/software/guile/guile.html), в рамках которого развивается свободная реализация функционального языка программирования Scheme (http://ru.wikipedia.org/wiki/Scheme), поддерживающая возможность встраивания кода в приложения на других языках программирования. Guile является официальным языком разработки расширений для операционной системы GNU. Guile позволяет легко интегрировать в приложения расширяющие функциональность дополнения, модули и скрипты, дает возможность пользователям менять поведение приложения без углубления в его внутреннюю организацию.

Основу Guile составляет эффективная виртуальная машина, которая выполняет переносимый набор инструкций, генерируемый специальным оптимизирующим компилятором. Виртуальная машина Guile легко интегрируется с кодом приложений на языках Си и Си++. Кроме языка Scheme, для которого реализована поддержка спецификаций R5RS (http://www.schemers.org/Documents/Standards/R5RS/) и R6RS (http://www.r6rs.org/),  в рамках проекта Guile разработаны компиляторы и для других языков, таких как ECMAScript, Emacs Lisp и Lua (в процессе разработки). В состав пакета входит библиотека модулей, в которых реализованы типовые сервисные функции, такие как работа с протоколом HTTP, парсинг XML и использование методов объектно-ориентированного программирования.

Новый выпуск примечателен добавлением нового оптимизирующего компилятора и новой высокопроизводительной регистровой виртуальной машины. По сравнению с прошлой стабильной веткой 2.0 в Guile 2.2 отмечается увеличение производительности выполнения существующих приложений как минимум на 30%. В новой версии также снижено потребление памяти и ускорена работа интерпретатора "eval". Представлена новая система динамического распределения памяти для стека, которая устранила все ограничения, связанные с фиксированным размером стека, и теперь позволяет использовать рекурсивные вызовы любого уровня вложенности.

Отдельно выделяется расширение средств многопоточного программирования. В Guile 2.2 добавлена возможность распараллеливания обработчиков в пространстве пользователя, позволяющая организовать одновременное выполнения миллионов легковесных нитей (fibers). Многопоточные библиотеки могут использовать нити для перехода в спящий режим с пробуждением при возобновлении операции ввода/вывода. В новой версии также расширены средства работы с локалями, а в строковых операциях по умолчанию задействована  кодировка UTF-8 и проведена оптимизация работы с многобайтовыми наборами символов. Предоставляемая в Guile реализация  Elisp признана полностью совместимой с Emacs и теперь содержит все заявленные в спецификации Elisp возможности, а также учитывает специфичные для Emacs  особенности.

URL: https://www.gnu.org/software/guile/news/gnu-guile-220-releas...
Новость: https://www.opennet.ru/opennews/art.shtml?num=46205

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Доступен GNU Guile 2.2 "  +2 +/
Сообщение от freehck email(ok) on 16-Мрт-17, 18:39 
> Предоставляемая в Guile реализация Elisp признана полностью совместимой с Emacs и теперь содержит все заявленные в спецификации Elisp возможности, а также учитывает специфичные для Emacs особенности.

Это, конечно, хорошо. Стало быть, можно надеяться, что Emacs окончательно переведут на Guile в уже недалёком будущем?

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

13. "Доступен GNU Guile 2.2 "  +/
Сообщение от Andrey Mitrofanov on 17-Мрт-17, 09:52 
>> Предоставляемая в Guile реализация Elisp признана полностью совместимой с Emacs и теперь содержит все заявленные в спецификации Elisp возможности, а также учитывает специфичные для Emacs особенности.
> Это, конечно, хорошо. Стало быть, можно надеяться, что Emacs окончательно переведут на
> Guile в уже недалёком будущем?

Будущее уже https://www.emacswiki.org/emacs/GuileEmacsBuild здесь. А сдюжишь? :))

---Если я тебе скажу. что в нём и js типа есть, то http://lists.gnu.org/archive/html/guile-user/2017-03/msg0005... ты его в броузере захочешь?

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

16. "Доступен GNU Guile 2.2 "  +/
Сообщение от freehck email(ok) on 17-Мрт-17, 21:35 
О, спасибо. Когда я смотрел в последний раз, там было ешё не очень всё радужно. А они говорят, что из коробки теперь неплохо. Это хороший знак.

Теперь второй вопрос на повестке дня: раз Guile уже запилили хорошо, как дела с параллелизмом? Короче, пошёл смотреть, раз такая движуха.

Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору

3. "Доступен GNU Guile 2.2 "  +3 +/
Сообщение от Вы забыли заполнить поле Name on 16-Мрт-17, 19:16 
Меня в guile убивает названия модулей. Хочешь, например, функции для работы с vector, подключаешь (use-modules (srfi srfi-43)). Хочешь записи (records) - (use-modules (srfi srfi-9)).
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

4. "Доступен GNU Guile 2.2 "  +/
Сообщение от Вы забыли заполнить поле on 16-Мрт-17, 19:37 
Серьёзно? Читабельненько.
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

14. "Доступен GNU Guile 2.2 "  +/
Сообщение от Аноним (??) on 17-Мрт-17, 11:11 
Да, воспринятненько
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

5. "Доступен GNU Guile 2.2 "  +/
Сообщение от chinarulezzz (ok) on 16-Мрт-17, 19:51 
Разве нельзя декларировать импортируемые функции?
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

12. "Доступен GNU Guile 2.2 "  +/
Сообщение от freehck email(ok) on 16-Мрт-17, 23:53 
> Разве нельзя декларировать импортируемые функции?

Конечно можно. И декларировать, и переименовать, как нравится.
Для этого после модуля можно написать (#:select <и перечислить импортируемые символы>).
А можно, например, написать (#:renamer prefix:) - и все импортированные символы будут иметь имена вида prefix:<импортированный-символ>

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

6. "Доступен GNU Guile 2.2 "  +/
Сообщение от Вы забыли заполнить свою жизнь смыслом on 16-Мрт-17, 21:04 
А как называется модуль, предоставляющий функциональность, известную как left-pad?
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

7. "Доступен GNU Guile 2.2 "  +/
Сообщение от A.Stahl (ok) on 16-Мрт-17, 21:12 
(use-modules (ice-9 format))
Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

8. "Доступен GNU Guile 2.2 "  +/
Сообщение от Аноним (??) on 16-Мрт-17, 22:46 
Это функции работы со строками
Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

11. "Доступен GNU Guile 2.2 "  +/
Сообщение от freehck email(ok) on 16-Мрт-17, 23:48 
SRFI - это же просто стандарты, которые должны разделять реализации Scheme. Но если Вас так коробят имена, ничего ж не стоит переименовать модуль, как Вам нравится, и в остальной программе использовать уже это имя. :)
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

15. "Доступен GNU Guile 2.2 "  –1 +/
Сообщение от Вы забыли заполнить поле Name on 17-Мрт-17, 16:06 
Это понятно, но не избавляет от факта, что мне нужно даже в этом случае помнить в каком стандарте принята та или иная функциональность. Зачем это нужно? Почему не сделать опцией указание стандарта, а модулям дать нормальные имена. Если указанном стандарте нет модуля - ошибка с нормальным сообщением.
Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру