Clojure 1.5.0 fails on sample project
Hi, I created a sample project by doing $ lein new temp And I switched the version of clojure from 1.5.1 to 1.5.0. :dependencies [[org.clojure/clojure 1.5.0]] The project fails to load. No other changes. More info: $ lein version Leiningen 2.1.1 on Java 1.6.0_43 Java HotSpot(TM) 64-Bit Server VM OS: OSX 10.8.2 Note: Sample app works on 1.4.0 but fails on 1.5.1 as well with same error output. Error output: $ lein swank Listening for transport dt_socket at address: 52101 Exception in thread main java.lang.IllegalArgumentException: No matching ctor found for class clojure.lang.Compiler$CompilerException, compiling:(swank/commands/basic.clj:182:24) at clojure.lang.Compiler.analyzeSeq(Compiler.java:6567) at clojure.lang.Compiler.analyze(Compiler.java:6361) at clojure.lang.Compiler.analyzeSeq(Compiler.java:6548) at clojure.lang.Compiler.analyze(Compiler.java:6361) at clojure.lang.Compiler.analyze(Compiler.java:6322) at clojure.lang.Compiler$ThrowExpr$Parser.parse(Compiler.java:2304) at clojure.lang.Compiler.analyzeSeq(Compiler.java:6560) at clojure.lang.Compiler.analyze(Compiler.java:6361) at clojure.lang.Compiler.analyze(Compiler.java:6322) at clojure.lang.Compiler$BodyExpr$Parser.parse(Compiler.java:5708) at clojure.lang.Compiler.analyzeSeq(Compiler.java:6560) at clojure.lang.Compiler.analyze(Compiler.java:6361) at clojure.lang.Compiler.analyze(Compiler.java:6322) at clojure.lang.Compiler$IfExpr$Parser.parse(Compiler.java:2677) at clojure.lang.Compiler.analyzeSeq(Compiler.java:6560) at clojure.lang.Compiler.analyze(Compiler.java:6361) at clojure.lang.Compiler.analyzeSeq(Compiler.java:6548) at clojure.lang.Compiler.analyze(Compiler.java:6361) at clojure.lang.Compiler.analyze(Compiler.java:6322) at clojure.lang.Compiler$BodyExpr$Parser.parse(Compiler.java:5708) at clojure.lang.Compiler$TryExpr$Parser.parse(Compiler.java:2156) at clojure.lang.Compiler.analyzeSeq(Compiler.java:6560) at clojure.lang.Compiler.analyze(Compiler.java:6361) at clojure.lang.Compiler.analyze(Compiler.java:6322) at clojure.lang.Compiler$BodyExpr$Parser.parse(Compiler.java:5708) at clojure.lang.Compiler$FnMethod.parse(Compiler.java:5139) at clojure.lang.Compiler$FnExpr.parse(Compiler.java:3751) at clojure.lang.Compiler.analyzeSeq(Compiler.java:6558) at clojure.lang.Compiler.analyze(Compiler.java:6361) at clojure.lang.Compiler.analyze(Compiler.java:6322) at clojure.lang.Compiler$InvokeExpr.parse(Compiler.java:3573) at clojure.lang.Compiler.analyzeSeq(Compiler.java:6562) at clojure.lang.Compiler.analyze(Compiler.java:6361) at clojure.lang.Compiler.analyze(Compiler.java:6322) at clojure.lang.Compiler$TryExpr$Parser.parse(Compiler.java:2127) at clojure.lang.Compiler.analyzeSeq(Compiler.java:6560) at clojure.lang.Compiler.analyze(Compiler.java:6361) at clojure.lang.Compiler.analyze(Compiler.java:6322) at clojure.lang.Compiler$BodyExpr$Parser.parse(Compiler.java:5708) at clojure.lang.Compiler$LetExpr$Parser.parse(Compiler.java:6009) at clojure.lang.Compiler.analyzeSeq(Compiler.java:6560) at clojure.lang.Compiler.analyze(Compiler.java:6361) at clojure.lang.Compiler.analyzeSeq(Compiler.java:6548) at clojure.lang.Compiler.analyze(Compiler.java:6361) at clojure.lang.Compiler.analyzeSeq(Compiler.java:6548) at clojure.lang.Compiler.analyze(Compiler.java:6361) at clojure.lang.Compiler.analyzeSeq(Compiler.java:6548) at clojure.lang.Compiler.analyze(Compiler.java:6361) at clojure.lang.Compiler.access$100(Compiler.java:37) at clojure.lang.Compiler$LetExpr$Parser.parse(Compiler.java:5973) at clojure.lang.Compiler.analyzeSeq(Compiler.java:6560) at clojure.lang.Compiler.analyze(Compiler.java:6361) at clojure.lang.Compiler.analyzeSeq(Compiler.java:6548) at clojure.lang.Compiler.analyze(Compiler.java:6361) at clojure.lang.Compiler.analyze(Compiler.java:6322) at clojure.lang.Compiler$BodyExpr$Parser.parse(Compiler.java:5708) at clojure.lang.Compiler$FnMethod.parse(Compiler.java:5139) at clojure.lang.Compiler$FnExpr.parse(Compiler.java:3751) at clojure.lang.Compiler.analyzeSeq(Compiler.java:6558) at clojure.lang.Compiler.analyze(Compiler.java:6361) at clojure.lang.Compiler.analyzeSeq(Compiler.java:6548) at clojure.lang.Compiler.analyze(Compiler.java:6361) at clojure.lang.Compiler.access$100(Compiler.java:37) at clojure.lang.Compiler$DefExpr$Parser.parse(Compiler.java:529) at clojure.lang.Compiler.analyzeSeq(Compiler.java:6560) at clojure.lang.Compiler.analyze(Compiler.java:6361) at clojure.lang.Compiler.analyzeSeq(Compiler.java:6548) at clojure.lang.Compiler.analyze(Compiler.java:6361) at clojure.lang.Compiler.analyze(Compiler.java:6322) at clojure.lang.Compiler$InvokeExpr.parse(Compiler.java:3624) at clojure.lang.Compiler.analyzeSeq(Compiler.java:6562) at clojure.lang.Compiler.analyze(Compiler.java:6361) at
Re: Clojure/West 2013 videos?
On Sat, Mar 23, 2013 at 2:48 PM, Alex Miller a...@puredanger.com wrote: The benefit to attendees and non-attendees is that the videos exist at all - without the InfoQ deal, the cost of recording, editing, and hosting videos is literally the difference between whether the conference is in the red or black. For attendees, I do really wish that I could provide talks sooner just to you and I continue to discuss options for that with InfoQ. Just a thought, but I know a few conferences where the videos are available for sale after the conference (Strataconf?). I know I'd be happy to pay $50-100 for the timely videos instead of waiting 3-12 months after the conference when I can't attend. -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: Clojure 1.5.0 fails on sample project
2013/3/23 Mayank Jain firesof...@gmail.com Note: Sample app works on 1.4.0 but fails on 1.5.1 as well with same error output. lein-swank is no longer maintained and hasn't been updated for 1.5. Please switch to nrepl.el, you will like it. -- MK http://github.com/michaelklishin http://twitter.com/michaelklishin -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: LoL which style for Clojure
What if there's some computation in there, but such that should be performed at compile time? I still prefer the outside let whenever I want to make dead sure it's not getting reallocated on each call. If there was some well-specified and easily understood guarantee (for example, like the one Java has for compile-time constants), only then I would prefer the inner let. On Friday, March 22, 2013 8:05:10 PM UTC+1, Laurent PETIT wrote: 2013/3/22 jamieorc jami...@gmail.com javascript: Curious which style is preferred in Clojure and why: (defn f1 [] (let [x {:foo 1 :bar 2 :baz 3}] (keys x))) (let [x {:foo 1 :bar 2 :baz 3}] (defn f2 [] (keys x))) In either case, AFAIK, the compiler will recognize {:foo 1 :bar 2 :baz 3} as constant and will only create it once when compiling. First version is preferred. Cheers, Jamie -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clo...@googlegroups.comjavascript: Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+u...@googlegroups.com javascript: 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+u...@googlegroups.com javascript:. For more options, visit https://groups.google.com/groups/opt_out. -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: Macro for bailout-style programming
I've recently had a need for something like that in my own code. The real solution to that problem in the functional programming world is known as the maybe monad. Since I just needed a quick and dirty solution and I have not wrapped my head around monads yet, here's what I did : (defmacro maybe- Sort of like a maybe monad, but without a monad. Takes an initial value and a list of functions with their arguments, and returns the result of applying each function to the result of the preceding one as long as there is no nil value. Returns nil if there ever is a nil in the chain of values. [init fns] (reduce (fn [acc [op args]] `(if-not (nil? ~acc) (~op ~acc ~@args))) init fns)) I did not have a need for as--like functionality. On 23 March 2013 05:54, Mikera mike.r.anderson...@gmail.com wrote: You can get quite a long way with just if-let and and or to express the bailout logic. Examples I find myself using all the time: ;; fallback / default values (or (maybe-make-value) (make-fallback-value) (error this shouldn't happen!)) ;; bailout with nil return (assumes you are running operations for side effects, and nil return means failure) (and (operation1) (operation2) (operation3) :success) ;; let a value, with potential defaults (if-let [value (or passed-value (try-to-find-default-value))] ) Apart from that, I found myself writing a few macros to allow early bailouts from computations. My favourite currently is the and-as- macro, which works like this: (and-as- (some-initial-value-expression) symbol (do-something-with symbol) (some-thing-else symbol) (reduce some-fn symbol some-seq)) At each step, symbol is rebound to the result of the expression (like as-) unless the result is nil, in which case the whole expression bails out and returns nil. So it is like a cross between and as as-. On Saturday, 23 March 2013 11:19:28 UTC+8, Russell Mull wrote: Hi Clojurians, I'm relatively new to the language and am trying to get used to its idioms. One thing I'm accustomed to doing in things like java and C# is checking values for validity and then bailing out early if they don't make sense. For example, without this idiom in java you might do: Object doSomething() { Integer a = someComputation(); if(a != null) { Integer b = anotherComputation(a, 42); if(b != null b.intValue() = 0) { return a / b; } else { return null; } } else { return null; } } ... which is really only desirable if you believe in the one exit point school of imperative programming. It is of course much better to do this: Object doSomething() { Integer a = someComputation(); if(a == null) { return null; } Integer b = anotherComputation(a, 42); if(b == null || b.intValue == 0) { return null; } return a / b; } ... which is much more literate. In Clojure, I have to write what is effectively the first form: (let [a (some-computation)] (if (nil? a) nil (let [b (another-computation a 42)] (if (or (nil? b) (= b 0)) nil (/ a b) While more concise, it suffers the same readability problems as the first java version. I can easily imagine a macro to support this idiom: (let-check [a (some-computation) :check (nil? a) nil b (another-computation a 42) :check (or (nil? b) ( b 0)) nil] (/ a b)) Which leads me to my question: does such a construct already exist? Or perhaps am I doing it wrong? I've googled around for this, but I'm not exactly sure what it's called. Cheers, Russell -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out. -- -- 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 unsubscribe from this group and stop
Call for Papers: Commercial Users of Functional Programming
COMMERCIAL USERS OF FUNCTIONAL PROGRAMMING 2013 CUFP 2013 http://cufp.org/conference CALL FOR PRESENTATIONS Boston, MA, United States Sep 22-24 Talk Proposal Submission Deadline 29 June 2013 Co-located with ICFP 2013 Sponsored by SIGPLAN The annual CUFP workshop is a place where people can see how others are using functional programming to solve real world problems; where practitioners meet and collaborate; where language designers and users can share ideas about the future of their favorite language; and where one can learn practical techniques and approaches for putting functional programming to work. Giving a CUFP Talk == If you have experience using functional languages in a practical setting, we invite you to submit a proposal to give a talk at the workshop. We are looking for both experience reports and in-depth technical talks. Experience reports are typically 25 minutes long (but negotiable), and aim to inform participants about how functional programming plays out in real-world applications, focusing especially on lessons learned and insights gained. Experience reports don't need to be highly technical; reflections on the commercial, management, or software engineering aspects are, if anything, more important. Technical talks are also 25 minutes long (also negotiable), and should focus on teaching the audience something about a particular technique or methodology, from the point of view of someone who has seen it play out in practice. These talks could cover anything from techniques for building functional concurrent applications, to managing dynamic reconfigurations, to design recipes for using types effectively in large-scale applications. While these talks will often be based on a particular language, they should be accessible to a broad range of programmers. If you are interested in offering a talk, or nominating someone to do so, fill out the following form: https://www.surveymonkey.com/s/TGNXYLL There will be a short scribes report of the presentations and discussions but not of the details of individual talks, as the meeting is intended to be more a discussion forum than a technical interchange. You do not need to submit a paper, just a proposal for your talk! Note that we will need all presenters to register for the CUFP workshop and travel to Boston at their own expense. Program Committee = Marius Eriksen (Twitter, Inc.), co-chair Mike Sperber (Active Group), co-chair Mary Sheeran (Chalmers) Andres Löh (Well-Typed) Thomas Gazagnaire (OCamlPro) Steve Vinoski (Basho) Jorge Ortiz (Foursquare, Inc.) Blake Matheny (Tumblr, Inc.) Simon Marlow (Facebook, Inc.) More information For more information on CUFP, including videos of presentations from previous years, take a look at the CUFP website at http://cufp.org. Note that presenters, like other attendees, will need to register for the event. Presentations will be video taped and presenters will be expected to sign an ACM copyright release form. Acceptance and rejection letters will be sent out by July 16th. Guidance on giving a great CUFP talk Focus on the interesting bits: Think about what will distinguish your talk, and what will engage the audience, and focus there. There are a number of places to look for those interesting bits. Setting: FP is pretty well established in some areas, including formal verification, financial processing and server-side web-services. An unusual setting can be a source of interest. If you're deploying FP-based mobile UIs or building servers on oil rigs, then the challenges of that scenario are worth focusing on. Did FP help or hinder in adapting to the setting? Technology: The CUFP audience is hungry to learn about how FP techniques work in practice. What design patterns have you applied, and to what areas? Did you use functional reactive programming for user interfaces, or DSLs for playing chess, or fault-tolerant actors for large scale geological data processing? Teach us something about the techniques you used, and why we should consider using them ourselves. Getting things done: How did you deal with large software development in the absence of a myriad of pre-existing support that are often expected in larger commercial environments (IDEs, coverage tools, debuggers, profilers) and without larger, proven bodies of libraries? Did you hit any brick walls that required support from the community? Don't just be a cheerleader: It's easy to write a rah-rah talk about how well FP worked for you, but CUFP is more interesting when the talks also spend time on what doesn't work. Even when
Re: LoL which style for Clojure
Just out of curiosity, does it have to be a function? (def data {:foo 1 :bar 2 :baz 3}) (def data-keys (keys data)) If one item is constant the other probably is too? Cheers, /thomas On Friday, March 22, 2013 7:59:43 PM UTC+1, jamieorc wrote: Curious which style is preferred in Clojure and why: (defn f1 [] (let [x {:foo 1 :bar 2 :baz 3}] (keys x))) (let [x {:foo 1 :bar 2 :baz 3}] (defn f2 [] (keys x))) Cheers, Jamie -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: Clojure/West 2013 videos?
On Mar 21, 1:29 pm, Ben Mabey b...@benmabey.com wrote: On 3/21/13 10:08 AM, John Gabriele wrote: Are there any videos available of the talks recently given at Clojure/West? Is there a central location where these will most likely be found at some point? Alex can confirm this but my guess is that they will be released on infoq slowly over time. This is how Strangeloop and the first That's unfortunate ClojureWest conference was done. I wish infoq would publish all of them at once but I understand why they want to let them trickle out (so they always have fresh content). They tend to release the keynotes first. -Ben -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: Macro for bailout-style programming
Your maybe- does almost the same thing as Clojure 1.5's some- but without support for naked fns (like `(some- 1 inc)`). It also evaluates each step but the last twice (once for the `if`, once when inserted after `op`). If you don't want to switch to some-, I'd recommend you use when-let to avoid the double evaluation. On Mar 23, 2013 4:12 AM, Gary Verhaegen gary.verhae...@gmail.com wrote: I've recently had a need for something like that in my own code. The real solution to that problem in the functional programming world is known as the maybe monad. Since I just needed a quick and dirty solution and I have not wrapped my head around monads yet, here's what I did : (defmacro maybe- Sort of like a maybe monad, but without a monad. Takes an initial value and a list of functions with their arguments, and returns the result of applying each function to the result of the preceding one as long as there is no nil value. Returns nil if there ever is a nil in the chain of values. [init fns] (reduce (fn [acc [op args]] `(if-not (nil? ~acc) (~op ~acc ~@args))) init fns)) I did not have a need for as--like functionality. -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
let-timed macro...any suggestions/corrections?
Can anyone see anything wrong with this little macro? It comes pretty handy to me when I want to time each an every expression in a let statement... (defmacro let-timed [bindings code] (let [parts(partition 2 bindings) names (map first parts) results (map #(list 'time (second %)) parts)] ;;don't time at compile-time, just build the timing expression for later use `(let ~(vec (interleave names results)) ;;the new bindings ~@code))) Jim -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Coding while running the program
Hi! I saw this video http://www.youtube.com/watch?v=BES9EKK4Aw4 of Notch coding on Minecraft while the game was running, and of course seeing the changes in the running program. He used some kind of debug mode in his IDE (I don't really know which IDE). I want to make a game, and I want to to also be able to code while the program is running. I know this sort of thing is common in Lisps, so even without that IDE's debug mode it should be possible. Is there anything in particular that I need to do or look out for in order to make it work? Are there some JVM settings I should use? Does anyone know how that debug mode works? I kind of understand how it can be done with a plain repl, but I don't wanna miss out on anything that would make it easier. Any kind of insight is very appreciated. -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: Coding while running the program
If you want to make a game, then make a game. Don't worry about looking cool about it. You don't need to have some feature to make something entertaining :) . I'm making a game with a tool called GameMaker. Not as full-featured or powerful as with a programming language? Sure, but then I want to first have a game under my belt, then I'll worry about looking cool in the process :) . On Sat, Mar 23, 2013 at 10:22 AM, Oskar Kvist oskar.kv...@gmail.com wrote: Hi! I saw this video http://www.youtube.com/watch?v=BES9EKK4Aw4 of Notch coding on Minecraft while the game was running, and of course seeing the changes in the running program. He used some kind of debug mode in his IDE (I don't really know which IDE). I want to make a game, and I want to to also be able to code while the program is running. I know this sort of thing is common in Lisps, so even without that IDE's debug mode it should be possible. Is there anything in particular that I need to do or look out for in order to make it work? Are there some JVM settings I should use? Does anyone know how that debug mode works? I kind of understand how it can be done with a plain repl, but I don't wanna miss out on anything that would make it easier. Any kind of insight is very appreciated. -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out. -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: Coding while running the program
On Saturday, March 23, 2013 7:22:14 AM UTC-7, Oskar Kvist wrote: Hi! I saw this video http://www.youtube.com/watch?v=BES9EKK4Aw4 of Notch coding on Minecraft while the game was running, and of course seeing the changes in the running program. He used some kind of debug mode in his IDE (I don't really know which IDE). I want to make a game, and I want to to also be able to code while the program is running. I think Notch uses Eclipse, which allows you to hot load (reload) code on the fly (and I believe tweak state in the debugger but I haven't done that). Funny you should post this, I just watched a video yesterday that you might like to see, http://vimeo.com/14709925 He's using Emacs in that video. Eclipse has the Counterclockwise plugin for Clojure if you prefer. I definitely would recommend using something like those over a plain REPL. See also this SO answer, http://stackoverflow.com/a/5119355/216798 . You shouldn't have to mess with JVM settings but there are a few things to keep in mind doing interactive development. However it's probably best to get started with the links above and then come back here with specific questions. -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: Coding while running the program
Nice. Thanks for sharing. On Sat, Mar 23, 2013 at 9:15 PM, George Oliver georgeolive...@gmail.comwrote: On Saturday, March 23, 2013 7:22:14 AM UTC-7, Oskar Kvist wrote: Hi! I saw this video http://www.youtube.com/**watch?v=BES9EKK4Aw4http://www.youtube.com/watch?v=BES9EKK4Aw4of Notch coding on Minecraft while the game was running, and of course seeing the changes in the running program. He used some kind of debug mode in his IDE (I don't really know which IDE). I want to make a game, and I want to to also be able to code while the program is running. I think Notch uses Eclipse, which allows you to hot load (reload) code on the fly (and I believe tweak state in the debugger but I haven't done that). Funny you should post this, I just watched a video yesterday that you might like to see, http://vimeo.com/14709925 He's using Emacs in that video. Eclipse has the Counterclockwise plugin for Clojure if you prefer. I definitely would recommend using something like those over a plain REPL. See also this SO answer, http://stackoverflow.com/a/5119355/216798 . You shouldn't have to mess with JVM settings but there are a few things to keep in mind doing interactive development. However it's probably best to get started with the links above and then come back here with specific questions. -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out. -- Regards, Mayank. -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: Coding while running the program
It's not about looking cool, it's about saving time. Den lördagen den 23:e mars 2013 kl. 16:03:19 UTC+1 skrev John Smith: If you want to make a game, then make a game. Don't worry about looking cool about it. You don't need to have some feature to make something entertaining :) . I'm making a game with a tool called GameMaker. Not as full-featured or powerful as with a programming language? Sure, but then I want to first have a game under my belt, then I'll worry about looking cool in the process :) . On Sat, Mar 23, 2013 at 10:22 AM, Oskar Kvist oskar...@gmail.comjavascript: wrote: Hi! I saw this video http://www.youtube.com/watch?v=BES9EKK4Aw4 of Notch coding on Minecraft while the game was running, and of course seeing the changes in the running program. He used some kind of debug mode in his IDE (I don't really know which IDE). I want to make a game, and I want to to also be able to code while the program is running. I know this sort of thing is common in Lisps, so even without that IDE's debug mode it should be possible. Is there anything in particular that I need to do or look out for in order to make it work? Are there some JVM settings I should use? Does anyone know how that debug mode works? I kind of understand how it can be done with a plain repl, but I don't wanna miss out on anything that would make it easier. Any kind of insight is very appreciated. -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clo...@googlegroups.comjavascript: Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+u...@googlegroups.com javascript: 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+u...@googlegroups.com javascript:. For more options, visit https://groups.google.com/groups/opt_out. -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: Native library not found after upgrade to leiningen 2.0
Thanks James, Karsten That works thanks! I then found that I needed to use mvn deploy:deploy-file to get the jar into my local repo instead of mvn install:install-file otherwise maven didn't create the necessary supporting files and I got a no supported algorithms found error when I ran lein deps cheers Dave On Friday, March 22, 2013 9:13:16 AM UTC, Karsten Schmidt wrote: You can see the actual path used by doing this in the repl: (System/getProperty java.library.path) I found it best to wrap native libs in a jar with this internal structure: /META-INF/MANIFEST.MF /native/linux/x86 /native/linux/x86_64 /native/macosx/x86 /native/macosx/x86_64 /native/windows/x86 /native/windows/x86_64 Then deploy the jar to your repo and refer to it as normal from project.clj, no need to set native path manually... On 22 March 2013 02:17, xumingmingv xumingmin...@gmail.com javascript: wrote: Have a look at this: http://nakkaya.com/2010/04/05/managing-native-dependencies-with-leiningen/ 在 2013-3-22,上午6:55,Dave Snowdon dave.s...@gmail.com javascript: 写道: I just upgraded from leiningen version 1.5.2 to 2.0.0 and noticed that the native library path no longer seems to be set correctly. Here is my project file: (defproject naojure 0.1.0-SNAPSHOT :description Clojure wrapper for Aldebaran Robotics java NAOQI binding. Depends on the Aldebaran jar file being installed in a local repo and the shared library being in the dynamic library load path :url https://github.com/davesnowdon/naojure; :repositories {local ~(str (.toURI (java.io.File. maven_repository)))} :native-path native :dependencies [[org.clojure/clojure 1.4.0] [com.aldebaran/jnaoqi 1.14.0]]) The native library is in a folder native at the top-level of the project and the corresponding jar in a local repo also contained within the leiningen project. If I run lein1 repl (I renamed the old leiningen script before upgrading) then I can create instances of native classes from the repl, If I run lein repl (leiningen 2.0.0) then I get the following error: CompilerException java.lang.UnsatisfiedLinkError: no jnaoqi in java.library.path, compiling:(NO_SOURCE_PATH:1) Here are the exact values reported by lein version (running on Linux - Fedora Core 14) Leiningen 1.5.2 on Java 1.6.0_20 OpenJDK 64-Bit Server VM Leiningen 2.0.0 on Java 1.6.0_20 OpenJDK 64-Bit Server VM I've looked online for issues related to leiningen and native path handling but the bugs I found all related to leiningen 1 and have been supposedly fixed. Can anyone suggest why the native library is not being located? thanks Dave -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clo...@googlegroups.comjavascript: Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+u...@googlegroups.com javascript: 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+u...@googlegroups.com javascript:. For more options, visit https://groups.google.com/groups/opt_out. -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clo...@googlegroups.comjavascript: Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+u...@googlegroups.com javascript: 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+u...@googlegroups.com javascript:. For more options, visit https://groups.google.com/groups/opt_out. -- Karsten Schmidt http://postspectacular.com | http://toxiclibs.org | http://toxi.co.uk -- -- 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 unsubscribe from this group and stop receiving
Re: Coding while running the program
I have no idea what the guy uses, neither am I a big fan of Eclipse as a tool for anything, but the one tool I do use on a daily basis is JRebel. It is basically a very smart classloader that observes the filesystem for newly compiled classes / copied resources (that happens on save in Eclipse, for example) and replaces them. This works orders of magnitude better than hot swap. Note: I am in no way associated with zeroturnaround (makers of jrebel), I am just a very satisfied user. On Sat, Mar 23, 2013 at 5:20 PM, Oskar Kvist oskar.kv...@gmail.com wrote: It's not about looking cool, it's about saving time. Den lördagen den 23:e mars 2013 kl. 16:03:19 UTC+1 skrev John Smith: If you want to make a game, then make a game. Don't worry about looking cool about it. You don't need to have some feature to make something entertaining :) . I'm making a game with a tool called GameMaker. Not as full-featured or powerful as with a programming language? Sure, but then I want to first have a game under my belt, then I'll worry about looking cool in the process :) . On Sat, Mar 23, 2013 at 10:22 AM, Oskar Kvist oskar...@gmail.com wrote: Hi! I saw this video http://www.youtube.com/**watch?v=BES9EKK4Aw4http://www.youtube.com/watch?v=BES9EKK4Aw4of Notch coding on Minecraft while the game was running, and of course seeing the changes in the running program. He used some kind of debug mode in his IDE (I don't really know which IDE). I want to make a game, and I want to to also be able to code while the program is running. I know this sort of thing is common in Lisps, so even without that IDE's debug mode it should be possible. Is there anything in particular that I need to do or look out for in order to make it work? Are there some JVM settings I should use? Does anyone know how that debug mode works? I kind of understand how it can be done with a plain repl, but I don't wanna miss out on anything that would make it easier. Any kind of insight is very appreciated. -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clo...@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+u...@**googlegroups.com For more options, visit this group at http://groups.google.com/**group/clojure?hl=enhttp://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups Clojure group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+u...@**googlegroups.com. For more options, visit https://groups.google.com/**groups/opt_outhttps://groups.google.com/groups/opt_out . -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out. -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: LoL which style for Clojure
On Sat, Mar 23, 2013 at 4:16 AM, Thomas Heller th.hel...@gmail.com wrote: Just out of curiosity, does it have to be a function? (def data {:foo 1 :bar 2 :baz 3}) (def data-keys (keys data)) If one item is constant the other probably is too? In this case, yes, but it's easy to imagine cases where neither is a constant. -- Ben Wolfson Human kind has used its intelligence to vary the flavour of drinks, which may be sweet, aromatic, fermented or spirit-based. ... Family and social life also offer numerous other occasions to consume drinks for pleasure. [Larousse, Drink entry] -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: Clojure 1.5.0 fails on sample project
Cool. Thanks. On Sat, Mar 23, 2013 at 12:26 PM, Michael Klishin michael.s.klis...@gmail.com wrote: 2013/3/23 Mayank Jain firesof...@gmail.com Note: Sample app works on 1.4.0 but fails on 1.5.1 as well with same error output. lein-swank is no longer maintained and hasn't been updated for 1.5. Please switch to nrepl.el, you will like it. -- MK http://github.com/michaelklishin http://twitter.com/michaelklishin -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out. -- Regards, Mayank. -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: Coding while running the program
Yes, but are you saving time with this? What types of games do you want to make? RTS? FPS? RPG? What's the platform that you're targeting? No offense, but I've seen a lot of people like this (me including :) ), who want to learn technology X for... wait for it... to make games or something else that's fun. Look, I'm not trying to be mean, but unless you have a specific goal in mind, then this new feature is a waste of time :) . On Sat, Mar 23, 2013 at 12:20 PM, Oskar Kvist oskar.kv...@gmail.com wrote: It's not about looking cool, it's about saving time. Den lördagen den 23:e mars 2013 kl. 16:03:19 UTC+1 skrev John Smith: If you want to make a game, then make a game. Don't worry about looking cool about it. You don't need to have some feature to make something entertaining :) . I'm making a game with a tool called GameMaker. Not as full-featured or powerful as with a programming language? Sure, but then I want to first have a game under my belt, then I'll worry about looking cool in the process :) . On Sat, Mar 23, 2013 at 10:22 AM, Oskar Kvist oskar...@gmail.com wrote: Hi! I saw this video http://www.youtube.com/**watch?v=BES9EKK4Aw4http://www.youtube.com/watch?v=BES9EKK4Aw4of Notch coding on Minecraft while the game was running, and of course seeing the changes in the running program. He used some kind of debug mode in his IDE (I don't really know which IDE). I want to make a game, and I want to to also be able to code while the program is running. I know this sort of thing is common in Lisps, so even without that IDE's debug mode it should be possible. Is there anything in particular that I need to do or look out for in order to make it work? Are there some JVM settings I should use? Does anyone know how that debug mode works? I kind of understand how it can be done with a plain repl, but I don't wanna miss out on anything that would make it easier. Any kind of insight is very appreciated. -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clo...@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+u...@**googlegroups.com For more options, visit this group at http://groups.google.com/**group/clojure?hl=enhttp://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups Clojure group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+u...@**googlegroups.com. For more options, visit https://groups.google.com/**groups/opt_outhttps://groups.google.com/groups/opt_out . -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out. -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: let-timed macro...any suggestions/corrections?
On Saturday, March 23, 2013 2:09:02 PM UTC+1, Jim foo.bar wrote: (defmacro let-timed [bindings code] I would write that as [bindings body] which is also recommended by http://dev.clojure.org/display/design/Library+Coding+Standards (let [parts(partition 2 bindings) names (map first parts) results (map #(list 'time (second %)) parts)] ;;don't time at compile-time, just build the timing expression for later use `(let ~(vec (interleave names results)) ;;the new bindings I would write that as `(let [~@(interleave names results)] ~@code))) I personally prefer to not give intermediate values a name when they are only used in one place because it makes it easier to see that these values are only used in one place, but your mileage may vary. (Suggestive names can help readability, but in the end you have to read and understand what they refer to anyway) -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: Coding while running the program
Also, I forgot to mention this, http://www.lighttable.com/ -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: Coding while running the program
I coded a large proportion of my 7 day Roguelike Alchemy ( https://github.com/mikera/alchemy ) while the game was running. Tools I used were Eclipse, Clojure and the Counterclockwise plugin. No special JVM settings required: Clojure is quite happy to reload and recompile code on demand on any JVM. The basic strategy was: - Launch a REPL - Run the game (I set up a convenience function(launch) that would run a fresh instance of the game in a new window whenever needed) - Test / play the game - Whenever necessary, write code to modify or query the running game at the REPL and run this live - If I needed to reload any code from the editor into the running game, press CTRL-ALT-L (useful whenever I coded a new feature in the regular editor and wanted to test it out) On Saturday, 23 March 2013 22:22:14 UTC+8, Oskar Kvist wrote: Hi! I saw this video http://www.youtube.com/watch?v=BES9EKK4Aw4 of Notch coding on Minecraft while the game was running, and of course seeing the changes in the running program. He used some kind of debug mode in his IDE (I don't really know which IDE). I want to make a game, and I want to to also be able to code while the program is running. I know this sort of thing is common in Lisps, so even without that IDE's debug mode it should be possible. Is there anything in particular that I need to do or look out for in order to make it work? Are there some JVM settings I should use? Does anyone know how that debug mode works? I kind of understand how it can be done with a plain repl, but I don't wanna miss out on anything that would make it easier. Any kind of insight is very appreciated. -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: Coding while running the program
John: I don't really understand why you say it's a waste of time. Speeding up the feedback cycle seems great to me. Thanks to everyone who has contributed to this thread so far! On Saturday, March 23, 2013 7:48:28 PM UTC+1, John Smith wrote: Yes, but are you saving time with this? What types of games do you want to make? RTS? FPS? RPG? What's the platform that you're targeting? No offense, but I've seen a lot of people like this (me including :) ), who want to learn technology X for... wait for it... to make games or something else that's fun. Look, I'm not trying to be mean, but unless you have a specific goal in mind, then this new feature is a waste of time :) . On Sat, Mar 23, 2013 at 12:20 PM, Oskar Kvist oskar...@gmail.comjavascript: wrote: It's not about looking cool, it's about saving time. Den lördagen den 23:e mars 2013 kl. 16:03:19 UTC+1 skrev John Smith: If you want to make a game, then make a game. Don't worry about looking cool about it. You don't need to have some feature to make something entertaining :) . I'm making a game with a tool called GameMaker. Not as full-featured or powerful as with a programming language? Sure, but then I want to first have a game under my belt, then I'll worry about looking cool in the process :) . On Sat, Mar 23, 2013 at 10:22 AM, Oskar Kvist oskar...@gmail.comwrote: Hi! I saw this video http://www.youtube.com/**watch?v=BES9EKK4Aw4http://www.youtube.com/watch?v=BES9EKK4Aw4of Notch coding on Minecraft while the game was running, and of course seeing the changes in the running program. He used some kind of debug mode in his IDE (I don't really know which IDE). I want to make a game, and I want to to also be able to code while the program is running. I know this sort of thing is common in Lisps, so even without that IDE's debug mode it should be possible. Is there anything in particular that I need to do or look out for in order to make it work? Are there some JVM settings I should use? Does anyone know how that debug mode works? I kind of understand how it can be done with a plain repl, but I don't wanna miss out on anything that would make it easier. Any kind of insight is very appreciated. -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clo...@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+u...@**googlegroups.com For more options, visit this group at http://groups.google.com/**group/clojure?hl=enhttp://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups Clojure group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+u...@**googlegroups.com. For more options, visit https://groups.google.com/**groups/opt_outhttps://groups.google.com/groups/opt_out . -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clo...@googlegroups.comjavascript: Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+u...@googlegroups.com javascript: 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+u...@googlegroups.com javascript:. For more options, visit https://groups.google.com/groups/opt_out. -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
In Emacs Org mode, how to round-trip Clojure code edits?
I've got clojure-mode and nrepl installed, but I skipped Slime. From the org-mode sample page, http://orgmode.org/manual/Literal-examples.html, I copied #+BEGIN_SRC emacs-lisp (defun org-xor (a b) Exclusive or. (if a (not b) b)) #+END_SRC where you type C-c ' (is that org-edit-src-code?) to open a temporary, emacs-lisp buffer for civilized editing of the code snippet, and when you're done you type the same keys again to store the edited code back into the org-mode buffer. It works great. If I change emacs-lisp to clojure, it opens a pleasant Clojure-mode buffer, but the second key sequence does not pop the edited code back into the org buffer. Instead, it elicits the message C-c ' is undefined. This is Emacs 24.2.1, which includes org 7.8.11, to which I added clojure-mode 2.0.0. ? -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: Coding while running the program
What you're seeing is a feature of game Engines that have a scripting engine. With this type of architecture you can separate the game content from the game engine itself. This allows you to change the game without recompiling the entire engine unnecessarily. On Mar 23, 2013, at 5:06 PM, Oskar Kvist oskar.kv...@gmail.com wrote: John: I don't really understand why you say it's a waste of time. Speeding up the feedback cycle seems great to me. Thanks to everyone who has contributed to this thread so far! On Saturday, March 23, 2013 7:48:28 PM UTC+1, John Smith wrote: Yes, but are you saving time with this? What types of games do you want to make? RTS? FPS? RPG? What's the platform that you're targeting? No offense, but I've seen a lot of people like this (me including :) ), who want to learn technology X for... wait for it... to make games or something else that's fun. Look, I'm not trying to be mean, but unless you have a specific goal in mind, then this new feature is a waste of time :) . On Sat, Mar 23, 2013 at 12:20 PM, Oskar Kvist oskar...@gmail.com wrote: It's not about looking cool, it's about saving time. Den lördagen den 23:e mars 2013 kl. 16:03:19 UTC+1 skrev John Smith: If you want to make a game, then make a game. Don't worry about looking cool about it. You don't need to have some feature to make something entertaining :) . I'm making a game with a tool called GameMaker. Not as full-featured or powerful as with a programming language? Sure, but then I want to first have a game under my belt, then I'll worry about looking cool in the process :) . On Sat, Mar 23, 2013 at 10:22 AM, Oskar Kvist oskar...@gmail.com wrote: Hi! I saw this video http://www.youtube.com/watch?v=BES9EKK4Aw4 of Notch coding on Minecraft while the game was running, and of course seeing the changes in the running program. He used some kind of debug mode in his IDE (I don't really know which IDE). I want to make a game, and I want to to also be able to code while the program is running. I know this sort of thing is common in Lisps, so even without that IDE's debug mode it should be possible. Is there anything in particular that I need to do or look out for in order to make it work? Are there some JVM settings I should use? Does anyone know how that debug mode works? I kind of understand how it can be done with a plain repl, but I don't wanna miss out on anything that would make it easier. Any kind of insight is very appreciated. -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clo...@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+u...@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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+u...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out. -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clo...@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+u...@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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+u...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out. -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out. -- -- 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
Re: Coding while running the program
The only thing that I've seen do what you describe successfully is Erlang (it's called hot-swapping the code and no, it's not easy to implement :) , a worthy project nontheless)... and as Adrian Tillman suggests, it's most likely Notch isn't working on the gaming engine directly, but rather on a subset of the software. On Sat, Mar 23, 2013 at 5:06 PM, Oskar Kvist oskar.kv...@gmail.com wrote: John: I don't really understand why you say it's a waste of time. Speeding up the feedback cycle seems great to me. Thanks to everyone who has contributed to this thread so far! On Saturday, March 23, 2013 7:48:28 PM UTC+1, John Smith wrote: Yes, but are you saving time with this? What types of games do you want to make? RTS? FPS? RPG? What's the platform that you're targeting? No offense, but I've seen a lot of people like this (me including :) ), who want to learn technology X for... wait for it... to make games or something else that's fun. Look, I'm not trying to be mean, but unless you have a specific goal in mind, then this new feature is a waste of time :) . On Sat, Mar 23, 2013 at 12:20 PM, Oskar Kvist oskar...@gmail.com wrote: It's not about looking cool, it's about saving time. Den lördagen den 23:e mars 2013 kl. 16:03:19 UTC+1 skrev John Smith: If you want to make a game, then make a game. Don't worry about looking cool about it. You don't need to have some feature to make something entertaining :) . I'm making a game with a tool called GameMaker. Not as full-featured or powerful as with a programming language? Sure, but then I want to first have a game under my belt, then I'll worry about looking cool in the process :) . On Sat, Mar 23, 2013 at 10:22 AM, Oskar Kvist oskar...@gmail.comwrote: Hi! I saw this video http://www.youtube.com/**w**atch?v=BES9EKK4Aw4http://www.youtube.com/watch?v=BES9EKK4Aw4of Notch coding on Minecraft while the game was running, and of course seeing the changes in the running program. He used some kind of debug mode in his IDE (I don't really know which IDE). I want to make a game, and I want to to also be able to code while the program is running. I know this sort of thing is common in Lisps, so even without that IDE's debug mode it should be possible. Is there anything in particular that I need to do or look out for in order to make it work? Are there some JVM settings I should use? Does anyone know how that debug mode works? I kind of understand how it can be done with a plain repl, but I don't wanna miss out on anything that would make it easier. Any kind of insight is very appreciated. -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clo...@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+u...@**googlegroups.com For more options, visit this group at http://groups.google.com/**group**/clojure?hl=enhttp://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups Clojure group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+u...@**googlegroups.com. For more options, visit https://groups.google.com/**grou**ps/opt_outhttps://groups.google.com/groups/opt_out . -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clo...@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+u...@**googlegroups.com For more options, visit this group at http://groups.google.com/**group/clojure?hl=enhttp://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups Clojure group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+u...@**googlegroups.com. For more options, visit https://groups.google.com/**groups/opt_outhttps://groups.google.com/groups/opt_out . -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out. -- -- You received this message because you are subscribed
Re: Coding while running the program
Doing stuff like you describe was one of Cris Granger's inspirations for making Light Table. See http://www.chris-granger.com/2012/02/26/connecting-to-your-creation/ However, most of this is doable with a REPL, as Mikera already noted. For Clojure/Clojurescript, redefining functions in running code is not a feature, it's part of the language. On Saturday, March 23, 2013 10:06:34 PM UTC+1, Oskar Kvist wrote: John: I don't really understand why you say it's a waste of time. Speeding up the feedback cycle seems great to me. Thanks to everyone who has contributed to this thread so far! On Saturday, March 23, 2013 7:48:28 PM UTC+1, John Smith wrote: Yes, but are you saving time with this? What types of games do you want to make? RTS? FPS? RPG? What's the platform that you're targeting? No offense, but I've seen a lot of people like this (me including :) ), who want to learn technology X for... wait for it... to make games or something else that's fun. Look, I'm not trying to be mean, but unless you have a specific goal in mind, then this new feature is a waste of time :) . On Sat, Mar 23, 2013 at 12:20 PM, Oskar Kvist oskar...@gmail.com wrote: It's not about looking cool, it's about saving time. Den lördagen den 23:e mars 2013 kl. 16:03:19 UTC+1 skrev John Smith: If you want to make a game, then make a game. Don't worry about looking cool about it. You don't need to have some feature to make something entertaining :) . I'm making a game with a tool called GameMaker. Not as full-featured or powerful as with a programming language? Sure, but then I want to first have a game under my belt, then I'll worry about looking cool in the process :) . On Sat, Mar 23, 2013 at 10:22 AM, Oskar Kvist oskar...@gmail.comwrote: Hi! I saw this video http://www.youtube.com/**watch?v=BES9EKK4Aw4http://www.youtube.com/watch?v=BES9EKK4Aw4of Notch coding on Minecraft while the game was running, and of course seeing the changes in the running program. He used some kind of debug mode in his IDE (I don't really know which IDE). I want to make a game, and I want to to also be able to code while the program is running. I know this sort of thing is common in Lisps, so even without that IDE's debug mode it should be possible. Is there anything in particular that I need to do or look out for in order to make it work? Are there some JVM settings I should use? Does anyone know how that debug mode works? I kind of understand how it can be done with a plain repl, but I don't wanna miss out on anything that would make it easier. Any kind of insight is very appreciated. -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clo...@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+u...@**googlegroups.com For more options, visit this group at http://groups.google.com/**group/clojure?hl=enhttp://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups Clojure group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+u...@**googlegroups.com. For more options, visit https://groups.google.com/**groups/opt_outhttps://groups.google.com/groups/opt_out . -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clo...@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+u...@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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+u...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out. -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Testing gmane please ignore
This is just a test of the gmane gateway please ignore. -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Test please ignore
testing gmane interface -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: Macro for bailout-style programming
The let? macro addresses such situations: https://github.com/egamble/let-else -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: [ANN] Pedestal Application Framework
Contributor Agreements were available for signing at Clojure/West so I'm guessing it will be under the same process as Clojure itself... On Fri, Mar 22, 2013 at 9:04 AM, Michael Klishin michael.s.klis...@gmail.com wrote: 2013/3/22 Alex Redinton alex.reding...@thinkrelevance.com Please let us know what you think! Will Pedestal accept pull requests? -- MK http://github.com/michaelklishin http://twitter.com/michaelklishin -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out. -- Sean A Corfield -- (904) 302-SEAN An Architect's View -- http://corfield.org/ World Singles, LLC. -- http://worldsingles.com/ Perfection is the enemy of the good. -- Gustave Flaubert, French realist novelist (1821-1880) -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: Coding while running the program
Ring offers functionality for automatic reloading if you happen to be developing a web app. See here: https://github.com/mmcgrana/ring/wiki/Interactive-Development On Saturday, March 23, 2013 7:22:14 AM UTC-7, Oskar Kvist wrote: Hi! I saw this video http://www.youtube.com/watch?v=BES9EKK4Aw4 of Notch coding on Minecraft while the game was running, and of course seeing the changes in the running program. He used some kind of debug mode in his IDE (I don't really know which IDE). I want to make a game, and I want to to also be able to code while the program is running. I know this sort of thing is common in Lisps, so even without that IDE's debug mode it should be possible. Is there anything in particular that I need to do or look out for in order to make it work? Are there some JVM settings I should use? Does anyone know how that debug mode works? I kind of understand how it can be done with a plain repl, but I don't wanna miss out on anything that would make it easier. Any kind of insight is very appreciated. -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: Refactoring tools
I'd also love something to optimise the ns form - I'm regularly doing tasks by hand that could in theory be automated; adding a new not-yet-imported library can be quite tedious, it'd be great to be able to type (defdb and be able to hit a key combo to add a new :require entry. A generalised organise imports would also be nice, to remove unused imports, convert :use to :require, turn :refer :all into :as and the like. Oh, and a pony! Can I have a pony, too? :) - Korny On 23 Mar 2013 14:30, Russell Mull russell.m...@gmail.com wrote: I find myself doing that a lot by hand, a tool to help would be very useful. Some others that I've thought of are: - change between (fn [x] ...) and #(...) - pull sexp up to let, or introduce a new let (like introduce variable in java et. al) On Saturday, March 23, 2013 10:42:10 AM UTC+9, Alex Baranosky wrote: I'd really like to see a way to factor to code that uses -/- and back again. On Fri, Mar 22, 2013 at 12:01 PM, Laurent PETIT lauren...@gmail.comwrote: 2013/3/22 Daniel Glauser dangl...@gmail.com I feel your pain, would love to see some Clojure refactorings. I had started working on the 1.3 branch of clojure-refactoring trying to bring it up to speed. I met with Tony (the original author of clojure-refactoring) and Phil H. at Clojure/West. Tony was very adamant that we ditch his code and start over. Currently I'm doing some experimenting with sjacket ( https://github.com/cgrand/**sjacket https://github.com/cgrand/sjacket) trying to see if we could make that work for renaming. Once I'm confident that direction will work I'm happy to throw some code up on Github. If someone beats me to it then I'd like to contribute to their project. I just created a #clojure-refactoring channel up on Freenode to make it easier to collaborate. We can rename the node once a name emerges for a new project. Please note that I've also created a project entry for the Google Summer Of Code for this : creating refactoring library + integration of it into Counterclockwise : http://dev.clojure.org/**display/community/Project+** Ideas#ProjectIdeas-**RefactoringfeatureforCCWotherI**DEshttp://dev.clojure.org/display/community/Project+Ideas#ProjectIdeas-RefactoringfeatureforCCWotherIDEs I think writing a refactoring library with more than one client in mind (e.g. a command line client as well as an IDE client) is interesting because it will help shape its API (for instance, an IDE client will usually want to offer a view of the modifications to be applied, thus refactoring can have a review step). Cheers, -- Laurent On Thursday, March 21, 2013 12:12:42 AM UTC-6, Akhil Wali wrote: A fairly new project for refactoring Clojure is clj-refactor.el. Not too much functionality yet, but supplements clojure-refactoring pretty well. clj-refactor.el will later interop with nRepl, or that's the plan I heard. That aside (and I know I'm being redundant), refactoring any Lisp is a snap with paredit-mode. It doesn't do stuff like renaming a function or exracting a var, but I've had some success in making these operations as interactive functions. On Thu, Mar 21, 2013 at 8:11 AM, Devin Walters dev...@gmail.comwrote: Yeah it sort of bums me out that clojure-refactoring has been in the ditch. There are a number of tasks to get this back into a good state. The plan right now is to take tests (which were mostly failing and using outdated dependencies) from the old-test directory and get them passing under Midje. Then, get it to play nicely with nrepl and update any elisp that needs updating to bring back the clojure-refactoring minor mode. If anyone wants to help resurrect this project: https://github.com/** de**vn/clojure-refactoring/tree/**cl**ojure-1.5https://github.com/devn/clojure-refactoring/tree/clojure-1.5 your help would be appreciated. I created a new branch and started bringing old failing tests over. Feel free to drop me a pull request. Big, sweeping commits and tiny typo commits are both equally welcome. On Wednesday, March 20, 2013 at 8:22 PM, Dave Kincaid wrote: Thanks. It looks like nothing has happened on that in a year and it appears to require slime/swank. But it's a start I guess if there isn't anything else. On Wednesday, March 20, 2013 6:13:30 PM UTC-7, Devin Walters (devn) wrote: I don't think much has happened with it recently, but I used to use https://github.com/joodie/**clojure-refactoringhttps://github.com/joodie/clojure-refactoring . -- '(Devin Walters) Sent from my Motorola RAZR V3 (Matte Black) On Wednesday, March 20, 2013 at 8:05 PM, Dave Kincaid wrote: I'm wondering if there are any refactoring tools around for working with Clojure projects in Emacs. There seems to be all kinds of other tools except for refactoring. I'm really looking for simple things like ways to easily rename variables, functions, namespaces, etc. That seems to be the most common thing I'm trying to
Re: Refactoring tools
Korny, Slamhound does some of what you're talking about, but not as an editor extension, https://github.com/technomancy/slamhound On Sat, Mar 23, 2013 at 6:58 PM, Korny Sietsma ko...@sietsma.com wrote: I'd also love something to optimise the ns form - I'm regularly doing tasks by hand that could in theory be automated; adding a new not-yet-imported library can be quite tedious, it'd be great to be able to type (defdb and be able to hit a key combo to add a new :require entry. A generalised organise imports would also be nice, to remove unused imports, convert :use to :require, turn :refer :all into :as and the like. Oh, and a pony! Can I have a pony, too? :) - Korny On 23 Mar 2013 14:30, Russell Mull russell.m...@gmail.com wrote: I find myself doing that a lot by hand, a tool to help would be very useful. Some others that I've thought of are: - change between (fn [x] ...) and #(...) - pull sexp up to let, or introduce a new let (like introduce variable in java et. al) On Saturday, March 23, 2013 10:42:10 AM UTC+9, Alex Baranosky wrote: I'd really like to see a way to factor to code that uses -/- and back again. On Fri, Mar 22, 2013 at 12:01 PM, Laurent PETIT lauren...@gmail.comwrote: 2013/3/22 Daniel Glauser dangl...@gmail.com I feel your pain, would love to see some Clojure refactorings. I had started working on the 1.3 branch of clojure-refactoring trying to bring it up to speed. I met with Tony (the original author of clojure-refactoring) and Phil H. at Clojure/West. Tony was very adamant that we ditch his code and start over. Currently I'm doing some experimenting with sjacket ( https://github.com/cgrand/**sjackethttps://github.com/cgrand/sjacket) trying to see if we could make that work for renaming. Once I'm confident that direction will work I'm happy to throw some code up on Github. If someone beats me to it then I'd like to contribute to their project. I just created a #clojure-refactoring channel up on Freenode to make it easier to collaborate. We can rename the node once a name emerges for a new project. Please note that I've also created a project entry for the Google Summer Of Code for this : creating refactoring library + integration of it into Counterclockwise : http://dev.clojure.org/** display/community/Project+**Ideas#ProjectIdeas-** RefactoringfeatureforCCWotherI**DEshttp://dev.clojure.org/display/community/Project+Ideas#ProjectIdeas-RefactoringfeatureforCCWotherIDEs I think writing a refactoring library with more than one client in mind (e.g. a command line client as well as an IDE client) is interesting because it will help shape its API (for instance, an IDE client will usually want to offer a view of the modifications to be applied, thus refactoring can have a review step). Cheers, -- Laurent On Thursday, March 21, 2013 12:12:42 AM UTC-6, Akhil Wali wrote: A fairly new project for refactoring Clojure is clj-refactor.el. Not too much functionality yet, but supplements clojure-refactoring pretty well. clj-refactor.el will later interop with nRepl, or that's the plan I heard. That aside (and I know I'm being redundant), refactoring any Lisp is a snap with paredit-mode. It doesn't do stuff like renaming a function or exracting a var, but I've had some success in making these operations as interactive functions. On Thu, Mar 21, 2013 at 8:11 AM, Devin Walters dev...@gmail.comwrote: Yeah it sort of bums me out that clojure-refactoring has been in the ditch. There are a number of tasks to get this back into a good state. The plan right now is to take tests (which were mostly failing and using outdated dependencies) from the old-test directory and get them passing under Midje. Then, get it to play nicely with nrepl and update any elisp that needs updating to bring back the clojure-refactoring minor mode. If anyone wants to help resurrect this project: https://github.com/* *de**vn/clojure-refactoring/tree/**cl**ojure-1.5https://github.com/devn/clojure-refactoring/tree/clojure-1.5 your help would be appreciated. I created a new branch and started bringing old failing tests over. Feel free to drop me a pull request. Big, sweeping commits and tiny typo commits are both equally welcome. On Wednesday, March 20, 2013 at 8:22 PM, Dave Kincaid wrote: Thanks. It looks like nothing has happened on that in a year and it appears to require slime/swank. But it's a start I guess if there isn't anything else. On Wednesday, March 20, 2013 6:13:30 PM UTC-7, Devin Walters (devn) wrote: I don't think much has happened with it recently, but I used to use https://github.com/joodie/**clojure-refactoringhttps://github.com/joodie/clojure-refactoring . -- '(Devin Walters) Sent from my Motorola RAZR V3 (Matte Black) On Wednesday, March 20, 2013 at 8:05 PM, Dave Kincaid wrote: I'm wondering if there are any refactoring tools around for working with Clojure projects in Emacs. There
Re: Refactoring tools
Slamhound does some of what you're looking for. — Sent via Mobile On Sat, Mar 23, 2013 at 8:59 PM, Korny Sietsma ko...@sietsma.com wrote: I'd also love something to optimise the ns form - I'm regularly doing tasks by hand that could in theory be automated; adding a new not-yet-imported library can be quite tedious, it'd be great to be able to type (defdb and be able to hit a key combo to add a new :require entry. A generalised organise imports would also be nice, to remove unused imports, convert :use to :require, turn :refer :all into :as and the like. Oh, and a pony! Can I have a pony, too? :) - Korny On 23 Mar 2013 14:30, Russell Mull russell.m...@gmail.com wrote: I find myself doing that a lot by hand, a tool to help would be very useful. Some others that I've thought of are: - change between (fn [x] ...) and #(...) - pull sexp up to let, or introduce a new let (like introduce variable in java et. al) On Saturday, March 23, 2013 10:42:10 AM UTC+9, Alex Baranosky wrote: I'd really like to see a way to factor to code that uses -/- and back again. On Fri, Mar 22, 2013 at 12:01 PM, Laurent PETIT lauren...@gmail.comwrote: 2013/3/22 Daniel Glauser dangl...@gmail.com I feel your pain, would love to see some Clojure refactorings. I had started working on the 1.3 branch of clojure-refactoring trying to bring it up to speed. I met with Tony (the original author of clojure-refactoring) and Phil H. at Clojure/West. Tony was very adamant that we ditch his code and start over. Currently I'm doing some experimenting with sjacket ( https://github.com/cgrand/**sjacket https://github.com/cgrand/sjacket) trying to see if we could make that work for renaming. Once I'm confident that direction will work I'm happy to throw some code up on Github. If someone beats me to it then I'd like to contribute to their project. I just created a #clojure-refactoring channel up on Freenode to make it easier to collaborate. We can rename the node once a name emerges for a new project. Please note that I've also created a project entry for the Google Summer Of Code for this : creating refactoring library + integration of it into Counterclockwise : http://dev.clojure.org/**display/community/Project+** Ideas#ProjectIdeas-**RefactoringfeatureforCCWotherI**DEshttp://dev.clojure.org/display/community/Project+Ideas#ProjectIdeas-RefactoringfeatureforCCWotherIDEs I think writing a refactoring library with more than one client in mind (e.g. a command line client as well as an IDE client) is interesting because it will help shape its API (for instance, an IDE client will usually want to offer a view of the modifications to be applied, thus refactoring can have a review step). Cheers, -- Laurent On Thursday, March 21, 2013 12:12:42 AM UTC-6, Akhil Wali wrote: A fairly new project for refactoring Clojure is clj-refactor.el. Not too much functionality yet, but supplements clojure-refactoring pretty well. clj-refactor.el will later interop with nRepl, or that's the plan I heard. That aside (and I know I'm being redundant), refactoring any Lisp is a snap with paredit-mode. It doesn't do stuff like renaming a function or exracting a var, but I've had some success in making these operations as interactive functions. On Thu, Mar 21, 2013 at 8:11 AM, Devin Walters dev...@gmail.comwrote: Yeah it sort of bums me out that clojure-refactoring has been in the ditch. There are a number of tasks to get this back into a good state. The plan right now is to take tests (which were mostly failing and using outdated dependencies) from the old-test directory and get them passing under Midje. Then, get it to play nicely with nrepl and update any elisp that needs updating to bring back the clojure-refactoring minor mode. If anyone wants to help resurrect this project: https://github.com/** de**vn/clojure-refactoring/tree/**cl**ojure-1.5https://github.com/devn/clojure-refactoring/tree/clojure-1.5 your help would be appreciated. I created a new branch and started bringing old failing tests over. Feel free to drop me a pull request. Big, sweeping commits and tiny typo commits are both equally welcome. On Wednesday, March 20, 2013 at 8:22 PM, Dave Kincaid wrote: Thanks. It looks like nothing has happened on that in a year and it appears to require slime/swank. But it's a start I guess if there isn't anything else. On Wednesday, March 20, 2013 6:13:30 PM UTC-7, Devin Walters (devn) wrote: I don't think much has happened with it recently, but I used to use https://github.com/joodie/**clojure-refactoringhttps://github.com/joodie/clojure-refactoring . -- '(Devin Walters) Sent from my Motorola RAZR V3 (Matte Black) On Wednesday, March 20, 2013 at 8:05 PM, Dave Kincaid wrote: I'm wondering if there are any refactoring tools around for working with Clojure projects in Emacs. There seems to be all kinds of other tools except for refactoring. I'm
Re: Refactoring tools
Awesome - great stuff! (pity no pony though) - Korny On 24 March 2013 13:01, Alex Baranosky alexander.barano...@gmail.comwrote: Korny, Slamhound does some of what you're talking about, but not as an editor extension, https://github.com/technomancy/slamhound On Sat, Mar 23, 2013 at 6:58 PM, Korny Sietsma ko...@sietsma.com wrote: I'd also love something to optimise the ns form - I'm regularly doing tasks by hand that could in theory be automated; adding a new not-yet-imported library can be quite tedious, it'd be great to be able to type (defdb and be able to hit a key combo to add a new :require entry. A generalised organise imports would also be nice, to remove unused imports, convert :use to :require, turn :refer :all into :as and the like. Oh, and a pony! Can I have a pony, too? :) - Korny On 23 Mar 2013 14:30, Russell Mull russell.m...@gmail.com wrote: I find myself doing that a lot by hand, a tool to help would be very useful. Some others that I've thought of are: - change between (fn [x] ...) and #(...) - pull sexp up to let, or introduce a new let (like introduce variable in java et. al) On Saturday, March 23, 2013 10:42:10 AM UTC+9, Alex Baranosky wrote: I'd really like to see a way to factor to code that uses -/- and back again. On Fri, Mar 22, 2013 at 12:01 PM, Laurent PETIT lauren...@gmail.comwrote: 2013/3/22 Daniel Glauser dangl...@gmail.com I feel your pain, would love to see some Clojure refactorings. I had started working on the 1.3 branch of clojure-refactoring trying to bring it up to speed. I met with Tony (the original author of clojure-refactoring) and Phil H. at Clojure/West. Tony was very adamant that we ditch his code and start over. Currently I'm doing some experimenting with sjacket ( https://github.com/cgrand/**sjackethttps://github.com/cgrand/sjacket) trying to see if we could make that work for renaming. Once I'm confident that direction will work I'm happy to throw some code up on Github. If someone beats me to it then I'd like to contribute to their project. I just created a #clojure-refactoring channel up on Freenode to make it easier to collaborate. We can rename the node once a name emerges for a new project. Please note that I've also created a project entry for the Google Summer Of Code for this : creating refactoring library + integration of it into Counterclockwise : http://dev.clojure.org/** display/community/Project+**Ideas#ProjectIdeas-** RefactoringfeatureforCCWotherI**DEshttp://dev.clojure.org/display/community/Project+Ideas#ProjectIdeas-RefactoringfeatureforCCWotherIDEs I think writing a refactoring library with more than one client in mind (e.g. a command line client as well as an IDE client) is interesting because it will help shape its API (for instance, an IDE client will usually want to offer a view of the modifications to be applied, thus refactoring can have a review step). Cheers, -- Laurent On Thursday, March 21, 2013 12:12:42 AM UTC-6, Akhil Wali wrote: A fairly new project for refactoring Clojure is clj-refactor.el. Not too much functionality yet, but supplements clojure-refactoring pretty well. clj-refactor.el will later interop with nRepl, or that's the plan I heard. That aside (and I know I'm being redundant), refactoring any Lisp is a snap with paredit-mode. It doesn't do stuff like renaming a function or exracting a var, but I've had some success in making these operations as interactive functions. On Thu, Mar 21, 2013 at 8:11 AM, Devin Walters dev...@gmail.comwrote: Yeah it sort of bums me out that clojure-refactoring has been in the ditch. There are a number of tasks to get this back into a good state. The plan right now is to take tests (which were mostly failing and using outdated dependencies) from the old-test directory and get them passing under Midje. Then, get it to play nicely with nrepl and update any elisp that needs updating to bring back the clojure-refactoring minor mode. If anyone wants to help resurrect this project: https://github.com/ **de**vn/clojure-refactoring/tree/**cl**ojure-1.5https://github.com/devn/clojure-refactoring/tree/clojure-1.5 your help would be appreciated. I created a new branch and started bringing old failing tests over. Feel free to drop me a pull request. Big, sweeping commits and tiny typo commits are both equally welcome. On Wednesday, March 20, 2013 at 8:22 PM, Dave Kincaid wrote: Thanks. It looks like nothing has happened on that in a year and it appears to require slime/swank. But it's a start I guess if there isn't anything else. On Wednesday, March 20, 2013 6:13:30 PM UTC-7, Devin Walters (devn) wrote: I don't think much has happened with it recently, but I used to use https://github.com/joodie/**clojure-refactoringhttps://github.com/joodie/clojure-refactoring . -- '(Devin Walters) Sent from my Motorola RAZR V3 (Matte Black) On Wednesday, March 20, 2013
Re: let-timed macro...any suggestions/corrections?
On Sat, 2013-03-23 at 13:09 +, Jim - FooBar(); wrote: results (map #(list 'time (second %)) parts)] ;;don't time at compile-time, just build the timing expression for later use (let [time 4] (let-timed [what 8] (+ time what))) This expression should evaluate to 12. -- Stephen Compall ^aCollection allSatisfy: [:each | aCondition]: less is better than -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: [ANN] Pedestal Application Framework
2013/3/24 Sean Corfield seancorfi...@gmail.com Contributor Agreements were available for signing at Clojure/West so I'm guessing it will be under the same process as Clojure itself... They have electronic CA: http://pedestal.io/#contribute My question is about pull requests, not the CA. -- MK http://github.com/michaelklishin http://twitter.com/michaelklishin -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.