Comments 13
А в чем конкретно трудности при сворачивании графа в подпространства?
Нужно глубоко погружаться в математику проекта, а это мало кто может за небольшие деньги.
В целом любопытно, с какими трудностями пришлось столкнуться, что потребовало сложной математики. Хотя бы пример.
Рекурсия должна несложно определяться или там какая-то проблема многочисленных связей? Поиск компонент сильной связности из стандартных алгоритмов.
Проект очень интересный, визуализация кода могла бы помочь в сложных случаях дебаггинга.
Предлагаю изучить ДРАКОН язык и что такое дракон-схемы. Может вдохновит на идею.
Мне кажется что для низкоуровнего программирования текстовые программы и так хорошо работают.
Для визуализации больше подходит что-то более абстрактное,
как минимум функции, а лучше конвейеры Шейдеров в 3D или архитектуры Нейронных сетей,
Еще есть идея про Философию Unix: Каждая нода это утилита выполняющая простую задачу, которые можно объединить в конвейеры:
Сейчас в терминале получается одномерные пространство визуализации для ввода команд,
Для чего-то более сложного нужно писать скрипты и получается что-то вроде двумерного пространства визуализации.
Будет интересно на что будет похоже трехмерное пространство визуализации и какие возможности это может дать.
Таких решений много. Все таки это не языки программирования, а прикладные контрукторы. На них нельзя писать проивзольные программы.
Ну конкретно в отношении HiAsm: там не подключить произвольную библиотеку (без использования InlineCode - компонента, где как раз пишешь на ЯП), но в целом на наборе встроенных кубиков (не говоря о сделанных сообществом) не вижу каких-то критических ограничений, чтобы не получилось собрать произвольную программу. Есть и компоненты для работы с 3D (OpenGL), целые игрушки на них делали.
Так или иначе, я не про возможности, а про сам "визуальный язык". Использование иконок, цвета и разграничение назначения потоков данных (горизонталь - поток выполнения, вертикаль - данные) - концепции, которые, возможно, смогут помочь в вашем проекте преодолеть проблемы чтения вашего языка или хотя бы натолкнут на другие хорошие мысли.
Например, КДПВ я так и не смог распарсить в алгоритм, какие-то паттерны или правила построения этой схемы у меня не вышло вычислить. Линии разных цветов или мест соединений для данных или порядка выполнения мне бы могли помочь. Но, конечно, может я просто привык к другому из-за знания HiAsm.
VR-кодинг