←2007-06-15 2007-06-16 2007-06-17→ ↑2007 ↑all
00:01:39 -!- sp3tt has quit (Read error: 104 (Connection reset by peer)).
00:05:54 -!- sp3tt has joined.
00:43:24 -!- RedDak has joined.
00:45:02 <pikhq> This channel has people, of course.
00:45:12 <pikhq> And it covers more esoteric languages than just brainfuck.
00:45:14 <pikhq> Welcome. :)
00:45:44 <RedDak> thx :D
00:46:18 <RedDak> I maked a good brainfuck binary compiler
00:46:24 <bsmntbombdood> ((lambda 3 1 ((closure-ref (get-num-arg 1) 0) (get-num-arg 1) (closure (lambda 2 3 ((lambda 1 1 ((closure-ref (get-num-arg 1) 0) (get-num-arg 1) (get-num-arg 3))) (get-num-arg 2)))))) (closure (lambda 4 2 (%halt (get-num-arg 2)))))
00:46:28 <pikhq> Cool.
00:46:29 <bsmntbombdood> is that esoteric?
00:46:37 <ihope> bsmntbombdood: looks like it.
00:46:46 <pikhq> No, it's obfuscated Lisp.
00:47:00 <bsmntbombdood> yeah
00:47:02 <ihope> Is that using 3 as a parameter?
00:47:17 <pikhq> Similar in idea, though. ;)
00:47:17 <bsmntbombdood> the syntax of lambda is not the usual syntax
00:47:23 <bsmntbombdood> arguments with names have been removed
00:47:46 <ihope> Looks very obfuscated.
00:48:05 <bsmntbombdood> it's an internal representation of scheme for a compiler
00:48:29 <ihope> Much worse than GHC's simplified expressions.
00:48:32 <ihope> I think.
00:48:58 <bsmntbombdood> it's been converted to CPS, had closures removed, and had named arguments removed
00:49:21 <ihope> CPS, eh?
00:49:44 <bsmntbombdood> yep
00:49:52 * ihope plays with CPS
00:50:04 <ihope> It all begins with "import Control.Monad.Cont"
00:50:36 <bsmntbombdood> CPS makes call/cc and tail call optimization very easy
00:52:44 -!- RedDak has quit (Remote closed the connection).
00:54:03 <oerjan> apparently we were too weird for him
00:54:21 <pikhq> No, he said in ##brainfuck that he'd be back later.
00:55:01 <oerjan> damn^H^H^H^Hgreat
00:55:36 <ihope> Maybe ^H^H^H is actually meaningless.
00:55:44 <ihope> :-P
00:56:16 <oerjan> well this old fart doesn't actually know if anyone still uses it
00:56:34 <pikhq> 4 people in there. New record.
00:56:42 <pikhq> http://rafb.net/p/tZdgVn90.html This is what he came in to show.
00:56:46 <pikhq> His first Brainfuck program.
00:57:33 <ihope> What's it do?
00:57:50 <pikhq> Just a bit of text output.
00:57:57 <ihope> What's it output?
00:58:16 <pikhq> "BELL F**K U!
00:58:18 <pikhq> "
00:58:18 <pikhq> And an infinite loop of 0x07.
00:58:21 <bsmntbombdood> !bf http://rafb.net/p/tZdgVn90.txt
00:58:23 <pikhq> (I believe that is the bell signal)
00:58:33 <oerjan> argh, the Brainfuck Debugger has disappeared from the web
00:58:37 <ihope> I think it is.
00:58:38 <EgoBot> BELL F**K U!
00:58:52 <ihope> Hum.
00:59:46 <oerjan> no infinite output from EgoBot
00:59:56 <pikhq> 0x07 isn't a printable character.
01:00:09 <bsmntbombdood> sdrawkcab si txet ym kool
01:00:12 <SimonRC> need some CRs to encourage flushing?
01:00:36 <oerjan> but still, why did EgoBot print the first part, and not flood?
01:00:38 <ihope> !oot eniM
01:00:44 <EgoBot> Huh?
01:00:56 * SimonRC wonders why everthing goes out of tune when he yawns
01:01:35 <oerjan> when you yawn, you open up a channel to your inner ear, i presume that might affect it
01:01:43 <ihope> Now somebody make the !oot command reverse its input and add "too!"
01:02:09 <ihope> Hmm. Does sound go through that channel?
01:02:31 <oerjan> presumably a little
01:03:28 <oerjan> yawning is one way to deal with pressure in your ears on a plane say
01:04:12 <bsmntbombdood> ~exec register_raw(r"\S+ PRIVMSG #esoteric :!oot (.*)", lambda x, r: bot.raw("PRIVMSG #esoteric :%s" % (r.group(1)[::-1] + " too!")))
01:04:13 <bsmnt_bot> NameError: name 'register_raw' is not defined
01:04:18 <bsmntbombdood> ~exec self.register_raw(r"\S+ PRIVMSG #esoteric :!oot (.*)", lambda x, r: bot.raw("PRIVMSG #esoteric :%s" % (r.group(1)[::-1] + " too!")))
01:05:55 <SimonRC> oerjan: but when I open that channel without yawning it doesn;t happen
01:06:10 <bsmntbombdood> !oot foo
01:06:11 <bsmnt_bot> oof too!
01:06:17 <EgoBot> Huh?
01:06:23 <SimonRC> and anyway yawning shouldn't affect the resonant frequency of the detecting molecules
01:06:23 <oerjan> SimonRC: you can do that?
01:06:29 <SimonRC> yes, AFAICT
01:06:57 <SimonRC> it makes a click noise in my ear when I do so and my breathing becomes louder
01:07:13 <bsmntbombdood> i get click noises sometimes
01:08:30 -!- c|p has joined.
01:09:18 <SimonRC> Damned AV software keeps using 100% CPU for a few seconds repeatedly
01:11:48 <oerjan> SimonRC: sound is a wave, and it's speed probably depends on air pressure, so it might change frequency as it goes from one air density to another
01:11:52 <oerjan> *its
01:12:23 <oerjan> that's my theory anyway
01:12:42 <SimonRC> no, the frequency stays the same as a wave goes from one medium to another, unless something is moving at a considerable fraction of the wave speed
01:14:29 <ihope> !daemon oot bf +[]
01:14:29 <oerjan> well then maybe the receptors are sensitive to change in wavelength. i read that the frequency of the sound is actually measured by how far it goes into the "snail"
01:14:46 <ihope> !oot sdrawkcab si sihT
01:14:46 <bsmnt_bot> This is backwards too!
01:16:33 <oerjan> now thinking about this, it would not explain why yawning makes a difference if you don't have a pressure difference for it to remove to start with...
01:16:35 <SimonRC> oerjan: I know the different frequencies go different distances, but I don;t think that is really how they are distinguished
01:17:13 <oerjan> well that is what i read
01:18:50 <ihope> !daemon say +[,.[-]+]
01:18:53 <ihope> !say prime
01:19:00 <EgoBot> Huh?
01:19:08 <ihope> !ps d
01:19:11 <EgoBot> 1 bsmntbombdood: bf
01:19:13 <ihope> Oh.
01:19:16 <EgoBot> 2 ihope: daemon oot bf
01:19:16 <EgoBot> 3 ihope: ps
01:19:25 <ihope> !daemon say bf +[,.[-]+]
01:19:31 <ihope> !say prime
01:19:35 <EgoBot> prime
01:20:18 <ihope> ~exec self.register_raw(r"\S+ PRIVMSG #esoteric :!fake (.*)", lambda x, r: bot.raw("PRIVMSG EgoBot :!say Fake EgoBot command: %s" % (r.group(1)[::-1] + " too!")))
01:20:25 <ihope> !daemon fake bf +[]
01:20:38 <ihope> !fake Testing the command.
01:20:57 <bsmntbombdood> bsmnt_bot tells me on his stdout ":orwell.freenode.net 505 bsmnt_bot :Private messages from unregistered users are currently blocked due to spam problems, but you can always message a staffer. Please register! ( http://freenode.net/faq.shtml#privmsg )
01:21:01 <bsmntbombdood> "
01:21:06 * ihope hits EgoBot
01:21:18 <ihope> And I did that wrong anyway.
01:22:08 * ihope tries to remember the command
01:22:15 <oerjan> it's not EgoBot's fault, e is registered
01:22:32 <bsmntbombdood> bsmnt_bot isn't identified
01:22:34 <ihope> It's EgoBot's fault for not allowing private messages from unregistered users.
01:23:01 <ihope> Unless EgoBot's not allowing that is more excusable than bsmnt_bot's not being identified.
01:23:23 <ihope> And I think bsmnt_bot's not being identified is pretty darn excusable.
01:23:36 <bsmntbombdood> maybe it's freenode's fault
01:23:39 <oerjan> !bf ++++++++++.
01:23:55 <ihope> freenode's fault for letting EgoBot do that?
01:23:56 <oerjan> argh
01:24:16 <ihope> So, um, how do you remove that from the register queue thingy?
01:24:53 -!- sebbu2 has quit ("@+").
01:25:03 <bsmntbombdood> ~exec self.raw_regex_queue.pop()
01:25:08 <oerjan> in any case, EgoBot always responds with private messages to private messages
01:25:26 <EgoBot> Oh yeah?
01:25:42 <bsmntbombdood> hehe
01:25:43 <EgoBot> This doesn't look like a private message to me. :-P
01:25:58 <oerjan> hm...
01:26:12 <ihope> ~exec self.register_raw(r"\S+ PRIVMSG #esoteric :!fake (.*)", lambda x, r: bot.raw("PRIVMSG #esoteric :!say Fake EgoBot command: %s" % (r.group(1)[::-1])))
01:26:18 <ihope> !fake OMG
01:26:19 <bsmnt_bot> !say Fake EgoBot command: GMO
01:26:24 <EgoBot> Fake EgoBot command: GMO
01:26:24 <ihope> Hmm.
01:26:27 <ihope> GMO.
01:26:32 <ihope> ~exec self.raw_regex_queue.pop()
01:26:47 <ihope> ~exec self.register_raw(r"\S+ PRIVMSG #esoteric :!fake (.*)", lambda x, r: bot.raw("PRIVMSG #esoteric :!say Fake EgoBot command: %s" % r.group(1)))
01:26:52 <ihope> !fake OMG
01:26:52 <bsmnt_bot> !say Fake EgoBot command: OMG
01:26:56 <ihope> Yup!
01:26:58 <EgoBot> Fake EgoBot command: OMG
01:27:12 <ihope> Now we just need to find all the other channels EgoBot is in.
01:27:31 <bsmntbombdood> i don't get it
01:27:33 <EgoBot> So this is how it works.
01:27:36 <ihope> Or one of them.
01:27:44 -!- oerjan has left (?).
01:27:47 <ihope> Or I could toss together a relay bot.
01:28:09 -!- oerjan has joined.
01:30:06 <oerjan> i suspect then that output goes to wherever the original bf command went
01:30:57 <ihope> Something like that.
01:31:01 <ihope> Just a minute here...
01:37:54 -!- ihope has changed nick to RelayBot.
01:38:06 -!- RelayBot has changed nick to EagleBot.
01:38:40 -!- EagleBot has changed nick to ihope.
01:41:11 <ihope> Okay, it's coming...
01:42:02 <EgoBot> Foogle!
01:42:16 <oerjan> how - impressive
01:42:20 <EgoBot> OMG
01:42:35 <EgoBot> We are the wad of dough.
01:42:39 <ihope> I think it works.
01:42:47 <ihope> ~exec self.raw_regex_queue.pop()
01:42:50 <oerjan> what works?
01:42:56 <ihope> EagleBot.
01:43:08 <ihope> ~exec self.register_raw(r"\S+ PRIVMSG #esoteric :!fake (.*)", lambda x, r: bot.raw("PRIVMSG EagleBot :#magic!say Fake EgoBot command: %s" % r.group(1)))
01:43:17 <ihope> It'll just take a little while to test.
01:43:32 <ihope> !fake Is so easy!
01:44:09 <EgoBot> If it isn't done by now, it's not going to be done.
01:44:31 <ihope> I think bsmnt_bot's encountering exactly the same problem this time.
01:44:45 <bsmntbombdood> que problemo?
01:45:12 <ihope> bsmntbombdood: EagleBot wasn't accepting private messages from unregistered users either.
01:45:14 -!- ihope has changed nick to EagleBot.
01:45:26 <oerjan> of course not, you need to request it
01:45:29 -!- EagleBot has changed nick to ihope.
01:45:31 <ihope> Fixed.
01:45:41 <ihope> And cluttered up my screen in the process.
01:46:32 <ihope> !fake じゃぱねせ
01:46:35 <EgoBot> Fake EgoBot command: じゃぱねせ
01:46:38 <ihope> Yay!
01:47:02 <ihope> I send it, EgoBot gets it but ignores it, bsmnt_bot picks it up and uses EagleBot to send it to EgoBot privately.
01:47:16 <pikhq> !fake *Cheating*.
01:47:22 <EgoBot> Fake EgoBot command: *Cheating*.
01:47:32 <pikhq> How, exactly, do you get it to *not* say "unknown command"?
01:47:45 <pikhq> !quibble
01:47:49 <oerjan> Wow, it's a Rube Goldberg machine made out of bots :)
01:47:56 <EgoBot> Huh?
01:48:09 <c|p> oerjan, hahah
01:48:18 <ihope> pikhq: I daemon'd fake to do nothing at all.
01:48:39 <pikhq> ihope: Ah.
01:49:11 <pikhq> ihope: So, now, you can add features to EgoBot.
01:49:33 <ihope> Of course, in order to make EgoBot pick up everything, it should be an EgoBot command that sends it to bsmnt_bot for processing instead of something that goes right to bsmnt_bot.
01:49:39 <pikhq> At least, you've devised a technique for it.
01:49:59 <ihope> Except EgoBot pretty much can't talk to bsmnt_bot, so it needs to go through EagleBot.
01:50:05 <ihope> !undaemon fake
01:50:07 <ihope> !undaemon say
01:50:09 <EgoBot> Process 4 killed.
01:50:11 <EgoBot> Process 3 killed.
01:50:23 <ihope> ~exec self.raw("QUIT")
01:50:24 -!- bsmnt_bot has quit.
01:50:26 <pikhq> What you should probably do is make a single daemon that does this.
01:50:28 -!- bsmnt_bot has joined.
01:50:39 <ihope> I'm just guessing that that cleared the queue.
01:50:42 <oerjan> actually you could make bsmnt_bot accept private messages too
01:50:50 <oerjan> or?
01:51:10 <ihope> Yes, but in order to get EgoBot to send private messages to bsmnt_bot, bsmnt_bot has to start the daemon.
01:51:37 <oerjan> well go ahead and register bsmnt_bot then >:)
01:51:45 <pikhq> Why does it need to be bsmnt_bot that gets private messages?
01:51:57 <ihope> It doesn't. I can use EagleBot to relay.
01:52:57 <ihope> This version joins the channel.
01:53:03 <ihope> ...Oops.
01:53:08 <pikhq> Hmm.
01:53:18 <pikhq> How's about the EgoBotExtensionBot?
01:53:23 <ihope> *This* version joins the channel.
01:53:28 <ihope> Wait a moment.
01:53:48 <pikhq> We add new languages to that, since Gregor never will add it to EgoBot. :p
01:53:52 <ihope> ...what?
01:54:00 <ihope> Hmm.
01:54:06 <pikhq> . . . I'm just suggesting a pointless bot, that's all.
01:54:14 <ihope> I mean "what the..."
01:54:33 -!- erider has quit ("I don't sleep because sleep is the cousin of death!").
01:55:04 <oerjan> well someone added underload to EgoBot as a daemon.
01:55:04 <ihope> Oh.
01:55:30 -!- EagleBot has joined.
01:55:35 <ihope> There.
01:55:48 <ihope> !daemon say bf +[,.[-]+]
01:55:52 <ihope> !say prime
01:55:53 <oerjan> although if you do that you cannot add daemons written in the new languages, i think
01:55:54 <EgoBot> prime
01:56:38 <ihope> This guy doesn't actually parse IRC; it just looks for the string ":#magic " and sends the stuff after it to EgoBot.
01:57:08 <ihope> So if I say ":#magic !say foo", it'll say "foo". Naturally, I did say that, and more after it, so EgoBot'll pretty much say everything I'm saying.
01:57:11 <EgoBot> foo", it'll say "foo". Naturally, I did say that, and more after it, so EgoBot'll pretty much say everything I'm saying.
01:57:16 <pikhq> ~exec self.register_raw(r"\S+ PRIVMSG #esoteric :!fake (.*)", lambda x, r: bot.raw("PRIVMSG EagleBot :#magic!say Fake EgoBot command: %s" % r.group(1)))
01:57:19 <oerjan> i noticed :D
01:57:30 <pikhq> !daemon fake +[]
01:57:34 <pikhq> !fake Foo.
01:57:37 <EgoBot> Huh?
01:57:45 <ihope> Whoa, let's not be hasty.
01:57:45 <pikhq> !daemon fake bf +[]
01:57:53 <pikhq> !fake Foo.
01:57:57 <pikhq> Why not?
01:58:04 <ihope> I have a plan here.
01:58:04 <oerjan> you missed a space after magic
01:58:07 <pikhq> Ah.
01:58:31 <pikhq> ~exec self.register_raw(r"\S+ PRIVMSG #esoteric :!fake (.*)", lambda x, r: bot.raw("PRIVMSG EagleBot :#magic !say Fake EgoBot command: %s" % r.group(1)))
01:58:41 <pikhq> !fake Foo.
01:58:42 <EgoBot> Fake EgoBot command: %s" % r.group(1)))
01:58:46 <EgoBot> Fake EgoBot command: Foo.
01:58:54 <ihope> #magic !daemon sendme bf +[,.[-]+]
01:58:59 <ihope> #magic !sendme prime
01:59:15 <ihope> #magic !sendme #magic !say Test.
01:59:31 <EgoBot> Test.
01:59:44 <ihope> Now !sendme sends something to EgoBot.
02:00:08 <ihope> Then there's the "mundane" command, which works just like "magic" except that it sends its stuff to bsmnt_bot instead.
02:00:11 <pikhq> #magic !sendme !say Foo.
02:00:32 <ihope> EgoBot just sent "!say Foo." to EagleBot.
02:00:41 <pikhq> You sure you don't mean "sends something to EgoBot"?
02:00:47 <pikhq> s/EgoBot/EagleBot/
02:00:52 <ihope> No. :-)
02:01:19 <ihope> Actually, I didn't want it called "sendme".
02:01:22 <ihope> !undaemon sendme
02:01:27 <EgoBot> Process 5 killed.
02:01:35 <ihope> #magic !daemon ext bf +[,.[-]+]
02:01:39 <ihope> #magic !ext prime
02:01:51 -!- erider has joined.
02:01:54 <ihope> And it's primed as it's gonna be.
02:02:09 <ihope> And... hmm.
02:02:21 <pikhq> Hmm.
02:02:24 <ihope> Actually, let's not do this this way.
02:02:25 <pikhq> You, sir, are evil.
02:02:31 <pikhq> Or, rather, an evil genius.
02:02:32 -!- EagleBot has quit (Nick collision from services.).
02:02:52 <pikhq> ...
02:03:01 <pikhq> I think EagleBot is taken.
02:03:06 <ihope> By me.
02:03:13 <pikhq> Ah.
02:05:04 <ihope> Hmm. This version gets killed due to excess flood.
02:05:06 <ihope> Oops :-)
02:05:08 <ihope> ~exec self.register_raw(r"\S+ PRIVMSG bsmnt_bot :ooga (.*)", lambda x, r: bot.raw("PRIVMSG #esoteric :EagleBot received %s" % r.group(1)))
02:05:18 <bsmnt_bot> EagleBot received foo
02:05:27 <ihope> That works.
02:06:19 <ihope> Now it's much more sane in its bsmnt_bot sendings.
02:06:42 -!- EagleBot has joined.
02:06:42 <bsmnt_bot> EagleBot received : !help - wiki: http://esolangs.org/wiki/ - logs: http://tunes.org/~nef/logs/esoteric/ or http://meme.b9.com/cdates.html?channel=esoteric - Pastebin: http://pastebin.ca/ | http://www.wolframscience.com/prizes/tm23/
02:06:42 <bsmnt_bot> EagleBot received Izzy7 SimonRC
02:07:01 <ihope> That's an example of junk.
02:07:01 <pikhq> Hahah.
02:07:20 <ihope> Whenever I say "EgoBot", EagleBot sends an "ooga" to bsmnt_bot.
02:07:20 <bsmnt_bot> EagleBot received ", EagleBot sends an "ooga" to bsmnt_bot.
02:07:40 <EgoBot> Yay, infinite loop!
02:07:41 <bsmnt_bot> EagleBot received !n=EgoBot@c-76-27-232-8.hsd1.or.comcast.net PRIVMSG #esoteric :Yay, infinite loop!
02:07:43 <bsmnt_bot> EagleBot received @c-76-27-232-8.hsd1.or.comcast.net PRIVMSG #esoteric :Yay, infinite loop!
02:07:54 <pikhq> Err.
02:07:57 <ihope> Not quite.
02:08:05 <pikhq> Finite.
02:08:09 <pikhq> Where'd the #magic go?
02:08:10 <ihope> !say Infinite loop EgoBot!
02:08:11 <bsmnt_bot> EagleBot received !
02:08:14 <EgoBot> Infinite loop EgoBot!
02:08:14 <bsmnt_bot> EagleBot received !n=EgoBot@c-76-27-232-8.hsd1.or.comcast.net PRIVMSG #esoteric :Infinite loop EgoBot!
02:08:15 <bsmnt_bot> EagleBot received @c-76-27-232-8.hsd1.or.comcast.net PRIVMSG #esoteric :Infinite loop EgoBot!
02:08:16 <bsmnt_bot> EagleBot received !
02:08:18 <ihope> It's still here.
02:08:27 <ihope> I think these loops are doomed to be finite.
02:08:36 <ihope> Unless bsmnt_bot becomes EgoBot somehow.
02:08:37 <bsmnt_bot> EagleBot received somehow.
02:08:51 <ihope> #magic !say EgoBot
02:08:56 <EgoBot> EgoBot
02:08:57 <bsmnt_bot> EagleBot received !n=EgoBot@c-76-27-232-8.hsd1.or.comcast.net PRIVMSG #esoteric :EgoBot
02:08:58 <bsmnt_bot> EagleBot received @c-76-27-232-8.hsd1.or.comcast.net PRIVMSG #esoteric :EgoBot
02:09:11 * oerjan ponders leaving before the evil laboratory explodes
02:09:17 <ihope> Hmm, apparently it doesn't care when a sentence ends in EgoBot
02:09:28 <ihope> Oh, don't worry; nothing bad should happen.
02:09:41 <pikhq> #magic !say Egobot foo!
02:09:45 <ihope> The key stuff is "!n=EgoBot@c-76-27-232-8.hsd1.or.comcast.net PRIVMSG #esoteric :message"
02:09:46 <bsmnt_bot> EagleBot received @c-76-27-232-8.hsd1.or.comcast.net PRIVMSG #esoteric :message"
02:09:48 <EgoBot> Egobot foo!
02:09:48 * oerjan ponders more strongly now that famous last words have been spoken
02:09:49 <bsmnt_bot> EagleBot received !n=EgoBot@c-76-27-232-8.hsd1.or.comcast.net PRIVMSG #esoteric : Egobot foo!
02:09:50 <bsmnt_bot> EagleBot received @c-76-27-232-8.hsd1.or.comcast.net PRIVMSG #esoteric : Egobot foo!
02:10:11 <pikhq> Damn it.
02:10:23 <pikhq> It doesn't care about the second round for some reason.
02:10:25 <ihope> I just killed EagleBot.
02:10:25 <pikhq> That's a bug.
02:10:32 <ihope> Hmm?
02:10:57 <ihope> If you say "EgoBot foo EgoBot bar", it'll think "EgoBot" followed by " foo EgoBot bar".
02:11:12 <pikhq> Ah.
02:11:21 <pikhq> So, it's set to be finite.
02:11:30 <ihope> Not intentionally, maybe :-)
02:11:38 <ihope> So what this guy sends to bsmnt_bot is "ooga !n=EgoBot@c-76-27-232-8.hsd1.or.comcast.net PRIVMSG #esoteric :message"
02:12:02 <ihope> That happens whenever... wait, lemme restart.
02:12:06 <ihope> !ps d
02:12:08 <EgoBot> 1 bsmntbombdood: bf
02:12:11 <EgoBot> 2 ihope: daemon oot bf
02:12:14 <EgoBot> 3 ihope: daemon say bf
02:12:15 <EgoBot> 4 pikhq: daemon fake bf
02:12:17 <ihope> !undaemon oot
02:12:17 <EgoBot> 5 EagleBot: daemon ext bf
02:12:19 <ihope> !undaemon say
02:12:19 <EgoBot> 6 ihope: ps
02:12:20 <EgoBot> Process 2 killed.
02:12:21 <ihope> !undaemon fake
02:12:23 <ihope> !undaemon ext
02:12:23 <EgoBot> Process 3 killed.
02:12:25 <EgoBot> Process 4 killed.
02:12:29 <EgoBot> Process 5 killed.
02:12:38 -!- EagleBot has quit (Nick collision from services.).
02:12:55 -!- EagleBot has joined.
02:12:56 <bsmnt_bot> EagleBot received : !help - wiki: http://esolangs.org/wiki/ - logs: http://tunes.org/~nef/logs/esoteric/ or http://meme.b9.com/cdates.html?channel=esoteric - Pastebin: http://pastebin.ca/ | http://www.wolframscience.com/prizes/tm23/
02:13:19 <ihope> #magic !daemon ext bf +[,.[-]+]
02:13:23 <ihope> #magic !ext prime
02:13:27 <bsmnt_bot> EagleBot received !n=EgoBot@c-76-27-232-8.hsd1.or.comcast.net PRIVMSG EagleBot :prime
02:13:28 <bsmnt_bot> EagleBot received @c-76-27-232-8.hsd1.or.comcast.net PRIVMSG EagleBot :prime
02:13:34 <ihope> !ext Testing.
02:13:38 <bsmnt_bot> EagleBot received !n=EgoBot@c-76-27-232-8.hsd1.or.comcast.net PRIVMSG EagleBot :Testing.
02:13:40 <bsmnt_bot> EagleBot received @c-76-27-232-8.hsd1.or.comcast.net PRIVMSG EagleBot :Testing.
02:13:48 <ihope> EagleBot killed.
02:14:05 <ihope> The thing to look out for, then, is simply "ooga !n=EgoBot@c-76-27-232-8.hsd1.or.comcast.net PRIVMSG EagleBot :message"
02:14:36 <bsmnt_bot> EagleBot received Test.
02:14:42 <ihope> ~exec self.raw("QUIT")
02:14:43 -!- bsmnt_bot has quit.
02:14:45 -!- bsmnt_bot has joined.
02:15:34 <ihope> ~exec self.register_raw(r"\S+ PRIVMSG bsmnt_bot :ooga !n=EgoBot@c-76-27-232-8.hsd1.or.comcast.net PRIVMSG EagleBot :(.*)", lambda x, r: bot.raw("PRIVMSG #esoteric :Fake EgoBot command: " % r.group(1)))
02:16:11 <pikhq> Evil bastard, aren't we?
02:16:16 <ihope> Sort of.
02:16:17 <ihope> "ERROR* :MaClions>i ng Link: 127.0.0.1 (Connection Timed Out)"
02:16:27 -!- EagleBot has quit (Nick collision from services.).
02:16:42 <ihope> One of these times I'm going to forget the slash in front of the ghost command, giving you all my password accidentally.
02:16:55 -!- EagleBot has joined.
02:17:00 <ihope> !ext Final.
02:17:02 <bsmntbombdood> the horrers
02:17:09 <ihope> The fun!
02:17:27 <ihope> Well, EgoBot sent EagleBot the message.
02:17:35 <ihope> Ooh, hmm...
02:18:15 <oerjan> ihope: can't you make a macro for your ghost command?
02:18:19 <ihope> ~exec self.register_raw(r"\S+ PRIVMSG bsmnt_bot :ooga !n=EgoBot@c-76-27-232-8.hsd1.or.comcast.net PRIVMSG EagleBot :(.*)", lambda x, r: bot.raw("PRIVMSG #esoteric :Fake EgoBot command: " % r.group(1)))
02:18:26 <ihope> I could, but I wouldn't use it very often.
02:18:37 <ihope> !ext Eh?
02:18:46 <ihope> Hmm.
02:18:54 <pikhq> EgoBot
02:18:56 <ihope> Oh!
02:19:05 <ihope> ~exec self.register_raw(r"\S+ PRIVMSG bsmnt_bot :ooga !n=EgoBot@c-76-27-232-8.hsd1.or.comcast.net PRIVMSG EagleBot :(.*)", lambda x, r: bot.raw("PRIVMSG #esoteric :Fake EgoBot command: %s" % r.group(1)))
02:19:09 <ihope> !ext Final.
02:19:13 <bsmnt_bot> Fake EgoBot command: Final.
02:19:20 <ihope> Yay!
02:19:25 <ihope> Except that I forgot the magic.
02:19:25 <pikhq> *Almost*.
02:19:43 <ihope> ~exec self.raw_regex_queue.pop()
02:19:53 <ihope> !ext This should fail entirely.
02:20:07 <ihope> ~exec self.register_raw(r"\S+ PRIVMSG bsmnt_bot :ooga !n=EgoBot@c-76-27-232-8.hsd1.or.comcast.net PRIVMSG EagleBot :(.*)", lambda x, r: bot.raw("PRIVMSG #esoteric :#magic !say Fake EgoBot command: %s" % r.group(1)))
02:20:10 <bsmnt_bot> #magic !say Fake EgoBot command: Huh?
02:20:16 <bsmnt_bot> #magic !say Fake EgoBot command: Huh?
02:20:19 <ihope> Uh...
02:20:22 <bsmnt_bot> #magic !say Fake EgoBot command: Huh?
02:20:28 <bsmnt_bot> #magic !say Fake EgoBot command: Huh?
02:20:32 <ihope> Oh dear.
02:20:34 <bsmnt_bot> #magic !say Fake EgoBot command: Huh?
02:20:37 <ihope> ~exec self.raw_regex_queue.pop()
02:20:55 <ihope> That was a little weird.
02:21:00 * ihope attempts to figure out the cause
02:21:12 <ihope> !ps d
02:21:15 <EgoBot> 1 bsmntbombdood: bf
02:21:16 <EgoBot> 2 EagleBot: daemon ext bf
02:21:19 <EgoBot> 3 ihope: ps
02:21:22 <ihope> No !say command.
02:21:29 <ihope> !daemon say bf +[,.[-]+]
02:21:31 <ihope> !say prime
02:21:33 <EgoBot> prime
02:21:44 <ihope> ~exec self.register_raw(r"\S+ PRIVMSG bsmnt_bot :ooga !n=EgoBot@c-76-27-232-8.hsd1.or.comcast.net PRIVMSG EagleBot :(.*)", lambda x, r: bot.raw("PRIVMSG EagleBot :#magic !say Fake EgoBot command: %s" % r.group(1)))
02:21:47 <EgoBot> Fake EgoBot command: %s" % r.group(1)))
02:21:55 <ihope> Nice, eh?
02:22:00 <ihope> !ext Final.
02:22:03 <pikhq> Very.
02:22:05 <EgoBot> Fake EgoBot command: Final.
02:22:08 <ihope> Yay!
02:22:29 <EgoBot> Fake EgoBot command: This is in a private message to EgoBot.
02:23:18 <pikhq> !bftextgen !ext
02:23:22 <ihope> EgoBot receives the message and sends it to EagleBot who relays it to bsmnt_bot who recognizes it and calculates and sends the response back to EagleBot who relays it to EgoBot who says it.
02:23:26 <EgoBot> Huh?
02:23:37 <ihope> Luckily, your command isn't working. :-P
02:23:47 <ihope> (We all have little confidence in each other's abilities!)
02:23:51 <pikhq> !help
02:23:54 <ihope> ~ext Testing.
02:24:02 <ihope> !ext Testing.
02:24:08 <EgoBot> help ps kill i eof flush show ls bf_txtgen usertrig daemon undaemon
02:24:08 <EgoBot> 1l 2l adjust axo bch bf{8,[16],32,64} funge93 fyb fybs glass glypho kipple lambda lazyk linguine malbolge pbrain qbf rail rhotor sadol sceql trigger udage01 unlambda whirl
02:24:18 <EgoBot> Fake EgoBot command: Testing.
02:24:28 <ihope> EgoBot is certainly the limiting factor in speed here.
02:24:54 <ihope> Or maybe EagleBot.
02:25:04 <ihope> I'd have to look at... more things to know.
02:25:18 <ihope> I can only view EagleBot's received messages.
02:25:55 <pikhq> !ext Yay, Rube Goldberg!
02:26:05 <EgoBot> Fake EgoBot command: Yay, Rube Goldberg!
02:26:35 <ihope> Now I just have to add a command to bsmnt_bot that automates the command addition process.
02:27:06 <ihope> And the command removal process.
02:27:15 <oerjan> and a cow. there needs to be a cow in there somewhere.
02:27:18 <ihope> After that, I'll probably win some sort of award for esotericness.
02:27:28 <ihope> !ext Moo.
02:27:33 <ihope> There. Cow. Happy?
02:27:35 <ihope> :-P
02:27:41 <EgoBot> Fake EgoBot command: Moo.
02:28:15 <ihope> GregorR, COME LOOK! I'VE WRITTEN SOMETHING IN BRAINFUCK!
02:28:48 <c|p> o:
02:29:00 <ihope> Rather, I'VE DONE THAT IN JUST NINE CHARACTERS OF BRAINFUCK!
02:29:10 <c|p> i wrote a php interpreter
02:29:12 <c|p> in brainfuck
02:29:14 <c|p> im so leet
02:29:30 <ihope> Yes, but did you do it in nine characters?
02:29:40 <c|p> shit, no
02:29:42 <c|p> :(
02:30:17 <ihope> Set up a three-bot relay like mine to make it look like it, then! >:-)
02:30:31 <pikhq> I wrote a Brainfuck compiler.
02:30:33 <pikhq> In Brainfuck.
02:30:47 <pikhq> 5 characters.
02:30:52 <pikhq> Guess how.
02:30:59 <ihope> Let's see it.
02:31:05 <ihope> Oh! I know!
02:31:05 <pikhq> ,[.,]
02:31:09 <ihope> +[--yes, that.
02:31:11 <pikhq> Brainfuck->Brainfuck.
02:31:12 <pikhq> ;)
02:31:17 <ihope> Except I was going to say +[,.].
02:32:21 <ihope> Supercompression: my method compresses everything into the same nine characters of brainfuck!
03:35:59 -!- oerjan has quit ("Good night").
03:51:42 -!- boily has joined.
04:06:58 -!- c|p has quit ("Leaving").
04:50:54 -!- boily has quit ("WeeChat 0.2.4").
04:53:29 <pikhq> ihope: Let me guess: it creates a new compression algorithm for each input.
05:53:59 -!- erider has quit (Read error: 110 (Connection timed out)).
05:54:27 -!- erider has joined.
07:36:14 -!- kwertii has quit.
07:43:15 -!- RedDak has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:01:01 <RedDak> Hi all
08:25:19 -!- RedDak has quit (Remote closed the connection).
09:02:40 -!- sebbu has joined.
09:21:36 <mtve> quite nice language - http://omg.worsethanfailure.com/Entries/ViewEntry.aspx?id=100328
10:05:25 -!- jix__ has joined.
10:30:54 <bsmntbombdood> ~raw join #lispcafe
10:53:18 <sebbu> on met quoi dans un manuel de maintenance ?
11:16:56 -!- jix__ has quit (Read error: 104 (Connection reset by peer)).
11:18:39 -!- jix__ has joined.
11:45:54 -!- jix__ has changed nick to jix.
13:53:15 <erider> good morning
14:10:21 -!- oerjan has joined.
14:13:14 -!- boily has joined.
14:42:21 <ihope> Wait, EagleBot's still here?
14:42:26 <ihope> It's not answering PINGs!
14:42:54 <ihope> !ext Testing one two three?
14:43:13 <oerjan> The Eagle has landed
14:43:33 <ihope> Hmph.
14:43:35 <ihope> !ps d
14:43:57 <ihope> I think I see the problem.
14:45:22 <oerjan> !help
14:45:50 <oerjan> ~exec self.stdout("Test")
14:45:51 <bsmnt_bot> AttributeError: IRCbot instance has no attribute 'stdout'
14:46:17 <ihope> ~exec sys.stdout("GRAH")
14:46:18 <bsmnt_bot> GRAH
14:46:35 <oerjan> i always get that one wrong
14:47:01 <ihope> ~exec self.stdout = sys.stdout
14:47:10 <ihope> ~exec self.stdout("Hee")
14:47:11 <bsmnt_bot> Hee
14:47:13 <ihope> :-)
14:47:59 <ihope> ~exec self.stdout = lambda(): sys.stdout("No, it's sys.stdout.")
14:48:00 <bsmnt_bot> SyntaxError: invalid syntax
14:48:12 <ihope> ~exec self.stdout = lambda: sys.stdout("No, it's sys.stdout.")
14:48:20 <ihope> ~exec self.stdout("oops")
14:48:21 <bsmnt_bot> TypeError: <lambda>() takes no arguments (1 given)
14:48:30 <ihope> ~exec self.stdout = lambda x: sys.stdout("No, it's sys.stdout.")
14:48:43 <ihope> Actually, wasn't there some... thing?
14:48:48 <ihope> ~exec self.stdout = lambda *x: sys.stdout("No, it's sys.stdout.")
14:49:14 <ihope> ~exec self.stdout("hi", 3, self)
14:49:14 <bsmnt_bot> No, it's sys.stdout.
14:49:19 <ihope> ~exec self.stdout()
14:49:20 <bsmnt_bot> No, it's sys.stdout.
14:49:25 <ihope> ~exec self.stdout(swim=3)
14:49:26 <bsmnt_bot> TypeError: <lambda>() got an unexpected keyword argument 'swim'
14:49:31 <ihope> Darn.
14:49:37 <ihope> ~exec self.stdout = lambda **x: sys.stdout("No, it's sys.stdout.")
14:49:47 <ihope> ~exec self.stdout(3)
14:49:48 <bsmnt_bot> TypeError: <lambda>() takes exactly 0 arguments (1 given)
14:49:56 <ihope> ~exec self.stdout = lambda *x **y: sys.stdout("No, it's sys.stdout.")
14:49:57 <bsmnt_bot> SyntaxError: invalid syntax
14:50:03 <ihope> ~exec self.stdout = lambda *x, **y: sys.stdout("No, it's sys.stdout.")
14:50:06 <oerjan> o_O
14:50:18 <ihope> ~exec self.stdout("one", 2, three=self)
14:50:19 <bsmnt_bot> No, it's sys.stdout.
14:50:21 <ihope> There.
14:50:41 <oerjan> ~exec sys.stdout("one", 2, three=self)
14:50:42 <bsmnt_bot> TypeError: write() takes exactly 2 non-keyword arguments (3 given)
14:51:08 <ihope> write(), eh?
14:51:31 * ihope hugs Python a little too hard
14:53:00 <oerjan> squished Python! (in bearnaise sauce)
15:10:25 <fizzie> Isn't it usually the python that hugs the victim a bit too hard?
15:11:00 <oerjan> squished ihope! (in bearnaise sauce)
15:11:17 <ihope> Do pythons do that?
15:11:30 <ihope> Yup, apparently they do.
15:13:52 <fizzie> Although they don't actually _crush_ you, but it's still hugging.
15:14:24 -!- boily has quit ("WeeChat 0.2.5").
15:16:05 * ihope hugs fizzie
15:24:52 <bsmntbombdood> i thought you said /me boils fizzie
15:25:48 <bsmntbombdood> that wouldn't be very nice to boil him
15:28:56 * ihope boils bsmntbombdood
15:29:03 <ihope> Oops!
15:29:04 <bsmntbombdood> ouch
15:31:07 -!- oerjan has set topic: The international hub for esoteric programming language design and deployment - map: http://www.frappr.com/esolang - forum: http://esolangs.org/forum/ - EgoBot: !help - wiki: http://esolangs.org/wiki/ - logs: http://tunes.org/~nef/logs/esoteric/ or http://meme.b9.com/cdates.html?channel=esoteric - Pastebin: http://pastebin.ca/ - Here be cannibals.
15:35:10 -!- jix__ has joined.
15:37:25 -!- nooga has quit (Remote closed the connection).
15:44:04 -!- jix has quit (Read error: 113 (No route to host)).
15:50:35 <bsmntbombdood> nooo they be eatin my flesh
17:16:18 -!- RedDak has joined.
17:22:57 <RodgerTheGreat> 'morning, guys
18:02:11 <bsmntbombdood> fantastic
18:02:28 -!- boily has joined.
18:06:04 <pikhq> !ext Still evil. . .
18:06:48 -!- sebbu2 has joined.
18:07:18 <pikhq> Come on, EagleBot!
18:07:18 <pikhq> #magic !say Do the magic!
18:07:18 <pikhq> -_-'
18:08:58 <RodgerTheGreat> EagleBot?
18:09:22 <RodgerTheGreat> I've clearly missed something here
18:12:20 <oerjan> it's ihope's bot, but it locked up
18:13:03 <oerjan> afk
18:16:23 <bsmntbombdood> i don't have a bed
18:19:19 <RodgerTheGreat> bsmntbombdood: I am aware of a technique that abuses fedex policy and entails duct-tape usage by which you may create a bed for ~$0.
18:19:38 <pikhq> RodgerTheGreat: EagleBot is the binding force of a Rube Goldberg machine in here that makes it look like we can add features to EgoBot.
18:20:00 <RodgerTheGreat> ah. sounds pretty esoteric and therefore awesome
18:20:09 <pikhq> Very much so.
18:20:32 <bsmntbombdood> fedex?
18:20:36 <RodgerTheGreat> If you want to add more layers of pointless abstraction, I could load up my BF bot
18:20:43 <bsmntbombdood> will they give you free boxes or something?
18:21:12 <RodgerTheGreat> bsmntbombdood: fedex will send you shipping materials for free. You merely request a lot of boxes and bubblewrap and things, and then you can construct furniture from it
18:21:55 <RodgerTheGreat> http://www.fedexfurniture.com/bed/bed_800.jpg
18:22:01 <RodgerTheGreat> http://www.fedexfurniture.com/bed/structure_800.jpg
18:22:10 <RodgerTheGreat> http://www.fedexfurniture.com/bed/structure2_800.jpg
18:22:15 <RodgerTheGreat> http://www.fedexfurniture.com/bed/final_800.jpg
18:22:18 <RodgerTheGreat> behold
18:22:40 <bsmntbombdood> awesome
18:25:38 -!- sebbu has quit (Read error: 110 (Connection timed out)).
18:35:03 <bsmntbombdood> now the computer goes bye byte too
18:40:01 <RodgerTheGreat> ?
19:18:25 -!- sebbu2 has changed nick to sebbu.
19:20:05 -!- RedDak has quit (Remote closed the connection).
19:29:30 -!- oerjan has quit ("Supper").
20:03:59 <bsmntbombdood> now i don't have a bed or a computer
20:04:22 <pikhq> ???
20:04:25 <pikhq> WTF?
20:04:42 <RodgerTheGreat> I concur. What the fuck, bsmntbombdood?
20:04:45 <bsmntbombdood> indeed
20:05:00 <pikhq> Care to *explain*?
20:05:09 <bsmntbombdood> we're moving
20:05:18 <pikhq> Ah.
20:05:48 <bsmntbombdood> except...not for a few days
20:06:43 <pikhq> Let me go back to "WTF".
20:07:13 <pikhq> Where to?
20:07:35 <bsmntbombdood> longmont
20:08:07 <pikhq> You and your not-Colorado-Springs-ness. :p
20:08:48 <bsmntbombdood> you are in the springs?
20:09:00 <pikhq> Actually, just outside of it.
20:10:59 <bsmntbombdood> i saw a hot girl in the springs once
20:11:43 <pikhq> It's a decent-sized city. I'm sure there's plenty. :p
20:12:54 <bsmntbombdood> we are (will be) surrounded be ~100 acre farms
20:13:32 <pikhq> Ah. So, that puts you in about where I'm at *now*. (I'm visiting family in Oklahoma ATM)
20:14:13 <bsmntbombdood> i have to go back to packing shit
20:14:17 <pikhq> :/
20:14:26 -!- boily has quit ("WeeChat 0.2.5").
21:56:29 -!- jix__ has changed nick to jix.
22:35:06 -!- oerjan has joined.
22:35:52 -!- sebbu2 has joined.
22:54:34 -!- sebbu has quit (Connection timed out).
23:20:34 -!- boily has joined.
23:22:54 <ihope> #magic !say foo
23:23:05 <ihope> !say foo
23:23:28 <ihope> !help
23:23:39 <ihope> EagleBot seems fine. EgoBot doesn't.
23:25:33 * oerjan gives EgoBot some cough drops
23:26:28 <pikhq> GregorR: Give EgoBot the SIGKILL.
23:27:09 <bsmntbombdood> killall -s 9 bsmnt_bot
23:27:10 <ihope> I can reset both bsmnt_bot and EagleBot, but not EgoBot.
23:27:21 <bsmntbombdood> i mean, killall -s 9 bsmntbombdood
23:28:42 <pikhq> bsmnt_bot is easy to reset.
23:28:57 <pikhq> ~exec sys.exit(0)
23:29:09 <ihope> ~exec self.raw("QUIT")
23:29:09 -!- bsmnt_bot has quit.
23:29:13 <pikhq> . . . Well, not like that, but you get the idea.
23:29:15 -!- bsmnt_bot has joined.
23:30:03 <bsmntbombdood> h[6=V΂B 1+0 records in
23:30:03 <bsmntbombdood> 1+0 records out
23:30:03 <bsmntbombdood> 20 bytes (20 B) copied, 9.7962e-05 s, 204 kB/s
23:30:10 <bsmntbombdood> wtf?
23:30:39 <boily> it looks like a `dd' dump...
23:30:40 <ihope> ÑÞhé¯Ð[ƒ6=±V§áÁÿ΂B?
23:32:08 <bsmntbombdood> 9.7962e-05
23:32:34 <bsmntbombdood> years until the apocalypse
23:33:00 <oerjan> i sincerely hope not
23:33:06 -!- EagleBot has quit (Read error: 104 (Connection reset by peer)).
23:33:14 <oerjan> unless you misspelled + as -
23:33:56 <bsmntbombdood> no, - is correct
23:34:26 <oerjan> 51.48 minutes till the apocalypse then
23:35:11 <oerjan> probably just as well to get it over with :)
23:36:08 <ihope> Egad, I just uglied up my code.
23:38:37 <pikhq> bsmntbombdood: Let me guess: in the apocalypse theater, apocalypses are performed ever hour, on the hour. :p
23:39:02 <bsmntbombdood> => (let ((me (cons 'dead 0))) (set-cdr! me me) me)
23:39:24 <pikhq> (cdr universe)
23:39:34 <pikhq> => (me (me (me)))
23:39:38 <pikhq> (car universe)
23:39:43 <pikhq> => (me)
23:41:47 <bsmntbombdood> methinks a laxy impure lanague is possible
23:42:43 <bsmntbombdood> (set! var val) gets evaluated when var is used
23:43:40 -!- EagleBot has joined.
23:44:01 <pikhq> Sure it is possible.
23:44:21 <pikhq> I do believe that the C preprocessor has lazy evaluation.
23:44:33 <bsmntbombdood> hardly
23:44:37 <ihope> There. This bot now uses continuation passing style in order to be able to reset itself
23:44:52 <ihope> #quit
23:44:56 <pikhq> #define foo(x) x
23:45:06 <ihope> #quit
23:45:06 <bsmntbombdood> call/cccccccccccc
23:45:09 <pikhq> #define bar(x) foo(x)
23:45:15 <pikhq> bar(foo(x))
23:45:16 <ihope> Hmm...
23:45:20 <oerjan> ihope: what language is EagleBot written in?
23:45:27 <ihope> oerjan: Haskell.
23:45:34 <ihope> :#quit green
23:45:35 -!- EagleBot has quit (Client Quit).
23:45:38 <bsmntbombdood> does haskell have call/cc?
23:45:38 <ihope> There we go.
23:45:44 -!- EagleBot has joined.
23:45:53 <oerjan> bsmntbombdood: in the ContT monad transformer, yes :)
23:45:58 <pikhq> I do believe that goes bar(foo(x))->foo(foo(x))->foo(x)->x
23:46:00 <ihope> bsmntbombdood: it does, but in a type-safe form.
23:46:14 <ihope> Type-safe and referentially transparent.
23:46:16 <oerjan> bwahaha!
23:46:18 <ihope> And I'm not using it.
23:49:47 <ihope> It works in any continuation monad.
23:51:31 <oerjan> lambdabot> forall a (m :: * -> *) b. (MonadCont m) => ((a -> m b) -> m a) -> m a
23:52:18 <oerjan> (the type of callCC)
←2007-06-15 2007-06-16 2007-06-17→ ↑2007 ↑all