That's interesting. When I try that require A), I get the error in B). Seems
that it's trying to find the commands.clj file.

A)
ns bkell
  (:import java.io.FileReader)
  (:require domain)
  (:require util)
*  (:require commands)*
)

B)
Exception in thread "main" java.lang.RuntimeException:
*java.io.FileNotFoundException:
Could not locate commands__init.class or commands.clj* on classpath:


You can indeed look at the bkell.clj and commands/ source here:

   - https://github.com/twashing/bkell/tree/jasmine-bdd/src


Thanks Sean
Tim


On Sun, Sep 4, 2011 at 4:50 PM, Sean Corfield <seancorfi...@gmail.com>wrote:

> On Sun, Sep 4, 2011 at 1:20 PM, Timothy Washington <twash...@gmail.com>
> wrote:
> > I was hacking away at this at the meantime. I defined 'remove' functions
> in
> > 2 other places - bkell , commands. I ended up renaming commands/remove to
> > commands/removek, and now all invocations are working. But I'm pretty
> sure
> > I'm using namespace and require erroneously. Currently, I have a source
> file
> > structure like below:
> > src/
> >    bkell.clj
> > src/commands/
> >    add.clj
> >    remove.clj
> >    etc...
> >
> > But each of the 'src/commands/' clojure files, uses the '(ns command
> ...)'
> > namespace, not '(ns command.remove ...)', etc. I wanted to do it this
> way,
> > so that client code could just call command/remove, not
> > command.remove/remove. But I'm realising that I should instead define (ns
> > commands) once, and use (in-ns) in other locations. You can see the
> source
> > here. Looks like 'get' can be redefined in two other namespaces: bkell ,
> > commands. But when I try to do that for 'remove', the repl seizes up, and
> > I'm curious to know why.
>
> The require should be:
>
> (ns bkell
>  (:require commands))
>
> and then you'll reference the functions as (commands/add ...)
> (commands/remove ...) etc.
>
> I'm not sure why (:require commands.remove) doesn't give you an
> error... perhaps it was pulling in commands/remove.clj anyway?
>
> Is there any reason why you have the commands split across multiple
> files? (I'm not saying it's bad, just curious)
>
> I suspect you're somehow calling remove recursively (but it's hard to
> tell without seeing more of your code).
>
> Sounds like you're gradually getting a handle on namespaces...
> --
> Sean A Corfield -- (904) 302-SEAN
> An Architect's View -- http://corfield.org/
> World Singles, LLC. -- http://worldsingles.com/
> Railo Technologies, Inc. -- http://www.getrailo.com/
>
> "Perfection is the enemy of the good."
> -- Gustave Flaubert, French realist novelist (1821-1880)
>
> --
> 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 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