В число проектов GNU принят генератор языковых виртуальных машин Jitter

Автор Сообщение
news_bot ®

Стаж: 6 лет 9 месяцев
Сообщений: 27286

Создавать темы news_bot ® написал(а)
20-Дек-2021 12:30

Инструментарий Jitter официально перешёл под крыло проекта GNU и теперь будет развиваться под именем GNU Jitter с использованием инфраструктуры GNU и в соответствии с требованиями данного проекта. Jitter позволяет генерировать переносимые и очень быстрые виртуальные машины для произвольных конструкций языков программирования, производительность выполнения кода в которых существенно опережает интерпретаторы и близка к нативному компилируемому коду. Исходные тексты Jitte написаны на языке Си и поставляются под лицензией GPLv3.
Jitter принимает в качестве входных данных высокоуровневую спецификацию инструкций, поддерживаемых виртуальной машиной, а на выходе формирует готовую реализацию виртуальной машины для выполнения заданных инструкций. Логика каждой инструкции в спецификации задаётся при помощи кода на языке Си (см. пример спецификации виртуальной машины для языка Lisp). Из дополнительных возможностей отмечается поддержка труднореализуемых на языке Си и свойственных динамическим языкам программирования операций условного ветвления, таких как проверка значений тегов и проверка переполнений.
Результирующая виртуальная машина оформляется на языке Си с небольшим число ассемблерных вставок. Предоставляются настройки для включения различных оптимизаций и выбора механизмов диспетчеризации, что упрощает портирование виртуальной машины для разных платформ. Поддерживается использование регистровой, стековой и комбинированной архитектуры выполнения, а также возможность отражения структур данных VM в аппаратные регистры CPU и подключение сборщиков мусора. Сгенерированный код включает простой C API для динамической подстановки и выполнения кода в виртуальной машине, а также программу-драйвер для обособленного запуска в виртуальной машине кода из текстовых файлов.
===========
Источник:
OpenNet.RU
===========

Похожие новости: Теги для поиска: #_gnu, #_jitter, #_vm
Профиль  ЛС 
Показать сообщения:     

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы

Текущее время: 22-Ноя 09:55
Часовой пояс: UTC + 5