Re: Request Feedback on Clojure Blog Article

2009-03-20 Thread Joshua Fox
I like the sequential let too. For one thing, it allows for the breaking apart of complex expressions into more comprehensible parts, with well named intermediate variables resulting in self documenting code. About the 7-part *let* as shown in your example: Could we get some opinions about

Re: Request Feedback on Clojure Blog Article

2009-03-20 Thread Konrad Hinsen
On Mar 20, 2009, at 14:35, Joshua Fox wrote: I thought of let as a sort of variable declaration, and so, one would want to keep it simple and not do complex calculations in the let binding expressions. On the other hand, the sequential mutually-dependent let bindings are of course

Re: Request Feedback on Clojure Blog Article

2009-03-19 Thread Joshua Fox
Great article! Although I’ve done only a little Ruby metaprogramming, my sense is that Clojure’s macros make it more powerful than Ruby in this respect It would be good to see a comparison of metaprogramming with macros. They sometimes are used for similar purposes, but of course are not the same

Re: Request Feedback on Clojure Blog Article

2009-03-19 Thread Stuart Sierra
On Mar 19, 8:22 am, Rich Hickey richhic...@gmail.com wrote: So far it seems like sequential let has proven a useful default, and   I'd rather have one let than two. Agreed - sequential let is a better default. -Stuart Sierra --~--~-~--~~~---~--~~ You received

Re: Request Feedback on Clojure Blog Article

2009-03-19 Thread Joshua Fox
On Wed, Mar 18, 2009 at 10:40 PM, Stephen C. Gilardi squee...@mac.com wrote: Because parallel bindings are also useful Could you explain? I don't understand the justification for let in Lisp, when let* seems so much more useful. Joshua

Re: Request Feedback on Clojure Blog Article

2009-03-19 Thread Stephen C. Gilardi
On Mar 19, 2009, at 4:42 PM, Joshua Fox wrote: Because parallel bindings are also useful Could you explain? I don't understand the justification for let in Lisp, when let* seems so much more useful. As I mentioned, I like how Clojure's let works. I'm also fully on board with Rich's

Re: Request Feedback on Clojure Blog Article

2009-03-19 Thread Keith Bennett
Tim - If you're running Windows or Linux/Unix (anything other than Mac OS X), then I think the ctrl-x key binding for the shortcut will be overridden by the text field's ctrl-x key binding, which is to the 'cut to clipboard' action. Try selecting some text and pressing ctrl- x to see. Keyboard

Re: Request Feedback on Clojure Blog Article

2009-03-19 Thread Keith Bennett
I like the sequential let too. For one thing, it allows for the breaking apart of complex expressions into more comprehensible parts, with well named intermediate variables resulting in self documenting code. For another, if a calculated value is used more than once, then using an intermediate

Re: Request Feedback on Clojure Blog Article

2009-03-18 Thread e
just started reading it and already have some new perspectives. Like, I didn't really know that let variables could depend on each other. I would have expected that to be let*, but I just looked in the API, and I don't see a let*, which seems odd to me. What's that all about? Secondly, also

Re: Request Feedback on Clojure Blog Article

2009-03-18 Thread e
i agree with the comment there that your article is a nice, gentle introduction that makes me go, cool, now pick another clojure topic. I'm ready to read it -- maybe concureny? On Thu, Mar 19, 2009 at 12:28 AM, e evier...@gmail.com wrote: just started reading it and already have some new

Re: Request Feedback on Clojure Blog Article

2009-03-18 Thread Stephen C. Gilardi
On Mar 19, 2009, at 12:28 AM, e wrote: just started reading it and already have some new perspectives. Like, I didn't really know that let variables could depend on each other. I would have expected that to be let*, but I just looked in the API, and I don't see a let*, which seems odd

Re: Request Feedback on Clojure Blog Article

2009-03-18 Thread Mark Engelberg
On Wed, Mar 18, 2009 at 10:40 PM, Stephen C. Gilardi squee...@mac.com wrote: Because parallel bindings are also useful, I think it's an interesting idea to extend let to allow it to take parallel bindings in a map instead of a vector. These would act like Common Lisp's let:        (def a 4)

Re: Request Feedback on Clojure Blog Article

2009-03-17 Thread Timothy Pratley
Quite right, thanks for the explanation! On Mar 17, 3:50 pm, Mark Engelberg mark.engelb...@gmail.com wrote: On Mon, Mar 16, 2009 at 9:44 PM, Timothy Pratley timothyprat...@gmail.com wrote: Hi Keith, I don't follow the 'lazy-init' part... It seems to me that you create a delay but

Re: Request Feedback on Clojure Blog Article

2009-03-17 Thread Timothy Pratley
I have another question! I've found your article very interesting. I really like how you have buttons and keybindings to the same AbstractAction. However when I run your app if I press ctrl-x while in a textbox nothing happens... If I'm not in a textbox it exits. I believe this is because the

Re: Request Feedback on Clojure Blog Article

2009-03-17 Thread Timothy Pratley
I found one way to make 'global hotkeys' (its a bit verbose though): http://groups.google.com/group/clojure/web/global-hotkey.clj adapted from http://www.javaspecialists.eu/archive/Issue007.html Just mentioning it for interest seeing key controls in swing has been driving me nuts :P Regards,

Request Feedback on Clojure Blog Article

2009-03-16 Thread Keith Bennett
All - I am a relative newcomer to Clojure, but have been really enjoying learning and using it. I've published an article on my blog at http://snipurl.com/dyxz7. It's about some of my impressions of Clojure based on my studies and porting of a Swing app to Clojure (a previous article discussed

Re: Request Feedback on Clojure Blog Article

2009-03-16 Thread Timothy Pratley
Hi Keith, I don't follow the 'lazy-init' part... It seems to me that you create a delay but force it immediately which is effectively just running create-a-text-field. That behavior seems different from the factory style return if exists or create you originally started with. I don't see the

Re: Request Feedback on Clojure Blog Article

2009-03-16 Thread Mark Engelberg
On Mon, Mar 16, 2009 at 9:44 PM, Timothy Pratley timothyprat...@gmail.com wrote: Hi Keith, I don't follow the 'lazy-init' part... It seems to me that you create a delay but force it immediately which is effectively just running create-a-text-field. That behavior seems different from the