Обновить

Комментарии 5

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

есть функция или плагин - в 1 файле, и в другом тесты,
предлагаю создать стековый VM с Интерпретатором и там создать несколько инструкций. Она принимает 2 файла в своём окружении, и прогоняет по тестам до конца тестов первый файл и выводит результаты

на верху будет что-то типо 2 строки(что-то наподобии верхнего макро ассемблера)

%плагин %тесты
%принт
%плагин2 %тесты2
%принт

а так по разному конечно можно наверно

при интерпретации выводить информацию из файла что протестировать и как, с этой возможностью тогда и записывать тест в файл

Понятно, что "можно по разному". Тут вопрос с практической точки зрения, так как столкнулся с этой проблемой в своем проекте и не знаю, как удобнее её порешать при постоянном увеличении различных тестейсов. Думал, может быть есть какие-то мысли.

ну вот как раз смотрелось бы наверно прикольно, блочить на этапе компиляции через какой-то стек, код, но тут проблема генерировать тесты, там целые теории есть тут я пока не силен, но глянул по диагонали ваш проект, наверно его надо классифицировать, в макросы или в такие команды, которыми можно будет сконструировать код, тогда получается, вы конструируете плагин, и под эти части надо сообразить как математически или еще как дополнить доказательства валидности, тогда с вм, и таким плагином можно теоретически будет ограничить человеческий фактор, тоесть гоняем вроде С++, просто на етапе сборки надо доказать валидность типо помимо компилятора, ну я так представлял если представлять безопасность, понятно, что возможно это не лучшее решение, и возможно оно частично есть в ллвм, просто там такая ситуация, что есть конструкции, которые надо походу действительно через стек прогонять проверкой, но возможно это не совсем то крутое решение

есть Люа, есть Лисп, есть Java - подходы, вот я посмотрел мне понравилось стек машина

https://godbolt.org/z/jW3TTqoz1

может можно как-то форт применить

при этом мне нравится Лисп и нравится XEmacs и вот тоже диллема, что лучше

поидее можно наверно сделать свой новый мини язык, посмотреть там, но так как это уже совсем другой может быть не интересно. как с С++ такое добавлять в существующий бекенд я не знаю

походу надо писать правильно, переносная байт код машина поидее проще, но тогда там надо думать как защищать

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации