@@ -359,7 +359,7 @@ pairwise constructs as found in e.g. `let` and `cond`.
359359
360360* <a name =" comprehensive-ns-declaration " ></a >
361361 Start every namespace with a comprehensive ` ns ` form, comprised of
362- ` import ` s, ` require ` s, ` refer ` s and ` use ` s .
362+ ` refer ` s, ` require ` s, and ` import ` s, conventionally in that order .
363363<sup >[[ link] ( #comprehensive-ns-declaration )] </sup >
364364
365365 ```Clojure
@@ -368,19 +368,28 @@ pairwise constructs as found in e.g. `let` and `cond`.
368368 (:require [clojure.string :as s :refer [blank?]]
369369 [clojure.set :as set]
370370 [clojure.java.shell :as sh])
371- (:use [clojure xml zip])
372371 (:import java.util.Date
373372 java.text.SimpleDateFormat
374373 [java.util.concurrent Executors
375374 LinkedBlockingQueue]))
376375 ```
377376
378377* <a name =" prefer-require-over-use " ></a >
379- Prefer using ` :require :refer :all ` over ` :use ` in ns macro.
378+ In the ` ns ` form prefer ` :require :as ` over ` :require :refer ` over `: require
379+ : refer : all ` . Prefer ` : require ` over ` : use `; the latter form should be
380+ considered deprecated for new code.
380381<sup >[[ link] ( #prefer-require-over-use )] </sup >
381382
382383 ```Clojure
383384 ;; good
385+ (ns examples.ns
386+ (:require [clojure.zip :as zip]))
387+
388+ ;; good
389+ (ns examples.ns
390+ (:require [clojure.zip :refer [lefts rights]))
391+
392+ ;; acceptable as warranted
384393 (ns examples.ns
385394 (:require [clojure.zip :refer :all]))
386395
0 commit comments