Подтвердить что ты не робот

Каковы различия между `require`,` import` и `use`?

Зачем нам нужны все require, import и use?

4b9b3361

Ответ 1

Требовать

require загружает библиотеку Clojure, чтобы вы могли использовать ее в своем текущем файле или REPL.

Это обычный способ доступа к функциям и определению в библиотеке Clojure.

Использование

use вводит пространство имен Clojure таким же образом, но, кроме того, оно относится к определения в загруженном пространстве имен из текущего пространства имен (т.е. создает удобный псевдоним в текущем пространстве имен).

Не переутомляйте его (каламбур) - он может легко вызвать конфликты пространства имен!

Импорт

import предназначен для импорта классов Java и интерфейсов.

user=> (import java.util.Date)
java.util.Date

user=> (def *now* (Date.))
#'user/*now*

Если вам не нужно взаимодействовать с кодом Java, вы можете безопасно игнорировать импорт.