Size: a a a

Типы в языках программирования, моделирования, представления знаний и жизни

2019 August 26

VK

Val Krylov in Типы в языках программирования, моделирования, представления знаний и жизни
Anatoly Levenchuk
Это учёт для задачи планирования, там possible worlds  в полный рост, как и в задачах проектирования/инженерии — http://15926.org/topics/possible-worlds/index.htm#Objects

И обращаем внимание, что в обсуждении ISO15926 по ссылке вообще не участвует RDF/OWL.

Мой тезис в том, что обо всём этом можно разговаривать в какой-то нормальной системе типов языка программирования. И сделать компактный DSL для этого. Ибо потребность разговора про планирование, про проектирование и прочее такое есть, а языка для удобного выражения такого разговора в программировании пока нет.
Только не DSL, а GPL. по определению.
источник

AT

Alexander Tchitchigin in Типы в языках программирования, моделирования, представления знаний и жизни
Oleksandr Nikitin
про планнер с possible worlds мне говорили как несбыточную мечту уже три человека из разных индустрий)
А список требований у них есть? Или хотя бы хотелок? 😃
Как они себе это представляют - что на входе, что на выходе?
источник

MG

Mikhail Gusarov in Типы в языках программирования, моделирования, представления знаний и жизни
источник

ON

Oleksandr Nikitin in Типы в языках программирования, моделирования, представления знаний и жизни
Alexander Tchitchigin
Про планирование надо бы http://picat-lang.org/picatbook2015.html прочитать в конце концов... 😊
о, да
источник

VK

Val Krylov in Типы в языках программирования, моделирования, представления знаний и жизни
Нет. Именно GPL, в котором могут существовать разные EDSL.
источник

ON

Oleksandr Nikitin in Типы в языках программирования, моделирования, представления знаний и жизни
Alexander Tchitchigin
А список требований у них есть? Или хотя бы хотелок? 😃
Как они себе это представляют - что на входе, что на выходе?
за все хорошее против всего плохого, конечно :) я думаю что там надо прототипировать и обкатывать, никто не расскажет нюансы юзабилити заранее (и поэтому не берусь за это, это дорого, лучше начать с обкатанного и потом потихоньку расширять)
источник

VK

Val Krylov in Типы в языках программирования, моделирования, представления знаний и жизни
Oleksandr Nikitin
про планнер с possible worlds мне говорили как несбыточную мечту уже три человека из разных индустрий)
Там основная проблема вообще не в possible worlds, а в "как описать хотя бы один мир и обмениваться кусочками описаний" :)
источник

AI

Alex Ivanov in Типы в языках программирования, моделирования, представления знаний и жизни
Val Krylov
Вообще, для представления знаний за пределами микротеорий требуется возможность дописывать типы. Которая, внезапно, из коробки есть только в SQL, и на практике используется для интеграции между разными системами. Пример:
Система X хранит свои данные в таблице и ничего не знает о системе Y. Система Y дописывает в таблицу поля created_at и updated_at, а также правила работы с ними. Работа системы X не меняется, но система Y периодически поллит таблицу, чем достигается интеграция. Решения вроде "а давайте допишем ещё одну property в RDF" в данном случае непригодны.
В этом ключе забавно наблюдать за системами с РСУБД, позволяющими устанавливать сторонние плагины со своими расширениями модели данных ))) никогда не заглядывали в кишки БД Jira, например? Тоже, своего рода федерирование модели данных, только внутри системы. Все быстро приходит к таблице пропертей а-ля rdf. Вот и вопрос, работают ли все эти дописывания, если дописывать столбцы к вашей таблице будет совсем чужой код? ))) А за качество всей системы отвечать именно вам? В духе Microsoft и кривые сторонние драйвера в режиме ядра ОС
источник

ON

Oleksandr Nikitin in Типы в языках программирования, моделирования, представления знаний и жизни
софт которым пользуются не только "вдумчиво заседая" а и "на бегу" очень отличается, и обычно стоит дороже
источник

ON

Oleksandr Nikitin in Типы в языках программирования, моделирования, представления знаний и жизни
та же aha "просто project management", но почему-то $150 за юзера в месяц, а не $10, при этом люди отказываются с нее пересаживаться
источник

ON

Oleksandr Nikitin in Типы в языках программирования, моделирования, представления знаний и жизни
потому что куча сценариев очень хорошо вылизаны по количеству затрат времени юзера (чего стоит одно "перегенерить презентацию в которую вы когда-то эмбеднули диаграмку/репорт" или "сохранить любой список на экране в пдф/csv/xls/пошерить ридонли снапшот/или живое ридонли")
источник

VK

Val Krylov in Типы в языках программирования, моделирования, представления знаний и жизни
Alex Ivanov
В этом ключе забавно наблюдать за системами с РСУБД, позволяющими устанавливать сторонние плагины со своими расширениями модели данных ))) никогда не заглядывали в кишки БД Jira, например? Тоже, своего рода федерирование модели данных, только внутри системы. Все быстро приходит к таблице пропертей а-ля rdf. Вот и вопрос, работают ли все эти дописывания, если дописывать столбцы к вашей таблице будет совсем чужой код? ))) А за качество всей системы отвечать именно вам? В духе Microsoft и кривые сторонние драйвера в режиме ядра ОС
Качество работы любой системы с пользовательской бизнес-логикой зависит и от качества этой бизнес-логики. Дописал пользователь или интегратор некорректные триггеры - всё упало, всё пропало. Спасут только бэкапы.
источник

AI

Alex Ivanov in Типы в языках программирования, моделирования, представления знаний и жизни
Вот у меня и встречное утверждение, если вы не контролируете полностью схему данных, реляционки не работают и ничего не работает кроме RDF или того же самого (property table) в реляционке
источник

AI

Alex Ivanov in Типы в языках программирования, моделирования, представления знаний и жизни
С тремя столбцами id, propertyTypeId и value в виде строки )))
источник

VK

Val Krylov in Типы в языках программирования, моделирования, представления знаний и жизни
Alex Ivanov
С тремя столбцами id, propertyTypeId и value в виде строки )))
Что уже лучше RDF-помойки, так как хотя бы проверяется cardinality. :)
источник

AI

Alex Ivanov in Типы в языках программирования, моделирования, представления знаний и жизни
При условии, что каждый плагин разрабатывается независимой командой, со своей эволюционирующей схемой данных. И надо поддерживать установку, обновление и интероперабельность с другими плагинами
источник

AI

Alex Ivanov in Типы в языках программирования, моделирования, представления знаний и жизни
И они конечно же хотят добавить своих пропертей в ваш тип Issues )))
источник

MG

Mikhail Gusarov in Типы в языках программирования, моделирования, представления знаний и жизни
@amivanoff Trac вроде как-то выкручивался без этого.
источник

AL

Anatoly Levenchuk in Типы в языках программирования, моделирования, представления знаний и жизни
Val Krylov
Нет. Именно GPL, в котором могут существовать разные EDSL.
Вот этот пункт нужно бы развернуть. Это очень похоже на тот вопрос, который я задавал в самом начале: как на GPL мы планируем описывать мир (включая possible worlds), какая система типов для этого требуется.

Ну, а затем eDSL на базе этого хост GPL — микротеории же.

Как вариант — это надстройка "миромоделирования" над каким-то GPL, а потом eDSL для разных  domains с использованием этой надстройки.

Так что я вроде как согласен с такой конструкцией, но проблема та же, что в случае eDSL — stand-alone GPL "на ассемблер" против метапрограммирования над уже имеющимся GPL (скажем, над Julia).

Ну, или можно говорить о "двухуровневых eDSL" — языковых гирляндах, языковых компиляторных цепочках (виртуальных виртуальных машинах — как только эта идея уже не называлась!).
источник

ON

Oleksandr Nikitin in Типы в языках программирования, моделирования, представления знаний и жизни
tower of interpreters )
источник