Давно ломаю голову над тем, как реализовать систему плагинов в своей программе да так, чтобы эти сами плагины можно было писать на разных языках?
Сначала искал вообще про систему плагинов, и набрел на
эту статью, хоть там и приводится в пример язык Python, стало ясно, что плагину передается экземпляр основного класса, и плагин может модифицировать его поля и т.д. Но проблема в том, что по такой системе, плагин можно написать только на том языке, на котором написана сама программа... или нет?
Допустим у меня есть программа на C++, как я могу реализовать систему плагинов так, чтобы я или кто-то другой мог написать плагин, используя другой язык (Python, Rust, Go, JS, etc.)?