Ответ 1
Rich Hickey объясняет, почему это невозможно.
Или мне нужно конкретно перечислять все импортируемые мной классы?
Сейчас я просто изучаю Clojure, и представляется полезным сделать что-то подобное в REPL:
(import '(java.io *))
Не то, чтобы это допустимый синтаксис, но было бы неплохо иметь что-то, что делает эквивалент. Это спасло бы некоторые типизации, особенно когда возиться. В фактическом производственном коде я всегда перечисляю каждый класс, который я импортирую, независимо от языка, но довольно удобно не делать этого.
Rich Hickey объясняет, почему это невозможно.
Если я не пропустил обновление, нет никакого способа, чтобы wild card включал пакеты в пространство имен в Clojure в настоящее время.
В настоящее время, похоже, нет способов сделать это. Макрос импорта предназначен только для импорта указанных классов в текущее пространство имен. Я попытался написать еще один макрос, чтобы сделать то, что вы хотите, но он не представляется возможным с загрузчиком классов, используемым Clojure, поскольку он не позволяет нам обращаться к ресурсам пакета.