OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Пятница, 29 Март, 2024 01:25

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 91 ]  На страницу Пред.  1, 2, 3, 4, 5
Автор Сообщение
 Заголовок сообщения: Re: День Оберона 2018
СообщениеДобавлено: Суббота, 23 Февраль, 2019 20:40 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Смотрите, здесь они синглтоны по той причине, что они вообще в такой же роли, как и объекты "метаинформации времени компиляции", условно говоря.
В том же статусе, как бы!
Только порождаются не компилятором, а динамически один раз при загрузке модуля.

Вот пример маленькой онтологии токенов для состояния двухпозиционного объекта в АСУТП (задвижки/клапана).
У каждого токена есть и TYPE, и VAR. Переменная-синглтон позволяет программно с ним работать как "с сущностью первого порядка" (в КП ведь типы не являются таковыми), а сам тип позволяет удобно статически указывать, что от чего расширено - и проверять по IS, ну и т.п.

В BEGIN модуля просто указывается KrlTokens.InitTokens(projId) - где projId - 32 бит, хэш от имени проекта (полный id токена порождается добавлением ещё 32 бит - хэша от имени переменной токена).
И все токены модуля создаются. У каждого токена можно узнать, кто он, метаинформацию о нём и т.п. Список его расширений в том числе. Или у токена, соответствующего SQL-таблице, можно узнать список токенов-полей.

Ещё на скрине видно "_0" у имени. Это чтобы указать значение по умолчанию для свойств данного типа TwinPosT.


Вложения:
Снимок экрана от 2019-02-23 20-35-52.png
Снимок экрана от 2019-02-23 20-35-52.png [ 21.56 КБ | Просмотров: 9656 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: День Оберона 2018
СообщениеДобавлено: Суббота, 23 Февраль, 2019 20:48 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Для онтологий токенов поддерживается не только древовидное наследование, но и грани (facets) (типа как mixins).

Пример токенов для тегов АСУТП. Тип токенов для булевых тегов, дальше определяется булев тег с фиксацией времени изменения, булев тег с семантикой команды (нисходящий поток информации в АСУТП) и булев тег с семантикой сигнала (восходящий поток информации в АСУТП).

Вложение:
Снимок экрана от 2019-02-23 20-42-57.png
Снимок экрана от 2019-02-23 20-42-57.png [ 25.13 КБ | Просмотров: 9656 ]


А вот уже в библиотеке более конкретной расширением от типов тегов определены токены для разных сигналов ввода-вывода (контакторы, автоматы, разные режимы коммутации оборудования).

Вложение:
Снимок экрана от 2019-02-23 20-46-38.png
Снимок экрана от 2019-02-23 20-46-38.png [ 70.38 КБ | Просмотров: 9656 ]


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: День Оберона 2018
СообщениеДобавлено: Суббота, 23 Февраль, 2019 20:53 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
В принципе, сейчас мы определяем токены прямо в коде, в виде, известном компилятору.

Ничто не мешает определять их каким-то другим образом (в базе конфигураций, например). И либо генерить модуль по такой базе автоматом, либо научить компилятор с ней взаимодействовать, как с внешней таблицей символов..


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: День Оберона 2018
СообщениеДобавлено: Воскресенье, 24 Февраль, 2019 00:39 
Администратор

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4695
Откуда: Россия, Орёл
Илья Евгеньевич, напишите уже полноценную статью про токены на сайт. Сколько можно по разным темам рассовывать пояснения?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: День Оберона 2018
СообщениеДобавлено: Воскресенье, 24 Февраль, 2019 10:08 

Зарегистрирован: Вторник, 01 Март, 2011 09:34
Сообщения: 583
Откуда: Москва
Борис Рюмшин писал(а):
Илья Евгеньевич, напишите уже полноценную статью про токены на сайт. Сколько можно по разным темам рассовывать пояснения?

Присоединяюсь, если решили излагать, то излагайте сначала, а то непонятно, где задвижка и почему токен.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: День Оберона 2018
СообщениеДобавлено: Понедельник, 03 Февраль, 2020 18:07 

Зарегистрирован: Среда, 31 Январь, 2018 19:54
Сообщения: 244
Дмитрий Дагаев писал(а):
Присоединяюсь, если решили излагать, то излагайте сначала, а то непонятно, где задвижка и почему токен.

Ждал, ждал ... возможно, что пропустил. Статья где-то уже опубликована?
Борис Рюмшин писал(а):
Илья Евгеньевич, напишите уже полноценную статью про токены на сайт. Сколько можно по разным темам рассовывать пояснения?

Такое впечатление, что могло бы быть серьёзным прорывом в технологии ...
.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: День Оберона 2018
СообщениеДобавлено: Понедельник, 03 Февраль, 2020 18:45 

Зарегистрирован: Четверг, 08 Май, 2008 19:13
Сообщения: 1447
Откуда: Киев
arlean1 писал(а):
Такое впечатление, что могло бы быть серьёзным прорывом в технологии ...
Почему? В принципе, это похоже на Java enum. Хотя для них, порой, и не хватает иерархичности, прорывом они и с нею не стали бы.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: День Оберона 2018
СообщениеДобавлено: Пятница, 30 Октябрь, 2020 19:19 
Администратор

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4695
Откуда: Россия, Орёл
Info21 писал(а):
Прелюдия в УДП/ЦЭМИ РАН -- среда, 24.10, 17:30, все детали тут:

https://zen.yandex.ru/media/id/5b349c3b ... om=channel


Запись этого мероприятия наконец-то смонтирована и опубликована.
https://youtu.be/HgcIV4v_Plc


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: День Оберона 2018
СообщениеДобавлено: Вторник, 03 Ноябрь, 2020 23:21 

Зарегистрирован: Пятница, 13 Март, 2015 16:40
Сообщения: 597
Борис Рюмшин писал(а):
Info21 писал(а):
Прелюдия в УДП/ЦЭМИ РАН -- среда, 24.10, 17:30, все детали тут:

https://zen.yandex.ru/media/id/5b349c3b ... om=channel


Запись этого мероприятия наконец-то смонтирована и опубликована.
https://youtu.be/HgcIV4v_Plc

Со звуком хоть что-то было сделано? Лучше всего вышла перестановка мокрофона на трибунку в начале )-8Ж (чётко слышно: дубовая-деревянная).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: День Оберона 2018
СообщениеДобавлено: Вторник, 03 Ноябрь, 2020 23:47 
Администратор

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4695
Откуда: Россия, Орёл
Artyemov писал(а):
Со звуком хоть что-то было сделано?

Звук был усилен. Если кто-то возьмётся обработать трек лучше -- я не возражаю.

Там при съёмке было две грубых ошибки. Но мы появились прямо перед началом. Да и после 380 км за рулём, я как-то не особо соображал сходу. Теперь уже как есть.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: День Оберона 2018
СообщениеДобавлено: Суббота, 07 Ноябрь, 2020 20:50 

Зарегистрирован: Пятница, 13 Март, 2015 16:40
Сообщения: 597
Борис Рюмшин писал(а):
Если кто-то возьмётся обработать трек лучше -- я не возражаю.

На пробу: по 45 с "до" и "после обработки"
Вложение:
info21_Before&After.mp3 [626.34 КБ]
Скачиваний: 228


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 91 ]  На страницу Пред.  1, 2, 3, 4, 5

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3


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

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2024, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB