ПО, ЭВМ и АСУ из Таможенного Союза

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.



GObject Introspection

Сообщений 1 страница 4 из 4

1

Это такая технология, которая описывает код таким образом, чтобы его можно было использовать из других языков.

Как правило из Си в Питон (и Vala, и т.п.)

Можно было бы довести русскоязычную платформу до поддержки этой технологии, и тогда писать русскоязычные библиотеки
и подключать их в графические приложения, написанные на каком-нибудь Gtk 4 на питоне.

0

2

Python умеет идентификаторы русскими буквами.
Я это к тому, что можно Сказочную Колесницу сделать скриптуемой.

Скриптуемость могла бы быть полезна для:
1) Тонкой настройки
(например добавить столько-то таких-то процессоров, соединить их такими-то шинами).
2) Организации управления виртуальной машиной во время отладки из GUI
(не знаю, как там сделано в КуМир, всё-таки там Qt, другая школа мысли, надо посмотреть.

https://habr.com/en/post/108846/
https://foxford.ru/wiki/informatika/rus … y-v-python

«В Python (начиная с версии 3) строки хранятся в кодировке Unicode. Это позволяет использовать в них в том числе буквы национальных алфавитов: от русских до китайских иероглифов»

«Программа на языке Python (начиная с версии 3) должна сохраняться в кодировке utf-8. Тогда в ней можно использовать русские буквы, как в строковых литералах, так и в именах переменных и функций»

Отредактировано Лис (2023-03-10 08:10:18)

0

3

Лис написал(а):

2) Организации управления виртуальной машиной во время отладки из GUI

Нужно заиметь автоматизированный доступ к ОС, выполняемой в виртуалке,
а именно картинку с экрана и весь дамп выполнения кода.
Тут опять же проще рассматривать код одной выполняемой в данное время программы.

0

4

Ещё одним местом, где можно было бы этим воспользоваться - библиотека для работы с грамматиками.

Про грамматики нам всё известно:
- математическое описание грамматики (множества того, этого)
- операции выполняемые с частями грамматики (добавление, чтение, модификация, удаление)
- некоторые особые операции/алгоритмы (left factoring, left recursion removal - это две разных операции)

то есть, такую библиотеку можно написать на любом языке программирования, например на Си, или на русском Си,
и постараться соответствовать бинарным стандартам, для того, чтобы можно было эту библиотеку использовать из всех прочих языков.

Кроме собственно конструирования грамматик в памяти, в этой библиотеке можно реализовать:
1) "механизм редактирования", это список изменений, вносимых в грамматику, возможно ещё Undo/Redo движок
2) "механизм экспорта/импорта", это возможность записывать в файл в некотором формате (или в нескольких), и читать/парсить такие файлы
3) подумать о возможности интеграции с каким-нибудь GraphVis для рисования ориентированного графа грамматики

Интересно, а нет ли такой библиотеки уже готовой? Если нет, то почему? Если есть, то у кого, у Terence Parr?

ЧатГПТ говорит: посмотри на:
- libpcre (регулярные выражения)
- libmarpa (для контекстно-зависимых грамматик, дока)

Но это же другое. Хотя в libmarpa есть работа с объектами "грамматика" и "правила", можно взять в качестве примера.
Удивлён, что никто не сделал для КС-грамматик.
Можно сделать на русском языке и через интернационализацию+локализацию на английский продаться врагам. Или не продаваться, а использовать самостоятельно (работы меньше, переводить на английский не надо, раскручивать локальноанглийскую версию сайта).

Я не знаю, как делает Saxonica свой парсер (как у них одновременно есть реализации на разных языках типа Java и JavaScript - может у них просто много программистов?), но в IBM точно работали с метапрограммированием (из единой мета модели нагенерировать несколько реализаций через генераторы кода). Уж метапрограммирование-то точно можно по-русски выполнить?
Вроде бы на роль подходящего инструмента претендовал Алфор, но я его не смотрел. Может пора?

Отредактировано Лис (2023-04-01 16:38:17)

0