I'm not familiar with labrepl (except by name), but I think this is
*exactly* right, as long as people do realize that maven is the "next
natural step" from lein as soon as they have build requirements beyond
running repls and maybe wrapping up a jar. Insofar as any higher-
level tool provides UIs (text and script-based, like lein and other
clojure build tools, or graphical, as with the NetBeans maven UI) that
people are happy with, I think they're fabulous. I only take issue
with the reimplementation of functionality that is otherwise ready-at-
hand and any barriers that might be erected that prevent
interoperability and collaboration.
A semi-final thought: Clojure is a JVM language. This fact is
inescapable, and implies a lot of things (for good, and very, very
occasionally, for ill). One implication IMO is that we should
collectively aim to cooperate, collaborate, and interoperate with the
rest of the JVM world, for our own benefit as well as for our
neighbors'. We gain a lot by being able to develop on and deploy to
the JVM, and like any other software community, part of the culture
has to do with how software is built, deployed, and managed. This is
all completely orthogonal to the utility of Clojure as a programming
language, and is a predominantly social concern. Most of us already
know the relative joy that comes with being able to drop our Clojure-
based application off in a client or customer's hands as a jar or war
file, without the consternation or difficulties that might ensue if
Clojure were a platform-less island. There's a great deal of currency
that also comes with being able to hand a project that contains
Clojure code off to another JVM developer and have confidence that
they'll be able to build, configure, and deploy that project without
special intervention using tools they're familiar with. That's a win
for Clojure, and therefore very much in our interest.
A P.S. on that thought is that I'd expect ClojureCLR projects to use
whatever it is they use in .NET-land for building, configuring, and
deploying projects and applications, for all the same reasons.
Cheers,
- Chas
On Mar 26, 2010, at 11:13 AM, Rick Moynihan wrote:
On 25 March 2010 22:17, Brian Carper <briancar...@gmail.com> wrote:
On Mar 25, 11:55 am, Chas Emerick <cemer...@snowtide.com> wrote:
Why does building and installing dependencies have to be harder than
this? Lein right now tries to fill this niche of being braindead
easy
to use, and comes pretty close. I realize Maven does a lot more than
build and install dependencies, but for some of us, that's all we
want
out of life, and it's pretty nice when it's that easy to do so.
Agreed. I know next to nothing about maven, other than it scared me
back in my java days. It seems at first glance to be pretty
impenetrable (at least in terms of how it is documented), and that's
not say that I wasn't blown away by Chas's screencast. I'd certainly
consider maven now or at least try it when my projects get bigger and
require more than lein has to offer.
Is there not an analogy to be drawn here between labrepl and lien? It
seems both are targetted at being approachable to Clojure beginners
(and in the case of lein small projects). labrepl isn't aiming to be
the environment you run complex clojure projects with, and in the same
way it seems that at some point you might want to migrate from lein to
maven.
I'd assumed that migrating a lein based project to a maven one (if
required) would be as simple as running:
$ lein pom
Then when you're ready you can rm project.clj and just tweak your
pom.xml for a pure maven build.
If this is the case then lein seems to allow people to delay learning
maven, which is a complex or at least daunting moving part in a
complex environment. Not something you want to have to learn or adopt
whilst straining to understand Clojure.
Maven seems to be a polarising tool, some people love it and others
hate it... This much we know. So anything we can do to prevent
clojure being tarnished by the "maven haters", the better. lein seems
to be a good step in this direction, and is possibly even a gentle
introduction to maven for those wishing (or requiring) to make the
jump.
Is it possible for us as a community to agree on this much?
R.
--
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
To unsubscribe from this group, send email to clojure
+unsubscribegooglegroups.com or reply to this email with the words
"REMOVE ME" as the subject.
--
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
To unsubscribe from this group, send email to clojure+unsubscribegooglegroups.com or
reply to this email with the words "REMOVE ME" as the subject.