#clojure logs

2008-12-24

00:07Chouserhiredman: you could send the strings to a separate JVM process, and kill that off every few minutes
00:08hiredman:(
00:09hiredmanI think I have the stop access to certain forms thing figured out
00:10hiredmannow I just need to learn about thread groups
00:10danlarkinand how can you pee in the pool? can't you disallow things you don't want if you can check everything with first-ing tree-seq?
00:11hiredmanI mean people can still pee in the sandbox if I just use the jvm's sandboxing stuff
00:11hiredmanI think there is a way to actually clamp down on what classes can run
00:12hiredmanbut that will undoubtly begin to interfere with the clojure runtime
00:12hiredman"Thread groups are best viewed as an unsuccessful experiment, and you may simply ignore their existence."
00:12hiredmanhow encouraging
00:22Chouserif you use a sub-process, you'd still need the sandbox stuff to keep people from taking over your machine, but all the within-clojure issues would no longer be an issue.
00:23hiredmanif I use a thread group, I still need to disallow send and send-off, because I have no control over those thread pools
00:23Chouserlet them def and defmacro and try and catch and eval all they want. but after launching the subprocess, they get 5 seconds (or 30 or 90) before the sub-process gets killed
00:24hiredman:(
00:24hiredmanseems so messy
00:25Chousermessier than trying to catch every possible attack vector individually, while disallowing the use of basic clojure features like agents and try/catch?
00:25Chouseranyway, it's just a thought.
00:25Chouseryour box, your bot, you should do whatever you want. :-)
00:27Chouserclojurebot has proven his value in providing docs and svn announcements, seems to me.
00:28hiredmanhttp://www.haskell.org/haskellwiki/Safely_running_untrusted_Haskell_code
00:30hiredmanI do really miss having that machine around
00:31hiredmanwell, it is around, it just doesn't have any thing installed on it, and it is busy moving from FreeBSD 6.2 -> FreeBSD 7-STABLE
00:33hiredmanugh
00:33hiredmanchrist
00:33hiredmanI'll have to reinstall java
00:37danlarkinmy belly hurts from laughing so much at this wacky japanese game show on hulu
00:46danlarkinpg strikes again! http://www.reddit.com/r/programming/comments/7lf1u/coding_challenge_divide_a_list_into_n_sublists/
01:21koguhi, anyone using slime here?
01:22koguhow i do stop the repl window from coming up? I am using a dual screen setup, so I have a new frame, which is always set to show the repl on the second monitor
01:22kogubut now, when i run a function, my emacs window is split in half, how do i prevent that?
01:51yangsxkogu: C-x 1 or C-x 0 depending on which one you want to hide
05:17hiredman,(println :foo)
05:17hiredmanclojurebot: hello?
05:17clojurebotExcuse me?
05:21bOR_clojurebot has become sentient?
05:22hiredmanhmmm
05:23hiredman(use '[foo.bar :as f]) should let me call functions from foo.bar as f/function
05:23hiredman?
05:24hiredmanor is that require?
05:24hiredmanmust be require
05:24hiredmannevermind
05:30hiredman,(println :foo)
05:30clojurebot:foo
06:17Chousukehiredman: what's the licence on clojurebot btw? :P
06:20Chousukehiredman: I made a clojurebot git project for myself, and just noticed that without a licence, I'm not allowed to do so :/
06:20Chousukegithub project*
10:22Lau_of_DKGood afternoon all
10:22danlarkin_morning
10:22danlarkin_happy christmas eve!
10:26Lau_of_DKdanlarkin: An interesting fact, today is The Christmas day here in Denmark and it widely celebrated, the danes spend vasts amounts of money, but around 350 years ago this holiday was outlawed by the king.
10:27danlarkinfor what reason?
10:28Lau_of_DKThe King was a devout follower of Christ, and so he rightfully said "Who can in their right mind believe, that such celebrations honor God?"
10:29danlarkinhaha
10:29danlarkinoh to be a monarch
10:29ChousukeLau_of_DK: he was right though.
10:29ChousukeLau_of_DK: Christmas is not originally a christian tradition.
10:29Lau_of_DKChousuke: I know - I dont celebrate christmas myself, for the very same reason
10:29Lau_of_DK(btw, will add your patch later, havent forgotten, just behind with the commit)
10:30ChousukeI don't really care, myself. I just have fun and enjoy the food and peace.
10:32Chousukealso, <3 git
10:33Lau_of_DKWeeeee :)
10:33Chouserbleh
10:34Lau_of_DKImagine the awesome RAW power that would be thrust directly into the Clojure-community, if Chouser switched to Emacs
10:34ChousukeI was doing some mods to clojurebot and fumbled with the commits: committed an incomplete function by accident with another change, so I used history editing to remove the extra chunk from the commit :P
10:34Lau_of_DKcool, never tried that
10:34Lau_of_DKFrom the CL or from Emacs?
10:34ChouserChousuke: that scares me
10:35Chousukeand then I noticed I had *during that* mangled the commits so that my branch was no longer fast-forwardable from master, but a quick git stash & rebase made it all well
10:35duck1123Chousuke: are you using magit?
10:35Chousukeduck1123: I used the git command line tool to do that.
10:35ChousukeI use magit with emacs though.
10:36Lau_of_DKEgg is nice
10:36ChousukeChouser: it was easier than I thought. git commit --interactive is not exactly an intuitive interface, but it was easy once I figured out how it worked :P
10:37Lau_of_DKI use Egg for everything that it has, and for the few lacking features, I go with CL or Magit, mostly CL
10:38Lau_of_DKChouser: Are you partying tonight, or do you have time for going through a macro ?
10:38drewrI do like magit's log history viewing.
10:39Lau_of_DKYou doo?
10:39Lau_of_DKMaybe you'd want to check out Egg then
10:39Lau_of_DKIts #1
10:39drewrMaybe I will!
10:41Lau_of_DKChouser: Do you mind if I post the video I showed you last night here, so they can see Egg ?
10:42gnuvince_Egg?
10:43Lau_of_DKI hope Chouser doesnt mind, but you can see Egg in the last 30 secs of this http://www.bestinclass.dk/download/desk.ogv
10:44ChouserLau_of_DK: no, why would I mind?
10:44Lau_of_DKChouser: Theres just a short glimpse of a chat we had (just chitchat) and a link to your screenshot
10:45Chouserah. I'm sure it's fine. thanks for asking.
10:45drewrLau_of_DK: Is that your video?
10:45Lau_of_DKYea
10:45Lau_of_DKGood Chouser :) nps
10:45gnuvince_What is that fond?
10:45gnuvince_font*
10:45Lau_of_DKIn Emacs?
10:45gnuvince_Yes
10:46Lau_of_DKI dont know, because I dont run with it normally because its too big (but good for video)
10:46Lau_of_DKAn educated guess would be either DejaVu og Bitstreams Vera Sans Mono
10:46drewrLau_of_DK: Is that a variable-width font?
10:46Lau_of_DKIm not sure
10:46gnuvince_It looks mono-width
10:46Lau_of_DKBitstream Mono isnt
10:46drewrI guess it was just egg that wasn't lining things up right.
10:47Lau_of_DK(set-default-font "-bitstream-Bitstream Vera Sans Mono-normal-normal-normal-*-14-*-*-*-m-0-iso10646-1")
10:47Lau_of_DKThis is my current
10:47gnuvince_Hmmm
10:47drewrI use bitstream mono too. Guess I didn't recognize it at that size.
10:47gnuvince_No you're right, it's variable width in the video.
10:47Lau_of_DKSorry about any confusion, the point is simply this: Egg looks smashing
10:47drewrAny of you figure out Emacs 23's fontset stuff yet?
10:48Lau_of_DKAnd for your normal cycle of program, commit, checkout and such, it rocks
10:48drewrI'm sure it's more powerful, but I really just like set-default-font.
10:48Lau_of_DKdrewr: figure it out? I just use the old strings for the new fonts, works fine
10:48danlarkinI think I prefer http://github.com/pieter/gitx/tree/master
10:49drewrLau_of_DK: Doesn't work for me, but I'm on OS X and I think they changed a lot.
10:49Lau_of_DKOh ok
10:49Lau_of_DKregarding the video, the font is not mono, thats why everything isnt aligned in EGg
10:50Lau_of_DKdrewr: But you can select whatever font you want from the menu, select 2 characters on screen, M-x describe-char, and then you got your font string, then just (set-default-font <string>)
10:50Lau_of_DKAnyway, got to serve dinner for the kids :)
11:00hiredmanclojurebot: ping?
11:00clojurebotPONG!
12:14Lau_of_DKdk.bestinclass.clojureql> (def xst '(> 3 5))
12:14Lau_of_DK#'dk.bestinclass.clojureql/xst
12:14Lau_of_DKdk.bestinclass.clojureql> (where xst)
12:14Lau_of_DK"xst"
12:14Lau_of_DKdk.bestinclass.clojureql> (where '(> 3 5))
12:15Lau_of_DK"3 > 5"
12:15Lau_of_DK
12:15Lau_of_DKWhat am I not understanding? :)
12:19duck1123Lau_of_DK: where can I get clojureql? I've been wanting to play with that
12:25danlarkinduck1123: http://github.com/Lau-of-DK/clojureql/tree/master
12:25ChousukeLau_of_DK: where is a macro?
12:26duck1123danlarkin: sweet, thanks
12:30ChousukeLau_of_DK: if where is a macro, the arguments passed in are *forms* rather than values; so in (where xst) the first argument would be 'xst rather than its value '(> 3 5)
12:35hiredmanclojurebot: clojureql is http://github.com/Lau-of-DK/clojureql/tree/master
12:35clojurebotRoger.
12:36Lau_of_DKBack :) Sorry for the abrubt disappearance
12:36Lau_of_DKduck1123: ClojureQL is nearly at alpha, I need to sort out the backend, which I might get through tonight
12:36Lau_of_DKChousuke: Its a macro, yes
12:37duck1123does anyone know if the SPARQL DSL stuff is up anywhere?
12:37Lau_of_DKduck1123: http://groups.google.com/group/clojure/browse_frm/thread/8964588c4a2183b
12:37Lau_of_DKAll I have is that link
12:37Chousukehiredman: so, what licence does clojurebot have? :)
12:38Lau_of_DKChousuke: Educate the man, how can I then pass xst to the macro, so that it gets evaluated on the way in ?
12:39duck1123a job for unquote, perhaps?
12:40Lau_of_DKnope
12:43duck1123hmm... if ~ becomes a shortcut for c.c/unquote while not in a `, then would you have to do something like ~~a to get (unquote a) while in one?
12:43duck1123I haven't had the chance to play with it too much yet, so excuse me if I'm way off base
12:44Lau_of_DKMy position is the same, so I'll have to experiment a bit
12:45Lau_of_DKTo me its a little weird, that (class xst) and (class '(> 3 5)) are equals, yet evaluated differently
12:45hiredmanhmm
12:47duck1123Lau_of_DK: wouldn't it make sense to try to use as much of clojure.contrib.sql as possible instead of re-inventing a lot of this?
12:48Lau_of_DKduck1123: Thats actually still undecided
12:48Lau_of_DKAt first I was tempted to do so, but I'd like to build the backend myself so Im sure that everythings done right, and that I understand everything
12:50duck1123Lau_of_DK: is (where) not defined in the version on github? I'm not seeing the impl for it
12:51ChousukeLau_of_DK: class is not a macro
12:51Lau_of_DKNo duck1123, quite alot has changed in the past 2 days, Im pushing changes within the hour
12:51Lau_of_DKhttp://paste.lisp.org/display/72572
12:53ChousukeLau_of_DK: your "e" parameter there is the symbol xst
12:53Lau_of_DKthats right
12:55Lau_of_DK(run-query (sql (query [col1 col2] table1 (or (> col1 col2) (= col1 100)))))
12:55Lau_of_DK"SELECT (col2,col1) FROM (table1) WHERE col1 > col2 or col1 = 100"
12:55Lau_of_DKThis actually fires now, which is nice
12:59clojurebotsvn rev 1181; change to AtomicLong for lastPoint
12:59clojurebotsvn rev 1182; with-open accepts multiple bindings, patch from Meikel Brandmeyer
12:59clojurebotsvn rev 1183; more uniform map literal implementation
12:59clojurebotsvn rev 1184; ~x not in syntax-quote yields (clojure.core/unquote x) clojure.core/unquote has no root binding
12:59clojurebotsvn rev 1185; added release-pending-sends
12:59hiredmanwoa there
12:59Chousukehoh
12:59hiredmanI guess svn is installed then
13:00Chousukewell now he left :(
13:11Lau_of_DKpoor duck :)
13:18duck1123Lau_of_DK: ok, I just updated to the latest version of clojure, and (where ~xst) is working fine for me
13:21Lau_of_DKcan you show me the repl output ?
13:21duck1123almost working I mean, it's not doing infix
13:21Lau_of_DKk, same here
13:21duck1123user> (where ~xst)
13:21duck1123"where (> 3 5)"
13:21duck1123
13:23Lau_of_DKduck1123: I ended up doing this: When passing e to f, I (eval e) before, then it works specifically for my case
13:25duck1123Lau_of_DK: with that code, using ~a is the same as (eval a)
13:28Lau_of_DKWhere works fine with (eval e) (dont know where you got a from?), but now I cant compile (compile-ast) ....
13:29duck1123'a was a random example variable
13:29Lau_of_DKk
13:40Lau_of_DKGreetings sohail :)
13:41sohailhey Lau_of_DK !
13:44lisppaste8Lau_of_DK pasted "Compile-Ast not compiling" at http://paste.lisp.org/display/72615
13:45Lau_of_DKGents, after I changed the last line of infixed from (f e) to (f (eval e)) the macro works as I want, but now compile-ast will not compile - what am I missing here?
14:07Lau_of_DKNo takers?
14:15danlarkinno way to get around using eval I suppose
14:46Lau_of_DKdanlarkin: okay, where would you use it? :)
14:54danlarkinLau_of_DK: nah I guess it's an appropriate use, not sure why compile-ast doesn't compile either :-/
14:56danlarkinRSchulz: how many days do you think are in one year?
14:57RSchulzA lot fewer than 728!
14:57danlarkinbut he said 364
14:58RSchulzAnd he said for "every other day of the year."
14:58RSchulzMeaning one present for every two days of the year.
14:58danlarkin364 + 1
14:58danlarkinoh.
14:58danlarkinjeez
14:58danlarkinthat hurts
14:59RSchulzPuns are fun!
14:59RSchulzThat's not exactly a pun, but...
14:59Lau_of_DKhehe, you guys drunk ?
14:59RSchulzAlternate interpretations are the heart of humor, especially if you're in that oh-so-literal of fields: Computer Programming.
14:59RSchulzNot yet!
14:59RSchulzIt's only noon here!
15:00dreishThat's no excuse.
15:00danlarkinit's always 5 somewhere!
15:00RSchulzSo is it always too early or always too late?
15:00Chouserexactly
15:01hiredman,(println "? ")
15:01clojurebot?
15:01hiredman:)
15:01RSchulzclojurebot: Are you drunk?
15:01clojurebotexcusez-moi
15:01dreishWhat code point is that? Wow.
15:01RSchulzKind of sensitive, isn't he?
15:01RSchulzMe thinks the bot doth protest too much.
15:02danlarkinclojurebot: are you drunk is <reply> Yesh.
15:02clojurebotYou don't have to tell me twice.
15:02dreishhttp://unicodesnowmanforyou.com/
15:02dreishLooks like it's wearing a fez. Maybe that's just my font.
15:02RSchulzWas there something in that println other than blanks?
15:02hiredmanyes
15:02hiredmango fix your unicode
15:03RSchulzHey. _I_ didn't write this thing!
15:03dreishU+2603
15:03RSchulzIs that _really_ a Unicode glyph?
15:03dreishhttp://www.fileformat.info/info/unicode/char/2603/fontsupport.htm
15:03RSchulzIt looks to me like it's wearing a lampshade.
15:03RSchulz(See immediately preceding conversation)
15:03dreishYeah. I've never seen a snowman dressed like that.
15:04danlarkinsnowman with a fez!
15:04RSchulzSomeone's got too much time on their hands!
15:04RSchulzEvery snoman I've seen has been naked.
15:04RSchulzHuh. Snoman glyph for Snobol programming...
15:04Chouserhttp://isitchristmas.com/
15:05danlarkin,4
15:05RSchulzIsn't it Christmas somewhere?
15:05danlarkin,(println \u2603)
15:05dreishhttp://www.google.com/search?hl=en&amp;q=is+it+tuesday
15:06RSchulzHey! The font in my Konsole has a tiny little snowman glyph!
15:06RSchulzThough it could be someone giving me the finger. It's kind of hard to tell at that size.
15:07dreish?
15:07dreishEver needed a tricolon? ? Now you have one.
15:08hiredmanclojurebot: why no love?
15:08dreishMaybe that last snowman killed him.
15:08danlarkindid I broked it? :(
15:08hiredmandamn it
15:10hiredmanwell, I can't fix it
15:10hiredmanno access to the box it is running on at home
15:10hiredmanI wonder what the hell broke it
15:11danlarkinwas it ,4 ?
15:11hiredmanoh
15:11hiredmanhmmmmmm
15:11hiredmanthe sandbox thing has change considerably lately
15:11hiredmanit may have been
15:12dreishHow inadvisable does this sound: I want to throw a RetryEx from within a function I'll be passing to commute, because it's almost always a commute operation on a data structure that will be getting a lot of contention, but maybe 0.01% of the time it will need to retry.
15:12hiredmanclojurebot: ping?
15:12hiredmanuh
15:13hiredmandreish: messing with the stm's retry behaviour sounds pretty inadvisbale to me
15:13dreishBut I _want_ to!
15:13danlarkinwe won't stop you
15:13dreishThanks.
15:14dreishEither that, or maybe there should be an additional operation on Refs, just like commute but the transaction retries if the function you pass to it returns nil.
15:15hiredmanwhy not check for nil inside the function you pass?
15:15hiredmanand just do it again in the fuction
15:16dreishI need to repeat the transaction because the value returned by the dosync would no longer be correct.
15:17dreishThe scenario is I have a hash that caches part of a huge data set on disk -- too big for RAM. Various threads, calling a lookup function that optionally loads values in from disk, might add key/value pairs to the hash, and the value in each case is another Ref. I don't want my function returning a Ref that isn't the canonical value for a given key.
15:18danlarkindreish: are you trying to beat the OS at paging?
15:18hiredmandreish: put a loop in the dosync to retry if it needs to
15:18dreishdanlarkin: Not really. Paging doesn't give me STM semantics.
15:19dreishUnless you mean I should load the entire data set every time I start my program.
15:19RSchulzdreish: What sort of total data volume are you dealing with?
15:20dreishRSchulz: As much as possible.
15:20RSchulzMore than a 32-bit JVM can accommodate?
15:20Lau_of_DKDoes noone here have any idea why compile-ast wont compile with that macro used in it?
15:20dreishHopefully.
15:21ChouserLau_of_DK: because there's no defmulti for compile-ast?
15:21dreishThe idea is an editable multi-user virtual reality world.
15:22RSchulzThat doesn't sound like it will be scalable if the design is basaed on a single-system architecture...
15:22Lau_of_DKChouser: no, its way up in ;; DEFINITIONS ========
15:23RSchulzWhich is independent to the issue of large data-set caching.
15:23dreishMaybe.
15:23Lau_of_DKChouser: its only when I use your macro 'where' modified into 'infixed' that it wont compile, if I use my own good ol' defn infixed, then it works fine
15:24RSchulzSo you're implementing some sort of virtual-memory-like cache? Automatic eviction based on some sort of criteria (LRU, perhaps)?
15:24dreishRSchulz: Yes, and that's probably the worst part of my idea.
15:24Chouser'eval' doesn't have access to local variables
15:25RSchulzNot necessarily. Are you using weak hash maps or something of the sort?
15:25Lau_of_DKThen why does it work when I call it manually Chouser ?
15:26dreishNo, but that looks like it might be a good idea. I was just going to use a PersistentHashMap and track the most recent read myself.
15:26dreishI hadn't yet figured out a way to do that that wouldn't be ridiculously slow.
15:27ChouserLau_of_DK: you're passing the local 'ast' from 'compile-ast' to 'infixed', which then tries to use the name 'ast' in eval.
15:27RSchulzYou should at least familiarize yourself with the Weak and Phantom (and there's one more, I think) Reference types. They're meant for this sort of thing.
15:27Chouseryour stand-alone test doesn't refer to any local.
15:28RSchulzPackage java.lang.ref
15:28Lau_of_DKOk Chouser - ..... How do I bend this to my will ?
15:28dreishRSchulz: Thanks. I'll think about that.
15:28RSchulzSoft, Weak and Phantom, each with different retention and notification policies.
15:29ChouserLau_of_DK: don't use eval. :-)
15:29Lau_of_DKCan you rephrase that to a variant of "use ..." ?
15:29RSchulzUsing them in a way that interacts intelligently with Clojure's STM may require support in the Clojure data structures types, but that's just a vague hunch.
15:37hiredmanwoa
15:37hiredmanjava.lang.ref is pretty cool
16:00RSchulzhiredman: Is this the first you've seen the java.lan.ref classes?
16:04hiredmanyes
17:01Chousukehm
17:01ChousukeI've been doing some pretty drastic refactoring of clojurebot
17:01Chousukeand it still connects to teh internets.
17:01dreishIt's gone. That does seem pretty drastic.
17:01Chousukenah, that's hiredman's version
17:01ChousukeI have my own
17:01dreishOh.
17:02Chousukenow my problem is to figure out why it does not respond to my queries
17:03Chousukeit outputs debugging stuff for commands I send to it, but it doesn't respond
17:16ChousukeI'm using (binding) a lot though; maybe there's something wrong with my logic and some variable stays unbound
17:16Chousukeoh well, I'll figure it out later
18:31hiredmanso clojurebot did not nae crash, the computer running it did
18:35hiredman,4
18:38Chousukehm
18:39hiredman,4
18:39hiredmangrrr
18:40Chousukehiredman: I spent some time today trying to refactor clojurebot but currently my version is in a state of non-workiness :)
18:40hiredman,(identity 4)
18:40clojurebot4
18:40Chousukewill see tomorrow if I can make my version work
18:40hiredmanI moved the sandbox stuff into it's namespace
18:41hiredmanown
18:41Chousukeoh. where is that?
18:41ChousukeI started from your gist from 2 days ago
18:41hiredmanhttp://gist.github.com/39813
18:42Chousukehmm, looks like should be easy to integrate into my version
18:42Chousukethat*
18:42hiredman(box ...) at the end there is what I am using
18:42hiredmanyou said you started a github project?
18:42hiredmanmaybe I should just fork yours
18:43Chousukethis is where I am at the moment http://github.com/Chousuke/clojurebot/tree/clojurebotv2-BROKEN
18:43Chousukeit's not working yet, so I kept master separate
18:45Chousukea lot of that new structure is based on wishful thinking, really.
18:45ChousukeI'm hoping I can make it work :P
18:46hiredmandoes git actually track syslinks or can I just add a syslink and it will pick up the actual file?
18:47ChousukeI think symlinks should work.
18:47Chousukeer, I mean, I think git tracks them :P
18:47hiredmanso they won't work
18:49hiredmanclojurebot: where are you is <reply>http://github.com/hiredman/clojurebot/tree/master
18:49clojurebotYou don't have to tell me twice.
18:51hiredmanlicense wise, uh, MIT X11?
18:52Chousukesounds fine I guess.
18:53hiredmanhttp://github.com/hiredman/clojurebot/graphs/languages <-- nice
18:53Chousukeheh
18:58ChousukeI merged your foos :P
19:02ChousukeBeing somewhat of a perfectionist I prefer not exposing weird commit messages to the public. I develop on a local branch and when done cleanup in another branch that is then merged with master and pushed. :)
19:03hiredman<-- just starting with git
19:03arbscht_is '+' considered a numeric character, when naming symbols?
19:03Chousukeno
19:03Chousukehiredman: it's pretty easy really
19:03hiredmanseems zippy
19:03hiredmanlike some kind of italian car
19:03Chousukesay you start on master, and get a cool idea for a neat feature
19:04arbscht_Chousuke: was that 'no' in response to me?
19:04Chousukeyes
19:04arbscht_ok :)
19:04Chousukehiredman: so you do "git branch development"
19:04Chousukehack away
19:04arbscht_then '+5x should be a legal symbol name, right?
19:05ChousukeI think so
19:05Chousukehiredman: then again, from the dev branch, "git branch cleanup"
19:05Chousukehiredman: and after that, git rebase --interactive master
19:05RSchulzActually, I think Clojure must do something like CL's "potential number" thing, because +5x doesn't read.
19:06Chousukeoh. hmm :/
19:06RSchulzuser=> +5x
19:06RSchulzjava.lang.NumberFormatException: Invalid number: +5x
19:07Chousukehiredman: rebase -i is really scary: it allows you to edit commits in any way you want.
19:07Chousukeand as long as you edit only local commits, there is no danger of breaking anything.
19:07hiredmanis there a way I can merge my clojurebot.clj with your 2205aba170852515641be694748d5d3ab4d2c21e
19:08hiredman(renaming globals to use **)
19:08Chousukehm
19:08Chousukedidn't you get that when you forked?
19:09Chousukeor did you overwrite it?
19:10hiredmanuh, yeah I guess I did
19:12ChousukeI think it'll be easier to just redo the changes by hand
19:12Chousuke"git diff HEAD 2205" in your branch shows there are many other changes too
19:13Chousukeit *might* be possible to pick just the correct chunks but...
19:13Chousuketoo much work :D
19:13hiredmanyeah
19:15RSchulzPerhaps git failed hiredman??
19:16Chousukeworking with git's pretty fun
19:17Chousukeeven with just clojurebot I have 5 local branches and 5 remote ones
19:20Chousukeit takes a while to "get" how commits, the index, and merging/rebasing works with git, but after it clicks, it's rather pleasant
19:22hiredmanpepperoni and bacon pizza
19:25RSchulzhiredman: Was that directed at your TiVo??
19:26hiredmanno, just bragging
19:26RSchulzI... see... ... No I don't.
19:26hiredmanI have pepperoni and bacon pizza, do you?
19:27RSchulzI'm a vegetarian.
19:27Chousukewe need more branches fro clojurebot so that the network graph can look something like this: http://lwn.net/images/ns/kernel/gitk-octopus.png
19:27RSchulzI have pesto pizza. Yum!
19:27hiredmanoh, sorry, I hope you get well soon :P
19:28hiredmanI don't have flash so I can view the graph
19:28Chousukeit's not very interesting right now
19:28RSchulzActually, I'm probably less likely to need convalescence!
19:29RSchulzWhat app is displayed in that "octopus" graphic?
19:29Chousukeyou mean the GUI showing the graph? gitk
19:30RSchulzYeah.
19:30RSchulzI need to move to newer Linux box. There isn't even a git port for this one.
19:30Chousukewhat. how old is it? :P what distribution are you running?
19:30Chousukeit's a crappy GUI but it comes with git by default
19:30RSchulzIt's just that I have it _so_ customized and tuned to my linking, I loathe having to upgrade.
19:31RSchulzSuSE Linux 10.0, here. I have a 10.3 box, too.
19:31ChousukeI suffered severe trauma with Redhat and Mandrake some years ago, so I'm nostly a debian/ubuntu guy
19:32Chousukeright now I'm using OS X though :P
19:32RSchulzI was a bit peeved to see that the latest Enclojure release only supports MacOS X, though I'm not even sure why it should matter.
19:32RSchulzI was more than a bit peeved when my iMac died...
19:32ChousukeI think I could bear using anything except RPM based distros or gentoo.
19:33RSchulzWhat's wrong with RPM? In openSUSE it's mostly buried, though I make some use of it directly even with YaST.
19:33ChousukeProbably nothing wrong with it nowadays
19:33ChousukeI just have trauma :P
19:34hiredmanugh
19:34hiredmanyeah
19:34hiredmanI haven't used rpm in over ten years, still makes me wince
19:35RSchulzWorks for me.
19:35Chousukefor my gentoo dislike I have even less basis
19:35Chousukesince I've never actually used it
19:35hiredmanyou don't like to funroll your loops?
19:35RSchulzI really just want to _use_ my Linux box, not spend endless hours administering it. So far, SuSe / openSUSE has made that feasible.
19:35Chousukebut somehow all the things I hear about it have caused me to form a kind of "anti-caring" opinion of it.
19:36Chousukemeaning I don't care, nor do I want to :P
19:36RSchulzBut... But! You ... You MUST care! Religion MATTERS!!
19:36Chousukemaybe only if you're a matterialist?
19:37RSchulzA whatist?
19:37RSchulzNever mind. It's immaterial.
19:37Chousukesorry, I'm tired, can't resist the opportunity to make horrible puns :(
19:37RSchulzPuns are either horrible or irrelevant.
19:37RSchulzYour choice.
19:41Chousukehiredman: still there?
19:41hiredmanyessir
19:42ChousukeI noticed it seems to be possible to cherry-pick and re-apply my simplification changes
19:49Chousukehm
19:49Chousukemaybe not
19:49Chousuke:(
19:57dreishhiredman: Are you using slicehost for clojurebot?
19:57hiredmanno
19:57dreishAh, I thought someone said that here earlier this week.
20:04Chousukehiredman: hint: if you want to track my branches in your local branches: git remote add chousuke git://github.com/Chousuke/clojurebot.git; git remote update; git checkout chousuke/master -b local-tracking-branch
20:05Chousukeafter that you can checkout to local-tracking-branch and you should be able to "git pull" master from my github repo to that branch
20:09hiredmanmy mind is blown
20:10ChousukeI'm already tracking you in hired-master :P
20:10Chousukemerged some of your changes too; it was just "git merge hired-master" in my own master branch
20:14hiredmaninteresting
20:16Chousukeyou should sync with my repo too before you start making changes to clojurebot.clj
20:17hiredmanI think I did
20:17hiredmanjust git merge yourbranch
20:17hiredmanyes?
20:17Chousukeshould work
20:17Chousukeyou can always try it in a test branch first
20:18hiredmanI mean I already did it
20:18Chousukedid you push that to github too?
20:19hiredmandid now
20:20Chousukehm, you really named it local-tracking-branch :)
20:20hiredmanwell, yeah I pasted what you said :P
20:21hiredmanI added a LICENSE
20:21Chousukeinstead of creating a local tracking branch you can also "git pull chousuke/master master"
20:22hiredmanI see
20:24Chousukeor actually just git pull chousuke master
20:24Chousukesometimes it gets confusing, but the man pages are your friend :)