All
Я хочу создать функцию, которая принимает символ, представляющий метод Java, и применяет его к некоторому объекту:
(user=> (defn f [m] (. "foo" (m)))
Когда я выполняю это, я получаю результат, сильно отличающийся от того, что я ожидаю
user=> (f 'getClass)
java.lang.IllegalArgumentException: No matching method found: m for class java.lang.String (NO_SOURCE_FILE:0)
2 вопроса:
1> почему символ m называется вторым аргументом '.' функция вместо значения, связанного с м?
2> как бы я на самом деле делал то, что хочу?