Size: a a a

Compiler Development

2020 March 09

AT

Alexander Tchitchigin in Compiler Development
Поэтому я не вижу оснований для заявления, что большую часть времени код программы сломан. 😉
источник

KR

K R in Compiler Development
MaxGraey
LabView ужасный пример. Мне куда больше нравиться примеры Nuke, Fusion или Autodesk Smoke. А вообще в видео и аудио  продакшене и игровой индустрии а так же 3д редакторах этот подход применяется повсеместно
Как там с иерархическими структурами, а-ля HSM? Hierarchical State machines.
источник

M

MaxGraey in Compiler Development
K R
Как там с иерархическими структурами, а-ля HSM? Hierarchical State machines.
Там везде DAG используется, так что HSM изобразить не должно быть проблематично
источник

KR

K R in Compiler Development
MaxGraey
Там везде DAG используется, так что HSM изобразить не должно быть проблематично
Я имею ввиду, что развиты средства работы с иерархичность, инкапсуляция и тд?
источник

M

MaxGraey in Compiler Development
K R
Я имею ввиду, что развиты средства работы с иерархичность, инкапсуляция и тд?
Ну да
источник

M

MaxGraey in Compiler Development
Без этого был бы кошмар
источник

KR

K R in Compiler Development
MaxGraey
Ну да
Спасибо, надо посмотреть.
источник

M

MaxGraey in Compiler Development
В Nuke это решается через Групы и Gizmo (который по сути аналог модуля/пакета в классическом пониманиии)
источник

KR

K R in Compiler Development
MaxGraey
В Nuke это решается через Групы и Gizmo (который по сути аналог модуля/пакета в классическом пониманиии)
В обычных ЯП есть несколько иерархических вещей с произвольной глубиной вложенности  - функции, объекты, модули.
источник

M

MaxGraey in Compiler Development
Ну не всегда, в чисто императивных (таких как Cи) есть только функции, а чисто OOP (как Java) только классы/объекты и модули
источник

AK

Andrei Kurosh in Compiler Development
MaxGraey
Ну не всегда, в чисто императивных (таких как Cи) есть только функции, а чисто OOP (как Java) только классы/объекты и модули
Режим зануды: оба языка императивные, про Си вы имели в виду «структурный»
источник

KR

K R in Compiler Development
MaxGraey
Ну не всегда, в чисто императивных (таких как Cи) есть только функции, а чисто OOP (как Java) только классы/объекты и модули
Они могут вызывать друг друга, и, в конечном итоге структурная программа может быть представлена в виде той или иной иерархии вложенных блоков.

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

Интересно, как в этих визуализационных редакторах делают рефакторинг.
источник

M

MaxGraey in Compiler Development
K R
Они могут вызывать друг друга, и, в конечном итоге структурная программа может быть представлена в виде той или иной иерархии вложенных блоков.

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

Интересно, как в этих визуализационных редакторах делают рефакторинг.
Что значит рефакторинг?) Там масимум что нужно это перераспределить ноды так, что бы ребра не сильно пересекались и были близки друг другу. В общем правильно выстроить layout.

Намного интерестнее - это как сделать версионность графа) До недавнего времени это было весьма проблематично
источник

M

MaxGraey in Compiler Development
Кстати довольно неплохих результатов в этой нише добилась Luna
https://www.youtube.com/watch?v=L4uiPUN5D6A
источник

KR

K R in Compiler Development
MaxGraey
Что значит рефакторинг?) Там масимум что нужно это перераспределить ноды так, что бы ребра не сильно пересекались и были близки друг другу. В общем правильно выстроить layout.

Намного интерестнее - это как сделать версионность графа) До недавнего времени это было весьма проблематично
Ну как с текстами - это же просто другое представление текстового языка.
источник

M

MaxGraey in Compiler Development
K R
Ну как с текстами - это же просто другое представление текстового языка.
Ну вот Luna идет по такому пути и честно говоря я это не понимаю. Мапить текстовый ЯП 1:1 в визуальный и фактически оставляя некий гибрид текста и визуализации. Ну не знаю
источник

M

MaxGraey in Compiler Development
По крайней мере у них зотя бы визуально-интерактивная часть нормальная
источник

M

MaxGraey in Compiler Development
И здесь они явно вдохновлялись Autodesk Smoke
источник

KR

K R in Compiler Development
Текстовое представление значительно более проработано. И странно этим не воспользоваться.

Для графов нет ни простейших vim/grep/sed/wc, ни партеров с pretty printing
источник

M

MaxGraey in Compiler Development
K R
Текстовое представление значительно более проработано. И странно этим не воспользоваться.

Для графов нет ни простейших vim/grep/sed/wc, ни партеров с pretty printing
Так это там все и не нужно)
источник