Как стать автором
Обновить
87
0

Энтузиаст

Отправить сообщение

Опыт сопряжения Java, JavaScript, Ruby и Python в одном проекте посредством GraalVM

Время на прочтение 18 мин
Количество просмотров 7.6K
В прошлом месяце вышла стабильная LTS-версия многоязычной среды выполнения GraalVM 20.3.0 от корпорации Oracle и мне захотелось испробовать её для решения какой-нибудь интересной практической задачи. Для тех кто не в курсе, приведу краткое описание этой новой платформы. GraalVM позволяет использовать в едином окружении различные популярные языки программирования и обеспечивает их разностороннее взаимодействие в рамках некоторой общей среды выполнения.


Схематическое изображение архитектуры GraalVM из официальной документации.

Добавление новых языков в GraalVM осуществляется с помощью специального фреймворка Truffle, выполненного в виде библиотеки Java. Фреймворк предназначен для создания реализаций языков программирования в качестве интерпретаторов для самомодифицируемых абстрактных синтаксических деревьев (AST). При желании на его основе можно создать собственный язык, в официальных репозиториях GraalVM подробно рассмотрен пример реализации такого проекта под названием SimpleLanguage. Интерпретаторы, которые были написаны с использованием фреймворка Truffle, будут автоматически использовать GraalVM как JIT-компилятор непосредственно для самой реализации языка запускаемой на JVM-платформе и, соответственно, иметь возможность взаимодействия и двустороннего обмена данными в одном и том же пространстве памяти посредством специально разработанного протокола и программного интерфейса Polyglot API.

Платформа GraalVM вместе с исполняемой программой на смеси самых разных языков может быть представлена в виде автономного и самодостаточного исполняемого файла, либо работать поверх OpenJDK, Node.js или даже внутри Oracle Database.
Читать дальше →
Всего голосов 21: ↑21 и ↓0 +21
Комментарии 8

Собираем Perl прямиком из 1987 года

Время на прочтение 16 мин
Количество просмотров 15K
Прочитав новость "Код интерпретатора Perl официально перенесён на GitHub" на ресурсе LINUX.ORG.RU я решил взглянуть на репозиторий Perl 5, который теперь уже находится на GitHub'е.

Удивительно, как трепетно и качественно его перенесли, сохранив не только абсолютно всю 32-летнюю историю проекта, но и багрепорты (попали в Issues), патчи (попали в PRs), релизы и ветки. Надпись "32 years ago" рядом с файлами вызывает невольную улыбку.

Что ещё делать в этот унылейший пятничный вечер, когда на улице неприятно моросит дождь со снегом, а все уличные дорожки погрязли в осенней слякоти? Правильно, красноглазить! Так что я ради эксперимента и интереса решил взять и собрать древний Perl на современной x86_64-машинке с последней версией GCC 9.2.0 в качестве компилятора. Сможет ли такой старый код пройти проверку временем?


Демонстрация работы twm, одного из первых оконных менеджеров для X Window System, на современном дистрибутиве Arch Linux.

Чтобы было совсем уж аутентичненько и некромантненько, я развернул виртуальную машину с голыми иксами и оконным менеджером twm, который тоже родом из 1987 года. Кто знает, может быть Larry Wall писал свой Perl используя именно twm, так сказать bleeding edge technology того времени. Используемый дистрибутив — Arch Linux. Просто потому что в его репозитории есть некоторые полезные вещи, которые впоследствии мне пригодились. Итак, поехали!
Читать дальше →
Всего голосов 112: ↑112 и ↓0 +112
Комментарии 23

Операционная система Haiku: портирование приложений и создание пакетов

Время на прочтение 44 мин
Количество просмотров 23K
Осенью этого года, спустя 6 лет разработки, вышла первая бета-версия «R1/beta1» операционной системы Haiku. Я давно слежу за этим интересным проектом, который нацелен на воссоздание и последующее развитие существовавшей в 1994-2000 годах системы BeOS. Поэтому, как только на новостных IT-сайтах я увидел новость о выходе бета-версии Haiku, я незамедлительно решил посмотреть, что же было добавлено в этот долгожданный релиз. После установки системы в виртуальную машину VirtualBox и небольшого ознакомления с её основной функциональностью, я подумал, что было бы неплохо немного помочь OpenSource-сообществу, которое сегодня развивает эту операционную систему. Начать я решил с того, в чём у меня накопился небольшой опыт: с портирования некоторых игровых проектов.


Рабочий стол операционной системы Haiku.

Позже я попытался доработать некоторые уже существующие приложения и библиотеки. Именно этой моей небольшой деятельности в различных репозиториях с открытым исходным кодом и будет посвящена эта статья. В ней я последовательно опишу те проблемы, с которыми столкнулся и расскажу про методы их решения. Большинство патчей, которые были сделаны в процессе этой работы, я попытался отправить в upstream существующих проектов, дабы обеспечить в них поддержку Haiku и заинтересовать их разработчиков существованием альтернативных операционных систем.
Читать дальше →
Всего голосов 75: ↑71 и ↓4 +67
Комментарии 16

Полный обзор возможностей Motorola ZINE ZN5

Время на прочтение 14 мин
Количество просмотров 16K
Добрый вечер, уважаемые хабровчане!

Я бы хотел представить вашему вниманию обзор мобильного телефона Motorola ZINE ZN5, выпущенного в далёком 2008-ом году. Конечно, сейчас данный обзор будет казаться неактуальным, но под данный девайс и платформу софт разрабатывается энтузиастами до сих пор. И, я думаю, Вам будет интересно!

В обзоре я постараюсь рассказать о программной и железной начинке телефона и всей платформы в целом. Своё ревью я разобью на три части:
  1. Общие технические характеристики устройства и платформы MotoMAGX.
  2. Пользовательские модификации. Самые значимые порты приложений.
  3. Обычные телефонные функции. Детальный обзор меню.
В обзоре обязательно затрону обычные телефонные функции, описывая буквально каждый пункт меню. Приведу примеры фотографий, снятых на камеру данного телефона. Не люблю обзоров, в которых об устройствах говорят только положительные вещи, забывая упомянуть о недочётах и минусах. Поэтому в заключении я отмечу все достоинства и недостатки девайса.

image

Итак, поехали!
Осторожно! Под катом Вас ждёт множество скринов, фотографий и текста.
Читать дальше →
Всего голосов 71: ↑51 и ↓20 +31
Комментарии 31

Информация

В рейтинге
Не участвует
Откуда
Новосибирск, Новосибирская обл., Россия
Дата рождения
Зарегистрирован
Активность