00:03:11 -!- bsmnt_bot has quit.
00:03:14 -!- bsmnt_bot has joined.
00:03:15 -!- bsmnt_bot has quit (Client Quit).
00:03:17 -!- bsmnt_bot has joined.
00:04:31 -!- bsmnt_bot has quit (Client Quit).
00:04:33 -!- bsmnt_bot has joined.
00:06:44 <ihope> ~exec self.do_quit = 3; self.exec_execer = 3
00:06:52 <ihope> ~exec self.raw("QUIT")
00:07:22 <ihope> Just for good measure, eh?
00:08:37 -!- bsmnt_bot has quit (Client Quit).
00:08:39 -!- bsmnt_bot has joined.
00:10:08 <bsmntbombdood> ~exec for i in self.raw_regex_queue: "~quit" not in i[0].pattern or sys.stdout(i[1])
00:10:09 <bsmnt_bot> <bound method IRCbot.do_quit of <__main__.IRCbot instance at 0xb7c0206c>>
00:10:24 <bsmntbombdood> ~exec for i in self.raw_regex_queue: "~quit" not in i[0].pattern or sys.stdout(type(i[1]))
00:10:58 <ihope> What's this or stuff?
00:11:09 <ihope> Rather, this "or" stuff.
00:12:27 <bsmntbombdood> ~exec ["~quit" not in i[0].pattern or sys.stdout(i[1]) for i in self.raw_regex_queue]
00:12:28 <bsmnt_bot> <bound method IRCbot.do_quit of <__main__.IRCbot instance at 0xb7c0206c>>
00:13:05 <bsmntbombdood> ~exec ["~quit" not in i[0].pattern or i[1]=3 for i in self.raw_regex_queue]
00:13:44 <bsmntbombdood> ~exec for i in self.raw_regex_queue: "~quit" not in i[0].pattern or i[1]=3
00:13:55 <bsmntbombdood> ~exec for i in self.raw_regex_queue: "~quit" not in i[0].pattern or sys.stdout(i[1])
00:13:57 <bsmnt_bot> <bound method IRCbot.do_quit of <__main__.IRCbot instance at 0xb7c0206c>>
00:14:53 -!- bsmnt_bot has quit ("Disconnected.").
00:14:55 -!- bsmnt_bot has joined.
00:15:07 -!- bsmnt_bot has quit (Client Quit).
00:15:09 -!- bsmnt_bot has joined.
00:15:49 <ihope> That wasn't me that was doing that, then, was it?
00:15:54 <ihope> ~exec self.register_raw(".*", lambda x: True)
00:15:58 -!- bsmnt_bot has quit (Client Quit).
00:15:59 -!- bsmnt_bot has joined.
00:16:38 <ihope> ~exec while True: self.register_raw(".*", lambda x: print x)
00:16:54 * ihope does something to print
00:17:23 <ihope> ~exec while True: self.register_raw(".*", lambda x: sys.stdout(x))
00:17:44 <bsmnt_bot> :bsmntbombdood!n=gavin@about/copyleft/user/bsmntbombdood PRIVMSG #esoteric :except no
00:17:45 -!- bsmnt_bot has quit (Excess Flood).
00:17:47 -!- bsmnt_bot has joined.
00:17:53 * ihope giggles slightly and/or cackles evilly
00:18:10 <ihope> ~exec self.register_raw(".*", lambda x: sys.stdout(x))
00:18:20 <ihope> Always fun, I'm sure, eh?
00:18:20 <bsmnt_bot> :ihope!n=ihope@tapthru/resident/ihope PRIVMSG #esoteric :Always fun, I'm sure, eh?
00:18:33 <ihope> Except now my client beeps every time I say something.
00:18:34 <bsmnt_bot> :ihope!n=ihope@tapthru/resident/ihope PRIVMSG #esoteric :Except now my client beeps every time I say something.
00:18:37 <bsmnt_bot> :bsmntbombdood!n=gavin@about/copyleft/user/bsmntbombdood PRIVMSG #esoteric :heh
00:18:50 <ihope> Quick! Get another bsmnt_bot!
00:18:51 <bsmnt_bot> :ihope!n=ihope@tapthru/resident/ihope PRIVMSG #esoteric :Quick! Get another bsmnt_bot!
00:19:10 <bsmnt_bot> :SevenInchBread!n=CakeProp@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :drfg
00:19:19 <bsmnt_bot> :SevenInchBread!n=CakeProp@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :<CTCP>ACTION AAAAAAAAAAAH<CTCP>
00:19:26 <bsmnt_bot> :SevenInchBread!n=CakeProp@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :AHA
00:19:31 <bsmnt_bot> :SevenInchBread!n=CakeProp@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :PWNT
00:19:42 <ihope> ~exec self.raw("QUIT")
00:19:42 <bsmnt_bot> :SevenInchBread!n=CakeProp@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake PRIVMSG #esoteric :ah
00:19:43 <bsmnt_bot> :ihope!n=ihope@tapthru/resident/ihope PRIVMSG #esoteric :~exec self.raw("QUIT")
00:19:43 -!- bsmnt_bot has quit (Client Quit).
00:19:45 -!- bsmnt_bot has joined.
00:20:26 <ihope> ~exec self.grah = lambda: self.register_raw(".*", lambda x: sys.stdout(x))
00:20:46 <ihope> Now wait a minute...
00:21:01 <ihope> self.register_raw(".*", lambda x: self.grah)
00:21:17 <ihope> ~exec self.register_raw(".*", lambda x: self.grah())
00:21:21 -!- bsmnt_bot has quit (Remote closed the connection).
00:21:23 -!- bsmnt_bot has joined.
00:24:39 <ihope> ~exec sys.stdout(os.system("bash"))
00:24:52 <ihope> That won't work, now, will it?
00:25:31 <bsmntbombdood> if you write a wrapper around os.popen with sockets, then you could get a shell
00:31:00 <bsmnt_bot> <open file 'bash', mode 'r' at 0xb7c2e0f8>
00:32:17 <bsmnt_bot> <open file 'bash', mode 'r' at 0xb7c2e0f8>
00:32:44 <ihope> Let's just sys.stdout everything...
00:33:04 <bsmntbombdood> ihope: I dunno how to get a return value from an exec
00:33:13 <bsmnt_bot> <closed file 'bash', mode 'r' at 0xb7c2e0f8>
00:33:27 <bsmnt_bot> <closed file 'bash', mode 'r' at 0xb7c2e0f8>
00:33:59 <bsmntbombdood> ~exec self.fd = __import__("popen2").popen2("bash")
00:34:06 <bsmnt_bot> (<open file '<fdopen>', mode 'r' at 0xb7c2ead0>, <open file '<fdopen>', mode 'w' at 0xb7c2e9f8>)
00:34:38 -!- calamari has joined.
00:35:14 <bsmnt_bot> (<open file '<fdopen>', mode 'r' at 0xb7c2ead0>, <open file '<fdopen>', mode 'w' at 0xb7c2e9f8>)
00:35:58 <bsmntbombdood> ~exec self.fd = __import__("popen2").popen2("bash -i")
00:36:07 <bsmnt_bot> (<open file '<fdopen>', mode 'r' at 0xb7c2eb18>, <open file '<fdopen>', mode 'w' at 0xb7c2e9b0>)
00:44:40 <oerjan> Maybe the file descriptor is set to non-blocking or something?
00:48:51 -!- na[zZz]gjunk has quit (Read error: 54 (Connection reset by peer)).
00:49:14 -!- nazgjunk has joined.
01:08:17 -!- calamari has quit ("Leaving").
01:46:09 <oerjan> ein neve, neven, nevar, nevane
01:48:29 -!- nazgjunk has quit (Success).
01:48:52 -!- nazgjunk has joined.
01:54:27 <lament> i think he meant "to snow"
01:56:20 <oerjan> I am looking at individual _cars_ on the Golden Gate bridge ...
01:58:04 <oerjan> It's a bit less resolution outside North America or so, alas. And some countries don't have maps at all.
01:58:11 -!- ihope has quit (Read error: 110 (Connection timed out)).
01:58:39 <oerjan> But the Eiffel tower and Taj Mahal looked good.
01:58:45 <SevenInchBread> Google sign to a partnership with some astronomy people to build a big telescope.
02:00:42 <oerjan> Alas there is little hope of zooming to uncharted places.
02:01:24 <oerjan> Got to go with what astronomers are interested in. Not that that would be a bad thing.
02:03:41 <oerjan> But you could probably get a good view of the Andromeda galaxy.
02:49:02 -!- nazgjunk has quit (Read error: 54 (Connection reset by peer)).
02:49:10 -!- nazgjunk has joined.
03:17:04 -!- calamari has joined.
03:18:05 -!- SevenInchBread has quit ("haaaaaaaaaa").
03:30:19 -!- ihope has joined.
03:39:15 * bsmntbombdood calculates sqrt(2) to within 1/1000000000000000000000000000000
03:49:22 -!- nazgjunk has quit (Read error: 104 (Connection reset by peer)).
03:49:40 -!- nazgjunk has joined.
03:56:13 <bsmntbombdood> (newtons-method (lambda (x) (- (square x) 2)) 1 1/1000000000000000000000000000000)
04:02:10 <oerjan> As long as tolerance is not so small that you get serious rounding off errors...
04:05:07 <oerjan> In which case using a larger dx than tolerance might be a good idea.
04:12:04 -!- ihope has quit (Read error: 110 (Connection timed out)).
05:35:20 -!- calamari has quit ("Leaving").
05:55:02 -!- nazgjunk has quit ("rawr. And, also: Bi-la Kaifa").
06:04:08 -!- anonfunc has joined.
06:08:44 -!- oerjan has quit ("Eeek").
06:11:46 -!- Sgeo has quit (Remote closed the connection).
06:34:16 -!- sp3tt has joined.
07:03:47 -!- Jessie has joined.
07:22:41 -!- Jessie has quit ("Chatzilla 0.9.77 [Firefox 2.0.0.1/2006120418]").
07:24:14 -!- anonfunc has quit.
07:26:01 -!- anonfunc has joined.
07:48:05 <mtve> sorry, i don't following this chan, so perhaps a dup: http://scienceblogs.com/goodmath/2007/01/a_pathological_challenge_prime.php
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:21:02 -!- lament has changed nick to lt.
08:22:07 -!- lt has changed nick to lament.
09:29:44 -!- terjek has joined.
09:33:42 -!- terjek has left (?).
10:15:46 -!- puzzlet has quit (Read error: 110 (Connection timed out)).
10:40:38 -!- puzzlet has joined.
11:48:16 -!- anonfunc has quit.
13:24:33 -!- nazgjunk has joined.
14:15:41 -!- calamari has joined.
14:25:30 -!- nazgjunk has quit (Read error: 54 (Connection reset by peer)).
14:25:48 -!- nazgjunk has joined.
14:32:14 -!- nazgjunk has quit (Read error: 104 (Connection reset by peer)).
14:32:45 -!- nazgjunk has joined.
15:49:15 -!- RodgerTheGreat has joined.
15:54:58 -!- puzzlet has quit (Read error: 54 (Connection reset by peer)).
15:55:06 -!- puzzlet has joined.
15:55:12 <calamari> not exactly sure how to put it into words
15:55:52 <calamari> but, take all gravitational force vectors, find the net force on the object in question.. draw a vector opposite that, should be up
15:56:35 <calamari> thanks, that's probably how to say it
16:29:46 -!- jix__ has joined.
16:31:38 -!- RodgerTheGreat has quit.
16:35:52 <GregorR> *ahem*: Up is the direction indicated by the vector opposite of that vector which represents the sum of all gravitational forces at a given location.
16:35:58 <GregorR> I use that one all the time.
16:50:10 -!- FabioNET has joined.
17:06:03 -!- digital_me has joined.
17:31:59 -!- nazgjunk has quit (Read error: 54 (Connection reset by peer)).
17:32:31 -!- nazgjunk has joined.
18:18:01 -!- sebbu has joined.
18:32:21 -!- puzzlet has quit (Read error: 110 (Connection timed out)).
19:02:09 <oklopol> yeah, it's my favorite too
19:08:26 -!- cmeme has quit (Connection reset by peer).
19:13:36 -!- cmeme has joined.
19:58:44 -!- digital_me_ has joined.
20:04:07 -!- sebbu2 has joined.
20:09:28 -!- digital_me has quit (Read error: 110 (Connection timed out)).
20:11:40 -!- sebbu has quit (Read error: 60 (Operation timed out)).
20:16:57 -!- sebbu2 has changed nick to sebbu.
20:38:55 -!- ihope has joined.
20:48:17 <ihope> Now, really. Everybody says "publicly" is in fact spelled "publicly", but many other words don't follow that rule. And I'm not talking about things like "musically".
20:48:57 <ihope> "Basically" is one example.
20:51:21 <SimonRC> There was a young hacker from Hull...
20:52:14 <SimonRC> Whose brain had a temporary lull...
20:53:00 <SimonRC> His program was crashed...
20:53:07 <SimonRC> And his data was trashed...
20:53:22 <SimonRC> When malloc() returned a NULL.
20:53:48 <ihope> Under what conditions does malloc() return a NULL?
20:53:55 <SimonRC> actually, that should be...
20:54:06 <ihope> What if the memory allocated actually starts at address 0? :-P
20:54:11 <SimonRC> "... 'Cause he didn;t check malloc() for NULL."
20:54:26 <SimonRC> nonono, malloc returns null if it is out of space
20:54:36 <ihope> That's the only time it does that?
20:54:49 <SimonRC> Or there is some other problem
20:54:53 <ihope> And all it returns is a pointer?
20:55:28 <SimonRC> in C++, the new keyword throws an exception instead, but I'm not sure about malloc().
20:55:29 <ihope> How are you supposed to tell why it failed, then?
20:55:54 <ihope> Write your own function to use instead of malloc()?
20:56:59 <ihope> I mean, surely malloc() was written.
20:58:39 <SimonRC> Indeed, it is quite possible to write malloc() in C.
20:58:52 <SimonRC> I would demonstrate, but I haven't the time :-(
21:01:38 <ihope> It might need a bit of system calling, of course.
21:01:42 <ihope> I mean, wouldn't it?
21:04:13 <SimonRC> If you want a fixed amount of space available for allocation, you can just have a large static array to hold it.
21:04:40 <ihope> Yeah, you could do that.
21:04:48 <SimonRC> If you want to be able to ask the OS, use os-specific calls to extend your address space
21:04:50 <ihope> What would you do if you ran out of memory, though?
21:05:29 <SimonRC> I recall that the Z-machine's malloc used a large fixed-size array.
21:05:46 <SimonRC> The glulx machine probably doe mamory-expansion, though
21:08:46 <ihope> You can achieve the same effect by first doing s/memory/memory/ then doing s/memory/mamory/. :-)
21:26:23 -!- Sgeo has joined.
21:54:02 -!- jix__ has quit ("Bitte waehlen Sie eine Beerdigungnachricht").
22:28:14 -!- SevenInchBread has joined.
22:30:43 -!- FabioNET has quit ("goood night").
22:34:32 <bsmntbombdood> C's method of reporting failures is the global errno variable
22:35:04 <bsmntbombdood> malloc sets errno to ENOMEM if it runs out of memory
22:36:56 <GregorR> It's also unfortunately in Java :(
22:38:02 <SevenInchBread> emacs is IDLE with a buffer list, annoying key combinations, and torturous configuration.
22:44:13 <ihope> SevenInchBread: I hear /usr/bin/env python > is a good editor.
22:45:06 * SevenInchBread loves programming, but hates the fanaticism it forms...
22:46:42 <ihope> Use Haskell. I don't see how you can survive with that mind-bending dynamic typing.
22:47:01 <ihope> And no currying! Sheesh!
22:49:08 <ihope> (Of course I'm ignoring the fact that it's perfectly possible to do currying in Python, though a little annoying.
22:49:09 <SevenInchBread> pfft, but how the hell could I possibly use monads... and static typing is like wearing a straightjacket.
22:49:42 <ihope> Oh, now you *want* to add functions together to get a string?
22:50:41 <ihope> Pff, I bet Python doesn't even have typeclasses.
22:51:15 * SevenInchBread is working on his own Smalltalk-like language at the moment.
22:51:39 <ihope> Smalltalk-like, eh?
22:52:12 <ihope> bsmntbombdood: it's interfaces from object-oriented stuff, except better.
22:52:14 <SevenInchBread> I've never -used- it... but it's Lispy enough that I can get basically how it works at least in spirit.
23:14:28 -!- calamari has quit ("Leaving").
23:16:09 -!- sebbu has quit ("@+").
23:17:33 <SevenInchBread> yeah okay, I see... you split the function into individual one-argument functions?
23:32:24 -!- digital_me_ has quit ("Lost terminal").
23:35:09 -!- nazgjunk has quit ("rawr. And, also: Bi-la Kaifa").
23:41:46 <ihope> SevenInchBread: pretty much.
23:46:21 -!- oerjan has joined.
23:52:14 <SevenInchBread> ihope, hmmm... it would be good for delaying a functions execution...
23:55:29 <oerjan> yeah, Ocaml has both and has to disallow currying when you use optional arguments
23:57:24 <oerjan> scheme doesn't have implicit currying.
23:58:27 <bsmntbombdood> (define (curry f . x) (lambda (a . rest) (apply f (append x (cons a rest)))))