Consider the following:

  (ns my.namespace.here)

  (use 'my.namespace.here :reload)

  (require '[my.namespace.here :as something])

  (import [my.package MyClass1 MyClass2])


1.  Why (at least!) 4 different ways of noting namspaces/domains: With
or without the escape-mark (') and with or without square
brackets([])?
Does it have to do with macros vs. functions etc?  Must it be so?
Surely it could be better!


2. Is it stricly necessary to have both "use", "require", and "import"
- as well as a host of keywords for the different ones?
Could they perhaps be combined to 2 - or even one?

Dare I say Python seems to have a nice, simple version of a combined
use/require sollution:
  import my.module
  import my.module as m1
  from my.module import MyClass1, MyClass2
  etc.
Cojures "require" allready allows ":as" and Clojures "use" has ":only"
followed by a list.

And would it be technically possible to:
 I.  Combine a  "use"/"require" combined sollution with the "import"-
function?
 II. Also have a ":reload" and ":reload-all" for Java classes?


Is all this a case of "that's what me had time for for version 1, but
we are working on something better."?
Or is it technically impossible to improve on or abstract away any of
this?


The  many choices and inconsistencies in the different import-
statements is complicated and confusing.
And as this is the first thing you have to figure out as a new-to-
Clojure programmer (novice or professional) to start programming in
Clojure, it certainly doen't make for a very good first impression!

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