Hi Mike,

I think this is more about convenience than simplicity. In both Unix and Java 
deployment is complex, and often complicated as well. In spite of this, small, 
one-off things should be convenient to deploy, and Unix does this better in 
some contexts.

There is no reason we can't make one-off scripting convenient in Clojure. The 
specific example you raised (deploying one-off scripts) could be addressed by a 
standard launcher. Several have been written, and we need to take the simplest 
design and include it in Clojure. There is already a ticket for this: 
https://www.assembla.com/spaces/clojure/tickets/366-multiplatform-command-line-clojure-launcher,
 and I would love to see it in the next release.

That said, your example was one representative example of a general problem. 
Inconvenience bubbles up from the Java ecosystem in many places. Fortunately, 
these inconveniences are easier to fix in Clojure that elsewhere, since Clojure 
is such a simple language. :-)

Cheers,
Stu


> On Fri, 10 Sep 2010 00:03:22 -0700 (PDT)
> Meikel Brandmeyer <m...@kotka.de> wrote:
> 
>> Hi,
>> 
>> On 9 Sep., 20:46, Mike Meyer <mwm-keyword-googlegroups.
>> 620...@mired.org> wrote:
>> 
>>> The first problem with that is that this stuff seems show up
>>> *everywhere* in Javaland. It's not just web apps, it's pretty much
>>> anything.
>> 
>> You just lost me completely with your argumentation. I wrote a small
>> desktop utility (simple problem, simple solution, simple program)
>> which is distributed to different locations in the company. It works
>> on Windows and Unix w/o adaption to the system. Download jar and
>> double-click / execute via java -jar. It works without library version
>> hell, complicated Makefiles, system differences and other shenanigans.
>> I'm quite willing to pay more complexity upfront to have it easier in
>> the end.
> 
> Ok, let's see how this goes:
> 
> With simple things are simple tools, for a simple problem with a
> simple solution and a simple program, the solution goes like this:
> 
> 1) Write program in chosen unix-friendly interpreted language.
> 2) Distribute program text file.
> 
> Users can then run it via double-clicking (mac & windows), running it
> directly on the command line (mac & unix) or - under extreme duress -
> running it via the interpreter on the command line.
> 
> As far as I can tell, to do the same thing with Java tools, the steps
> are:
> 
> 1) Write program in chosen language that runs on the JVM.
> 2) Compile program to class file(s).
> 3) Use some tool to create a manifest file.
> 4) Run jar to create jar file.
> 5) Distribute jar file.
> 
> Users can then run it via double-clicking (mac & windows) or via the
> interpreter on the command line (mac & unix). There is no option to
> run it directly on the command line.
> 
> Possibly some tool will do steps 3 and 4 in single step for you.  So
> the Javaland tools take at least twice as many steps, and deliver a
> solution that's harder to use in some cases. Of course, I'm not as
> familiar with Javaland tools as I am Unix tools, so maybe I got it
> wrong. If so, *please* tell me the better way!
> 
>> It is obvious that Clojure doesn't fit your needs. Then simply don't
>> use it.
> 
> Wrong. It may be that the Java infrastructure that Clojure runs in is
> baroque enough that I won't be willing to use it. Then the same would
> be true of any language running on the JVM. On the other hand, a
> Clojure that ran on, oh, Parrot just for instance, wouldn't have any
> of these problems.
> 
>   <mike
> -- 
> Mike Meyer <m...@mired.org>           http://www.mired.org/consulting.html
> Independent Network/Unix/Perforce consultant, email for more information.
> 
> O< ascii ribbon campaign - stop html mail - www.asciiribbon.org
> 
> -- 
> 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