2011-09-25
| 00:30 | shep-home | jli: No, it blows up with "No matching field found: getRoot for class clojure.lang.Var" |
| 00:32 | duck1123 | are you using Midje? |
| 00:40 | shep-home | duck1123: no, just clojure.test |
| 00:40 | shep-home | Just starting out with Clojure, so I wanted to saty "close to home" so to speak |
| 00:40 | shep-home | stay* |
| 00:40 | duck1123 | Ok, I had a similar issue using Midje with 1.3 |
| 00:40 | shep-home | What was the solution there? |
| 00:41 | duck1123 | I had to patch the code in that case, but Midje never claimed to work with 1.3. clojure.test should just work |
| 00:41 | duck1123 | Are you using lein test for this? |
| 00:44 | shep-home | duck1123: that's my stopgap, running it from the command line |
| 00:44 | shep-home | I was trying to use the emacs clojure-mode magic run tests |
| 00:44 | shep-home | lein test works fine |
| 00:45 | shep-home | (although lein interactive test has all sorts of fun errors) |
| 00:45 | shep-home | basically, i just want to get my tests to run faster :-) |
| 00:45 | shep-home | within emacs would be ideal |
| 00:45 | shep-home | interactive would be good |
| 00:45 | duck1123 | I haven't had much luck with Clojure test mode |
| 00:46 | shep-home | :-( |
| 00:46 | shep-home | that's a shame |
| 00:46 | shep-home | it seems so close to wonderful |
| 01:00 | patchwork | anyone know where ceil went? |
| 01:00 | patchwork | not clojure.contrib.math |
| 01:01 | duck1123 | shep-home: Ok, I just confirmed I'm getting the same thing |
| 01:07 | duck1123 | shep-home: changel line 192 in clojure-test-mode.el from .getRoot to .getRawRoot |
| 01:15 | amalloy | patchwork: ##(Math/ceil 3/2) |
| 01:15 | lazybot | ⇒ 2.0 |
| 01:18 | shep-home | duck1123: thanks! |
| 01:19 | shep-home | One hope I have from learning clojure is that one day Ill be able to actually read lispy code :-) |
| 01:20 | shep-home | duck1123: Of course, now that I know what to look for... https://github.com/technomancy/clojure-mode/pull/33 |
| 01:58 | patchwork | amalloy: thanks! |
| 03:08 | eliOcs | hihihi |
| 03:09 | ikr | Hi there! Can nyone help me with that? http://stackoverflow.com/questions/7544146 |
| 03:13 | amalloy | ikr: see my comment |
| 03:18 | amalloy | and by the way, "Out of memory" is rather misleading, since it implies heap; when you get a stack overflow, say you got a stack overflow |
| 03:21 | ikr | amalloy: Cool! Thanks! |
| 03:28 | rata_ | how do I read a binary file and put it in a byte array in clojure 1.3? (in 1.2 there was clojure.contrib.duck-streams/to-byte-array) |
| 03:36 | michaelr525 | hey |
| 05:14 | Blkt | good day eveyone |
| 05:21 | kjeldahl | Anybody know workarounds for Emacs paredit refusing to activate with a "Unmatched bracket or quote" error message in a file with perfectly valid Clojure code? |
| 05:22 | kjeldahl | For the record; it works fine in another buffer with some other Clojure source... The one that fails is my unit test, which runs fine. |
| 05:28 | michaelr525 | i have no idea |
| 05:28 | michaelr525 | but i would be glad to have a link to a good intro into paredit |
| 05:34 | kjeldahl | I think I nailed it. My boilerplate paredit activation code in dot-emacs set up paredit for other modes as well, including lisp, lisp-interaction, scheme and emacs-lisp, and if I disabled those (which I'm not currently using anyway), it works fine in my clojure code. |
| 05:34 | kjeldahl | Nailed a workaround that is, not the cause. :-) |
| 06:10 | nybbles | hey I'm sure people have probably seen this error msg before when running leingen: 1 required artifact is missing. |
| 06:10 | nybbles | for artifact: |
| 06:10 | nybbles | org.apache.maven:super-pom:jar:2.0 |
| 06:10 | nybbles | i have this problem ,trying to fix it :( |
| 06:11 | nybbles | do these lines in my project.clj look correct? |
| 06:11 | nybbles | :dependencies [[org.clojure/clojure "1.3.0"]] |
| 06:11 | nybbles | :dev-dependencies [[org.clojure/swank-clojure "1.3.2"]] |
| 06:11 | nybbles | not sure what else to check |
| 06:12 | fliebel | nybbles: Scroll up, the actual missing artifact is in the error as well. |
| 06:13 | fliebel | I'm not sure why it always reports super-pom, but it's something else that is missing. |
| 06:14 | nybbles | fliebel: ahhhhh i see.. grr. looks like it's swank-clojure, do you know what version i should be using? |
| 06:19 | kjeldahl | 1.3.3-SNAPSHOT is the latest one on clojars |
| 06:26 | nybbles | kjeldahl: it didn't end up working until i manually ran the mvn command to install the swank-clojure jar (manually downloaded), even with version numbers that i found on clojars :| sucks.. dunno why it isn't working |
| 06:44 | kjeldahl | nybbles: Ok, good that you found a solution. |
| 06:45 | nybbles | kjeldahl: thanks, although it is basically using maven manually, i can get back to writing clojure :) |
| 07:00 | bsod1 | wow, I've just solved "for science!" in 4clojure.. my code is bad though, I still can't get `functional way` |
| 07:00 | michaelr525 | paredit-wrap-around with {[ doesn't work for me.. anyone knows how to fix this? |
| 07:00 | michaelr525 | bsod1: congrats |
| 07:04 | kjeldahl | michaelr525: Exactly what are you testing? Seems to work fine here. |
| 07:05 | kjeldahl | Also, it's paredit-wrap-ROUND at my end, not AROUND.. |
| 07:08 | michaelr525 | well (what |what) -> Hit M-[ |
| 07:08 | michaelr525 | Meta-[ is undefined |
| 07:08 | michaelr525 | kjeldahl: ^^ |
| 07:10 | kjeldahl | michaelr525: It's the same here. I was testing something else (marking, then pressing [ etc, but that's probably a different call). |
| 07:10 | michaelr525 | thanks |
| 07:11 | michaelr525 | hmm |
| 07:11 | michaelr525 | the marking stuff is cool |
| 07:11 | michaelr525 | although marking is tedious |
| 07:12 | kjeldahl | Agree. |
| 07:15 | kjeldahl | michaelr525: This fixes it: (define-key paredit-mode-map (kbd "M-[") 'paredit-wrap-square) |
| 07:16 | kjeldahl | Same thing with -curly instead of -square I guess. |
| 07:21 | michaelr525 | great!! :) |
| 09:21 | shintaku | why is this false: (instance? java.lang.Runnable (#())) |
| 09:22 | shintaku | while this is ture: (instance? java.lang.Runnable (fn [])) |
| 09:23 | Chousuke | ,(#()) |
| 09:23 | clojurebot | () |
| 09:23 | Chousuke | because of that |
| 09:23 | Chousuke | what you meant is |
| 09:24 | Chousuke | ,(instance? java.lang.Runnable #()) |
| 09:24 | clojurebot | true |
| 09:24 | shintaku | gotcha |
| 09:35 | shintaku | stupid question: why have recur instead of just calling the function name? is it because clojure feels that tco is something the compiler shouldn't do? |
| 09:35 | danlarkin | tco isn't supported by the jvm |
| 09:37 | shintaku | yeah, but scala doesn't have this problem. i don't have to remember to use some special recur function. i just call the function name and the compiler takes care of the tco for me |
| 09:37 | ambrosebs | its a design decision |
| 09:38 | shintaku | i'm not sure i understand it |
| 09:38 | shintaku | it seems to add complexity |
| 09:38 | shintaku | right? |
| 09:38 | clojurebot | Equal Rights for Functional Objects is Baker's paper on equality and why it's impossible to define sensible equality in the presence of mutable data structures: http://home.pipeline.com/hbaker1/ObjectIdentity.html |
| 09:38 | shintaku | it's one more thing i have o remember |
| 09:38 | danlarkin | it is the way it is |
| 09:38 | ambrosebs | a benefit it that you are being explicit about tail position |
| 09:38 | ambrosebs | it fails if it's not in tail position |
| 09:39 | shintaku | oh, it can fail? |
| 09:39 | shintaku | that's nice |
| 09:39 | ambrosebs | i think so |
| 09:39 | shep-home | shintaku: i also think it's suggested to use sequence functions instead of recurring directly |
| 09:40 | shep-home | when possible that is |
| 09:40 | raek | can scala optimize tail calls to other functions too? |
| 09:40 | shep-home | I've certainly seen recur fail if it's not actually in the tail |
| 09:41 | raek | clojure uses the JVM call stack for functions, so for TCO to work, the JVM must offer it |
| 09:42 | shintaku | raek: i haven't used scala that much to answer it and i also don't write recursive functions too often in it when i am using it |
| 09:42 | robermann | on page 145 of JoY there is an explanation of "why recur" |
| 09:43 | shintaku | great. i just bought that |
| 09:43 | raek | currently it doesn't, so clojure introduces 'recur' for self tail calls, which is the only case the clojure compiler can optimize |
| 09:43 | shintaku | thanks, robermann |
| 09:44 | robermann | It opens with "There’s no technical reason why Clojure couldn’t automatically detect and optimize recursive tail calls—Scala does this—but there are valid reasons why Clojure doesn’t." |
| 09:45 | shintaku | yeah, scala has to add annotations so you'll know when something isn't being tco'ed |
| 09:45 | shintaku | i believe. again, it's been a while |
| 09:45 | raek | also, 'recur' can be used with 'loop' |
| 09:47 | raek | so it has more uses than recursive function calls |
| 09:51 | khaliG | shintaku, yeah i'm with you on the 'too much to remember' - it's like learning c++ or something, there is so much to remember, but recur is actually cool once you get used to it, like many things |
| 09:58 | robermann | does anyone know if the .NET CLR allows |
| 09:58 | robermann | a general tail optimization? |
| 09:58 | robermann | just curious about it |
| 10:20 | LauJensen | Gents, Ive moved from Linux to OsX and I can't get slime up and running. Its basically the same emacs setup as on *nix, but for some reason the repl will eval "2", but not (+ 2 2) then it'll throw a reader exception. I've tried cake swank, lein swank from both Emacs and Eclipse. I've tried lein-swank 1.2.2 and 1.3.3-SNAPSHOT. Any ideas? |
| 10:20 | shep-home | LauJensen: what version of emacs? |
| 10:21 | LauJensen | AquaMacs 23.3.1, but it can't be related to the client since two different clients are seeing the same issue |
| 10:21 | shep-home | and do all the other versions match with your Linux setup? |
| 10:22 | LauJensen | Yes, an exact copy |
| 10:24 | shep-home | Hmm. I just set up (and still setting up) an environment |
| 10:24 | shep-home | and it seems to be working |
| 10:25 | shep-home | which isn't useful to you :-) |
| 10:25 | shintaku | thanks for the help earlier |
| 10:26 | LauJensen | shep-home: Did you follow a guide? |
| 10:30 | skelternet | the problem I had was that there were several old guides and things had changed just a little bit |
| 10:31 | shep-home | LauJensen: pretty much what skelternet said - I read a few and put pieces together :-\ |
| 10:32 | shep-home | I installed package.el, used it to install clojure-mode, slime |
| 10:32 | shep-home | got inferior-lisp mode working (set the program to `lein repl`) |
| 10:32 | shep-home | then used clojure-jack-in |
| 10:32 | robermann | this could help: http://groups.google.com/group/clojure/browse_thread/thread/986227536292502b/e735e9554eeabe17?show_docid=e735e9554eeabe17&pli=1 (check MarsiO's response) |
| 10:32 | LauJensen | Same her. Used my old config from nix. Tried various versions of slime… Its tricky to pinpoint where the breakage is. Logically I would say Swank itself |
| 10:33 | shep-home | im sure there were lots of extra steps in there |
| 10:33 | LauJensen | Worth a try robermann, thanks |
| 11:20 | IceD^ | hey |
| 11:21 | IceD^ | trying to use lein here, can't install clojure 1.3 (also, sawnk-clojure autoinstalls clojure-1.2 for some reason) |
| 11:21 | IceD^ | any help? |
| 11:52 | denisw | is there a core function like "filter" which also returns a sequence of the filtered elements? |
| 11:53 | ambrosebs | the partition-by might be what you're after |
| 11:53 | ambrosebs | I forget the details, there are other partition-* functions |
| 12:00 | denisw | ambrosebs: never mind found what I was looking for, group-by |
| 13:07 | jli | does the jvm get all the memory that it can allocate to programs on startup, to save from continuously calling malloc or something? |
| 13:07 | pyr | anybody using pinot ? |
| 13:09 | pyr | it keeps failing on missing goog.require files |
| 13:12 | pyr | actually it might be cljs-watch acting up |
| 13:14 | pyr | so if anybody's getting goog.require "namespace never provided" errors for namespaces that are there, i'm all ears |
| 13:14 | pyr | (with cljs-watch i mean) |
| 13:33 | pyr | ah, think i got it, seems as though it cannot get to the code that's in goog-jar |
| 13:52 | dbushenko | how to use new modular contrib? |
| 13:52 | dbushenko | for instance, I want to include tools.cli in my project |
| 13:52 | dbushenko | how to do that? |
| 13:53 | dbushenko | where I can see the current version of it? |
| 13:54 | Bronsa | dbushenko: http://github.com/clojure/tools.cli/blob/master/pom.xml |
| 13:54 | Bronsa | 0.1.1-SNAPSHOT |
| 13:55 | dbushenko | Bronsa, thanks! |
| 13:58 | dbushenko | Bronsa, [org.clojure/tools.cli "0.1.1-SNAPSHOT"] --artifact missing |
| 13:58 | redline6561 | Any overtone hackers about? |
| 14:01 | khaliG | what's *agent*? |
| 14:06 | Bronsa | dbushenko: then go with 0.1.0 |
| 14:06 | Bronsa | probably the snapshot hasnt been pushed to maven |
| 14:06 | dbushenko | Bronsa, yep, you are right. 0.1.0 just works |
| 14:07 | dbushenko | how to test whether the variable is a simple or compound value? |
| 14:09 | khaliG | dbushenko, coll? |
| 14:10 | dbushenko | khaliG, yep, but is there one command like (not (coll? x)) ? |
| 14:10 | khaliG | dbushenko, (complement coll?) :P |
| 14:11 | dbushenko | :-D |
| 14:11 | dbushenko | ok, thanks |
| 14:33 | devn | redinger: what's the question? |
| 14:33 | devn | err redline6561* |
| 14:33 | devn | looks like he logged off :\ |
| 15:01 | LauJensen | M-x clojure-jack-in fails saying "sh: line 1: lein: command not found", why does it do that when 'lein' in on PATH and works from the terminal? |
| 15:01 | srid | (twitter's) storm uses pallet? i thought pallet had no real-world uses yet. |
| 15:03 | antoinem | i had the same problem than LauJensen |
| 15:03 | LauJensen | antoinem: Did you fix it? |
| 15:03 | antoinem | nope, just had it today |
| 15:04 | antoinem | i'm interested in finding a solution |
| 15:05 | LauJensen | guess I'll just hard code the full path into the .el |
| 15:10 | Raynes | LauJensen: It lives! I haven't seen you around here in forever. |
| 15:10 | LauJensen | Raynes: Yea Ive been busy doing stuff :) How have you been? |
| 15:10 | Raynes | Fantastic. |
| 15:11 | LauJensen | Are you at the Conj? |
| 15:11 | Raynes | Speaking, even. |
| 15:12 | LauJensen | About? |
| 15:12 | Raynes | Clojail. |
| 15:12 | Raynes | And sandboxing in general. |
| 15:13 | LauJensen | Okay great, looking forward to seeing the video |
| 15:13 | Raynes | :) |
| 15:20 | LauJensen | at long last I have a god damn slime repl on osx |
| 15:26 | antoinem | LauJensen: i ended up in setting it as a config var, like the m2 and jars stuff, works for me too |
| 15:26 | LauJensen | k |
| 15:26 | LauJensen | We really should pay some on to make a simple script for nix, windows and osx |
| 15:27 | antoinem | yep |
| 15:28 | LauJensen | technomancy: want some money? :) |
| 15:32 | amalloy | kjeldahl: you can mark things in a less-tedious way by pointing at the start of your form and then pressing C-M-SPC a few times |
| 15:35 | amalloy | jli: it doesn't do that by default, but you can force it by setting the minimum and maximum heap sizes to be the same |
| 15:36 | hugod | srid: http://blog.gogrid.com/2011/02/08/agile-development-at-gogrid-with-pallet-and-jclouds-presentation/ |
| 15:37 | hugod | and they recently took on a clojurian to support their pallet usage |
| 15:38 | khaliG | clojurian? why not clojurer? |
| 15:43 | kjeldahl | amalloy: Thanks for the tip; works great! |
| 15:59 | TimMc | khaliG: "conj"urer! |
| 15:59 | khaliG | TimMc, i like it :) |
| 16:01 | gtrak | ibdknox: how do you get cljs-watch to ignore the temporary .#filename.cljs files that emacs creates? compiling works sporadically b/c of that |
| 16:01 | ibdknox | hm |
| 16:01 | ibdknox | gtrak: it should ignore them |
| 16:02 | ibdknox | This line should prevent them: (and (not= \. (first fname)) (.isFile f) (= fext ext)))) |
| 16:03 | thorwil | given a map m with string keys, is there a better way to get to a map with keywords? (reduce #(assoc %1 (keyword (first %2)) (second %2)) {} (vec params)) |
| 16:03 | ibdknox | gtrak: ah, I bet the compiler itself is picking them up |
| 16:03 | gtrak | ibdknox, http://pastie.org/2590695 I'll double-check everything |
| 16:03 | ibdknox | yeah |
| 16:04 | ibdknox | that's the compiler choking |
| 16:04 | thorwil | arg, where s/m/params/ |
| 16:04 | ibdknox | the same would happen if you just used the compiler directly |
| 16:04 | gtrak | hmm... but those files are short-lived |
| 16:05 | gtrak | i guess they get created on save and immediately deleted? |
| 16:05 | ibdknox | I guess so |
| 16:05 | ibdknox | I don't use emacs :) |
| 16:06 | ibdknox | is there a way to make the temp files live somewhere else? vim let's you put them in a central place so that things like that don't happen |
| 16:06 | gtrak | hmm... not sure, emacs noob here |
| 16:06 | amalloy | thorwil: depending how much you care about performance, clojure.walk has keywordize-keys or something like that |
| 16:07 | ibdknox | in any case, this is something that the compiler should handle gracefully |
| 16:07 | ibdknox | gtrak: can you create a jira ticket? |
| 16:07 | amalloy | everything in clojure.walk is notoriously slow, and is no longer maintained afaik |
| 16:07 | gtrak | yea, I think so |
| 16:09 | thorwil | amalloy: readability is more interesting here. but is performance reason for or against my solution? |
| 16:09 | gtrak | ah, ibdknox, the file's created on a change, and deleted on save |
| 16:10 | amalloy | thorwil: well, your solution is a bit illegible |
| 16:10 | gtrak | so the compiler has enough time to pick it up and expect it to be there |
| 16:10 | amalloy | i would write (into {} (for [[k v] m] [(keyword k) v])) |
| 16:10 | ibdknox | amalloy: there's a (juxt keyword identity) waiting to happen there :-p |
| 16:11 | amalloy | ibdknox: oh man. you got me. i am shirking |
| 16:11 | amalloy | wait, no |
| 16:11 | ibdknox | I guess not |
| 16:11 | amalloy | (juxt (comp first keyword) second) doesn't really have the same ring |
| 16:11 | ibdknox | it would work, it'd just be ugly |
| 16:12 | ibdknox | yeah |
| 16:12 | amalloy | er, and swapping around the comp |
| 16:12 | brehaut | amalloy: thats a good use for *** ;) |
| 16:12 | amalloy | indeed |
| 16:12 | TimMc | ? |
| 16:13 | ibdknox | ***? |
| 16:13 | ibdknox | ,(doc ***) |
| 16:13 | clojurebot | I don't understand. |
| 16:13 | brehaut | (defn *** [& fs] (comp vec (partial map #(%1 %2) fs))) |
| 16:13 | amalloy | brehaut: man, it's still clearer to describe *** by example. ibdknox, TimMc: it's a haskell function i've recently been jealous of |
| 16:13 | brehaut | (into {} (map (*** keyword identity) {"a" "b" "c" "d"})) ; => {:a "b", :c "d"} |
| 16:14 | thorwil | amalloy: i wasn't aware into accepts that format. thanks for this indeed much more readable version! |
| 16:14 | amalloy | haskell's juxt is named &&&, and they also have *** which is similar |
| 16:14 | amalloy | or, well, related anyway |
| 16:15 | brehaut | technically i think we have actual *** in conduit |
| 16:15 | amalloy | brehaut: now that 1.3 is released, there's a shoot-on-sight order for people who say "contrib" |
| 16:15 | thorwil | good night! :) |
| 16:16 | brehaut | amalloy: huh? |
| 16:16 | TimMc | amalloy: sexpbot needs to have an auto-response for that |
| 16:16 | brehaut | amalloy: did you misread conduit as contrib? |
| 16:17 | amalloy | brehaut: no, it's just that contrib isn't compatible with 1.3 |
| 16:17 | Raynes | brehaut: Dyslexia. |
| 16:17 | amalloy | and you're supposed to use the smaller libs now |
| 16:17 | amalloy | oh |
| 16:17 | amalloy | man, i did |
| 16:18 | brehaut | its jim duey's arrows lib |
| 16:18 | brehaut | clojurebot is powered by it |
| 16:18 | Raynes | clojurebot is powered by the cries of children. |
| 16:18 | gtrak | ibdknox: it's not really a bug with the compiler, not sure what I would write in the ticket... the compiler should ignore files that disappear? |
| 16:19 | ibdknox | gtrak: the compiler shouldn't pick up files that start with . |
| 16:19 | gtrak | ah, will do |
| 16:19 | brehaut | amalloy: see also http://intensivesystems.s3-website-us-east-1.amazonaws.com/writings.html?from=@ |
| 16:20 | Raynes | brehaut: That address isn't nearly long enough. |
| 16:21 | srid | hugod: thanks |
| 16:21 | brehaut | Raynes: lol |
| 16:21 | gtrak | ibdknox: meanwhile, I can set emacs to not do that in the same directory as the file |
| 16:21 | ibdknox | gtrak: good deal :) |
| 16:22 | Raynes | ibdknox: Your name infuriates me. It has no rhyme or reason. You're too spontaneous. Too 'cool'. |
| 16:22 | ibdknox | I think we need a description repository of maintained libs |
| 16:23 | ibdknox | Raynes: Sorry Raynes, I only talk to the hip people. |
| 16:23 | ibdknox | haha |
| 16:23 | ibdknox | :p |
| 16:23 | Raynes | :) |
| 16:23 | ibdknox | It's to combat "Chris" |
| 16:23 | ibdknox | which is such a boring and common name |
| 16:24 | Raynes | Man, my name is Anthony. |
| 16:28 | amalloy | Raynes: anthony is more exciting than chris. you can't really have the high ground here |
| 16:39 | ibdknox | lol |
| 16:39 | ibdknox | I always wanted to be Kael or Dade |
| 16:59 | khaliG | this is stuart's flipper demo code, http://paste.lisp.org/display/124866 - took ages but i think i understand how the calculate function works, it's a kind of weird loop using agents, isnt it? |
| 17:01 | gtrak | ibdknox: I went ahead and made a patch http://dev.clojure.org/jira/browse/CLJS-82?focusedCommentId=26863&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#action_26863 |
| 17:03 | khaliG | my question is, is that code idiomatic and what I ought to be producing? to me it seems very hard to understand :/ |
| 17:03 | Raynes | chouser: FYI, ibdknox thinks your name is boring. |
| 17:07 | khaliG | hm actually it's very elegant and nice |
| 19:25 | nybbles | does anyone know how to make a parameter list that takes a single optional argument (and provide default value if it is not supplied)? |
| 19:28 | TimMc | nybbles: Well, you can make a function that has two arities. |
| 19:29 | nybbles | TimMc: i guess so, but more typing than just saying &optional (blah 0).. but ok, that makes sense |
| 19:30 | TimMc | nybbles: Alternatively, allow nil for the second argument and replace it with the default value. |
| 19:30 | nybbles | TimMc: you mean do like a (if (nil? blah) 0 blah) |
| 19:30 | nybbles | that works too |
| 19:30 | TimMc | yeah |
| 19:30 | nybbles | cool.. thanks |
| 19:31 | TimMc | Depends on whether nil is an otherwise valid value, of course. :-) |
| 19:31 | darrenaustin | or you might be able to use (or blah 0) |
| 19:31 | TimMc | Right, that's a good shorthand if false is also an invalid value. |
| 19:38 | nybbles | darrenaustin: but you can't use (or blah 0) in the parameter list, right? |
| 19:41 | amalloy | nybbles: right |
| 19:41 | nybbles | amalloy: thnks |
| 19:42 | amalloy | you can do something similar if your function takes a map instead of positional args, though |
| 19:43 | nybbles | amalloy: yea i saw some stuff on the internet about that.. hm, but it would be nice to not bother with all of that if i'm just trying to set a counter to start at a user-defined value, instead of the default value of 0.. |
| 19:44 | nybbles | the hash map as parameters thing will be useful in other places though |
| 19:51 | cark | hello all |
| 19:52 | nybbles | cark: hello |
| 19:52 | cark | due to the release of 1.3, i'm trying to upgrade my workflow to be more in line with the comunity, using lein, clojure-jack-in in emacs and so on |
| 19:53 | cark | wo i upgraded clojure-swank as well |
| 19:53 | cark | so* |
| 19:53 | cark | and now i have "^M" behind any printout in the slime repl |
| 19:53 | cark | also it messes with the completion-mode |
| 19:54 | cark | so that i can't get the mini-help window anymore due to all the ^M |
| 19:54 | cark | so I'm pretty sure this is a DO/UNIX end of line problem |
| 19:54 | cark | DOS/UNIX* |
| 19:54 | cark | as i'm under window |
| 19:55 | cark | did anyone have the same kind of problem ? or could someone give me a hint at how to correct this ? |
| 19:55 | cark | i'm guessing the problem resides inside swank |
| 19:56 | cark | or maybe *god help me* in slime |
| 20:02 | TimMc | Are you using Cygwin or something? |
| 20:02 | cark | hehe well i tried cygwin, but then you get all kind of classpath problems |
| 20:02 | nybbles | cark: sorry no experience with clojure on windows :( |
| 20:03 | cark | as java cannot see the cygwin file system |
| 20:03 | cark | well i should have lots of experience with it ... |
| 20:03 | cark | /cry |
| 20:04 | amalloy | i did a tiny bit of clojure using cygwin. it seemed to work fine at the time, but this was about a year ago |
| 20:05 | cark | were you using cygwin's emacs ? |
| 20:05 | amalloy | no. god no |
| 20:05 | amalloy | don't do that |
| 20:05 | cark | so what part of cygwin were youa ctually using ? |
| 20:05 | amalloy | bash to start my repls and such |
| 20:06 | amalloy | i wasn't using slime yet |
| 20:06 | cark | mhh and you had no classpath issues ? |
| 20:06 | amalloy | no, lein just dealt with it |
| 20:07 | cark | and you were using a jvm installed in the windows part ? |
| 20:07 | amalloy | or maybe this was back before i used lein too? i don't recall |
| 20:07 | amalloy | yes |
| 20:07 | cark | well under cygwin lein will pass paths that are within the cygwin file system |
| 20:07 | cark | which java cannot reach |
| 20:08 | cark | so i giuess that yes, you were not using lein =) |
| 20:08 | amalloy | nonsense. you can use lein.bat instead of lein.sh |
| 20:08 | amalloy | and i imagine it works |
| 20:08 | cark | well i spent a couple hours yesterday trying to make it work =P |
| 20:09 | cark | though i'm no cygwin guru |
| 20:18 | cark | ah looks like the problem is clojure itself |
| 20:18 | cark | 2.23 Newline outputs platform-specific newline sequence |
| 20:19 | cark | which leads to a clojure specific question : how may i change the way clojure outputs newline ? |
| 20:27 | cark | clojure.core/system-newline is ^:private |
| 20:27 | cark | =( |
| 20:28 | nybbles | does anyone ever have problems with running clojure-jack-in in emacs.. then having to close the REPL.. then having trouble running clojure-jack-in again? |
| 20:29 | cark | your swank is still running |
| 20:30 | nybbles | cark: pretty sure i killed that buffer.. ok well, killed it.. trying again |
| 20:30 | cark | i mean, the java process running swank is still running |
| 20:31 | cark | usually it's best to leave the slime-repl with ", q" |
| 20:31 | nybbles | cark: ah right |
| 20:31 | nybbles | oh ok, i always use "slime-quit-lisp" |
| 20:31 | cark | hum should be the same =P |
| 20:32 | nybbles | cark: does clojure-jack-in take a long time to start up the slime repl for you? |
| 20:32 | cark | yes |
| 20:32 | nybbles | it does for me, seems to be printing out a long file into *swank* buffer |
| 20:32 | cark | it's "downloading" slime |
| 20:32 | nybbles | ah ok |
| 20:33 | nybbles | hmmmmmm that sucks :| |
| 20:33 | nybbles | yea ',q' has the same problem |
| 20:33 | nybbles | strange |
| 20:34 | cark | must be very annoying =) |
| 20:34 | nybbles | yes!! X-( |
| 20:34 | nybbles | very disruptive |
| 20:41 | TimMc | ,(prn-str) |
| 20:41 | clojurebot | "\n" |
| 20:42 | TimMc | cark: Why do you need to change what newline sequence is used? |
| 20:42 | cark | because the windows newline is causing all kind of problems in emacs |
| 20:47 | cark | so here's how i fixed it : inside the user.clj, (ns clojure/core) (def system-newline "/n") |
| 20:55 | nybbles | has anyone gotten clj-stacktrace to work with slime? |
| 20:55 | nybbles | it looks really pretty in the normal clojure REPL.. doesn't seem to work for me in the slime repl |
| 20:56 | amalloy | i don't know if the slime repl supports ansi colors. i guess it might |
| 20:56 | cark | didn't try it yet |
| 20:57 | nybbles | hm ok |
| 20:58 | cark | getting so close to be able to work again ... each time a new clojure version gets out, that's like 4-8 hours lost |
| 20:58 | cark | that's why i'm all against new versions ! |
| 21:06 | nybbles | hmmm anyone know what happened to clojure.contrib.trace? |
| 21:06 | nybbles | or an alternative to it.. |
| 21:07 | cark | https://github.com/clojure/tools.trace ... nothing there yet |
| 21:08 | nybbles | cark: maybe they are just starting to split it out.. i've seen posts online talking about it |
| 21:08 | nybbles | like from 2010 |
| 21:09 | cark | maintainers may have disapeared too |
| 21:10 | TimMc | amalloy: Could sexpbot respond to ".* what happened to (clojure\.)contrib.*" with a link to the contrib "diaspora" page? |
| 21:11 | amalloy | TimMc: you could write a plugin for it, but clojurebot is already better at that sort of thing |
| 21:11 | TimMc | amalloy: Also "where did ... go" and "where ... went" |
| 21:11 | amalloy | where did contrib go? |
| 21:11 | amalloy | dang |
| 21:11 | TimMc | :-) |
| 21:11 | amalloy | ~what happened to contrib |
| 21:11 | clojurebot | Huh? |
| 21:11 | TimMc | ~contrib |
| 21:11 | clojurebot | contrib is http://github.com/richhickey/clojure-contrib/tree/master |
| 21:11 | TimMc | meh |
| 21:11 | amalloy | i know he has that in there somewhere |
| 21:15 | tomoj | clojurebot: where did contrib go? |
| 21:15 | clojurebot | well... it's a long story: http://dev.clojure.org/display/design/Where+Did+Clojure.Contrib+Go |
| 21:16 | tomoj | guess you have to address him |
| 21:16 | amalloy | TimMc: maybe .*contrib.*\? |
| 21:16 | amalloy | ~rimshot |
| 21:16 | clojurebot | Badum, *ching* |
| 21:17 | cark | also many ppl refer to these as c.c.sql |
| 21:17 | cark | (for instance) |
| 21:31 | nybbles | does anyone just use "lein swank" and then "M-x slime-connect" to get a repl in SLIME? |
| 21:31 | nybbles | i tried doing this.. SLIME makes the connection.. it tells me to hack and be merry, but no *slime-repl* buffer.. argh |
| 21:33 | amalloy | nybbles: i do |
| 21:34 | nybbles | amalloy: did you run into the problem where the REPL just doesn't show up? |
| 21:34 | amalloy | no |
| 21:34 | nybbles | i have *slime-events*, but no *slime-repl*.. |
| 21:34 | nybbles | hm |
| 21:37 | TimMc | clojurebot: where did clojure.contrib.foo go? |
| 21:37 | clojurebot | see swank |
| 21:38 | TimMc | ... |
| 21:38 | nybbles | yes, awesome, fixed |
| 21:46 | scottj | nybbles: had you not installed slime-repl? |
| 21:47 | nybbles | scottj: no, i hadn't :( |
| 21:47 | nybbles | i was using the SLIME straight from git before |
| 21:47 | nybbles | but was running into problems, so i switched to the package.el one |
| 21:48 | nybbles | maybe SLIME from git comes with repl.. or at least clojure-jack-in starts the repl without me installing slime-repl |
| 21:48 | scottj | probably both |
| 21:49 | scottj | slime-connect is nice cause you can have multiple connections open at once and switch between them. perhaps you can clojure-jack-in multiple times and switch between them, not sure |
| 21:53 | nybbles | scottj: ah multiple repls.. with nrepl.. would be soooo awesome |
| 22:17 | adam__ | hello |
| 22:18 | adam__ | i have defined my clojure program as a java class (ns something.that) |
| 22:18 | adam__ | how do I create a new instance of it from within the program? |