В настоящее время я работаю над проектом для набора подсистем, и я хотел бы иметь возможность предложить API, предоставляемые данной подсистемой, для использования другими подсистемами.
Раньше я использовал SWIG для демонстрации C api на множестве других языков. Это хорошо сработало для меня, но, в конечном счете, API определяется на языке C. Так что в основном одна сторона API не зависит от языка, а другая - нет.
Что мне действительно хотелось бы, так это иметь нечто похожее на SWIG, которое могло бы генерировать интерфейс между 2 произвольными языками на основе некоторого описания API.
Я не хочу пользоваться веб-сервисами.
Например, я хотел бы вызвать «функцию» из Java и реализовать «функцию» в Python. Я хотел бы иметь возможность генерировать взаимодействие языка с помощью генератора кода.
Есть ли что-нибудь, что может сделать это сегодня? По крайней мере, для простых вызовов функции - игнорирование более сложных случаев, таких как обратные вызовы и ситуации, когда вам нужно поддерживать ссылки вне самого вызова функции.