 ;; (use 'uawa.core)
 
 ;; макроси
+(defmacro визначення "див. def" [символ документація значення] `(def ~символ ~документація ~значення))
 (defmacro постійна "див. defonce" [назва значення] `(let [v# (def ~назва)](when-not (.hasRoot v#) (def ~назва ~значення))))
 
 (defmacro функція "див. defn" [назви & описи] (list* `defn (with-meta назви (assoc (meta назви) :private false)) описи))

(функція зменш "див. reduce" [функція колекція] (reduce функція колекція))
(функція зменш "див. reduce" [функція значення колекція] (reduce функція значення колекція))

;; різні

(функція текст "(див. str)" [] (str))
(функція текст "(див. str)" [x] (str x))
(функція текст "(див. str)" [x y] (str x y))
(функція текст "(див. str)" [x y & більше] (зменш текст (текст x y) більше))


(функція дай-випадкове "див. rand-int" [максимальне] (rand-int максимальне))

(defmacro для "див. for" [set-expr body-expr] `(for ~set-expr body-expr))

(defmacro запис "див. defrecord" [name fields & opt] `(defrecord ~name ~fields ~@opt))


;; колекції
