2013-09-25 3 views
1

Это может быть абсолютно вопрос о нобе, но я экспериментировал с openGL в clojure через LWJGL, и, хотя у вас много ресурсов для изучения как графического программирования, так и LWJGL, я счел это неприятным для их переноса в clojure. Все разные статические методы, представляющие вызовы openGL, связаны с различными классами Java (например, GL11, GL15 и т. Д.), Что не представляет реальной проблемы в java, поскольку все они могут быть импортированы с помощью чего-то вроде «import static org.lwjgl.opengl .GL11. *». Поэтому мне было интересно, есть ли способ сделать то же самое в clojure (например, как использовать «use» для пространств имен clojure)? А если нет, есть ли более простой способ выяснить, с каким классом связан данный метод, чем останавливаться на поиске по api для каждого из них?Как я могу использовать lwjgl GL * пространства имен в Clojure?

ответ

0

Функциональность, которую вы описываете, не входит в стоимость clojure.core. Он был включен в проект, устаревший, clojure-contrib, но в том числе, что в зависимости от вашего проекта могут возникнуть непреднамеренные конфликты зависимостей.

Код для import-static макроса находится в старом clojure-contrib github-хранилище.

https://github.com/richhickey/clojure-contrib/blob/master/src/main/clojure/clojure/contrib/import_static.clj

Вы должны быть в состоянии включить единственный макрос в вашем проекте без вопроса.

Смежные вопросы