I'm pleased to announce that Stephen C. Gilardi's lib code has been
integrated into the clojure namespace and is included in boot.clj, as
of SVN rev 1009.

This means that use, require, and load-resources are now available by
default.

There is also a new macro, ns, which should be the preferred way to
use in-ns/import/use/require:

clojure/ns
([name & references])
Macro
  Sets *ns* to the namespace named by name (unevaluated), creating it
if needed.
  If the ns didn't already exist, refers the clojure namespace.
references can be zero or more of:
  (:requires ...) (:uses ...) (:imports ...) with the syntax of
require/use/import respectively,
  except the arguments are unevaluated and need not be quoted. Use of
ns is preferred to
  individual calls to in-ns/require/use/import:

(ns foo
  (:requires [clojure.parallel :as par])
  (:uses clojure.inspector)
  (:imports (java.util Date Timer Random)
            (java.sql Connection Statement)))


load-resources should be preferred to load-file, and works relative to
the classpath/namespace. Loading code from the classpath will become
important for debugging.

Note that ns automatically refers clojure unless the namespace already
exists. To control/avoid the refer to clojure, create the ns first:

(create-ns 'bar)
(ns bar)
;no clojure names in bar

Along the way, I also added Steve's format and printf, and added a new
macro, defonce, which will define a var, but initialize it only the
first time. This is especially useful for vars that hold data which
you do not want to lose when you reload the file in order to get new/
fixed function defs.

(defonce baz 42)
(defonce baz 43)

baz
-> 42

There are extensive docs on the vars, so (doc require) etc.

Many thanks to Steve for his tireless work in defining and refining
lib, a very useful contribution!

Rich

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To post to this group, send email to clojure@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to