Thanks for shaing.  I was just about to write several functions along these 
lines.  I have a couple of comments.

First, I suggest that you look at the standard clojure.java.io package for some 
useful functions that are already in Clojure 1.2.  In particular, you could use 
io/file instead of (File. xxx) in your code to add some flexibility to the 
kinds of things that can be treated as a "file".  I think io/file could replace 
your fs/join. Also, io/copy is very flexible so it's worth a look, too.

Second, fs is using a singe segment namespace.  I remember that there have been 
some cautions against doing that. (But not everyone agrees.)  My understanding 
is that it's best for Java interop to have a multi-segment namespace.  
(Reference links below.)

http://clojure.org/libs

> A lib name is a symbol that will typically contain two or more parts 
> separated by periods.

http://groups.google.com/group/clojure-dev/browse_frm/thread/00b1c6971c3b3394

Chas Emerick wrote:
> First, namespacing is good.  Your foobar library won't have the same name as 
> my foobar library -- and while you might think "who else would put code in 
> the same oddly-named namespace as mine?", it's a big world out there and an 
> ounce of prevention is worth a pound of cure. More strictly speaking, one 
> cannot use any class in the default package from any Java class that is in a 
> package.  That is the practical issue that leads to default package use being 
> nonexistent in the Java space. And, you may not care about Java interop now, 
> but either (a) you might later, or (b) your users might, now.  Finally, 
> gen-class will simply not work (last I checked) from a single-segment 
> namespace. 


Best Regards,
Steve Miner
stevemi...@gmail.com

-- 
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

Reply via email to