clojure.org requires more clicks now
I'm using clojure.org a lot. Unfortunately navigating in it, since two weeks or so, was made worse. Is anyone feeling the same way ? Or I am just too stupid to use this webpage? What has been made worse?: In the old version, on the left edge, there were, under `Documentation', all the subsections of the documentation listed, e.g. `The Reader', or `Namespaces'. Because this subpoints were the things I looked at the most and very frequently indeed, it was very handy to click on the left edge on one of these subpoints, and then see in the main panel the content. But now I need to click on `Documentation'. Then I need to choose the subsection in the main panel. Then the main panel shows me the content of the subsection. If I want to look at a different subsection, I need to click twice: 1 time on the `Documentation' link in the left edge. Than on the subsection link in the main panel. That's really bad. Don't make me click. Heinz. -- 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
Re: clojure.org requires more clicks now
Hello Stuart, Thank you for your prompt reply. It would be nice if the Documentation link in the left-side column could expand into a list of sub-sections, but I don't know if the technology behind the site (Wikispaces) can support that right now. That would be very nice, indeed. The software used before the change showed all sub-sections. Thank you for trying to show them again. Good luck with it! felt that the site was getting cluttered with too many links, which was confusing to newcomers. I agree, that cluttering up a site is bad and confusing. On the other hand I think, nothing is more clarifying, i.e. deconfusing, than documentation. So finding and navigating through it should be as easy and fast as possible. I know that the following is a minority opinion: But this attention to newcomers is, albeit very honourable and of course economically necessary, bad. There is no easy path to anything that has depth. It is the duty of an apprentice to work hard to get what he desires. It is not the duty of the beauty, clojure in this case, to attract. Beauty generates attraction all by itself. As clojure does. Thanks again ! Heinz. -- 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
Re: clojure.org requires more clicks now
P.S.: the compatibility shim for 0.1.x API functions were 2 days late. Already upgraded to the new API. Had I just waited 48 hours... ;-) -- 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
Re: clojure.org requires more clicks now
Ah. I don't wanna go into flames here. And I *said*, I know this is the opinion of the majority. So relax. Nobody cares about what I think about this. Nobody is going to change anything, because of me. All I wanted to say is that this formulation: make sure newcomers have pretty good time. is *exactly* what I think is bad. If you want to have `a pretty good time', go to the movies. Or kiss a girl. Or drink lots of beer. And then kiss a lot of girls. When I am given a hard time about something I really love doing, then I enjoy myself *so* much. I *love* having a hard time. It makes be better, faster, stronger. That is where I enjoy myself the most. I do not want motivation. I have plenty of it. I want information. My mind paints it, then. And only from reading that, it is clear, how minor this minority is, that thinks that way. Ah. I don't want to go into things like this. I am just too Deutsch. ;-) Heinz. -- 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
Re: clojure.org requires more clicks now
And these kids in school, and these people at work, you refer to: My argument is this: Those that come to clojure by themselves, because they can not help. Because they are so occupied with computers, so occupied with mastering everything, because they can not stop looking for beauty. They won't be stopped by anything. And it will be their programs, that I want to use. It will be their programs that will be beautiful. Like clojure. There is too much software. Heinz. -- 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
Re: clojure.org requires more clicks now
Sorry but this is absolutely ridiculous. I know quite a few people who are interested in what Clojure has to offer but find it really hard to get in, not because of the language but because of the way Clojure documentation and tools are (experts-oriented). Some of them have given up, at least for a while. And this is not their fault. It took me three attempts with clojure. It took me eight attempts with scheme/common-lisp. So I failed seven times. But I never thought, that it was the fault of others. It was mine and mine alone. I wasn't ready for it. So I did other things. I came back. And then it worked. If you do not come back, you do not want it enough. This may sound harsh or very much self absorbed. But not `ridiculous'. I think clojure's documentation is excellent. But I read and reread it hundreds of times. Besides the beautiful clojure.contrib stuff, I see no need for other tools. But of course, you need to use a descent text editor and learn it well. And you need to use a cmdline and learn it well. And you need to have a lot of Java and JVM experience. And all that takes a lifetime. And I am still a novice. -- 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
Re: re-sharing clojure on rlwrap
I would highly recommend using leiningen. You should ! It's a nice program, that I know how to operate. But, as I said, I'm too stupid to gain more productivity from it. It's just, that on the aforementioned Wiki page, there is the sentence: `You'll need Lein to build programs and run them at the command line, and also to use Clojure libraries' Well, that's not true. I build programs, run them from the command line and use Clojure libraries, and pay my rent with these activities, without using leiningen. To repeat myself, I reshared that for people with a similar mindset: You see clojure for the first time and think: Gosh! That's great. Lets play with it. It took me a while, until I saw the use of 'make' for my C programming, and it took me a while, until I saw the use of 'ant' for my java programming, so one might give oneself a litte bit of time, until you grow a need for leiningen. I learn alot, from first doing things myself. And my script helps in doing so. And it is very easy, I hope. People like me, might be put off, by reading that Clojure is not enough. That you need something more. Well, thats all for the matter. Heinz. -- 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
re-sharing clojure on rlwrap
I want to reshare something. The `Getting Started' section in the clojure reference contains a link to the `Getting Started' section of a wiki. On that wiki page, two years or so, ago, there was a script, that showed how to run a REPL on rlwrap. That script was great stuff. Sadly, it disappeared. I haven't got the original source anymore. I attached my version of it, together with a README and an INSTALL text file. Running it as is, gives you a REPL, with readline and history support. Running it with a slight change in the source code, documented in INSTALL.txt, gives you my workflow, that is documented in README. I post this for people out there, who might come to clojure for the first time, with a similar background and attitude, like me. For those, the aforementioned script on the wiki, was immediately useful. Before I get shouted at, heavily, for the attached crap, I close this post with a disclaimer, that can be read as a description of the audience for the attachment. Disclaimer: - vim, bash, core/find/diff-utils and their friends, X that allows you to have multiple terminals on multiple workspaces open, all constitute a development environment integrated into your computer. In short: You see no need for IDEs. - managing your dependencies like clojure's contrib libs or 3rd party jars all by yourself, with the help of the computer, is something you love. In short: You seem to be too stupid to see any advantage in using leinigen. Thanks for all the fish, Heinz. -- 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 clj_on_rlwrap.tar.bz2 Description: Binary data
does delay in calling clojure from java happen only once ?
I use clojure more and more in production. To use it even more there, I need to be certain about the answer of the following question. My experiments lead me to the conjecture, that the answer is yes. But a proof can only be given by someone, who is familiar with clojure's implementation of which I have no clue. Thanks for your help !: The question is concerned with calling clojure from Java. I have a bunch of clojure stuff, which I compiled to byte code with the techniques described at http://clojure.org/compilation I made an archive A of the result. I have Java code, that uses things from A. Now: The first time something from A is called, there is a little delay. Afterwards there is no delay. Is it true, that, in a given JVM, only the very first call to something in A, will cause a delay ? -- 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
Re: does delay in calling clojure from java happen only once ?
Thank you, for your answer. It doesn't convince me, though. I am well aware of the class loading mechanism of the JVM. But if I compile against, say guava-12.0.jar (beautiful stuff by the way), and use those classes at runtime, there is no delay in using them whatsoever. At least not a delay of nearly a second on my machine, the first time I use bytecode generated by clojure. I am quite sure, that the bytecode generated by clojure, initializes some sort of Runtime for itself, the first time it is called. My question is, does this happen more than once ? Furthermore clojure does not spit out classes. It spits out bytecode. Heinz. -- 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
Re: does delay in calling clojure from java happen only once ?
Yes, I do compile my clojure code ahead of time (AOT) to byte code. Does that mean, that your, ahead of time compiled clojure code, has no noticeable delay, when you first call it ? If in the middle of the lifetime of an app, this delay happens, i can not consider it small, if 1 requests are waiting to be served. Heinz. -- 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
Re: does delay in calling clojure from java happen only once ?
Hm. I do have the feeling, that we do not understand each other. Code is always unambigous. I give an example, and give my question another run. (ns p.x (:gen-class :methods [ ^{:static true} [f [] String] ])) (defn -f [] hello, world) Fire up a REPL, make sure, p/x.clj is in your classpath, as well as classes (the default value of *compile-path*) and do user= (compile p.x) Go out of the repl, cd into classes and do a $ jar cf a.jar * package e; import p.x; public final class E { public static void main(String[] args) { for (int i = 0; i 100; ++i) { System.out.println(x.f()); } } Fire up the java compiler (javac) on that Java source code, making sure, that he can find a.jar. Now run E with the java launcher, making sure than a.jar and clojure.jar are in its classpath. Something like so: $ java -cp a.jar:clojure.jar:./classes e.E Observation: --- The first hello world, takes a second or so to appear. The 99 following are coming super fast, like always. Question: -- 1. Am I doing something wrong or disadvantegous, and that is an explanation for the delay ? 2. If not, does this delay happen only once in a given JVM ? Thanks for your help. Heinz. -- 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
Re: does delay in calling clojure from java happen only once ?
The following makes it clearer: package e; import p.x; public final class E { public static void main(String[] args) { System.out.println(before); for (int i = 0; i 100; ++i) { System.out.println(x.f()); } } Now: After launching, the string `before' gets printed (JVM up), and *then* there is delay, before the first `hello, world'. Jetzt aber. -- 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
Re: does delay in calling clojure from java happen only once ?
Ah, cool ! Thank you very much for this insider knowledge, Mr. Sierra !!! Great. That means more clojure in production. Hurrah !!! Thanks again. Heinz. -- 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
Re: problems with meta
Hope that helps. It did. Thanks a lot ! Your explanation made it perfectly clear, what I was missing. I didn't know that I was able to do something like (def ^{:m 1} ^:dynamic *x* ^{:m 1} ^{:n 1} []) That is useful to me. And thank you for pointing out the relevant part of the LispReader to me. I am looking forward to dig into the source for quite a while now, and so that represented a good opportunity for that. Die Gelegenheit beim Schopf ergreifend, auch ein herzliches Dankeschoen fuer vimclojure, dessen Nutzer ich bin. Heinz. -- 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
Re: problems with if
Unlike in Common Lisp, Clojure resolves symbols at compile time. Thank you, for stating this fact so precisely, thereby answering my question. I do have difficulties, though, to deduce this fact from the reference manual. But, well, there you go. Heinz. -- 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
problems with meta
Hi, I've got two questions regarding meta information. Question 1: I can say (def x1 (with-meta [] {:m 1})) or (def x2 ^{:m 1} []) and will get my map back with either (meta x1) or (meta x2). But when I do (def y1 (with-meta 'a {:m 1})) (def y2 ^{:m 1} 'a) only (meta y1) spits the map back at me, (meta y2) evaluates to nil. What am I doing wrong ? Maybe the meta info is attached to (quote a) and not to the symbol, because that is the next form read ? Question 2: The following is, of course, an extremely silly thing to do, but I can't help myself: When I say (def z1 (with-meta [] {})) and (def z2 ^{} []) again, only (meta z1) gives me my content-rich meta information back, but (meta z2) returns nil. What am I missing ? Thanks for your help, Heinz. -- 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
problems with if
Hello, world ! Because that is my first post, I can not resist to say Thank you !!! for clojure. I like it at lot. When I type (if true t f) in a fresh REPL, I get the error [...] Unable to resolve symbol: f [...] But my interpretation of the reference ( http://clojure.org/special_forms#if ) is, that, in the above case, f should not have been evaluated at all. In scheme (I use mit-scheme) and in common-lisp (I use clisp) I get the (expected) behaviour: In common lisp, for example: (if t t f) evaluates to t. Only when I do (if nil t f) I get the (expected) error, that f has got no value. So, why is Clojure trying to resolve the symbol f ? What do I not understand ? In happens in clojure 1.3.0 as well as in a fresh build from the git repo. Thanks four your help. Heinz. -- 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