Существует ли общая «бэкэнд» библиотека для отражения Java

В настоящее время я работаю со специализированным интерпретируемым языком программирования, реализованным на Java. Как очень небольшая часть языка, я хотел бы добавить возможность совершать вызовы в Java. Прежде чем погрузиться во все тонкости размышлений, мне было интересно, знает ли кто-нибудь об общей библиотеке для выполнения «бэкэнд» части рефлексивного вызова Java-кода.

То есть я анализирую строку (я определяю грамматику) в некоторой структуре данных, которая представляет вызов метода Java (или конструктор, или доступ к полю), а затем передаю эту структуру данных в эту библиотеку, которая вызывает вызов и возвращает результат. В частности, я бы хотел, чтобы он уже обрабатывал все крайние случаи, которые я не хочу выяснять:

Автоматически выбрать правильный метод, основанный на типах аргументов (например, интеллектуальный Class.getDeclaredMethod ())Обработка различий между массивами и нормальными объектными ссылкамитак далее

Я потратил немного времени на изучение реализаций динамических языков в JVM, но они, как правило, намного сложнее, чем я ищу, или сильно оптимизированы для конкретного языка.

Другой вариант - преобразовать мою грамматику в строку на каком-то динамическом языке и вызвать ее с помощью Rhino или чего-то еще, но это немного больше, чем я ищу.

Спасибо!

Ответы на вопрос(10)

Ваш ответ на вопрос