Я хотел бы создать «живую структуру кодирования».
Я должен объяснить, что подразумевается под "живой структурой кодирования". Я сделаю это, сравнивая кодирование в реальном времени с традиционным кодированием.
Вообще говоря, в традиционном программировании вы пишете код, иногда компилируете его, затем запускаете исполняемый файл или открываете скрипт в каком-то интерпретаторе. Если вы хотите изменить свое приложение, вы должны повторить этот процесс. Интерактивная среда кодирования позволяет обновлять код во время работы приложения и перезагружать его по требованию. Возможно, эта перезагрузка происходит каждый раз, когда файл, содержащий код, изменяется или каким-либо другим действием. Изменения в коде затем отражаются в приложении во время его работы. Нет необходимости закрывать программу, перекомпилировать и перезапускать ее.
В этом случае приложение представляет собой оконное приложение с циклом обновления / отрисовки, наиболее вероятно использующее OpenGL для графики, аудиобиблиотеку для обработки звука (SuperCollider?) И в идеале сетевую библиотеку.
Конечно, я предпочел языки, хотя я не уверен, что какой-либо из них хорошо подойдет для такой архитектуры. В идеале я бы использовал Python, Lua, Ruby или другой язык более высокого уровня. Однако недавно один из моих друзей предложил вариант Clojure, поэтому я тоже рассматриваю его.
Я хотел бы знать не только, какие языки подойдут для такого рода фреймворков, но, в общем, какие языковые функции сделают такую фреймворк таким возможным .