←2007-02-23 2007-02-24 2007-02-25→ ↑2007 ↑all
00:15:20 <bsmnt_bot> omg
00:15:24 <bsmnt_bot> donuts
00:19:57 <bsmnt_bot> the peeple tell me to due bad things
00:25:10 <SimonRC> *BOGGLE* http://www.mixedtraffic.net/images/funnies/14067.jpg
01:01:05 <SevenInchBread> yay! got the esopage up! ...but I'm too lazy to type out all the specification
01:15:20 -!- nazgjunk has quit (Read error: 104 (Connection reset by peer)).
01:15:51 -!- nazgjunk has joined.
01:18:34 <SevenInchBread> Scandalous. http://esolangs.org/wiki/BugSophia
01:20:53 -!- nazgjunk has quit ("Bi-la Kaifa").
01:25:09 * SevenInchBread likes (well-implemented) concurrency.
01:48:16 -!- Arrogant has quit ("Leaving").
01:52:29 -!- nazgjunk has joined.
01:52:37 <SevenInchBread> ...hmmm... I should equip egobot with a befunge that can read multiline befunge programs.
01:54:14 <SevenInchBread> say !befunge-start command on one line, then put the rest of the program in subsequent lines... and then end with a !befunge-end line.
01:54:25 <SevenInchBread> the bot would just read everything you say.
01:54:34 <SevenInchBread> until !befunge-end
02:00:09 -!- SevenInchBread has quit ("haaaaaaaaaa").
02:01:54 -!- nazgjunk has quit (Read error: 104 (Connection reset by peer)).
02:02:18 -!- nazgjunk has joined.
02:09:29 -!- SevenInchBread has joined.
02:13:52 <SevenInchBread> hmmm..
02:14:03 <SevenInchBread> I wonder if you could take advantage of swapping two values in an esolang.
02:14:07 <SevenInchBread> like...
02:14:22 <SevenInchBread> that was the original idea I had for an infinitely visible BF.
02:14:48 <SevenInchBread> if you swap two values with the same value... the net effect is a NOP...
02:14:53 <SevenInchBread> you can use that as a conditional of some sort.
02:23:07 -!- SevenInchBread has quit (Remote closed the connection).
02:27:34 -!- nazgjunk has changed nick to na[zZz]gjunk.
02:36:00 -!- ihope has joined.
02:36:17 <ihope> HAI IM GREGORR I LIVE IN OREGON AND I WORK FOR INTEL >_O
02:43:49 -!- SevenInchBread has joined.
02:49:09 -!- tgwizard has quit (Remote closed the connection).
02:51:37 -!- nazgjunk has joined.
02:51:38 -!- na[zZz]gjunk has quit (Read error: 104 (Connection reset by peer)).
02:53:11 -!- nazgjunk has changed nick to na[zZz]gjunk.
03:06:32 -!- nazgjunk has joined.
03:06:33 -!- na[zZz]gjunk has quit (Read error: 104 (Connection reset by peer)).
03:07:18 -!- nazgjunk has quit (Read error: 104 (Connection reset by peer)).
03:47:22 <ihope> ~exec self.ihope = IRCbot("80.32.164.76", "Python", "nope", "ihope", "Now 100% Real", 9999, "#lobby", True, ["#lobby"], "#", True); self.ihope.listen()
04:01:12 <bsmntbombdood> HAI IHOPE
04:01:26 <ihope> Hello!
04:01:33 <ihope> I'm struggling with bsmnt_bot!
04:01:39 <bsmntbombdood> why?
04:01:54 <ihope> Because it isn't working like I want it to and I don't know what to do.
04:02:06 <bsmntbombdood> wai?
04:02:45 <ihope> How do I make the bot execute everything it receives in a PRIVMSG?
04:03:08 <bsmntbombdood> exec_chans = ["\S+"]
04:03:39 <ihope> That won't only execute stuff with an #exec?
04:03:45 <bsmntbombdood> replace ["#lobby"] with ["\S+"]
04:03:48 <bsmntbombdood> oh, right
04:03:49 <ihope> Then again, that's what I wanted to do anyway :-P
04:03:57 <ihope> ...Or not.
04:04:07 <bsmntbombdood> well
04:04:09 <ihope> Um, yeah, so how does it work?
04:04:14 <bsmntbombdood> you add a callback to do it
04:05:34 <bsmntbombdood> with a regex like r"\S+ PRIVMSG ([^#]\S+) :(.*)"
04:06:09 <ihope> #exec self.register_raw(r"\S+ PRIVMSG ([^#]\S+) :(.*)", blah)?
04:06:19 <bsmntbombdood> yeah
04:06:29 * ihope ponders disconnecting without warning
04:06:39 <bsmntbombdood> and call do_exec in your callback
04:06:40 <ihope> So what would blah be? do_exec?
04:06:47 <bsmntbombdood> no
04:07:12 <bsmntbombdood> actually, yeah
04:07:54 <ihope> It's not doing anything.
04:08:05 <ihope> Hmm...
04:08:40 <bsmntbombdood> how do you know?
04:16:31 -!- bsmntbombdood has left (?).
04:16:40 -!- bsmntbombdood has joined.
04:17:43 <bsmntbombdood> ~quit
04:17:44 -!- bsmnt_bot has quit.
04:17:48 -!- bsmnt_bot has joined.
04:33:16 -!- ihope has quit (Read error: 110 (Connection timed out)).
05:34:47 -!- digital_me has quit ("Lost terminal").
05:41:39 -!- digital_me has joined.
05:50:05 -!- pgimeno has quit (Connection reset by peer).
05:50:11 -!- pgimeno_ has joined.
05:50:30 -!- pgimeno_ has changed nick to pgimeno.
06:22:02 <SimonRC> zzzzz
06:33:31 -!- digital_me has quit ("Lost terminal").
06:54:34 -!- oerjan has joined.
07:15:05 <bsmntbombdood> hi
07:15:10 <oerjan> ho
07:16:34 -!- anonfunc has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:00:21 -!- sgeo_ has joined.
08:33:37 -!- helios24 has joined.
09:50:10 -!- Sgeo has quit (SendQ exceeded).
10:10:11 <oklopol> haha i just invented lazy evaluation :D
10:10:41 <oerjan> next: fire or the wheel? :)
10:10:48 <oerjan> or maybe sliced bread
10:11:30 <oklopol> thought i should invent a way to use map so that it only needed to evaluate as the values are actually needed... then i had this incredible idea of generalizing this so that NOTHING is done unless needed...
10:12:07 <oerjan> why how absurd.
10:12:13 <oklopol> i wish i'd born in the fifties
10:13:36 <oerjan> do you read Lambda the Ultimate? There was a recent thread on "the golden age" of the sixties and seventies.
10:13:47 <oklopol> nope, what's it?
10:13:57 <oklopol> sounds something i'd like to read
10:14:00 <oklopol> *like
10:14:14 <oerjan> it's a weblog about programming languages, at http://lambda-the-ultimate.org/
10:15:27 <oerjan> it is often very high-level, though.
10:15:33 -!- sebbu has joined.
10:16:05 <oklopol> high-level?
10:16:05 <oerjan> they encourage links to research articles and the like.
10:16:13 <oklopol> oh
10:16:21 <oklopol> you mean i wouldn't understand it?
10:17:13 <oerjan> well maybe not all of it, but there is somewhat lighter fare on its "discussion forum"
10:18:19 <oerjan> which actually is the majority of threads.
10:18:22 <oklopol> where can i see an article list there?
10:18:29 <oklopol> or how does it work?
10:18:34 <oklopol> i'm not that practical
10:18:45 <oklopol> oh
10:18:59 <oklopol> the front page changes daily and contains the link to the article?
10:19:16 <oklopol> complicated
10:19:38 <oklopol> too much text and links, there should just be a big button
10:19:42 <oerjan> changes immediately with a new main topic, i guess.
10:19:43 <oklopol> in the middle
10:19:56 <oerjan> huh?
10:20:08 <oklopol> a link to the article of the day :D
10:20:20 <oklopol> i get dizzy when there's so much links
10:20:28 <oklopol> i figured it now though
10:20:34 <oerjan> there can be more than one article, and there are several editors.
10:21:16 <oerjan> since i follow it every day, i like to read it from the Recent Posts subpage. Logging in helps then since new articles are marked.
10:21:33 <oerjan> *articles and comments
10:22:19 <oerjan> besides the main page doesn't contain the forum topics.
10:24:40 <oerjan> btw the topic i mentioned at the start is first on the next page.
10:31:47 <oklopol> i understand the article they have now
10:32:37 <oklopol> i think i might start reading daily, i like reading junk, usually just randomly search for that kind of stuff
10:32:53 <oerjan> heh
10:33:28 <oklopol> i happen to know erlang and actors quite well though
10:33:48 <oklopol> but maybe i know everything, i don't know what i don't know
10:33:56 <oklopol> i don't know cobol though, i wanna know it
10:34:03 <oklopol> i'll go now- -- - - ->
10:34:08 <oklopol> time is scarce!
10:34:09 <oerjan> shhh :)
10:34:31 <oklopol> you shut up!
10:36:47 -!- nazgjunk has joined.
10:45:34 -!- kxspxr has joined.
11:37:18 -!- oerjan has quit ("leaving").
11:40:08 -!- tgwizard has joined.
11:53:08 -!- nazgjunk has changed nick to timonator`.
11:53:18 -!- timonator` has changed nick to nazgjunk.
12:13:50 -!- ihope has joined.
12:14:13 -!- ihope has quit (Client Quit).
13:11:58 -!- anonfunc has quit.
13:25:25 -!- alex89ru has joined.
14:04:09 -!- goban has quit (Remote closed the connection).
14:04:28 -!- goban has joined.
14:10:01 -!- alex89ru has quit (Remote closed the connection).
14:13:26 -!- tokigun has quit (Read error: 110 (Connection timed out)).
15:04:06 -!- goban has quit (Read error: 104 (Connection reset by peer)).
15:04:18 -!- goban has joined.
15:25:55 -!- UpTheDownstair has joined.
15:25:55 -!- nazgjunk has quit (Read error: 104 (Connection reset by peer)).
15:29:48 -!- oerjan has joined.
15:30:56 <oerjan> what is the word for an explanation why something might be worth considering?
15:40:14 <oerjan> *sigh* i'll try with "rationale"
15:55:44 <kxspxr> "because" ;)
15:55:59 <oerjan> wrong word class, sorry.
15:56:19 <kxspxr> just joking
15:56:21 <oerjan> anyway it was just for an edit summary
15:56:29 <kxspxr> i figured
16:20:07 -!- goban has quit (Remote closed the connection).
16:20:40 -!- goban has joined.
16:25:48 -!- digital_me has joined.
16:30:33 -!- goban has quit (Read error: 104 (Connection reset by peer)).
16:30:49 -!- goban has joined.
17:05:05 -!- Sukoshi has quit (Read error: 104 (Connection reset by peer)).
17:19:13 -!- UpTheDownstair has changed nick to nazgjunk.
17:21:33 -!- sgeo_ has changed nick to Sgeo.
17:23:50 -!- goban has quit (Read error: 104 (Connection reset by peer)).
17:28:36 -!- goban has joined.
17:34:24 -!- wooby has joined.
18:03:53 -!- Sukoshi has joined.
18:41:03 <bsmntbombdood> nothing wrong with research papers
18:41:23 <bsmntbombdood> ha
18:41:26 <bsmntbombdood> "Lowering: A Static Optimization Technique for Transparent Functional Reactivity"
18:41:59 <SimonRC> SevenInchBread: http://doi.acm.org/10.1145/142137.142162
18:42:24 <SimonRC> "02:11 < SevenInchBread> I wonder if you could take advantage of swapping two values in an esolang."
18:42:51 <bsmntbombdood> side effects ftl
18:42:58 <oerjan> um, he has heard of Smetana, hasn't he? :)
18:43:18 <oerjan> and Smatiny
18:43:24 <bsmntbombdood> bah!
18:43:37 <bsmntbombdood> my ski reducer won't quit when I tell it o
18:44:31 <oerjan> how are you telling it to quit?
18:44:50 <bsmntbombdood> by entering the quit command
18:45:37 <oerjan> is it doing threads?
18:45:46 <bsmntbombdood> no
18:46:20 <bsmntbombdood> oooh i should put it in bsmntbombdood
18:46:26 <bsmntbombdood> bot
18:47:22 <bsmntbombdood> ~exec import ski_repl
18:47:26 <bsmntbombdood> oops
18:47:54 <bsmntbombdood> hmm
18:48:02 <oerjan> hopefully you are not using print in it.
18:48:13 <bsmntbombdood> i need to fix it a little
18:48:33 <oerjan> or you would hit the stdout problem :)
18:49:01 <bsmntbombdood> ~exec import ski_repl
18:49:11 <bsmntbombdood> ~exec sys.stdout(ski_repl)
18:49:19 <bsmntbombdood> ...
18:49:21 <bsmnt_bot> <module 'ski_repl' from '/bot/ski_repl.py'>
18:49:25 <bsmntbombdood> bout time
18:49:40 <bsmntbombdood> ~exec sys.stdout(ski_repl.parse("```Sxyz")
18:49:54 <bsmntbombdood> ~exec sys.stdout(ski_repl.parse("```Sxyz"))
18:49:55 <bsmnt_bot> [[['S', 'x'], 'y'], 'z']
18:50:18 <SimonRC> If you haven't seen it, read the link I just gave about Linear LISP.
18:50:22 <SimonRC> LL Rox!
18:51:08 <SimonRC> O(1) copy, O(1) equality testing, EQ is the same as EQUAL, and no GC required!
18:51:51 <bsmntbombdood> ~exec self.register_raw(r"\S+ PRIVMSG (\S+) :~ski (.*)", lambda x,y: bot.raw("PRIVMSG %s :%s" % (y.group(1), ski_repl.unparse(ski_repl.simp(ski_repl.parse(y.group(2))))))
18:52:05 <bsmntbombdood> argh
18:52:05 <SimonRC> And there is no sharing, so you can mutate values as much as you like without worrying about other uses of them. REVERSE == NREVERSE. SORT == NSORT. etc
18:52:29 <bsmntbombdood> ~exec self.register_raw(r"\S+ PRIVMSG (\S+) :~ski (.*)", lambda x,y: bot.raw("PRIVMSG %s :%s" % (y.group(1), ski_repl.unparse(ski_repl.simp(ski_repl.parse(y.group(2)))))))
18:52:39 <bsmntbombdood> ~ski ```Sxyz
18:52:40 -!- bsmnt_bot has quit (Remote closed the connection).
18:52:44 -!- bsmnt_bot has joined.
18:52:46 <bsmntbombdood> ???
18:53:09 <bsmntbombdood> i didn't see any errors anywhere
18:53:11 <bsmntbombdood> ~exec self.register_raw(r"\S+ PRIVMSG (\S+) :~ski (.*)", lambda x,y: bot.raw("PRIVMSG %s :%s" % (y.group(1), ski_repl.unparse(ski_repl.simp(ski_repl.parse(y.group(2)))))))
18:53:18 <bsmntbombdood> ~ski ``Kxy
18:53:19 -!- bsmnt_bot has quit (Remote closed the connection).
18:53:21 -!- bsmnt_bot has joined.
18:53:28 <bsmntbombdood> that time i did
18:53:37 <bsmntbombdood> oh
18:53:46 <bsmntbombdood> PYTHON CLOSURES ARE BROKEN
18:53:49 <bsmntbombdood> I HATE PYTHON
18:54:07 <SimonRC> Use Haskell then.
18:54:11 <bsmntbombdood> ~exec globals()["ski_repl"] = __import__("ski_repl")
18:54:19 <bsmntbombdood> ~exec self.register_raw(r"\S+ PRIVMSG (\S+) :~ski (.*)", lambda x,y: bot.raw("PRIVMSG %s :%s" % (y.group(1), ski_repl.unparse(ski_repl.simp(ski_repl.parse(y.group(2)))))))
18:54:24 <SimonRC> ouch
18:54:27 <bsmntbombdood> ~ski ``Kxy
18:54:27 <bsmnt_bot> x
18:54:30 <bsmntbombdood> bout time
18:54:37 <bsmntbombdood> ~ski ```Sxyz
18:54:38 <bsmnt_bot> ``xz`yz
18:54:40 <bsmntbombdood> guten
18:54:42 <oerjan> ~ski ``sii``sii
18:54:42 <bsmnt_bot> ``sii
18:54:50 <oerjan> ~ski ```sii``sii
18:54:50 <bsmnt_bot> ```sii``sii
18:54:57 <bsmntbombdood> yep
18:55:08 <oerjan> eh...
18:55:15 <oerjan> ~ski ```SII``SII
18:55:15 <bsmnt_bot> ```SII``SII
18:55:25 <bsmntbombdood> sometimes it leaves things partially unreduced though
18:55:37 <oerjan> how ... convenient
18:55:48 <bsmntbombdood> ~ski ``K``Kxyz
18:55:49 <bsmnt_bot> x
18:56:29 * SimonRC tries to remember what the simple infinite loop is.
18:56:39 <oerjan> that's the one i did
18:56:42 <bsmntbombdood> SimonRC: ```SII``SII
18:56:57 <bsmntbombdood> for example:
18:57:04 <bsmntbombdood> ~ski ````S`KKIxy
18:57:05 <bsmnt_bot> ``Kxy
18:57:07 <bsmntbombdood> :/
18:58:01 <oerjan> so it is not actually _meant_ to stop prematurely?
18:58:12 -!- kxspxr has quit.
18:58:12 <bsmntbombdood> i dunno
18:58:38 <bsmntbombdood> don't think there's a way not to
18:59:19 <oerjan> eh, it's called "correct implementation" ;)
19:00:20 <oerjan> let me see that code.
19:02:09 <bsmntbombdood> http://bsmntbombdood.mooo.com/ski_repl.py
19:02:44 <SimonRC> Gargh! What twat at mozilla decided the put the "quit without confirmation" key right next to the "close tab" key.
19:03:18 <oerjan> :D
19:10:16 <oerjan> i think i know a way to fix that simp.
19:10:51 <oerjan> Simplify simp[0] _before_ checking for the test cases.
19:11:13 <oerjan> *t[0]
19:11:45 <bsmntbombdood> hmm
19:12:32 <bsmntbombdood> brilliant
19:13:31 <bsmntbombdood> except, ```SII`SII crashes it
19:13:45 <SimonRC> bsmntbombdood: well, duh
19:13:48 <oerjan> why, isn't that the point? ;)
19:13:53 <SimonRC> that's a good sign
19:13:57 <oerjan> Then you need to include a resource limit.
19:14:01 <SimonRC> indeed you do
19:14:16 <SimonRC> keep track of the number of reductions that take place or something
19:14:18 <bsmntbombdood> how?
19:14:24 <bsmntbombdood> hmmm
19:15:24 <SimonRC> well, have a variable that contains the number of applications that have taken place so far, and increase it whenever you do an application
19:16:50 <oerjan> it should be enough to do it for the S case.
19:17:12 <oerjan> since that is the only one that can increase the expression size.
19:17:30 <oerjan> *not decrease
19:19:00 <bsmntbombdood> k
19:19:09 <bsmntbombdood> $ ```SII``SII
19:19:10 <bsmntbombdood> ```SII`I``SII
19:20:33 <bsmntbombdood> ~exec reload(ski_repl)
19:20:46 <bsmntbombdood> ~ski ```SII``SII
19:20:55 <bsmnt_bot> ```SII``SII
19:21:04 <bsmntbombdood> bah
19:21:13 <bsmntbombdood> ~exec del ski_repl
19:21:43 <bsmntbombdood> ~exec globals()["ski_repl"] = __import__("ski_repl")
19:21:54 <bsmntbombdood> ~exec self.register_raw(r"\S+ PRIVMSG (\S+) :~ski (.*)", lambda x,y: bot.raw("PRIVMSG %s :%s" % (y.group(1), ski_repl.unparse(ski_repl.simp(ski_repl.parse(y.group(2)))))))
19:22:00 <bsmntbombdood> ~ski ```SII``SII
19:22:01 <bsmnt_bot> ```SII`I``SII
19:22:01 <bsmnt_bot> ```SII`I``SII
19:22:07 <bsmntbombdood> there
19:22:14 <bsmntbombdood> ~exec self.raw_regex_queue.pop()
19:22:18 <bsmntbombdood> ~ski ```SII``SII
19:22:19 <bsmnt_bot> ```SII`I``SII
19:22:33 <bsmntbombdood> :/
19:22:41 <oerjan> problem?
19:22:43 <bsmntbombdood> ~ski ````S`KKIxy
19:22:44 <bsmnt_bot> x
19:22:48 <bsmntbombdood> that works
19:23:02 <bsmntbombdood> well, ```SII`I``SII isn't all the way simplified
19:23:23 <oerjan> well i take it you have to stop somewhere?
19:23:27 <bsmntbombdood> yeah
19:23:32 <bsmntbombdood> but the I
19:24:14 <oerjan> what does your new simp return when the resource limit is exceeded?
19:24:22 <bsmntbombdood> its argument
19:24:43 <oerjan> and where is that limit checked?
19:24:51 <bsmntbombdood> in the S clause
19:25:29 <oerjan> hm... simplify t[1] before returning even in that case.
19:26:06 <bsmntbombdood> brilliant
19:26:09 <oerjan> then only S reductions will be avoided, I think.
19:26:40 <bsmntbombdood> ~exec globals()["ski_repl"] = __import__("ski_repl")
19:26:46 <bsmntbombdood> ~ski ```SII``SII
19:26:47 <bsmnt_bot> ```SII`I``SII
19:27:00 <bsmntbombdood> ~exec self.raw_regex_queue.pop()
19:27:03 <bsmntbombdood> ~exec globals()["ski_repl"] = __import__("ski_repl")
19:27:09 <bsmntbombdood> ~exec self.register_raw(r"\S+ PRIVMSG (\S+) :~ski (.*)", lambda x,y: bot.raw("PRIVMSG %s :%s" % (y.group(1), ski_repl.unparse(ski_repl.simp(ski_repl.parse(y.group(2)))))))
19:27:13 <bsmntbombdood> ~ski ```SII``SII
19:27:14 <bsmnt_bot> ```SII`I``SII
19:27:18 <bsmntbombdood> ?
19:28:09 <bsmntbombdood> ~exec del ski_repl
19:28:19 <bsmntbombdood> ~exec import ski_repl
19:28:34 <bsmntbombdood> ~exec reload(ski_repl)
19:28:42 <bsmntbombdood> ~exec globals()["ski_repl"] = __import__("ski_repl")
19:28:49 <bsmntbombdood> ~exec self.register_raw(r"\S+ PRIVMSG (\S+) :~ski (.*)", lambda x,y: bot.raw("PRIVMSG %s :%s" % (y.group(1), ski_repl.unparse(ski_repl.simp(ski_repl.parse(y.group(2)))))))
19:28:53 <bsmntbombdood> ~ski ```SII``SII
19:28:54 <bsmnt_bot> ```SII``SII
19:28:54 <bsmnt_bot> ```SII``SII
19:29:05 <bsmntbombdood> ~exec self.raw_regex_queue.pop()
19:29:06 * oerjan wonders how much of that is actually necessary
19:29:06 <bsmntbombdood> finally
19:29:11 <bsmntbombdood> me too
19:31:30 <oerjan> globals are looked up every time they are referenced, not? So you should definitely not need to redo the register_raw.
19:32:10 <bsmntbombdood> dunno
19:32:23 <bsmntbombdood> i'm beggining to hate python's scoping
19:32:50 <oerjan> it's not perfect for functional programming, i take.
19:40:56 -!- jix__ has joined.
19:44:27 <bsmntbombdood> ~exec x = 12
19:45:08 <bsmntbombdood> ~exec self.register_raw(".*tell me x.*", lambda m: self.raw("PRIVMSG #esoteric :%s" % x))
19:45:18 <bsmntbombdood> tell me x
19:45:18 -!- bsmnt_bot has quit (Remote closed the connection).
19:45:21 -!- bsmnt_bot has joined.
19:45:32 <bsmntbombdood> gah
19:45:36 <bsmntbombdood> ~exec self.register_raw(".*tell me x.*", lambda m: self.raw("PRIVMSG #esoteric :%s" % x))
19:45:49 <bsmntbombdood> ~exec x = 12
19:46:16 <bsmntbombdood> ~exec self.raw_regex_queue[-1][1].func_globals = locals()
19:46:24 <bsmntbombdood> wtf
19:46:50 <bsmntbombdood> lame
20:09:37 -!- sebbu2 has joined.
20:10:08 -!- jix__ has quit (Read error: 104 (Connection reset by peer)).
20:14:25 -!- kxspxr has joined.
20:15:07 -!- kxspxr has quit (Client Quit).
20:28:37 -!- sebbu has quit (Connection timed out).
20:29:35 <SimonRC> ooh, esoteric: http://home.pipeline.com/~hbaker1/sigplannotices/COMFY.TXT
20:32:15 -!- jix__ has joined.
20:38:33 <oerjan> appears to be seriously intended, on first look. If that is Vaughan Pratt mentioned, I think I remember him for writing about "Chu Spaces" as models of linear logic.
20:39:39 <oerjan> although this seems much earlier, if those 60's references are a guide.
20:40:54 <oerjan> On the other hand, you could say it was in the Golden Age, when you could get research funding for being esoteric :)
21:08:29 -!- calamari has joined.
21:28:28 <GregorR> Heeeeeeeeeeeeeeeeeeeeeey calamari, you speak Java ... ^^
21:29:05 <calamari> hi GregorR
21:29:19 <calamari> my Java might be a little rusty now
21:29:23 <GregorR> >_>
21:29:30 <GregorR> <_<
21:29:35 <calamari> but we can speak JCL if you'd like
21:30:08 <oerjan> JCL? The infamous IBM language?
21:30:13 <GregorR> http://groups.google.com/group/nestedvm/browse_thread/thread/f11cc0b0e9a9b584 < I need sys_select in NestedVM to port Java.
21:30:14 <calamari> yeah
21:30:15 -!- goban has quit (Read error: 104 (Connection reset by peer)).
21:30:16 <GregorR> Erm
21:30:19 <GregorR> To port DirectNet.
21:30:29 <GregorR> But reading that code just makes my head swim :(
21:30:30 -!- goban has joined.
21:33:38 <calamari> why are you porting a perfectly good c++ program to java? seems rather cruel
21:34:10 <calamari> I'm taking c++ this semester
21:34:20 <calamari> pretty neat class
21:37:11 <SimonRC> lack of GC sucks
21:37:24 <SimonRC> it makes the object's allocation policies into part of its interface
21:38:08 <GregorR> Hah
21:38:14 <GregorR> SimonRC: Blah blah blah don't care.
21:38:23 <GregorR> calamari: I'm just trying to make it usable from Java so I can make an applet of it.
21:38:40 <GregorR> SimonRC: Blah blah blah it's not built in, get yourself Boehm GC and shaddap ^^
21:39:09 <calamari> and you're sure you need select?
21:39:23 <calamari> I don't think I've needed that for any of my java irc stuff
21:39:39 <GregorR> calamari: IRC only had one socket, no?
21:39:47 <calamari> yes
21:39:54 <GregorR> calamari: DirectNet has X sockets.
21:40:01 <GregorR> calamari: Where X is a number often greater than 1.
21:40:04 <calamari> and threads is bad?
21:40:22 <calamari> well, I guess threads don't really scale well
21:40:26 <GregorR> I stopped using threads in DN a long time ago ... and NestedVM doesn't have threads support.
21:40:31 <calamari> so I see your point
21:41:24 <calamari> unfortunately my knowledge of nio is nil, sorry
21:41:39 <calamari> let me look it up tho
21:41:56 <GregorR> I don't want you to go out of your way, I just thought this whole junk may be easier than I thought ;)
21:43:02 <calamari> or you could write some kind of browser plugin to support c++ programs ;)
21:43:35 <calamari> then the user would hate you when they go to a site and it wipes their system due to lack of security
21:43:40 <calamari> so scratch that
21:44:36 <GregorR> :P
21:44:51 <calamari> GregorR: btw where do you work?
21:45:00 <calamari> don't say microsoft
21:45:00 <GregorR> At
21:45:02 <GregorR> Segmentation fault
21:45:10 <GregorR> (core dumped)
21:45:18 <calamari> need a job?
21:45:18 <GregorR> Sorry, tried to dereference a NULL pointer.
21:45:25 <GregorR> Somewhat, not desperately.
21:45:31 <calamari> graduated?
21:45:33 <GregorR> No
21:45:50 <GregorR> I still have 1.5 years 'til I have an undergrad degree.
21:45:55 <calamari> IBM has it's embedded Linux operations in Oregon
21:46:11 <calamari> thought you might enjoy something like that
21:46:18 <GregorR> I definitely would.
21:46:21 <GregorR> But couldn't get the job :P
21:46:24 <calamari> why not
21:46:28 -!- tgwizard has quit (Read error: 110 (Connection timed out)).
21:46:40 <calamari> I could put in a good word for you
21:46:41 <GregorR> Well, lesse ... I have no degree.
21:46:44 <GregorR> P
21:46:46 <GregorR> *:P
21:46:52 <calamari> you could be a co-op first, not a problem
21:46:59 <calamari> that's what I'm doing now
21:47:11 <fizzie> Co-op first, deathmatch later. (Sorry, free association.)
21:47:18 <calamari> haha
21:47:40 <GregorR> Hmmmmmmmmmmmmmm
21:47:42 <GregorR> Tempting.
21:47:49 <calamari> It's kinda nice because once you graduate you are pretty much guaranteed a job as long as you do a good job
21:48:01 <GregorR> Well, I intend on going to grad school.
21:48:12 <calamari> haha, sucker!
21:48:21 <GregorR> I'm considering professorship *shrugs*
21:48:31 <calamari> they have tuition reimbursement
21:48:39 <GregorR> Hm+
21:48:53 <calamari> those who can, do.. those who can't, teach
21:49:17 <GregorR> Ouch :P
21:51:25 <calamari> anyhow, if you'd like me to forward it on to a guy I know in that dept.. send me your resume jeffryj at us ibm com
21:52:04 <SimonRC> Boehm GC has a few points of suckitude: If there is a fake pointer to the head of a list, and that list is continually created at the tail by one routine and destroyed at the head by another, then memory usage will grow indefinitely, as the fake pointer prevents *any* of the list from being collected.
21:52:18 <SimonRC> Plus compiler optimisations can seriously fuck it up.
21:56:28 <calamari> can't wait to build my computer.. want to try out linux amd64
22:01:29 <calamari> hmm, ubuntu came out in 2004 so it looks like I've been using linux for about 2 1/2 years
22:15:54 * SimonRC finds out that the Inform library is even cruftier than he remembered.
22:16:10 -!- goban has quit (Connection timed out).
22:16:13 <SimonRC> the main parsing routine is a sight to behold
22:16:19 -!- goban has joined.
22:17:14 <SimonRC> 1200 lines of code, repeatedly re-using the half-a-dozen local variables to which it is restricted.
22:17:24 <SimonRC> Dozens of GOTOs
22:17:35 <SimonRC> and a map at the beginning to help you understand it all.
22:19:05 <SimonRC> The fact that it has to handle english grammar, loads of exceptions, and must call and pay attention to a vast set of hooks doesn't help either.
22:21:02 <SimonRC> oh, yeah, and it's written in a language mostly less powerful than C.
22:21:28 <bsmntbombdood> fun
22:22:01 -!- goban has quit (Read error: 104 (Connection reset by peer)).
22:22:03 <bsmntbombdood> GC is messed up
22:22:14 <bsmntbombdood> It's impossible to do right
22:27:27 <oerjan> is this intended to be a general statement? :)
22:32:29 <bsmntbombdood> what?
22:32:56 <oerjan> about GC
22:33:03 <bsmntbombdood> yeah
22:43:11 -!- goban has joined.
22:49:03 <bsmntbombdood> I was reading mccarthy's gc from the lisp paper
22:49:06 <bsmntbombdood> it made me cry
22:50:47 <oerjan> what about it? not that i know/remember the details, but it is hardly the state of the art.
22:51:00 <bsmntbombdood> it's so slow
22:51:13 <bsmntbombdood> it iterates through the entire memory like 4 times each run
22:53:43 <oerjan> that's sort of like crying because Turing machines are slow... :)
22:54:13 <bsmntbombdood> not really
22:56:26 -!- SevenInchBread has quit ("haaaaaaaaaa").
23:21:16 -!- jix__ has quit ("Bitte waehlen Sie eine Beerdigungnachricht").
←2007-02-23 2007-02-24 2007-02-25→ ↑2007 ↑all