aboutsummaryrefslogtreecommitdiff
path: root/src/clojure/contrib/auto_agent.clj
diff options
context:
space:
mode:
authorTom Faulhaber <git_net@infolace.com>2009-05-03 07:02:34 +0000
committerTom Faulhaber <git_net@infolace.com>2009-05-03 07:02:34 +0000
commita4b8d24cb2f4e79fa3856db37d5fcf1d94003b30 (patch)
treec86eb1ca154a03a49cc03dfa3c3d50b93892061c /src/clojure/contrib/auto_agent.clj
parentc1e9b640e557065cbf539a60741bc98c46cc825f (diff)
Beginning to add namespace documentation for all namespaces.
Diffstat (limited to 'src/clojure/contrib/auto_agent.clj')
-rw-r--r--src/clojure/contrib/auto_agent.clj15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/clojure/contrib/auto_agent.clj b/src/clojure/contrib/auto_agent.clj
index 1d9275a7..0734cc65 100644
--- a/src/clojure/contrib/auto_agent.clj
+++ b/src/clojure/contrib/auto_agent.clj
@@ -26,7 +26,20 @@
-(ns clojure.contrib.auto-agent
+(ns
+ #^{:author "Stuart Sierra",
+ :doc "This is superficially similar to Ken Tilton's \"Cells\" library for
+Common Lisp. But Cells is single-threaded and synchronous. This
+version is built on Clojure agents, so it is multi-threaded and
+asynchronous.
+
+An auto-agent is an agent whose value is the result of an
+expression. That expression can include other mutable Clojure
+types -- agents, atoms, and refs -- dereferenced with \"deref\" or
+\"@\". Whenever one of those derefernced things changes, the
+auto-agent will be automatically updated to reflect the new value.
+"}
+ clojure.contrib.auto-agent
(:use [clojure.contrib.walk :only (macroexpand-all)]
[clojure.contrib.test-is :only (deftest- is)]))