It looks very similar to the pattern I was trying to avoid in the first 
place. I've also got the problem of multiple threads (and its been pointed 
out that my original solution was not thread safe). In my experience bugs 
of an 'extremely rare but could conceivably happen' nature are the sort of 
thing that appear years after deployment when nobody understands the fine 
detail of a system any more. I'm speculating of course but its the kind of 
thing that brought down the UKs Air Traffic Control system with a 'never 
before seen' bug just last week.
'
On Saturday, December 13, 2014 12:37:28 PM UTC, Sergey Didenko wrote:
>
> Some people use vars for seldom changing things. What do you think 
> about this VS atoms? 
>
> For example: 
>
> (declare ^:dynamic *server*) 
>
> (defn get-possibly-unbound-var [v] 
>   (try (var-get v) 
>        (catch Exception e 
>          nil))) 
>
> (defn start-server! [] 
>   (if (get-possibly-unbound-var *server*) 
>     (.start *server*) 
>     (def ^:dynamic *server* 
>       (run-jetty #'app {:port 8000 :join? false})))) 
>

-- 
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
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to