2010-12-01: 00:00:02 avarything should be a pointer 00:00:13 like in a goddamn C# or something 00:01:03 -!- augur has joined. 00:01:05 Why is Factor more popular than Newspeak? 00:01:15 Why am I comparing apples and oranges? 00:01:17 Sgeo: SHUT 00:01:19 Sgeo: UP 00:01:23 00:01:28 what 00:01:33 ... so anyway, ok seriously, what's the easiest way to become nobody in a shell script 00:01:46 elliott, su nobody ? 00:01:48 or such 00:01:59 Wouldn't that require root access? 00:02:03 Vorpal: require's nobody's password. it, of course, has none. 00:02:13 elliott, root shouldn't need it 00:02:15 Vorpal: sudo works for any user, of course, but requires the user's password 00:02:18 Vorpal: indeed, i'm not root 00:02:26 elliott, then you can't change user 00:02:29 Vorpal: yes you can 00:02:35 elliott, and you can use sudo 00:02:37 $ sudo -u nobody whoami 00:02:38 [sudo] password for elliott: 00:02:38 nobody 00:02:40 elliott, to do it without password 00:02:43 as i said, pointlessly requires the user's password 00:02:52 also, i'd rather not depend on sudo 00:02:53 elliott, yes indeed sudo is suid root 00:02:56 that is why it can do it 00:02:59 yes... 00:02:59 su is suid root too 00:03:03 you still haven't answered my question 00:03:24 Stop trying to hack into nobody's account! nobody runs web servers! 00:03:24 elliott, but you can't do it without having root or *effectively having root thanks to being suid root* 00:03:33 (Or, well, should. Regular users shouldn't) 00:03:42 Vorpal: the latter is slightly acceptable. 00:03:45 Vorpal: the former is not 00:03:45 Sgeo, no it shouldn't. A special www user should 00:03:52 Vorpal, ah. 00:03:52 Vorpal: any user on a system should be able to build a package 00:03:56 elliott, the latter wouldn't work on the shell script 00:04:08 Vorpal: i could just write an asnobody.c 00:04:16 but... 00:04:16 elliott, sure 00:04:25 elliott, that is what you would have to do 00:04:26 i don't really like strictly more setuid programs than necessary :) 00:04:34 elliott, or use sudo with NOPASSWD 00:04:40 Vorpal: i'm tempted to 00:04:54 I think is is a bad idea though in general 00:04:56 Vorpal: (I wonder why there isn't an asnobody already, all it can do is reduce privileges...) 00:04:58 why? 00:05:16 elliott, it feels insecure. Could they mess up for other users also building packages? 00:05:39 elliott, what else on the system uses nobody? 00:05:39 Vorpal: not really 00:05:49 well 00:05:56 i guess they could rm -rf it 00:06:05 what we really need is asnewtemporaryuser :) 00:06:15 elliott, plash? 00:06:28 Vorpal: debian-specific, and WAY overblown for this 00:06:35 Vorpal: it's as simple as setuid(rand()) :P 00:06:37 well 00:06:44 Vorpal: it's as simple as setuid(max_uid_in_etc_passwd+rand()) :P 00:07:05 indeed 00:07:43 Vorpal: i might actually just use su here, it may end up that you need to run it as root anyway 00:07:48 Vorpal: due to busybox tar not having --owner= 00:08:37 elliott, why do you use busybox? 00:08:47 Vorpal: as opposed to? 00:08:53 elliott, also if you are packaging projects what about stuff that needs to install as separate uses 00:08:54 users* 00:09:00 elliott, just look at qmail for example 00:09:05 several different users 00:09:20 qmailq, qmails and so on iirc 00:09:21 Vorpal: --owner just changes the owners of the files 00:09:47 elliott, yes and they need to be different owners. Not all should be changed to root 00:09:54 Vorpal: postinstall script :P 00:09:58 ah 00:10:01 Vorpal: it's because packages aren't built as root for obvious reasons 00:10:05 i mean there's little other option really 00:10:17 night → 00:10:18 postinstall script for the rare such package is probably the easiest way 00:12:04 APNIC: 3.67 /8s in RIR Pool... And APNIC is extremely likely to get the last 2x/8s. 00:14:24 There's apparently work on NS3 00:14:35 -!- oerjan has quit (Quit: Good night). 00:20:34 pikhq: Question. Should I bother including cc in the build dependencies for any package? 00:20:38 Or libc? 00:20:40 I'm lazy, you see. 00:20:51 fakeroot is always an option. :p 00:20:53 elliott: I say "yes". 00:21:02 fizzie: requires dynamic linker. 00:21:07 fizzie: so no, in fact 00:21:16 pikhq: Yeah, but... who tries to compile a package without them? :P 00:21:24 Though most distros just say "If it's in the base system, it's not marked as a dependency of anything." 00:21:24 (Fine, fine...) 00:21:30 pikhq: No they don't! 00:21:36 Well. Debian doesn't. 00:22:22 Yeah, that's because Debian doesn't fuck around. 00:23:50 pikhq: I most definitely fuck around! 00:23:52 -!- Mathnerd314 has joined. 00:23:56 Well, fakeroot with some sort of ptrace-hooked syscalls, then. The elegant choice! 00:23:58 My package manager is like a piece of string! 00:24:00 Then there's less known problem of ASN depletion. 00:24:07 pikhq: The string is FLIMSY! 00:24:16 pikhq: Hey, an Actual Runtime Dependency for vi. 00:24:18 pikhq: (termcap) 00:24:24 pikhq: Well. termcap-db. 00:24:28 (Got a better name for that?) 00:24:53 # The preferred choice for ex on Linux distributions, other systems that 00:24:53 # provide a good termcap file, or when setting the TERMCAP environment 00:24:53 # variable is deemed sufficient, is the included 2.11BSD termcap library. 00:24:53 # 00:24:53 TERMLIB= termlib 00:25:07 Ilari: ... ASN depletion. 00:25:11 Ilari: Oh fuck. 00:25:33 pikhq: Oi oi oi we're naming packages here! Focus on the important stuff! 00:26:30 There's of course an upgraded spec that solves it. But you need upgraded systems to peer with AS with extended ASN... 00:26:31 Oh, it was extended to 32 bits a few years ago. I hope that the BGP routers actually have been updated. 00:26:53 pikhq: So what should I call the termcap db. :p 00:27:06 (Or is it all terminfo these days? As quoted, vi uses 2.11BSD termcap.) 00:27:06 elliott: termcap-db 00:27:09 (Are the files the same?) 00:27:50 pikhq: Not termdb? 00:27:58 Is there any other kind of terminal database other than termcap, really? 00:28:31 Terminfo. 00:28:54 pikhq: Can't that read termcap files? 00:29:03 At least ASN upgrade should be less of a hassle than IP upgrade, since only systems that peer with extended ASNs need to be upgraded. 00:29:39 pikhq: I mean, I really don't want to fuck around with terminfo because it uses binary files and crap. 00:30:06 pikhq: Please validate me :P 00:30:08 You can convert to/fro termcap file / terminfo database, at least up to some extent. 00:30:09 elliott: Pretty sure they're incompatible. 00:30:12 Bleh. 00:30:18 I'll just build everything with termcap and hope for the best. 00:30:22 Or, in fact. 00:30:28 pikhq: I'll offer both termcap and terminfo in the same package. 00:30:33 So, termdb. 00:30:54 There you go. 00:31:07 Yep. :P 00:31:20 Goodnight. 00:31:24 Hmm. Seems that some programs explicitly call out to termcap or terminfo... 00:31:34 -!- elliott has quit (Quit: Leaving). 00:31:35 Gag. 00:32:10 I don't seem to have termcap files anywhere any more. 00:36:14 -!- sftp has quit (Remote host closed the connection). 00:37:33 Debian seems to have thrown out their old "termcap-compat" package. (They just ship a ncurses "libtermcap" that actually reads terminfo; termcap-compat was for old code you couldn't for some reason or another recompile. And/or those people with custom termcap reading code.) 00:40:38 Already five years ago, in fact. 00:43:28 -!- Mathnerd314 has quit (Disconnected by services). 00:43:32 -!- Sasha has joined. 00:43:50 -!- Mathnerd314_ has joined. 00:44:26 -!- Mathnerd314_ has changed nick to Mathnerd314. 00:44:27 -!- oklofok has joined. 00:44:51 -!- Sasha2 has quit (Ping timeout: 245 seconds). 00:47:25 -!- oklopol has quit (Ping timeout: 245 seconds). 00:48:46 "Files are extremely important in current computing experience. Much too important. Files should be put in their place; they should be put away." 00:50:10 "Ultimately, it is about control: If you dont have a file system, it becomes harder for you to download content from unauthorized sources. This is also good for security, and in a perverse way, for the user experience. And its also good for software service providers." suddenly, I feel ill 00:51:19 I don't think this person actually supports that as a reason to get rid of file systems 00:53:17 everything implies a true proposition 00:54:21 (that file systems should be gotten rid of) 00:55:08 i don't really understand what he's saying 00:55:32 http://gbracha.blogspot.com/2010/02/nail-files.html 00:57:15 Spamusers fails at sodomy. 00:57:25 he's correct 00:57:30 the nail guy 01:00:08 i still don't see what the security thing was 01:00:36 does he assume that with objects comes some sort of not being able to download arbitrary objects and do whatever the fuck you want with them 01:00:52 -!- madbr has joined. 01:19:09 -!- Sasha2 has joined. 01:19:10 -!- Sasha has quit (Read error: Connection reset by peer). 01:21:12 -!- augur has quit (Remote host closed the connection). 01:22:14 -!- Sasha has joined. 01:23:22 -!- Sasha2 has quit (Ping timeout: 240 seconds). 01:34:36 -!- FireFly has quit (Quit: swatted to death). 01:46:23 "This proposal should be considered an emergency proposal. IANA 01:46:36 exhaustion is likely to occur prior to the next ARIN meeting." 01:46:37 -!- BeholdMyGlory has quit (Remote host closed the connection). 01:47:04 ... Looks like the depletion is expected to occur very soon... 01:47:10 Ilari: Hmm? 01:47:13 -!- GreaseMonkey has quit (Ping timeout: 272 seconds). 01:48:53 Looking at when APNIC could justify allocation, depleting the pool completely... The IANA depletion could occur at any moment. 01:49:04 The next ARIN meeting is apparently early April. 01:49:13 Wait, the IANA depletion could occur *any moment*? 01:49:23 Dang. 01:50:04 -!- GreaseMonkey has joined. 01:50:37 Formally, the depletion estimates have not changed because APNIC allocates last, but in practice, the date may have changed... 01:52:17 An that "at any moment" comes from global policies. APNIC probably could justify allocation even now. 01:52:19 So. D-day is basically any time in the next 5 months or so. 01:54:18 I think it is in next 3 and half months... 01:54:56 I'm allowing for *extreme* optimism. 01:57:26 Some bastard is going around suggesting that companies think about IPv6 migration "in the next 2-5 years". 01:57:40 By which time the Internet will have been full for several years. 01:57:42 o.O 01:58:02 Even Houston model, which seems optimistic predicts 04-Mar-2011 ... That's sightly over 3 months away... 01:58:25 Yeaaah. 01:59:19 Now there's new predictions about X-day this year. 01:59:34 Link? 02:00:25 So, celebrations in 3 months? 02:00:26 >:D 02:00:40 AFK SGU 02:01:00 * Gregor laughs maniacally 02:01:30 Prepare for having to do it sooner... A lot sooner... 02:03:05 Well, no official model predictions... But informal ones... 02:10:01 -!- Mathnerd314 has quit (Ping timeout: 255 seconds). 02:12:05 Wonder when next IPv6 allocation will occur (bringing the pool down to 505 blocks, which is under 99%)... 02:13:20 It amazes me that even 1% has been used. IPv6 is just so very, very large... 02:14:30 1 various block and 5 RIR blocks... IIRC, the actual amount of delegations is 0.027% or so... 02:14:57 *Ah*. 02:15:06 That is, those allocations are at about 2.7 or so... 02:15:10 *2.7% 02:15:10 It's being pieced up from the IANA in ridiculously large blocks, then. 02:15:35 /12s ... 1M * 2^32 networks. 02:15:58 Yeah, that's a pretty gigantic block. 02:21:53 Oh, and then there are 3456 blocks in undefined address ranges... 02:22:23 IPv6 address space is just gigantic. 02:24:20 Oh, right. Currently the IPv6 space is *only defined* in 2000::/3 02:27:50 Global unicast space, that is. There are also some other blocks, such as ULA space and broadcast space. 02:28:17 Wow. The "NFL International Series". A scheme whereby the NFL plays a regular season game in London. 02:28:37 ... I didn't know American football had any fans at all outside of North America. 02:31:29 -!- Zuu has quit (Read error: Connection reset by peer). 02:34:06 Heh... The "realtime" IPv4 depletion counter that uses the Houston model is down. 02:34:13 Hmm. There's an American football World Cup. The US didn't play in the first two. XD 02:37:04 -!- madbr has left (?). 02:38:29 <3 SGU 02:38:38 -!- Zuu has joined. 02:38:44 Although I almost thought... meh, no spoilers here 02:39:18 Ah, it works now. 02:47:20 To a character: "In case you forgot, [spoiler]" 02:47:33 I think the audience forgot 03:00:40 -!- augur has joined. 03:47:51 -!- guny has joined. 03:48:07 hi watch my music video!!! http://www.youtube.com/watch?v=A_Q6U2O-qx4 03:48:09 hi watch my music video!!! http://www.youtube.com/watch?v=A_Q6U2O-qx4 03:48:10 hi watch my music video!!! http://www.youtube.com/watch?v=A_Q6U2O-qx4 03:48:12 hi watch my music video!!! http://www.youtube.com/watch?v=A_Q6U2O-qx4 03:48:14 -!- guny has quit (Client Quit). 03:49:20 -!- zeotrope_ has quit (Ping timeout: 265 seconds). 03:51:10 -!- zeotrope has joined. 03:51:36 -!- zeotrope has changed nick to Guest75069. 04:08:39 -!- augur has quit (Remote host closed the connection). 04:11:16 -!- wareya has quit (Read error: Connection reset by peer). 04:12:35 -!- wareya has joined. 04:47:03 -!- GreaseMonkey has quit (Quit: ilua). 04:59:37 I hate being a polite programmer 04:59:44 Why do I have to say please :( 05:20:14 -!- yorick has quit (Read error: Operation timed out). 05:27:00 INTERCAL, I presume? 05:37:30 -!- augur has joined. 05:51:25 -!- wareya has quit (Ping timeout: 255 seconds). 05:52:08 -!- wareya has joined. 05:53:06 -!- yorick has joined. 06:02:30 -!- adu has joined. 06:02:53 -!- wareya has quit (Read error: Connection reset by peer). 06:03:28 -!- wareya has joined. 06:08:19 -!- wareya has quit (Ping timeout: 264 seconds). 06:09:17 "And when Simon Peyton Jones, one of the designers of Haskell, was asked why Haskell has only such a basic module system, he said that they didn't feel they were smart enough to design a real one. Let that sink in ... The designers of Haskell. Not smart." 06:09:21 http://stackoverflow.com/questions/4057973/osgi-like-modularity-in-other-programming-languages 06:09:25 Is... that a real thing? 06:14:32 lol 06:15:22 Sgeo: i've heard something similar 06:15:38 but SPJ didn't use the word "smart" in the version i read 06:16:01 he made it sound as tho it was "sufficient" the way it was 06:19:30 "The fact that one rarely needs more than one window is one of the things I really like about Hopscotch. Theres no need for a docking bar, or tabs for that matter. Tabs are popular these days, but they dont scale: they occupy valuable screen real estate, and beyond half a dozen or so become disorienting and unmanageable." 06:19:37 http://gbracha.blogspot.com/2008/07/debugging-visual-metaphors.html 06:19:44 So much for a tabbed Newspeak browser 06:24:51 wow OSGi sounds interesting 06:28:07 * Sgeo attempts to redirect adu to Newspeak 06:28:33 what's Newspeak 06:28:58 http://newspeaklanguage.org/ 06:29:10 It's the language fawned over in the answer to that SO question 06:30:30 SO? 06:31:17 -!- Goosey has quit (Remote host closed the connection). 06:32:44 StackOverflow 06:35:25 -!- Guest75069 has quit (Ping timeout: 260 seconds). 06:38:22 -!- yorick has quit (Read error: Operation timed out). 06:46:20 Sgeo: Newspeak sounds a lot like io 06:46:37 * Sgeo has only heard of IO and knows nothing about it 06:47:15 There are several languages I wish could have babies 06:47:34 Go + Io + Prolog + Haskell 06:47:55 that would be a cute kid 06:55:57 -!- yorick has joined. 07:02:41 -!- FireFly has joined. 07:10:16 -!- Sgeo has quit (Ping timeout: 245 seconds). 07:16:56 -!- wareya has joined. 07:18:08 Go + Io + Prolog + Haskell <-- how would that work? 07:18:37 well 07:19:02 adu, oh? you think so? 07:19:06 yes 07:19:23 -!- Sgeo has joined. 07:19:28 adu, I can't see how you could reconcile the imperative and purely functional aspects there 07:20:04 adu, and if you think it would work so well, why not implement it! 07:20:28 everything Go does would be of type IO () and everything Prolog does would be at the typeclass level 07:20:34 Io doesn't really fit 07:20:51 I don't know much about Io so I can't say anything about that 07:21:55 have to leave now, cya 07:22:02 There's pretty much a 1-to-1 mapping between (almost) anything imperative and Haskell's IO () 07:56:56 -!- perdito has quit (Ping timeout: 245 seconds). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:05:30 -!- adu has quit (Quit: adu). 08:14:26 -!- Sgeo has quit (Read error: Connection reset by peer). 08:28:45 -!- nooga has quit (Ping timeout: 272 seconds). 08:28:49 -!- nooga has joined. 08:38:36 fizzie: http://open.spotify.com/album/29dWA4uMn07qxfEAGO3wSh 09:06:01 -!- MigoMipo has joined. 09:08:18 -!- FireFly has quit (Quit: swatted to death). 09:18:15 -!- FireFly|n900 has quit (Ping timeout: 245 seconds). 09:20:18 -!- augur_ has joined. 09:20:19 -!- augur has quit (Read error: Connection reset by peer). 09:23:19 -!- atrapado has joined. 09:32:37 -!- FireFly|n900 has joined. 09:36:51 -!- MigoMipo has quit (Ping timeout: 265 seconds). 09:37:25 -!- FireFly|n900 has quit (Ping timeout: 245 seconds). 09:47:53 ineiros: "Uh." (Incidentally, I've never heard any of the in-game music.) 09:51:21 -!- FireFly|n900 has joined. 09:56:10 -!- FireFly|n900 has quit (Ping timeout: 245 seconds). 10:05:53 -!- perdito has joined. 10:10:36 -!- FireFly has joined. 10:20:34 -!- FireFly|n900 has joined. 10:24:47 uh 10:25:01 it appears that UK is paralyzed because of some minor snow 10:43:44 -!- MigoMipo has joined. 11:19:44 -!- myndzi has quit (Ping timeout: 250 seconds). 11:24:01 -!- nopseudoidea has joined. 11:40:28 -!- rodgort has quit (Quit: Coyote finally caught me). 11:40:39 -!- rodgort has joined. 11:41:54 -!- nopseudoidea has quit (Quit: Quitte). 11:52:54 -!- MigoMipo has quit (Quit: Quit). 11:55:45 -!- FireFly|n900 has quit (Ping timeout: 245 seconds). 12:10:02 -!- FireFly|n900 has joined. 12:20:55 -!- myndzi has joined. 12:22:59 -!- Sasha2 has joined. 12:24:59 -!- Sasha has quit (Ping timeout: 272 seconds). 12:42:44 -!- FireFly|n900 has quit (Ping timeout: 255 seconds). 12:42:44 -!- myndzi has quit (Read error: Connection reset by peer). 12:43:11 -!- myndzi has joined. 12:50:47 -!- FireFly|n900 has joined. 12:54:31 -!- myndzi has quit (Ping timeout: 264 seconds). 12:55:50 great 12:55:59 my raytracer now generates modern art 13:04:21 -!- myndzi has joined. 13:20:51 -!- elliott has joined. 13:22:32 -!- Phantom_Hoover has joined. 13:24:21 -!- Leonidas has quit (Ping timeout: 240 seconds). 13:24:25 -!- Leonidas has joined. 13:25:52 -!- sftp has joined. 13:38:11 -!- Phantom_Hoover_ has joined. 13:41:05 -!- oerjan has joined. 13:41:06 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds). 13:45:29 augur_: I find your recent statements about INTERCAL highly offensive 13:56:58 What were they? 13:58:03 http://www.reddit.com/r/programming/comments/eecvm/a_compiler_language_which_has_nothing_at_all_in/c17hc7w 13:58:22 I think ais523 and oerjan, accomplished INTERCAL programmers, would take great objection to this slight. 14:00:52 Appalling! 14:02:50 -!- FireFly|n900 has quit (Ping timeout: 255 seconds). 14:08:09 elliott: is your school closed? 14:08:20 yes. 14:08:25 hahhaha 14:08:34 i am unsure why you are laughing 14:08:38 like what... snow is toxic or what? 14:08:53 yes, yes it is. 14:09:20 more seriously, i don't suppose you comprehend the idea of driving in heavy snow that continues to fall being perhaps /dangerous/? 14:09:41 i do this during whole winter 14:10:18 nooga: i think we have firmly established that Poland has not quite come to grips with the concept of safety yet 14:10:26 it's not safety 14:10:42 ask some secure swedes 14:10:48 tehy've got shitloads of snow too 14:10:49 guess what, we don't all drive Volvos. 14:11:22 duh 14:11:54 hmm is it known which s gives SHA-1(s) = 0? 14:11:56 is there such an s? 14:12:12 -!- MigoMipo has joined. 14:12:14 http://img.wiadomosci24.pl/g2/4b/cd/83/11082_1162885840_b968_p.jpeg 14:12:19 + winter tires 14:12:29 + modern cars with ASR, BAS and whatever 14:12:33 and you're safe 14:13:08 nooga: yes, we do indeed remove snow from roads. guess what! we have rural areas. 14:13:15 guess what! it takes time to clear the snow from everywhere. 14:14:43 AWKWARDNESS 14:16:26 elliott, well, the schools reopened here today. 14:16:39 Even though the snow is considerably worse than yesterday. 14:16:55 Phantom_Hoover_: They decided they were open, and upon looking out the window immediately decided that no, they're not open. 14:17:20 But yeah, jesus christ, this snow. 14:17:27 elliott, nope, I went. Although we all went home at lunch. 14:17:37 Phantom_Hoover_: I meant here. 14:17:52 In the frigid southlands. 14:18:03 It's because our cretin of a First Minister said that the schools should reopen and they did, in spite of the police saying the opposite. 14:19:38 :F 14:19:52 ppl could just walk to school 14:20:05 That's what we mostly did. 14:20:09 nooga: i don't think you realise the kind of distances present in britain... 14:20:15 oh come on 14:20:22 It's still stupid, especially since the previous two days were both snow days. 14:20:37 even in poor Poland we've got schools max 3-4km from home 14:20:44 So apparently once the snow goes over a certain critical depth it ceases to matter. 14:20:47 in towns 14:20:50 nooga: do you delight in being really fucking stupid? 14:21:02 i delight annoying you :D 14:21:04 -!- nopseudoidea has joined. 14:23:14 Phantom_Hoover_: Quick! What's the SHA-1 hash of a directory? 14:23:43 A carrot! 14:23:58 Also, what's the SHA-1 algorithm? 14:24:20 Complicated. 14:27:51 Hash algorithms always are... 14:29:59 -!- FireFly|n900 has joined. 14:32:41 Phantom_Hoover_: Not so! 14:32:48 Phantom_Hoover_: http://en.wikipedia.org/wiki/CubeHash 14:32:56 Phantom_Hoover_: The SHA-3 competitor I'm rooting for, thanks djb. 14:33:04 (It's not "rooting" is it?) 14:34:27 -!- BeholdMyGlory has joined. 14:35:01 I don't think CubeHash is all *that* simpler; the wikipedia doesn't bother listing the round transformation, which is he usual add-rotate-swap-style mess, just like the SHA-1 compression function. 14:35:19 It *is* nice to see something that's not the usual Merkle–Damgård construction though. 14:37:31 fizzie: djb instantly simplifies everything he touches. duh. 14:37:57 schneier's function has been cryptanalysed a bit cuz he's a luzr 14:38:02 I should make "djb facts" 14:38:11 although I can't think of any :P 14:38:27 Merkle–Damgård construction 14:38:28 (Redirected from Merkle-Damgård construction) 14:38:29 what 14:38:55 It's a different sort of hyphen. 14:39:17 heh 14:39:27 the thing in the wikibox links to one that's redirected 14:39:28 someone fix that 14:39:41 And that someone could be you! 14:40:05 "Although no proof has been constructed, Oozlybub and Murphy is thought to be Turing-complete if and only if Goldbach's Conjecture is true." --cpressey 14:40:24 "Oozlybub and Murphy is a programming language. Despite appearances, this name refers to a single language. 14:40:24 The majority of the language is named Oozlybub. The fact that the language is not entirely named Oozlybub is named Murphy. 14:40:24 14:40:24 For the sake of providing an "olde tyme esoterickal de-sign", the language combines several unusual features, 14:40:26 including multiple interleaved parse streams, infinitely long variable names, gratuitously strong typing, and only-conjectural Turing completeness." 14:40:28 http://catseye.tc/projects/oozlybub-and-murphy/doc/website_oozlybub-and-murphy.html 14:41:18 It even has Unicode support! 14:44:10 cpressey is a monster 14:48:16 A monster! 14:51:40 BEAST! 14:53:38 -!- Sasha2 has quit (Read error: Connection reset by peer). 14:53:45 -!- Sasha has joined. 14:53:55 "That's true though. I invented DNA. I also invented the invention itself." --Peter Sunde, Pirate Bay co-founder 14:55:27 -!- augur_ has quit (Remote host closed the connection). 14:55:46 Hahaha! Huckabee wants to execute Assange. 14:55:53 -!- augur has joined. 14:56:30 -!- augur has quit (Read error: Connection reset by peer). 14:56:36 -!- augur has joined. 14:56:46 Weird, apparently the Lego MMO is extremely good. 14:56:54 That is not what I would expect at all. 14:57:01 "Finally, Julian Assange is no hero. He is a twit. He should not be made into a liberal icon. He gives hackers a bad name. He and his organization are indeed enemies of the U.S. government and the people represented by that government; they should be stopped, and they richly deserve to be punished for this latest leak. And that goes double for the person or people in the U.S. government who leaked the documents in the first place. None of t 14:57:01 hese people deserve your support any longer." 14:57:09 -- Larry Sanger, solidifying his reputation as... a twit. 14:57:43 (The rest of this "essay", if you can call it that -- http://www.larrysanger.org/wikileaks.html -- constitutes basically saying "Well, you see, they're MEANT to be private, because the government decided releasing them to the public would be a bad idea. Therefore it's dangerous to do so, and no government would ever abuse this! DUH.") 14:58:19 I have certain reservations about Wikileaks due to the whole "names of informants" thing, but I wouldn't go that far.. 14:58:29 Phantom_Hoover_: Um, they've been redacting names. 14:58:50 elliott, yes, but they didn't for that earlier military leak. 14:59:03 IIRC, they did. 14:59:03 Phantom_Hoover_: (They also asked the US government for *help* redacting information that could endanger people to minimise any risk. The US refused.) 14:59:09 (for the most recent leak) 15:00:57 -!- Sasha2 has joined. 15:01:10 -!- augur has quit (Ping timeout: 260 seconds). 15:01:32 -!- ais523 has joined. 15:01:33 elliott, oh, well. I approve, then. 15:01:59 I just love the chain of events there -- 15:02:26 Wikileaks: Hello, you know those documents we're going to release. We don't want anyone to get hurt; it's in your best interests to help us redact any information that could put people's lives at risk. 15:02:28 US: No. 15:02:30 [later] 15:02:37 Wikileaks: [releases documents] 15:02:52 US govt., mass media: That's IRRESPONSIBLE TERRORISM! Think of the LIVES at risk! 15:02:58 Hi ais523. 15:03:18 -!- Sasha has quit (Ping timeout: 265 seconds). 15:04:15 Wikileaks does good work 15:05:45 Even if its founder looks like a bit of a prat. 15:06:56 Phantom_Hoover_: Really? How? 15:07:12 The hair is... silly. 15:07:19 His... hair? Seriously? 15:07:36 Julian Assange is more a lightning rod than anything else, anyway -- you never hear about anyone but him and just about all you ever hear about him is negative; nobody else gets any shit. That's definitely intentional. 15:08:25 Phantom_Hoover_: Semi-relatedly, have you seen his old blahhg? http://web.archive.org/web/20071020051936/http://iq.org/ 15:08:26 Indeed. But his hair is still stupid. 15:08:29 It was on reddit a while ago. 15:09:31 -!- nopseudoidea has quit (Quit: Quitte). 15:10:35 ais523: in a file of " ", how would you denote a directory? 15:10:49 I've been using an sha-1 length of zeroes, but it's conceivable that some string could actually hash to 0. 15:11:24 " "? 15:11:25 With a / appended? 15:11:36 Phantom_Hoover_: Umm... what the hell is the SHA-1 hash of a directory? 15:18:10 Oh, right. 15:18:37 Make it "0", then append the / to the name so there's no chance of confusion, 15:19:53 Phantom_Hoover_: Just 0? Not 40 0s? 15:20:18 Fine. 15:20:44 Phantom_Hoover_: Hmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm. 15:22:34 Alternately: make it "", no hash. 15:23:14 Make it a random 40-digit hex string, and then change a single, random digit in there to a "g". 15:24:37 Forget my suggestions, use fizzie's. 15:24:52 fizzie: :D 15:25:21 It was optimized for confusion, of course. 15:26:06 fizzie, better: change a random 0 into an O. Or 1 into l. 15:26:38 No, I think the g is best. 15:26:45 Ooh! 15:26:53 Change one "a" into the identical, Cryllic "a". 15:27:00 (If there is no a in the string, regenerate it.) 15:27:13 those pesky crylls 15:28:12 Aren't crylls just palette-swapped trolls? 15:28:25 _possibly_ 15:28:57 fizzie, zuh? 15:29:37 You got 15 out of 19 Programming Language if You Know Their Creators. 15:30:01 elliott: I'd just leave the hash out 15:30:09 One mistake was really embarrassing... one or two of them I'm proud of... and the last one I just feel meh about. 15:30:13 ais523: But that's ugly! 15:30:18 or hash the directory itself, they are technically speaking files, just you can't read them via normal methods 15:30:36 LOL 15:30:38 http://www.sporcle.com/games/supreddit/prog_lang_wirth 15:30:39 "Can you name the Programming Language if You Know Their Creators? (Niklaus Wirth Edition)?" 15:30:45 best quiz ever 15:30:54 ais523: yeah, no :P 15:31:06 ais523: "cat" will cat a directory on NetBSD :) 15:31:09 as on plan9, but :) 15:31:16 hmm, is it decidable whether two regular expressions (actual regular expressions, without backreferences etc.) match the same set of strings? 15:31:32 Differences between Oberon-07 and Oberon 15:31:32 Niklaus Wirth, 8.8.2007 / 17.12.2007 15:31:32 Oberon-07 is a revision of the original language Oberon as defined in 1988/1990. 15:31:35 How is the man still alive... 15:31:38 ais523: I don't /think/ so 15:31:48 really? I was guessing yes 15:31:56 ais523: I know that you can't minimise a regexp to its provably shortest form, IIRC 15:31:58 oh, obviously yes 15:32:03 how? 15:32:10 for ordinary regular expressions, you can compile them into state machines 15:32:20 then because there's a finite number of states, you can bruteforce 15:32:38 oh, obviously 15:32:44 I feel silly now 15:32:55 ais523: yes it is decidable 15:33:07 yep, I feel a bit silly that I had to ask rather than figuring it out 15:33:16 you can do set difference and union 15:33:17 it's a lot less obvious with backreferences involved 15:33:23 "- Applied to values of type SET, the unary minus denotes the set complement, and the function 15:33:23 ABS yields the number of elements of a set. The relations <= and >= denote set inclusion." 15:33:42 from which you can construct xor of two languages 15:33:42 elliott: so you can do - on the empty set, and get a set of everything? 15:33:43 Zuh? 15:33:55 ais523: I sure hope so! 15:34:01 oerjan: hmm, that's a different proof from the one I gave, and requires assumptions I didn't know 15:34:15 I wonder why there is not more literature on I\Xi. 15:34:42 -!- MigoMipo has quit (Remote host closed the connection). 15:35:24 ais523: can I have permission to troll the esolangs wiki with a language 15:37:04 would the language be at all interesting in its own right? 15:37:14 I suppose being created for the purpose of trolling makes a language an esolang 15:37:16 ais523: a Turing-complete-and-no-greater language in which all programs nonetheless halt 15:37:18 (/me coughs at LOLCODE) 15:37:21 ais523: A regular expression is a DFA, you can construct the minimal equivalent DFA pretty easily, and the minimal DFA (up to state naming) accepting a particular regular language is unique; so just construct the DFA (might have an exponential number of states, though) and minimize it for both regexps; if they are the same, they match the same set of strings. 15:37:35 elliott: is that even theoretically possible? 15:37:37 ais523: of course, such a language is only implementable on a machine with a Turing machine halting oracle; I will, therefore, provide an implementation. In Banana Scheme. 15:37:52 fizzie: that was pretty close to my proof 15:37:54 elliott: go for it 15:37:56 ais523: it's theoretically possible on a super-Turing machine; if halts(X) then run(X) else done 15:38:22 hey, http://esolangs.org/wiki/Banana_Scheme has a serious error! 15:38:48 fixed 15:39:24 elliott: I'm not entirely sure that such a language would technically be TC 15:39:42 plot plot plot plot plot plot plot plot banana scheme 15:39:44 in fact, by the typical mathematical definition, it definitely wouldn't be 15:39:53 ais523: that's why it's trolling! 15:39:56 -!- Sgeo has joined. 15:40:15 ais523: you can run any Turing-complete-requiring computation you want to; even if it doesn't halt, you can run N steps for arbitrary finite N 15:40:18 you just can't loop forever 15:40:26 *-plot 15:40:41 elliott, my new obsession is Newspeak 15:40:53 ais523: ooh, now I want to make it so that you can write a Brainfuck program which halts if you put in "blah" and doesn't if you put in "bluh" 15:41:02 ais523: and then make sure my implementation doesn't stop the program until you put in "bluh" 15:41:25 hmm, so I have to do (H 0 `(assuming-we-get-the-character ,n)) for all 255 ns 15:41:28 at every read 15:41:31 or something 15:41:39 no, wait, much before every read 15:41:40 hmmmm 15:41:44 nah, too much of a pain 15:41:47 I'll do it dbfi-style 15:42:00 how does Newspeak look? samples? 15:42:13 nooga: like Smalltalk. 15:42:35 Except a bit more syntax 15:42:47 And slightly different conventions 15:42:57 nooga: http://newspeaklanguage.org/. just ignore Sgeo, he has never known a language he didn't fall in love with and then reject for really stupid fucking reasons before ever using it 15:44:25 So he did that to Factor and Smalltalk as well? 15:44:32 And Scala, I remember that one as well. 15:45:03 hmm, 4 of the last 11 /8s were just allocated 15:45:20 * Sgeo would love to see Slava and Bracha collide 15:45:28 -!- augur has joined. 15:45:36 when the next two are assigned, the RIRs get one each, so it's not long before there are no free /8s left 15:45:52 00:01:18 It's just that udev's better. :p 15:46:20 I don't remember the context at all. 15:46:57 Nor do I! Let's FIND it! 15:48:16 Better than devfs, it seems. 15:48:36 ais523: Yeah, but people were calling it "2 of the last 9" because 2 of those went to ARIN, which was absolutely *going* to allocate yesterday. 15:48:40 You're better than devfs. So there. 15:48:43 It's just RIPE's allocation is a surprise. 15:49:35 Well, you know us Europeans, we like to be surprising. 15:50:15 And APNIC could allocate any time in the next few months, thereby causing IPv4 depletion. 15:52:06 * oerjan swats fizzie -----### 15:52:21 I didn't expect that. 15:52:32 just a bit of friendly european surprise 15:52:52 Nobody expects the Norwegian swatquisition. 15:53:13 "Showing results for sw acquisition. Search instead for swatquisition" 15:57:07 that should be a quote 15:58:11 " hmm, is it decidable whether two regular expressions (actual regular expressions, without backreferences etc.) match the same set of strings?" <<< yes, obviously 15:58:44 " for ordinary regular expressions, you can compile them into state machines" " then because there's a finite number of states, you can bruteforce" <<< just be sure it's an algorithm and not a semialgorithm tho 16:00:37 " ais523: a Turing-complete-and-no-greater language in which all programs nonetheless halt" <<< enumerate turing machines that halt, the program 1 runs the first one, 2 runs the second one etc 16:01:03 oklofok: I'm trolling, remember? It's going to be brainfuck. 16:01:18 -!- augur has quit (Remote host closed the connection). 16:01:35 -!- pikhq has quit (Ping timeout: 265 seconds). 16:01:42 oklofok, while you're at it, biject to the computable reals. 16:02:37 The thing that has an interpreter that's just a BF interpreter but those interpreters don't correctly report invalid programs 16:02:40 ? 16:03:00 Sgeo: what 16:03:05 -!- pikhq has joined. 16:03:11 elliott, your language that you're discussing 16:03:20 oklofok, while you're at it, biject to the computable reals. 16:03:34 difficult, since you'd have to consider programs under the equivalence relation of "same result as" 16:03:48 otherwise you'd have countably infinite programs for each computable real 16:03:54 Sgeo: no, the interpreter is written in banana scheme. 16:04:21 ... so will the language count as implemented or unimplemented? 16:04:30 i heard today that if you assume the negation of aoc, you can prove there is a subset of R that doesn't have a countable subset, and i was surprised 16:04:37 18:28:17 Wow. The "NFL International Series". A scheme whereby the NFL plays a regular season game in London. 16:04:37 18:28:37 ... I didn't know American football had any fans at all outside of North America. 16:04:37 is that common knowledge? 16:04:38 It doesn't! 16:04:42 Sgeo: implemented, just not compuatbly 16:04:46 *computably 16:04:50 oklofok: i remember hearing that once... from wikipedia :P 16:05:08 oklofok: http://en.wikipedia.org/wiki/Axiom_of_choice#Statements_consistent_with_the_negation_of_AC 16:05:11 oklofok: fun section 16:05:15 -!- augur has joined. 16:05:17 cool 16:05:44 # There exists a model of ZF¬C in which real numbers are a countable union of countable sets.[11] 16:05:47 that's my favourite one 16:06:09 * Sgeo 16:06:14 -!- Vorpal has quit (Read error: Operation timed out). 16:06:14 Sgeo: die. 16:06:37 coolness 16:07:02 19:48:07 hi watch my music video!!! http://www.youtube.com/watch?v=A_Q6U2O-qx4 16:07:04 this is terrible 16:07:07 pikhq: i think there's even an american football team in Oslo 16:07:19 that was pretty trivial yeah 16:07:28 She's going over bitwise operators 16:07:44 She asked the class if anyone's classes delt with bitwise operators. Of course not 16:07:48 I hate this school 16:08:02 well obviously they are too trivial to teach 16:09:01 a friend of mine used to play american football so it's here too i guess 16:09:02 22:47:34 Go + Io + Prolog + Haskell 16:09:03 22:47:55 that would be a cute kid 16:09:04 with tentacles 16:09:30 http://en.wikipedia.org/wiki/Norway_American_Football_Federation 16:09:35 01:47:53 ineiros: "Uh." (Incidentally, I've never heard any of the in-game music.) 16:09:36 fizzie: but it's nice! 16:09:44 00:38:36 fizzie: http://open.spotify.com/album/29dWA4uMn07qxfEAGO3wSh 16:09:45 lolwat 16:11:57 -!- Vorpal has joined. 16:12:29 Ooh 16:12:48 Newspeak comes with late night wisdom 16:13:34 http://ideone.com/mf4Lm 16:15:14 Sgeo, do you actually /program/, or do you just get incessant and short-lived obsessions with languages? 16:15:33 The latter 16:15:45 I actually think you've written less programs I know of than me. 16:16:02 I have written about 3 programs. 16:16:04 None of them anywhere near complete. 16:16:20 Phantom_Hoover_: HE WROTE PSOX 16:16:38 I have a bunch of Python scripts to do random things on my old HD 16:16:53 Aww, #exoteric is taken. 16:17:15 Including scraping a news site's sports section for photos from my home HS 16:17:17 >.> 16:17:24 (This was when I was in HS. Don't get ideas) 16:17:28 you are crazy. 16:18:41 elliott, that's a negative program! 16:18:51 I have a few Haver clients lying around 16:19:10 oops haver sucks 16:19:22 That's not my fault, is it? 16:19:28 yes 16:20:42 09:23:05 Hmm, what about a language where the dimensions are finite, but the number of them is infinite? 16:20:43 09:23:18 You know: a 2x2x2x2x2x2x2x2x2x... universe. 16:20:44 approve 16:21:00 09:27:27 And, assuming integral coordinates in each case, is it clear by the diagonal argument that there is more space in that kind of universe than in an infinite univers with a finite number of dimensions 16:21:01 :D 16:21:04 (obvious, but :D) 16:22:20 A 2^\infty universe is obviously real-indexed. 16:22:42 * Sgeo had a bit of trouble visualizing that diagonalization, but figured it out 16:22:58 Sgeo, the Cantor diagonalisation? 16:23:00 Actually, I may be visualizing it wrong still 16:23:19 Phantom_Hoover_, I know what it looks like for decimals and... I was visualizing it for the 2x2x2x.... wrong 16:23:52 http://www.reddit.com/r/AskReddit/comments/ee95j/whats_the_most_internet_famous_thing_youve_done/c17guwl 16:23:53 I was visualizing 2 rows, and only 0 and 1 were digits in both numbers 16:25:16 Sgeo, why do it like that? 16:25:24 Because I'm tired 16:25:34 And wasn't thinking properly 16:25:59 It still holds though 16:26:09 Moreover, the set of programs is logically equivalent to the set of subsets of the reals. 16:26:33 Only need to swing down to the second number once in fact to make the nonstored num... it occurs to me that that is a bit overkill 16:26:42 For the situation that I was envisioning 16:27:36 15:12:27 Mathematica is like unto a God: 16:27:36 15:12:28 In[1]:= Sum[1/(2^i), {i, 1, Infinity}] 16:27:36 15:12:28 Out[1]= 1 16:27:36 15:13:12 yeah, but God got the answer by summing thw whole lot 16:27:36 15:13:37 F*ck knows how Chuck Norris got his answer. 16:27:37 15:14:03 Who knows how Mathematica did it; might be magic! 16:27:39 fizzie wolfram 16:28:34 Hmm, ihope's suggestion is intriguing. 16:29:05 For instance, are the accessible cells restricted to those indexed by a CR? 16:30:45 Phantom_Hoover_: No. 16:30:49 Not that I know of. 16:30:55 http://ideone.com/to8J2 16:31:22 16:11:02 * SimonRC has worked out the definitive difference between scripting languages and "real" programming languages: in scripting languages, a simple string can be like 'foo' or "foo", but "real" languages only accept one of these (usually the former). 16:31:22 16:11:30 usually the altter 16:31:22 16:11:32 latter 16:31:22 16:11:43 erm, *latter 16:31:22 16:11:50 yeah, thanks 16:31:25 16:11:54 bah, real languages doesn't have strings... 16:31:28 elliott, so it's unimplementable? 16:31:33 Phantom_Hoover_: It's not a language. 16:32:06 09:23:05 Hmm, what about a language where the dimensions are finite, but the number of them is infinite? 16:32:19 Oh. 16:32:23 Phantom_Hoover_: Why not ask him? 16:32:51 When was he last seen? 16:33:30 he's on freenode as tswett 16:34:20 doesn't come here much 16:34:33 But not at the moment, and not that I can remember recently. 16:35:01 ...he's on the network now, says whois 16:35:11 he just doesn't come to this channel 16:35:34 Gregor: OH MY GOD I HATE GHEXTRIS 16:36:14 hum. I wonder what made my computer crash the moment I plugged in my mouse. 16:36:36 works perfectly now, worked perfectly in my laptop today 16:37:00 elliott, what's GHEXTRIS? 16:37:11 Phantom_Hoover_: sudo aptitude install ghextris 16:37:13 "It's 3:00:00 am. Go get some rest!" 16:37:17 -!- perdito has quit (Ping timeout: 240 seconds). 16:37:25 Vorpal: brownout, I wonder? it could be there's an intermittent short circuit in the mouse and it browned out your computer when you plugged it in 16:37:32 ^^What Newspeak's IDE will tell you at the bottom if it's open at that time 16:38:13 elliott: hmm, tetris on a hex grid? 16:38:32 ais523: yes. and oh dear god it is impossible 16:38:59 * oerjan recalls playing hextris back in the day 16:39:07 HEXAGONAL GEOMETRY MAKES NO SENSE 16:40:50 She's now teaching the class hexadecimal 16:41:15 Sgeo, ...you didn't already know that? 16:41:19 AT TWENTY-ONE. 16:41:27 ("You" in the plural form) 16:45:07 23:19:08 * _wildhalcyon_ blames linux for Kevin Federline's career. 16:49:14 Phantom_Hoover_: being taught hex doesn't mean you don't know it already 16:49:20 just that someone wanted to teach it to you 16:49:29 there are some subjects I ended up learning over and over again 16:49:48 boolean algebra is one I remember, I was taught it at least twice and new it already before then 16:49:52 *knew it already 16:49:52 *knew 16:49:54 :D 16:50:00 hmm... I want to revive ESO OS, now 16:50:04 after reading this log 16:50:23 I will feel accomplished if I can get enough of an interpreter into a bootsector that there's enough space left to write the actual bootloader in the esolang 16:50:25 I pretty much type by sound, for some reason, rather than by spelling 16:50:33 so I often have to go back and correct a word into one of its homophones 16:50:37 ais523: hooked on phonics eh 16:50:56 elliott: some interps would fit into a bootsector just fine 16:51:02 MiniMAX, for instance, or many other OISCs 16:51:23 23:36:47 (Of course there's _always_ a workaround: perhaps adding an evil library (to mangle the stdout in an __attribute__((constructor)) routine) to LD_PRELOAD might work, if stdout exists already when those are called.) 16:51:24 aiee 16:51:38 ais523: yes, but you need to have enough space left in the boot sector to put the bootloader program in, written in the esolang 16:51:47 ais523: can MiniMAX programs do "int 10h"? 16:52:10 I should google that, so I will 16:52:21 elliott: I wrote a couple of extensions for that 16:52:36 ais523: are they on the wiki? 16:52:45 there was a 32-byte interp that could not only do arbitrary DOS system calls, but also return values from them to a jump table 16:52:51 but I never ran it and am not entirely sure if it works 16:52:53 also, I hereby proclaim the OS to be the ESO OS, edition E 16:53:01 wait, that isn't quite a palindrome 16:53:05 * Sgeo videos elliott 16:53:11 also, I hereby proclaim the OS to be the ESOS (ESO OS), edition E 16:53:12 ESOSE 16:53:31 Vorpal: brownout, I wonder? it could be there's an intermittent short circuit in the mouse and it browned out your computer when you plugged it in <-- maybe 16:53:42 ais523, how could I check this? 16:53:50 OS ed. ESO 16:53:59 ais523: hmm... the problem is, I don't even fail vaguely like writing a minimax program :) 16:54:05 elliott: I haven't put the extensions on the wiki, mostly because I'm not sure whether they work, and can no longer remember how they work 16:54:16 ais523: maybe I'll base it on Underload 16:54:16 Vorpal: intermittent shorts aren't at all easy to check 16:54:26 somehow, extending Underload seems less awful than extending brainfuck 16:54:26 and some methods of checking for them have a tendency to set things on fire 16:54:31 although I'm not sure how I'd do mutating a register 16:54:40 ais523, I wouldn't want that 16:54:43 indeed 16:54:46 She's now talking about swapping variables with tempoary variables 16:54:49 This is Perl... 16:54:50 it's what happened to my shorting power supply, though 16:54:57 Sgeo: ($a, $b) = ($b, $a) 16:55:01 Sgeo: ($a, $b) = ($b, $a) 16:55:06 elliott: how did you type that so quickly? 16:55:09 ais523: *hi5* 16:55:12 also, we both missed the semicolon 16:55:14 ais523: because I type really quickly 16:55:19 indeed 16:55:21 also, don't need it if it's in {} :) 16:55:23 Her response: "It depends on the language" 16:55:24 ais523, anyway it could be the computer. I very rarely hotplug anything except the mouse to my desktop 16:55:29 Which is correct, obviously 16:55:31 elliott, is there any nice way to handle reals in Coq? 16:55:36 Vorpal: I take it this is a USB mouse? 16:55:41 ais523, of course 16:55:41 Phantom_Hoover_: The non-computable reals? 16:55:50 PS/2 mice aren't hotpluggable, and have been known to break motherboards when people try 16:55:56 but that's a rather old technology 16:56:03 by now 16:56:10 ais523, I'm aware. Which is why I would never hotplug this keyboard 16:56:13 (which is PS/2) 16:56:18 Phantom_Hoover_: For any constructivist Coq work, including the computable reals, use http://c-corn.cs.ru.nl/. 16:56:18 (serial mice are hotpluggable, but you have to be someone like me to ever have used one) 16:56:28 * oerjan read that as the hotpluggable reals 16:56:29 ais523, I have *heard* of them that is all 16:56:38 I own one 16:56:43 hah 16:56:43 haven't used it in a while, though 16:56:51 Phantom_Hoover_: I *think* the Reals section in http://coq.inria.fr/stdlib/ is non-constructive, by using axioms instead of constructions. 16:56:56 ais523, anyway this mouse is technically serial when you expand the abbrev. USB 16:56:56 Phantom_Hoover_: But C-CoRN is awesome. 16:57:03 actually, I think I technically own three, but only one works nowadays 16:57:04 Phantom_Hoover_: Russell O'Connor runs it. 16:57:17 ais523: any suggestions to someone feeling like extending underload? apart from "don't"? 16:57:31 elliott: remove the S statement and replace it with something more appropriate 16:57:39 then you can compile it without having to keep the source around as well 16:57:43 ais523: i wasn't planning to support S anyway 16:57:47 Underload's actually pretty extensible 16:58:04 hmm, now I'm wondering what an Underload interp in Forth would look like 16:58:09 ais523: I was thinking about adding a command % which takes one value off the stack and "interpcalls" it 16:58:10 so some other way of output? Or just having the final program state as output? 16:58:17 Vorpal: no output 16:58:22 I was just wondering how to do a minimal Underload interp, and what I thought up was very like the way Forth works 16:58:23 ais523: the value would be expected to be an underload church numeral 16:58:30 elliott, hm okay 16:58:50 ais523: so e.g. (::**)% would be "syscall 3", and the remaining things on the stack could be arguments 16:58:50 elliott: church numerals aren't massively space-efficient 16:58:59 ais523: well, no, and this is also a rather boring extension 16:59:01 elliott, ah so a system call like mechanism? 16:59:05 Vorpal: yes 16:59:09 more or less the best you could do would be along the lines of (:*:*:*:*:*)% for a high-numbered syscall 16:59:17 ais523: I just want to be able to read a floppy using the BIOS in an extended esolang :) 16:59:27 that I can write an interpreter/compiler for short enough to fit in a bootsector with enough space left to have the program there 16:59:30 no more efficient representation of numbers in underlambda? 16:59:32 err 16:59:35 underload 16:59:37 I'm tired 16:59:41 Vorpal: they both represent numbers the same way 16:59:45 yeah 17:00:02 and in underlambda, at least, where you don't have S to worry out, I'm assuming that most decent interps will recognise numbers and optimise them internally 17:00:04 unload 17:00:08 *worry about 17:00:19 ais523, but can there not be any general number representation that is more space efficient in underload? 17:00:23 Wait, there's really an underlambda? 17:00:38 you can't recognise /all/ numbers as that's an uncomputable issue, but you can identify most common ways to construct them 17:00:38 with general I mean "not special cased to a finite range" 17:00:44 Sgeo: yes, it's semi-vaporware 17:01:00 http://eurekamag.com/keyword/u/026/underlambda.php 17:01:21 Sgeo: hmm, I somehow doubt that's the meaning I use the word for 17:01:23 * ais523 checks the link 17:01:32 To differentiate their respective functions, oligonucleotide-directed site-specific mutagenesis was used to change the ATG start codon of the.vphi.X174 A* gene, previously cloned into pCQV2 under.lambda. Repressor control, into a TAG stop codon. The altered A* gene was then inserted back into.vphi.X replicative form DNA to produce an amber mutant,.vphi.XamA*. Two different Escherichia coli amber suppressor strains infected with this mutant produc 17:01:32 ed viable progeny phage with only a slight reduction in yield. In Su+ cells infected with.vphi.XamA*,.vphi.X gene A protein, altered at one amino acid, was synthesized at normal levels; A* protein was not detectable. Prophage integration occurs at different chromosomal sites, including lacY and malB, but not at attB All.lambda.cam112 prophages are excised from the chromosome after induction but with various efficiencies for different locations. H 17:01:33 eteroduplex analysis of.lambda.placZ transducing phages isolated from a lacY::.lambda.cam112 prophage reveals an insertion sequence 1 element at the joint of viral and chromosomal DNA Two lines of evidence indicate that.lambda 17:01:37 lolspam 17:01:56 ais523, hm what about compression? On very large church numerals you could presumably apply a compression algorithm to get a smaller one. (The usual caveats of compression applying here of course. You will get larger values sometimes) 17:01:58 the word doesn't appear anywhere there but the title 17:02:19 ais523, under.lambda 17:02:22 Vorpal: :*:*:*:*-style compression isn't /that/ bad, really, it's O(log n) 17:02:34 Vorpal: you could obviously convert a church numeral to some binary representation 17:02:48 ais523, Underlambda was the proof-by-isomorphism language, wasn't it? 17:02:56 Phantom_Hoover_: yep 17:03:31 -!- tswett has joined. 17:03:37 Uh oh, what did Phantom_Hoover_ do. 17:03:43 (Or maybe tswett reads logs compulsively.) 17:04:00 I receive an SMS every time someone says something in this channel. 17:04:02 * Phantom_Hoover_ whistles innocently. 17:04:06 Vorpal: you could obviously convert a church numeral to some binary representation <-- well yes 17:04:14 They cost me 25 cents apiece, so you'd better not say anything unless it's important. 17:04:20 oerjan, but I meant in underload as the source is written 17:04:21 tswett: O KAY 17:04:30 tswett: that is probably a bad idea 17:04:59 i think ais523 has a broken joke lobe 17:05:03 Uh oh, what did Phantom_Hoover_ do. (Or maybe tswett reads logs compulsively.) <-- there is some context missing here? 17:05:13 Vorpal: yes, it's called read your damn scrollback :) 17:05:30 elliott, my scrollback goes back to when I joined after the crash half an hour ago 17:05:38 elliott: my typical reaction to identifying jokes is to act like they're serious and try to drive the conversation into the absurd 17:05:47 unfortunately, this means I act much the same way whether I miss a joke or not 17:05:49 ais523: you could do it more interestingly :) 17:06:03 Vorpal: well that :*:*:* style _is_ essentially binary, adding :* multiplies a number by 2 17:06:10 ais523, hm I actually do the same sometimes. 17:06:16 tswett: you're lucky, this is the first time we've talked about esolangs in months 17:06:16 it is fun 17:06:27 oerjan, hm okay 17:06:37 23:49:05 I love how devfs survived for like a year :-P 17:06:37 23:49:34 yeah, what was wrong with it? worked for me 17:06:37 23:50:04 I really don't know. 17:06:37 23:50:08 Always worked great for me. 17:06:39 It's not object XML enough. 17:06:44 oerjan: that's what I was thinking; it has *2 and +1 operations 17:06:46 (Is devfs in the newest kernels?) 17:06:50 Ugh, no, it isn't. 17:06:52 so it's a sort of generalised binary that allows arbitrary digits 17:06:57 Removed in 2.6.13; glorious ... 17:06:57 elliott, I don't think udev uses XML? 17:07:04 Vorpal: No, but it might as well. :) 17:07:06 oh and adding 1 is putting : and * _around_ the number, isn't it? 17:07:28 elliott, no xml would be worse 17:07:49 Vorpal: I'm saying that it's so overcomplex that making it use XML would hardly change a thing. 17:07:49 She wants us to install MySQL Query Browser 17:07:58 Maybe I will see if devfs works on current kernels. 17:08:07 Or just use static /dev like I was planning to. 17:08:15 elliott, there is that other one there was some talk about. Don't remember details 17:08:32 I wonder if devtmpfs can work without udev. 17:08:58 elliott, anyway, why do you want to move stuff into a monolithic kernel? 17:09:15 Vorpal: udev would be no better if it was in the kernel 17:09:28 have you seen /etc/udev? 17:09:32 elliott, I have 17:09:41 elliott, it is overcomplicated yes to some degree. 17:09:43 yeah. when was the last time you were using devfs and thought -- 17:09:48 "I wish I could rename my hard drive device file." 17:10:04 elliott, but then I doubt devfs allowed you to run a script that loaded joystick calibration values when it was connected 17:10:10 I'm all for flexibility, it's just that when you add too much flexibility and try and modularise *Unix*, everything fucks up. 17:10:20 elliott, fair point 17:10:31 See Hurd for the extreme of this. 17:10:37 indeed 17:11:05 http://lwn.net/Articles/330985/ Yay -- devtmpfs looks like a proper devfs. 17:11:10 "/dev will be fully populated and dynamic, and always reflect the current 17:11:10 device state of the kernel." 17:11:22 And apparently it makes init=/bin/sh work perfectly. 17:11:32 THINGS THAT ANNOY ME: people who equate "real" with "floating point". 17:11:42 See: Fortran, Pascal. 17:12:09 elliott, hm that is nice 17:13:13 Phantom_Hoover_, things that annoy me: people who seem to take fortran or pascal seriously today. 17:13:16 ;P 17:13:40 Vorpal, it's a symptom of a greater evil! 17:13:42 "Removed /home (sorry!)" -- now that's interesting. 17:13:48 fizzie, what? 17:13:53 fizzie, from where? 17:13:58 That of putting a stupid amount of store with floating point! 17:13:59 That's what it says on the latest blog post. 17:14:05 fizzie, blog post of? 17:14:07 fizzie: Blog post of? 17:14:09 http://notch.tumblr.com/ 17:14:10 elliott, echo 17:14:14 Oh god. 17:14:20 I refuse to update. 17:14:25 what? it removed /home? 17:14:26 where? 17:14:27 Yes. 17:14:30 Newest update. 17:14:36 Back up .minecraft now, y'allz. 17:14:47 $ cp -R .minecraft .minecraft_has_home_for_fucks_sake 17:14:58 -!- Sgeo has quit (Ping timeout: 255 seconds). 17:14:59 Let's see if it's going to force me to upgrade! 17:15:00 oh not /home on the fs 17:15:03 It might be a server-side change, though. I don't quite know how commands work. 17:15:18 HAHAHAHA FORCED UPGRADE 17:15:25 FUCK YOU NOTCH 17:15:27 why would it remove /home 17:15:32 because notch sucks 17:15:39 elliott, also it says server upgrade is not mandatory 17:15:43 bbl food 17:15:55 Yes, but also that there is a "rather bad memory leak bug in the server". 17:16:10 ineiros: Instead of updating, why not try restarting the server every now and then? 17:16:13 Oh, look, I died before quitting. 17:16:15 What does rm -rf / actually do? 17:16:23 Remove the inode for /? 17:19:14 Phantom_Hoover_: Recursively remove everything in /, duh. 17:19:19 Or refuse to, if it's GNU rm. 17:19:27 fizzie: http://imgur.com/gseyK.png http://imgur.com/ZZWCa.png http://imgur.com/xqBXT.png 17:19:30 fizzie: Stop that, it's silley. 17:20:03 elliott, what happens after it finishes? 17:20:06 A daily stone-bath does wonders for your textures. 17:20:10 Phantom_Hoover_: Um, bad things. 17:22:47 fizzie: http://imgur.com/tzQ07.png http://imgur.com/1wqWD.png 17:23:18 Are my feet sticking out through the bridge? 17:23:22 fizzie: Yes. 17:25:07 http://esolangs.org/wiki/Banana_Scheme <<< erm, so, what's banana scheme? 17:25:45 "hey i invented a new language called X, the language called Y is defined as follows" 17:26:00 oklofok: they are the Banana Schemes, collectively 17:26:04 it's terminology from some irc log, see talk page 17:26:06 okay 17:26:30 TIME TRAVEL 17:31:43 Phantom_Hoover_: You breakin'? 17:32:02 Breakin' what? 17:32:08 Phantom_Hoover_: Minecrafty. 17:32:46 Phantom_Hoover_: Have you been putting those extra steps on the skyway? 17:32:57 I think I need a break. Also, this torrent is doing awful things to my connection. 17:33:02 And that was Vorpal. 17:33:11 Phantom_Hoover_: Has he realised that you need three, not one? 17:33:13 Also that it's ugly? 17:33:44 Three what's? 17:33:47 Steps. 17:33:52 To make a barrier. 17:35:12 http://politics.usnews.com/usnews/php/galleries/image.php/162/46/46.jpg 17:35:13 I did some of the widening too. 17:35:35 oerjan: that was /almost/ funny 17:35:42 Anyway, it's already easier to walk like that, I don't really see why you'd need an actual barrier around. 17:37:42 *whats 17:38:01 fizzie: Nobody ever told me you could ascend water without drowning! 17:38:24 Well, you can. 17:38:31 There, now you've been told. 17:38:44 And that was Vorpal. 17:38:46 uh 17:38:51 fizze 17:39:07 "My home is like a 20 minute walk from spawn!!!!!!!!" "Isn't that what portals help you with." yeah cuz portals work in MP 17:40:02 Hey. 17:40:03 I just realised. 17:40:07 Getting stuck in stone is now unfixable. 17:40:13 You are stuck there. Forever. Until the server /tps you out. 17:40:32 "You guys are missing the point. /home was not a feature implemented by Notch. Therefor he doesn't want it implemented. Like bureau.nic says, Perhaps it causes a huge bug in the code. Either way, notch has been coding and developing for a VERY long time. If he removes a feature that he knows people love (obvious he does or he wouldn't have said sorry) I'm sure he knows best and has a damn good reason for it. It IS his code game after all. So, why 17:40:32 don't you sit down like a good alpha tester, and play the game like it's meant to be played." 17:40:34 Mostly you're supposed to suffocate, but I guess you still could easily get stuck. 17:40:40 ... 17:40:43 "Notch KNOWS BEST" 17:40:56 fizzie: He added code to suffocate rather than fixing the bug? Srsly? 17:41:06 Also, you have to lose your inventory because of a bug? Niice. 17:41:28 No, I think you've always supposed to have been suffocated if you ended up inside a non-air block somehow. 17:41:33 Also, what's all these comments talking about /spawn? Our server seems not to have that. 17:41:47 "the key is to not get stuck in a mine. thats the point of the game." 17:41:50 Well, thanks for that! 17:42:57 I like the "play the game like it's meant to be played" comment. I suppose same sort of reasoning could be used to logicalize why any sort of unauthorized modding is ethically worng. 17:43:25 "How could a player teleportation command cause bugs or issues? If it did, why weren't the others removed?" 17:43:28 "idk ibm. Are you a programmer? Maybe learn a bit about that before you ask ignorant questions." 17:43:32 As a programmer, #2 is full of shit. 17:43:57 fizzie: why is everyone acting like /spawn does something, it doesn't for me 17:44:14 I don't really know, I've been wondering about spawn-point-setting too. 17:44:35 Oh, incidentally. 17:44:44 It seems that hMod already has a "enable-health" server option. 17:44:59 -!- nopseudoidea has joined. 17:45:32 fizzie: Yes, but does disabling it work? 17:45:37 If so: ineiros: HMOD LOL 17:45:41 Well, according to some comments, yes. 17:45:45 I don't really know. 17:46:10 fizzie: Now tell me what the heck /spawn is meant to do >_< 17:46:12 It does nothing! 17:47:16 http://wiki.hey0.net/index.php/Commands#.2Fspawn maybe? 17:47:20 (That's the hMod command list.) 17:47:24 "We are not implementing anything crazy here like devfs did, including the later versions - there is no modprobe behind your back, no lookup hooks, no stupid new naming scheme, no new filesystem type to register." 17:47:44 fizzie: Nice... so people are saying "just use /spawn!" when mods are meant to be BADHORRIBLE according to Notch. 17:47:53 hMod does seem rather nice. 17:48:03 Hey, it has support for "kits". 17:48:04 On "paper", anyway. 17:48:06 /kit diamondtools 17:48:16 Cool, you can set your own /home. 17:48:21 ineiros: Totally requestin' hMod 17:49:02 "Sievers outlines the differences between devtmpfs and Adam Richter's proposal from 2003. It mostly boils down to complexity; devtmpfs is a much simpler scheme, which really adds very little to the kernel. The implementation is around 300 lines of code, in comparison to roughly 3600 for devfs and 600 for an early version of Richter's mini-devfs." 17:49:03 Wait WHAT 17:49:08 Notch removed /home? 17:49:13 Bastard! 17:49:36 So the patch notes say; we haven't actually tried out the new server version yet. 17:49:54 And we're not going to! Well, not without hMod yet. On pain of ineiros being murdered. 17:50:16 fizzie: Also, I love the idea that there can be a "proper" way to play a sandbox game. 17:51:30 Phantom_Hoover_: Has he realised that you need three, not one? <-- first it was fizzie who made it like that. Second 3 is wide enough to walk on without barrier with minimal risk of falling off 17:52:38 fizzie, link?? 17:52:49 Phantom_Hoover_: http://notch.tumblr.com/ 17:52:54 Phantom_Hoover_: Shouldn't you know that address already? 17:54:33 fizzie: Nice... so people are saying "just use /spawn!" when mods are meant to be BADHORRIBLE according to Notch. 17:54:34 uh 17:54:41 that only applies to client mods iirc 17:54:54 I doubt he approves of deobfuscating, modifying, reobfuscating and then distributing the server code. 17:55:01 from what I remember he said that since you don't need to pay for server anyway he minds much less for server mods 17:55:29 "Forge seems to be working in SMP now, aside from the animation. Also, is health supposed to regenerate? If so, is there a setting?" 17:55:30 "turning off monsters currently sets the server to peaceful mode. It will be an option." 17:55:32 elliott, iirc he said that quite a bit of the code is shared between client and server (which seems sensible) 17:55:36 How about making it an option before breaking it... 17:55:46 Vorpal: Yes, but he's still too stupid to make singleplayer = connect to local server. 17:56:08 fizzie: @notch Why did you remove the /home command? Bugs? 17:56:09 @PHLAK it's not supposed to be there! 17:56:11 tl;dr it's not coming back 17:56:19 elliott, I wouldn't be able to play single player then since then it would be far above the memory available on here 17:56:23 Pretty impressive if two lines is tl;dr. 17:56:32 fizzie: Indeed. 17:56:42 Vorpal: That's just because the server code sucks. 17:56:59 elliott, possibly. Go implement your own one? 17:57:09 Vorpal: Others already are. 17:57:13 Anyway I don't feel like figuring out the protocol. 17:57:16 It's probably braindead. 17:57:21 I mean, complaining here doesn't really give any result :P 17:57:35 The damn comment page won't load for me... 17:57:49 It's not just figuring it out, it seems to be a moving target. 17:57:55 LOL: http://www.pcgamer.com/2010/12/01/the-minecraft-experiment-day-7-when-you-are-engulfed-in-flames/ 17:58:02 Hilarious. 17:58:27 "/home was basically a way to get yourself out of impossible places, but now that you can kill yourself more easily, it's purpose has been fulfilled. Maybe he'll bring it back in another way." 17:58:38 (From the comments.) 17:58:52 fizzie: Yeah, but he clearly won't since it seems it wasn't "meant" to be in there. 17:58:55 Maybe he only noticed now. 17:59:12 "I ignored the game entirely when it was a purely creative toy – yeah, yeah, people made amazing stuff. I’m amazed. I’ve been amazed so often now that I’m in a permanent state of maze, and it would take someone building a working time machine in Zuma Deluxe to un- and subsequently re-maze me. But when it added a health bar, suddenly I was interested. I can die? I love to die! I’m there." 17:59:41 elliott: I think the idea is that it's basically doing an end-run around the "difficulty" of the game 17:59:51 imagine adding a /home command to a typical roguelike 17:59:54 instant escape item! 18:00:10 That guy's Galactic Civilisation II playthroughs have to be seen to be believed. 18:00:17 ais523, indeed 18:00:22 ais523: yes, but we don't play it as survival 18:00:24 -!- atrapado has quit (Quit: Abandonando). 18:00:26 apart from maybe Vorpal but nobody cares about him 18:00:37 ais523: we're essentially playing it as creative, but with minecarts and circuits and all that fun modern stuff 18:00:46 elliott, I don't really either indeed 18:00:51 elliott: You're playing it wrong! 18:00:56 ais523: which worked, right up until notch decided that making it into survival like it's meant to be without even adding switches to turn it back into peaceful was a good idea 18:01:00 ais523: which is, of course, rather insulting. 18:01:00 elliott, well, Creative mode will be implemented for the current version at /some/ point. 18:01:10 ais523: (it would not be as bad if updates weren't automatic and involuntary, and you couldn't connect to old servers) 18:01:19 Phantom_Hoover_: Yeah... at /some/ point. Just like adventure mode. 18:01:22 /home isn't coming back though. 18:01:30 And /home is damn useful if you're not playing to survive and just want to explore and create. 18:01:34 elliott, we can survive without /home 18:01:42 Vorpal: I can survive without Minecraft too. 18:01:46 It's not can, it's want. 18:01:51 indeed 18:02:02 hMod seems nice anyway. 18:02:07 It has those kits, which are like automated multi-/gives. 18:02:18 And you can set a personal home that you can teleport to. 18:02:20 As well as spawn point. 18:02:32 And ops can set arbitrary predefined teleportation points. 18:02:38 And you can disable health. :p 18:02:53 seems nice yes 18:03:07 wait, connection refused? 18:03:18 It said on the blog it was an optional server upgrade 18:03:47 Maybe it crashed because of all the memory leaks. :p 18:03:55 It's been down for a lil' while. 18:03:57 It was up earlier though. 18:04:09 hm 18:04:20 Doesn't seem that hMod has yet been updated to 0.2.7, but it's probably just a matter of (short) time. 18:04:37 the remember server bit fails 18:04:42 And you can write plugins for it! 18:04:43 Endless fun! 18:04:45 since it doesn't remember port number 18:04:46 Yes, it drops the port number. 18:04:55 fizzie, it doesn't in the config 18:04:56 ineiros can finally have his /donateacreeperto. 18:05:01 Vorpal: Protip: 18:05:04 Put the server in, click cancel. 18:05:07 It will remember the port forevermore. 18:05:11 At least it did for me... 18:05:16 elliott, no it won't after restarting the client 18:05:23 What, Minecraft just updated again I think. (Did it?) 18:05:25 Vorpal: Oh. 18:05:29 the config is: key: which means key:value:port 18:05:37 which I guess is why it fails to parse it properly 18:05:37 ...fail. 18:05:40 it writes the right thing 18:05:53 Hmm? 18:06:06 elliott, it is a sane config format. But with xml it wouldn't have failed :P 18:06:16 "When dawn finally does break, I climb out of my awkward hole and look around. There’s something different about this mountain today. I don’t know if it’s the grass, the earth, the rocks, the walking pillars of flame – hm, were there walking pillars of flame yesterday?" 18:06:16 ineiros, connection failure to your server 18:06:32 ineiros, it simply times out 18:07:05 ineiros: Hi. Please install hMod at your earliest convenience. Not only can we set a "home" point to teleport to as well as teleporting to spawn point -- the newest server update just removed /home -- but you can create "kits" like diamondtools that people can award themselves willynilly; you can also disable health. 18:07:09 Ah, apparently not a voluntary update, this. 18:07:10 2010-12-01 19:52:39 [SEVERE] Unexpected exception 18:07:12 ineiros: Oh, and you can set arbitrary named spawn points as an op. 18:07:14 It is voluntary. 18:07:17 But the old server has a memory leak. 18:07:21 I think you ran out of memory. 18:07:24 ineiros: Anyway, see above :P 18:07:32 elliott, what was the name of that blog again? 18:07:34 hMod doesn't run on the newest server yet, but "only a matter of time". 18:07:43 Vorpal: towardsdawns.blogspot.com; but I'm not quoting from that. 18:07:51 elliott, oh where was it from then? 18:08:05 Vorpal: http://www.pcgamer.com/2010/11/20/the-minecraft-experiment-day-1-chasing-waterfalls/ 18:08:05 Vorpal, it's Tom Francis' playthrough. 18:08:09 Vorpal: In which he deletes his world whenever he dies. 18:08:11 Vorpal: Hilarious. 18:08:11 Well, account of playing. 18:08:36 Also worth reading: both his Galactic Civilisations II playthroughs. 18:08:44 Even *more* hilarious, and epic. 18:09:12 "In landscape gardening – bear with me here – this is called a ha-ha. A drop that acts like a wall in one direction, but is almost invisible to the fops and dandies sipping tea on their manicured lawn above. I mention this in part to explain why I thought it would be a good idea to stand on top of it, laughing at the creatures and punching them in the face." 18:09:14 (They're creepers.) 18:09:34 elliott, ah 18:09:34 http://media.pcgamer.com/files/2010/11/Minecraft-Diary-Creeper-Tail-Closest.jpg AAAAAAAAAAAAAAH 18:10:28 "I know this seems slow to you, but I’m pretty sure it took the human race longer than this to invent tools, and I’m probably going to discover fire before teatime." 18:10:44 http://www.computerandvideogames.com/article.php?id=161570&site=pcg 18:11:00 [[ I couldn't do it. The Spectres bow to no-one, plea for no quarter. Engraved on the seal at the base of a mile-high statue of their leader, Paul Davies Mutilator of Worldsblood, are the words "Bring it the fuck on." In Latin.]] 18:11:02 elliott: The "Painterly" texpack's default moon has three crater-looking creeper faces on it. 18:11:10 fizzie: ;_; 18:11:27 elliott, mossy cobblestones have creeper larvae on them. 18:11:34 Phantom_Hoover_: STOP IT STOP IT STOP IT STOP IT 18:11:52 elliott, read the GCII playthroughs! 18:11:57 No this is better. 18:12:08 "At some point my staircase hits an earthy patch, and I can hear running water. An underground river! The best thing possible!" 18:12:11 Read that, then those! 18:12:47 "It turns out I already have metal, about 16 blocks of it – it’s those lumps of Caramac I’ve been finding in the stone. I thought it might be, but I couldn’t figure out a way to turn them into something I can craft with." 18:12:52 Interesting way to describe Caramac. 18:13:34 "As soon as I do, I strike legs. A rich vein of purest legs. I wasn’t mining for legs, I am not trained in leg extraction, but legs I have found. In quantity." 18:13:55 elliott, "legs"? 18:14:13 Vorpal: RTFLog :P 18:14:18 (Zombies) 18:14:22 elliott, oh 18:14:29 ineiros, still down? 18:14:36 ineiros: HOLY SHIT IS THE SERVER ODWON; 18:14:42 odwon, the purest state of being. 18:14:57 "I don’t know if reaching through zombie legs to loot treasure chests is dangerous, but it feels dangerous." 18:15:03 hm "I will start looking at server-side inventory soon in an attempt to reach beta soon." 18:15:05 that scares me 18:15:05 2010-12-01 20:14:29 [INFO] Connected players: fizzief, ehird 18:15:09 where are the inventories now 18:15:19 "Eggs! For that souffle I’ve always dreamed of! 18:15:20 Gunpowder! For that gunpowder souffle I’ve always dreamed of!" 18:15:24 Vorpal: IN YOUR MIND 18:15:27 ineiros, it fails to connect to it still. 18:15:34 Yes. I'll restart. 18:15:42 "When I stop dancing, I get back to digging my tunnel. And before long, I hit another type of block I’ve never seen before. I have a split second to identify it as ‘lava’ before it floods into my face." 18:15:53 ineiros: SO WILL YOU USE HMOD :| 18:15:54 With capitals. 18:16:18 elliott, hmod hasn't been upgraded yet (at least fizzie said that above) 18:16:27 Yes, but *will* he. 18:16:29 As in, the future. 18:16:30 elliott, and I doubt he would want the mem leak 18:16:33 Yes, but *will* he. 18:16:34 As in, the future. 18:16:41 indeed that is the question 18:17:40 http://kerneltrap.org/node/4893 18:17:44 "I make a single boot+root floppy disk in minix file format and lilo boot loader." --2005 18:18:15 heh 18:18:25 ineiros, restarting it sure is slow 18:18:38 Vorpal: You should've paid for a better SLA. 18:18:57 fizzie, indeed :P 18:19:04 -!- poiuy_qwert has joined. 18:19:13 fizzie, I blame notch not ineiros for this though 18:19:31 ais523: So, have you ever written an actual minimax program? 18:20:04 elliott, you mean as in the minmax algorithm for game solving? 18:20:13 No. No I do not. 18:20:17 Vorpal: Sorry, I'm rebooting the whole server, since I've avoided that for a few kernel updates already. 18:20:22 ineiros, ah 18:20:30 ineiros: Is it running on Kitten? 18:20:31 elliott, then what? 18:20:36 Vorpal: JFEsolangsI 18:20:39 elliott, ah 18:20:52 elliott: where would he have downloaded kitten? 18:20:54 ineiros: So yay or nay for hMod? :p 18:20:56 Vorpal: My mind. 18:21:06 elliott, interesting 18:22:21 elliott: I'll look into it when I have time. Definite maybe. :) 18:22:42 ineiros: You do realise it's just a few .classes to replace? :p 18:22:43 But yay. 18:22:53 I like this flashlight. LED, 60 lumen, made of Aluminium. Feels very solid and durable. And still compact (just two AAA batteries) 18:23:17 ineiros: Hmm, in fact, it's a batch file that downloads the server and does its magic. Hmmmmmmmmmmmm. 18:23:28 elliott, not ported yet 18:23:28 ineiros: Oh, there's an .sh too. 18:23:32 Vorpal: I KNOW GOD DAMMIT 18:23:39 ineiros: And it supports MYSQL! Note: Don't use MySQL. 18:24:00 elliott, out of morbid curiosity: what does it use mysql for? 18:24:12 Vorpal: You can make it use MySQL as opposed to flatfiles. 18:24:15 Presumably that's quicker. 18:24:27 elliott, for the game world? 18:24:43 Prseumably. 18:24:45 *Presumably. 18:24:45 hm 18:24:46 Perhaps not. 18:24:55 I would guess just the hMod-specific warp-points and kits and such. 18:25:02 ah 18:25:18 elliott, MySQL is A Bad Thing, then? 18:25:20 Ban lists, whatevers. 18:25:27 Phantom_Hoover_: Yes. 18:25:33 Phantom_Hoover_, well duh 18:25:33 This is not an uncommon position :P 18:25:43 also oracle now. Even worse 18:25:57 elliott, Vorpal, I never knew... 18:25:59 ineiros, rebooting atm? 18:26:04 ineiros, or what point is it at 18:26:05 Vorpal: oh shut up 18:26:13 IT'S DONE WHEN HE SAYS IT'S DONE 18:26:14 elliott, just wondering how far it got 18:26:28 Try now. 18:26:47 "IRC <--> Minecraft chat relay and advanced administration bot". The most sensible thing evar. (Perusing the hMod plugin list.) 18:27:55 fizzie: I would like that, just to annoy people who are playing. 18:28:22 ineiros, are you logged in atm? Or do we get ghosts of logged in people now? 18:28:37 since dwarf in there just stands around doing nothing 18:30:37 [[All other secondary schools (23 in total) will be open for 4th-6th year pupils tomorrow]] 18:30:47 The Forth Road Bridge closed due to snow today. 18:30:52 It has never done this before. 18:30:58 This is as stupid as hell. 18:31:12 IT'S FOR YOUR EDUMCACAITNO 18:33:19 No, it's because we have a poseur and idiot for a First Minister. 18:33:27 fizzie: ineiros: Vorpal: I am on fire near the spawnpoint. I refuse to stop being on fire. 18:33:45 elliott, okay? 18:33:59 Aww, Connection lost 18:34:01 End of stream 18:37:35 Vorpal: I suicide-fired. 18:37:37 Thus the ALLAH. 18:37:43 * elliott tasteful 18:37:43 ah 18:38:14 Gregor: 14:53:14 * GregorR-W doesn't even know what tldr means :P 18:38:14 14:53:51 heh, I had to look that one up too 18:38:14 14:54:36 Too Long Didn't Read? 18:38:14 14:54:38 XD 18:40:32 okay destroying the world whenever you die sounds like an awesome idea 18:41:32 i mean say in a mmorpg, there could be an infinite amount of worlds, and when you die in one, you're forever blocked from reentering it 18:41:53 your friends could all kill themselves to join you in the new world, but 18:42:27 -!- poiuy_qwert has quit (Ping timeout: 272 seconds). 18:42:30 fizzie: Vorpal: Phantom_Hoover_: http://imgur.com/IwLKB.png 18:43:08 -!- poiuy_qwert has joined. 18:43:13 -!- cal153 has quit (Ping timeout: 265 seconds). 18:43:46 elliott, everyone seen that 18:43:50 elliott, not as foggy though 18:43:56 elliott, do you use tiny or short distance? 18:44:02 Short. 18:44:09 Vorpal: I have more impressive ones: 18:44:11 ah 18:44:17 elliott, I seen such on far before 18:44:22 elliott, it is nothing new 18:44:29 Vorpal: That was looking *downwards on top of the sea*. 18:44:47 elliott, I been on top of holes with seeing caverns below too 18:44:50 http://imgur.com/L6ouQ.png http://imgur.com/WZqgE.png http://imgur.com/vkQoS.png These are really nice. 18:46:01 elliott, I been on top of holes with seeing caverns below too 18:47:07 -!- Sgeo has joined. 18:47:37 Say that in a deep Southern accent for great hilarity. 18:48:08 :D 18:49:44 Ah, Sgeo. Have any liaisons with Newspeak planned for tonight? 18:50:34 I plan on actually trying to write something 18:50:48 Saucy. 18:51:03 Isn't it a little early in your relationship? 18:51:06 think about it, really the only thing mankind is lacking in games is true fear of death 18:51:31 You'll probably abandon it in 3 days like you did with Smalltalk, Factor, Scala, ... 18:51:45 Did I abandon Factor in 3 days? 18:51:49 yeah Sgeo you're a real fuckface and everyone hates you 18:51:49 Or Smalltalk? 18:52:12 * oklofok is just trying to be popular 18:53:08 Now, let's see if I can avoid doing the same with real relationships 18:53:26 abandoning people in 3 days that is 18:53:27 ? 18:53:37 I don't... think I would 18:54:04 Suuuuure. 18:54:14 you haven't abandoned me yet 18:54:21 oklofok: he never truly loved you 18:54:23 and we've been in an ircual relationship for years 18:54:30 ineiros: http://wiki.nexua.org/Plugin:iStick wat 18:54:40 oklofok: well it's well known that Sgeo is extremely gay of course 18:54:42 and loves Finns 18:54:44 but i didn't expect this 18:54:59 there's nothing gay about true online friendship 18:55:33 oklofok: indeed; there's nothing faggy about a deep loving relationship with another man! 18:56:13 18:56:20 ineiros, gah 18:56:34 i just realized newborns would probably be rather homicidal 18:56:41 `addquote i just realized newborns would probably be rather homicidal 18:56:57 context being the mmorph with death 18:56:57 fizzie, ended up in stone thanks to the issue, had to /home 18:57:00 oh well 18:57:06 *mmorpg 18:57:06 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep). 18:57:09 fizzie, and just after I saw spawn I timed out 18:57:33 No output. 18:57:56 ineiros, I noticed a pattern in your connection issues: off peak hours there are fewer drops. If fewer are playing there are fewer drops 18:57:58 Ended up somewhere underground too. 18:58:01 "@notch instead of being an ass why don't you downgrade the server so we can play on smp you jeesh we're not your fing beta testers" 18:58:03 Minecraft is buggier than AW. [Yes, I know that that's not saying anything at all] 18:58:04 "@warlordv1 actually, you're alpha testers.." 18:58:08 ineiros, maybe it is related to traffic? 18:58:13 -!- poiuy_qwert has joined. 18:58:43 Sgeo, PLEASE tell me that was self-irony. 18:58:58 fizzie, down for quite some time now 18:59:16 (Note the subtle mockery of Vorpal) 18:59:36 Phantom_Hoover_, I never said anything like that 18:59:37 Even more subtle when you point it out. 19:00:22 elliott, I remembered too late that Vorpal is about as subtle as a brick. 19:00:40 And has the memory of a BBC Micro. 19:00:56 ais523: aren't you going to stand up for the Micro?! 19:00:57 Phantom_Hoover_, I don't believe in subtlety 19:01:40 elliott, come now, it was hardly the Memory Man. 19:01:52 But ais523 grew up on it! 19:01:54 He's actually a BASIC program. 19:02:41 I've seen photos of ais523. 19:02:50 Yeah -- he's quite the pixel painter. 19:03:03 He has a BEARD. 19:03:07 * tswett looks on his Wikipedia page. 19:03:09 It is RIDICULOUS. 19:03:18 Oh, he no longer has a Wikipedia page. 19:03:30 ais523 is now a redirect to "Wolfram's 2-state 3-symbol Turing machine". 19:03:35 So it is. 19:03:36 How sad. 19:03:36 -!- cheater99 has quit (Ping timeout: 245 seconds). 19:03:40 Phantom_Hoover_, why is it ridiculous? 19:03:53 Wikisnubbed. 19:04:02 Phantom_Hoover_, why is the beard insane? 19:04:07 or ridiculous 19:04:22 -!- cal153 has joined. 19:04:46 Phantom_Hoover_, I mean, who doesn't have a beard... 19:04:54 -!- oerjan has quit (Remote host closed the connection). 19:04:54 http://www.wolframscience.com/prizes/tm23/images/alex_smith_wolfram_turing.jpg 19:04:55 ais523, in all his beardy ridiculousness. 19:05:10 Vorpal, most women, I hear. 19:05:20 Whoa, he has a beard. 19:05:21 Phantom_Hoover_, okay in the subset men 19:05:29 Phantom_Hoover_, I don't see why it is strange that he has a beard 19:05:35 or why it is ridiculous 19:05:40 I'm going to refer to ais523 as Wolfram's 2-state 3-symbol Turing machine today. 19:05:46 :D 19:05:46 I don't know, for some reason the photo reminds me of a soccer player. 19:05:47 -!- oerjan has joined. 19:05:49 s/today/from now on/ 19:05:55 Phantom_Hoover_, could you please enlighten me why the beard is ridiculous? 19:06:32 elliott, Vorpal, fizzie, Phantom_Hoover_: Are you able to log in now? 19:06:36 But I'm going to have to wait for wolfram's 2-state 3-symbol Turing machine to return before the fun begins. 19:06:47 ineiros, trying again 19:06:51 ineiros, no 19:06:55 Vorpal, look at it and use your goddamn in-built ridiculousness sensor. 19:06:59 ineiros, just times out 19:07:01 You know, the one you get from being human. 19:07:09 he's not human 19:07:12 (Since "wolfram's 3-state 3-symbol Turing machine" is so long, every time I type "wolfram's 3state 3-sombol Turing machine" incorrectly, I'm going to replicate the typo from then on so that it will get shorter.) 19:07:18 Phantom_Hoover_, I have a beard too. Not the same model 19:07:31 * tswett stops saying stuff that doesn't contribute to the conversation at all. 19:07:33 still it looks perfectly normal 19:08:05 tswett: Flark. 19:08:21 Greem zob? 19:08:52 Vorpal, I don't really want to think about how ridiculous you look full stop. 19:09:15 Phantom_Hoover_, there is NOTHING silly or ridiculous with how ais523 looks on that photo 19:09:39 LEAVE AIS ALONE! 19:09:59 tswett: i note you already introduced a typo 19:10:23 or two, even 19:10:29 Three. 19:10:44 Phantom_Hoover_, well it was you who criticised him in the first place so that seems a bit hypocritical to say. 19:10:52 ineiros, still timeout 19:10:52 I typo "wolfram's 3state 3-sombol Turing machine" every time I type "wolfram's 3state 30-sombol Turing machine". Except not one of those times. 19:11:03 It got longer. I'm going to throw out typos that make it longer. 19:11:20 tswett is hill-climbing towards the empty string. 19:11:24 tswett, sombol? 19:12:26 ineiros, downess is still a property exhibted by the server 19:13:12 that poor, dow server 19:13:34 Department of What? 19:13:46 -!- Sgeo has quit (Ping timeout: 255 seconds). 19:14:14 tswett: By the way, Vorpal is AnMaster if you've been gone long enough not to know that. 19:14:29 tswett: I'm not going to tell you who I am because it's bloody obvious. 19:14:59 elliott, I don't know him from before 19:15:07 oh wait 19:15:17 very forgettable guy, Vorpal 19:15:18 right 19:15:19 Yes, you do. 19:15:26 elliott, yes I checked whois after 19:15:28 wait what 19:15:30 elliott, before that I didn't 19:15:40 oerjan, reading failure 19:16:00 yeah unfortunately nobody can ever forget Vorpal. 19:16:18 he vorps into your mind 19:16:39 oerjan, haha 19:17:57 ineiros, anyway: very much down 19:18:01 -!- cheater99 has joined. 19:24:11 -!- Sasha2_ has joined. 19:24:13 -!- nopseudoidea has quit (Quit: Quitte). 19:24:45 Vorpal is AnMaster. You're Mr. Hird. 19:24:56 Or do you have a different title now? 19:25:48 Supreme Dictator Hird 19:26:06 -!- Sasha2 has quit (Ping timeout: 245 seconds). 19:26:20 wolmfra's 3state 3-synmob Turing machine. womfra's 3state 3-symbon Turing machine. womfra's 2state 30synbom Truing machine. womfra's 3state 20symobn Truing machine. 19:27:43 Wombat's 3-stack 20-sylph Turning machete. 19:29:00 tswett, what about "W.'s 2,3-TM"? or such 19:30:18 tswett: Mrs. Hird 19:32:12 womfra's 3state 29synb Truying macihemn. womfra's 3state 29smb Truing maicne. womfr'as 3state 29mws Truign amicne. womfr'as 2state 29mws Truign amicne. womfra's 2state 29mwd Truign acmien. 19:32:28 I need to make an esolang called "womfra's 2state 29mwd Truign acmien". 19:33:14 womfra's state 29mswd Trign amcien. womfra's state 29mws Tirng amcien. womfr'as state 29mws Tirng amcien. womfra's state 29sms Tirng amcien. womra's state 29sms Ting amcien. wom's state 29sms Ting amcien. woms' state 219sms Ting amcien. 19:33:15 it will be a fncutonal language 19:33:22 It's getting there. 19:34:18 woms' state 2s9sms Ting amcien. wom's state 29sms Ting amcien. woms' state 29sms Ting amcien. woms' state 29sms Ting amcien. woms' state 29sms Ting amcien. woms's tate 29sms Ting amcien. woms' tate 29sms Ting amcien. woms' tate 29sms Ting amcien. woms' tate 29sms ting amcine. 19:34:42 elliott, also I don't think it is hill climbing. It seems more like simulated annealing. 19:35:11 Vorpal: T' = mutate(T); if (fit(T') > fit(T)) T = T'; repeat 19:35:21 wome' state 29sms ting amcine. wome' tate 29sms ting amcine. wome' stst 29sms ting amcine. wome stst 29sms ting amcine. wome stst 29sms ting amcine. wome stt 29sms ting ancine. wome stt 29sms ting ancine. wome stt 29mss ting ancine. wome stt 29mdd ting ancine. wome stt 29mdd ting ancine. 19:35:27 In this case, fit(s) = -length(s) and mutate(s) = try and write s carelessly. 19:35:27 elliott, yes but does he check all the neighbours in each step? 19:35:27 No? 19:35:33 Vorpal: Oh shaddup. :p 19:36:23 elliott, thus the closer fit to simulated annealing. With a slow temperature change 19:36:27 when in wome, do as the womans 19:36:34 I don't think hill-climbing in general means you'd check all neighbours. 19:36:47 "In simple hill climbing, the first closer node is chosen, whereas in steepest ascent hill climbing all successors are compared and the closest to the solution is chosen." 19:36:54 See, it's the first alternative there. 19:37:12 wome stt 29mdd ting ancine. wome stt 29mdmd ting ancine. wome stt 29emje ting ancine. wome stt 29mdd ting ancine. wome xstt 29mdd ting ancine. wome stt 29mdd ting ancine. wome stt 29mdd ting ancine. wome stt 29mdd ting ancine. wome stff 29dndd ting ancine. wome stt 29mdd ting ancine. 19:37:17 fizzie, oh I didn't know about "simple hill climbing" I only heard about the second one 19:37:19 Yeah, it's pretty much stabilized now. 19:37:31 wome stt 29 mdd thing machine. 19:37:36 wome stt 2w9mdd ting acine. 19:37:37 wome stt 28tingachine 19:37:43 woms tt 2wm89dnd ting acin 19:37:48 woms tt w2mws989dnd ting aicn 19:37:51 wms tti 2m89dnd ting acni 19:37:54 wome tt 28 thingachine 19:37:57 wms tti 28jndmndnd ting acin]# 19:38:03 wms tti28m89dns tninag gnc 19:38:04 wome th2 thingachine 19:38:16 wom th 2 thinaghine 19:38:19 tswett: Try "wms tti 2m89dnd ting acni"; that's the shortest I've got so far. 19:38:24 wom th2 thinachine 19:38:25 tswett: Shortening that middle block will be hard. 19:38:29 wom th2 thingachine 19:38:40 wom th2 thingchine 19:38:46 wom th2 thingchine 19:38:48 -!- Phantom_Hoover_ has changed nick to Phantom_Hoover. 19:38:50 yeah stabilised 19:39:07 wome stt 29mdd ting ancine. wome stt 29mdd tinvg acine. wome stt 29mdd ting acine. wome stt 29mdd ting acine. wome stt 2mdd ting acine. wome stt 29mdd ting acine. wome stt 2mdd ting acine. wome stt 2mdsd ting acine. wome stt 32mm ting acine. wome stt 3mm ting acine. wome stt 3mm ting acine. wome stt 3mm ting aicne. wome stt 3mm ting aicne. wome stt 3mm ting aicne. wome stt 3mm ting aicne. wome stt 3mm ting aicne. 19:39:18 tswett, still longer than the one I got to 19:39:33 well lets implement a genetic algorithm on this 19:39:41 Conclusion => he types better. 19:39:55 fizzie, who does "he" refer to here 19:39:59 tswett. 19:40:00 wome stt 3mm ting aicne. wome stt 3mm ting aicne. wome stt 3mm ting aicne. wome stt 3mm ting aicne. wome st 3mm tine acine. wome sst 3mm tine acine. some st 3mm tine acine. some st 3mm tine acine. some tt 3mm tine acine. some tt 3mm tine acine. some ttt 3mm tine acine. 19:40:01 tswett. 19:40:03 hm 19:40:05 ais523: you there? 19:40:05 somet tt3 m m tine ianc 19:40:09 somet 3t3t n m tine aicn 19:40:13 somet t3jio nm tiainc 19:40:14 somet tt3 m m tine inac 19:40:17 somet tjio nm itnac 19:40:21 somet tinj oj nm ainta 19:40:22 some tt3 m m timtatn 19:40:24 somet tjinco nm itacn 19:40:28 somet tjio nm itanc 19:40:31 Some thingie oh-my titanic. 19:40:32 somet itoj nm tiacn 19:40:32 som tjio nm oitia 19:40:37 (what?) 19:40:37 smet itoj nm itan 19:40:42 smet itjo nm itan 19:40:43 mset iot nmi tn 19:40:47 mset iot nmi tn 19:40:50 mset niot n 19:40:55 msetnio tn 19:40:57 msetn iot n 19:40:57 mset nio tn 19:40:59 mseit not 19:41:03 tswett: mseit not. 19:41:03 mset no 19:41:06 msetn ot 19:41:07 smetno t 19:41:08 some tt 3mm tine acine. some tt 2m3m tine acine. some tt 3mm tine acine. some tt 3mm tine acine. some tt 2mm tine acine. some ti 3mm tine acine. some ti 3mm tine caine. some ti 3mm tine caine. some ti 3mm tine caine. some ti 3mm tine caine. some ti 3mm tine caine. some ti 3mm tine ciane. 19:41:08 mseton 19:41:08 Multiset, NMI not. 19:41:12 mston 19:41:14 tswett: mston. 19:41:18 mstn 19:41:20 tswett: Try mston. 19:41:24 mstn 19:41:25 elliott, I got shorter :P 19:41:26 tswett: There. mstn. 19:41:26 Mastodon. 19:41:34 Mess-ton. 19:41:36 tswett: http://www.mastodon.biz/ 19:41:37 XD 19:41:41 ais523: /nick mstn 19:41:43 messton 19:41:47 meston 19:41:51 meston 19:41:53 wait 19:41:53 mston 19:41:55 let's go back the other way 19:41:57 mston 19:41:58 let's try and typo it larger 19:42:00 mstn 19:42:01 to get back to the original 19:42:05 elliott, hah :P 19:42:14 I'M SURE THIS PROCESS IS REVERSIBLE YOU GUYS 19:42:14 elliott, THIS TIME! a genetic algorithim 19:42:18 algorithm* 19:42:18 some ti 3mm tine caine. some ti 3mm tine caine. some ti emm tine caine. some ti emm tine caine. some ti emm tine caine. some ti emm tine caine. some ti emm tine caine. 19:42:35 Now that it contains "ti emm", I'm going to replace those sounds with the letters they name. 19:42:48 mstn 19:42:49 stmrio 19:42:50 smtoni 19:42:50 sermnotin 19:42:52 mn soertn 19:42:53 msoinert 19:42:54 mseortni ertoin 19:42:55 mseorit 19:42:56 moseitn soertn 19:42:58 soemn tooi i 19:43:00 somet irtm oem 19:43:02 someti reiom tine nc 19:43:05 osmetie cireom ncein 19:43:05 elliott, you can do multiple on same line like tswett does 19:43:09 sotmeime ceion ncein 19:43:11 Vorpal: this is to keep my honset 19:43:13 somteime cein ceni 19:43:17 sometime tji 3m jioct 19:43:21 elliott, huh 19:43:24 som etiem im 3ioj 19:43:28 this will never work :D 19:43:39 some TM tine caine. some TM tine caine. some tM tine caine. some tM tine caine. some tM tine caine. some tM tine caine. some tM tine caine. some Tm tine caine. some Tm tine caine. some Tm cint caine. some Tm cint caine. some Tm cint caine. some Tm cint caine. some Tm cint caine. some Tm cint caine. some Tm cint caint. some Tm cint taine. some Tm cint taine. some Tm cint taine. some Tm tcint taint. some Tm cint taint. some Tm cin 19:44:00 ineiros, still very very down 19:44:04 ineiros, just checked again 19:44:23 It's not just down, or very down; it is in fact very very down. 19:44:37 You'll need to start it thrice to get it all the way back up. 19:44:46 some Tm cint taint. some tm cint that. some tm cint that. some tm cint that. some tm cint that. some tm cint that. some tm cint that. some t cnt that. some t cnt that. some t cnt that. some t cnt that. some t cnt that. some t cnt that. some t cnt that. some t cnt that. some t cnt that. some t cnt that. some t cnt that. some t cnt that. some t cnt that. some t cnt that. some t cnt that. 19:45:14 somet mi cent hat 19:45:15 Eh, I've gone far enough for my taste. 19:45:17 sometiei mcetahti 19:45:17 sdojitgsdiogj 19:45:19 oijsdfoi 19:45:20 sdjf 19:45:21 djf 19:45:22 djf 19:45:22 df 19:45:23 d 19:45:24 19:45:31 ais523: your name is now "some Tm cint taint". 19:46:29 fizzie, port is still open says nmap 19:47:00 Yes, it wouldn't stay in the "logging in" mode if it wasn't, I guess. 19:50:34 "You may have thought the latest Postoffice beta release was a fairly trivial one. But no, that honor is reserved for discount, which has been pushed up to version 2.0.3 by simply updating the markdown(1) and markdown(3) manpages to correctly describe the thicket of MKD_flags available in the 2.x version of the published interface." 19:50:57 Wha? 19:51:28 Phantom_Hoover: Just David Parsons' insane software ramblings. 19:53:54 I wonder whether postoffice is less pain than qmail. 19:53:57 (To set up.) 19:55:26 Vorpal: ls -A | xargs -d'\n' find \ 19:55:33 Vorpal: I'm bugging you today -- 19:55:44 Vorpal: How could one write this in a way that works? As it is, it gives the path last to find, which Does Not Work. 19:55:50 (No, I can't use GNU xargs's -I.) 19:57:23 uh 19:57:32 elliott, waiting for rest of command :P 19:57:37 elliott, there is a \ on the end 19:57:42 > 19:57:43 Vorpal: The rest is irrelevant (just find expressions). 19:57:48 The issue is that you can't give find paths after expressions. 19:57:57 elliott, indeed you can't 19:58:06 Vorpal: So my xargs doesn't work there. 19:58:08 elliott, if you use ls -A I guess no space 19:58:15 Vorpal: What? 19:58:30 elliott, the paths obviously are sanely delimited? 19:58:33 oh wait newline 19:58:34 right 19:58:35 Vorpal: Yes. 19:58:41 Vorpal: So the issue is, how can I do this? 19:58:42 elliott, MAAAYBE mess with IFS 19:58:46 Vorpal: Ugh. 19:58:48 elliott, but I don't know 19:58:55 Vorpal: All I want to do is have find not put "./" before everything. 19:58:58 elliott, use a saner language than shell script 19:59:19 elliott, find ... | sed 's/^\.\///' ? 19:59:22 find is the Right Thing here. 19:59:23 Can't you just postprocess the find output to sensib... 19:59:32 \( -type l -printf '0000000000000000000000000000000000000000 %p\n' \) -o \ 19:59:32 \( -type d -printf '0000000000000000000000000000000000000000 %p/\n' \) -o \ 19:59:32 \( -type f -exec sha1sum '{}' \; \) 19:59:36 "Maybe, but not with that script." 19:59:54 elliott, I suggest that you post process it indeed 19:59:56 Oh, wait; BusyBox find doesn't even have printf. 19:59:58 Hooray post-processing. 20:00:03 Or just not using find. 20:00:17 elliott, why are you limiting yourself to busybox here? 20:00:56 Vorpal: because Kitten uses BusyBox. 20:01:03 BusyBox isn't exactly lacking in features. 20:01:09 (Take a look at "busybox ls --help" sometime.) 20:01:30 Vorpal: If you know of any coreutils replacement that's even vaguely as complete, I'd love to hear about it... 20:01:41 elliott, whatever *BSD uses? 20:01:50 elliott, well freebsd mostly 20:01:59 Vorpal: *BSD have coreutils in their source tree. They are not portable. 20:02:01 openbsd is quite a lot worse 20:02:12 elliott, oh? what sort of BSD specific functions? 20:02:16 They do not compile on anything other than BSD; perhaps not even anything other than *that* BSD. 20:02:20 Vorpal: Mostly headers, actually. 20:02:30 Vorpal: But the Makefiles also only work with BSD make and require the BSD make includes (bsd.prog.mk and the like). 20:02:34 So I pretty much just gave up at that point. 20:03:01 I tried Minix but their Makefile system is similarly tangly. 20:03:10 I think I have to apply the update. 20:03:45 ineiros, right. 20:03:47 The server seems to keep doing those unexpected exceptions. 20:03:59 Apparently it doesn't work well with the updated client. 20:04:21 yay, how reliable 20:04:45 I wonder what sending it specially crafted (no pun intended) packets would do? 20:04:57 presumably easy to crash it 20:05:42 Hmph. Maybe I'll store the type of the file before the hash. 20:05:52 Writing a useful manifest is irritating... 20:06:21 -!- mtve has quit (Ping timeout: 265 seconds). 20:06:29 elliott, why not sha2? 20:06:33 sha1 is meh 20:06:50 Vorpal: Because the sole thing this is used for is for checking whether the user has changed a given file. 20:06:55 Vorpal: I could even get away with CRC32. 20:07:01 elliott, ah not for download integrity then 20:07:04 right 20:07:11 Vorpal: Yeah, rsync will handle that. 20:07:38 Vorpal: Basically, when you uninstall, it'll remove all the files whose hashes match, and print out the names of all the files that don't. 20:07:43 So you can remove configuration files manually if you want. 20:07:49 elliott, ah interesting 20:07:59 This means I don't have to keep track of what's a package file and what's a user file. :p 20:08:15 Updated. 20:08:26 elliott, btw I thought about the owner thing. Pretty much every daemon that installs files into /var and that can get away with not running as root will have files that shouldn't be owned by root 20:09:09 Vorpal: Well, I could write something that goes and chmods every file owned by the user building the package. 20:09:15 But it seems easier just to use a postinst script. 20:09:21 elliott, mhm 20:09:44 elliott, also stuff like nethack that is sgid games 20:09:56 Vorpal: Some distros run NetHack as root. :-) 20:09:59 (Of course, I'm not that stupid.) 20:10:02 whaaat 20:10:09 elliott, that way there can only be one player? 20:10:13 ...no. 20:10:17 Why would you think that? 20:10:25 elliott, uh. if you run as root you are root? 20:10:31 the player you are I meant 20:10:42 Vorpal: Um, I think it checks the different UID. 20:10:44 The one that doesn't change. 20:10:51 (But there *was* a security flaw in NetHack that left such distros vulnerable.) 20:10:51 ah 20:11:00 * elliott make menuconfigs uClibc 20:11:08 Yes, utilise the MMU. :p 20:11:17 And the FPU, too! 20:11:36 │ If you want the uClibc math library to contain the full set C99 │ 20:11:36 │ math library features, then answer Y. If you leave this set to │ 20:11:36 │ N the math library will contain only the math functions that were │ 20:11:36 │ listed as part of the traditional POSIX/IEEE 1003.1b-1993 standard. │ 20:11:36 │ Leaving this option set to N will save around 35k on an x86 system. │ 20:11:41 I love how specific some of these options are. 20:12:00 │ j0, j1, jn - Bessel functions of the first kind │ 20:12:00 │ y0, y1, yn - Bessel functions of the second kind │ 20:12:03 I... don't think I need those. 20:13:11 │ The kernel source you use to compile with should be the same │ 20:13:11 │ as the Linux kernel you run your apps on. 20:13:12 Sheesh. 20:13:22 That's... really irritating. 20:14:27 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 20:15:23 In fact, I'm not even sure how to solve that. 20:15:28 Upgrade my kernel manually on Debian? 20:16:18 -!- poiuy_qwert has joined. 20:16:50 fizzie, there? 20:17:03 elliott, what if you need to compute Bessel functions! 20:17:19 PIC doesn't work with static libraries, right? :p 20:17:35 elliott, I'd assume PIE would 20:17:50 elliott, doubtful on 32-bit x86 though 20:17:54 Vorpal: x86-64 20:17:56 Mmmm, PIE. 20:18:05 Vorpal: i.e. should I bother telling uClibc to use -fPIC if I'm doing all static linking 20:18:11 fizzie: (oblig. http://www.weebls-stuff.com/wab/pie/) 20:18:16 fizzie: Saved you the effort of Vorpal's questioning! 20:18:21 elliott, yes probably 20:18:25 fizzie, know of a 3x3 shaft with spiral stair next to your house? 20:18:26 But I don't HAVE Flash! 20:18:33 Vorpal: Yes, tell it to use -fPIC? Really? 20:18:33 fizzie, does all the way down and all the way up 20:18:50 elliott, sure you can't do ASLR without it 20:19:16 Vorpal: Which doesn't work with static linking... 20:19:19 Duh. 20:19:43 elliott, sure? I thought it did 20:19:51 elliott, since it could move around heap and stack and such 20:19:58 elliott, and also where the binary is loaded 20:22:26 Vorpal: "# 20:22:26 Security measures like load address randomization cannot be used. With statically linked applications, only the stack and heap address can be randomized. All text has a fixed address in all invocations. With dynamically linked applications, the kernel has the ability to load all DSOs at arbitrary addresses, independent from each other. In case the application is built as a position independent executable (PIE) even this code can be loaded at rand 20:22:26 om addresses. Fixed addresses (or even only fixed offsets) are the dreams of attackers. And no, it is not possible in general to generate PIEs with static linking. On IA-32 it is possible to use code compiled without -fpic and -fpie in PIEs (although with a cost) but this is not true for other architectures, including x86-64." 20:22:28 Vorpal: --Drepper 20:22:38 So: no. 20:22:52 (ASLR is really not that useful, though; it's a bit of a niche exploit to cover for.) 20:23:37 In other news, I read all of the Ed stories. 20:25:09 Phantom_Hoover: They are rather good. 20:25:27 Yes, although the depressingness rises exponentially. 20:26:17 Phantom_Hoover: The ending is quite happy, really... apart from that one thing. 20:26:43 Well, except for the "how little we deserved it" bit. 20:26:49 And that one thing. 20:27:36 -!- Quadrescence has quit (Quit: omghaahhahaohwow). 20:27:40 Phantom_Hoover: I have lost my PDF copy of it! 20:27:42 It was nice. LaTeX'd. 20:28:14 :O 20:28:29 Phantom_Hoover: Have you read the epilogue? http://qntm.org/free 20:28:40 I included it in the PDF after a few blank pages. 20:30:26 Hmm. Ambiguous. 20:30:30 Could be... you know... 20:32:01 Phantom_Hoover: I think it's sort of meant to take place outside of any actual timeline. 20:32:30 I suppose. 20:33:49 │ bcmp, bcopy, bzero, index, rindex, ftime, │ 20:33:49 │ bsd_signal, (ecvt), (fcvt), gcvt, (getcontext), │ 20:33:49 │ (getwd), (makecontext), │ 20:33:49 │ mktemp, (pthread_attr_getstackaddr), (pthread_attr_setstackaddr), │ 20:33:49 │ scalb, (setcontext), (swapcontext), ualarm, usleep, │ 20:33:50 │ wcswcs. │ 20:33:52 Hmmmmmmmmmmmm. 20:33:54 Do I need these, I wonder. 20:34:20 Ha! There's an option not to include gets solely because it's obsolete. 20:34:21 I think not. 20:34:31 -!- ais523 has quit (Remote host closed the connection). 20:34:35 elliott: Ulrich Drepper there is blatantly lying. 20:34:39 pikhq: Oh? 20:35:20 elliott: Position independent executables are entirely feasible with static linking. However, you get fixed offsets in the binaries. 20:35:21 ineiros, are you torrenting or something? it is very laggy 20:35:24 ineiros, but not timing out 20:35:33 ineiros: You must feel so scrutinised. 20:35:37 Torrent away; Vorpal needs a break. 20:35:48 pikhq: Mm. I think I won't bother though. 20:35:49 elliott: Making it much less *useful* than with dynamic linking, where each library can be loaded at a random address. 20:35:57 pikhq: Address space randomisation is... well... fairly pointless. 20:37:09 │ Answer Y to enable repeated reading of the '/etc/TZ' file even after │ 20:37:09 │ a valid value has been read. This incurs the overhead of an │ 20:37:09 │ open/read/close for each tzset() call (explicit or implied). However, │ 20:37:09 │ setting this will allow applications to update their timezone │ 20:37:09 │ information if the contents of the file change. │ 20:37:10 Hmm. 20:37:12 It makes a certain class of attacks somewhat harder, but in that class of attacks you're already pretty well fucked. 20:37:13 Eh, it's not much overhead. 20:37:22 /etc/TZ is not a nice name for the file though. 20:37:26 Any suggestions? 20:38:59 pikhq: Is it evil to have a file named /etc/timezone with completely different syntax to glibc's? 20:41:59 elliott, FWIW, I had a little niggle at the back of my head when the energy virus was introduced by analogy with Life. 20:44:38 Phantom_Hoover: What was it this time. :p 20:44:39 fizzie, down? 20:45:01 elliott, the niggle? 20:45:08 Seems that way. 20:45:19 Phantom_Hoover: Yes. 20:45:23 pikhq: Am I baaaaaaaaad? 20:45:32 fizzie, looked like an optimised design 20:45:38 fizzie, what is the obsidian risk in it? 20:45:40 Vorpal: *OPTOMIZED 20:45:45 fizzie, and how much goes back into the lava? 20:45:51 elliott, there's no such pattern known in Life, and I'd put large quantities of money on it not existing. 20:45:55 elliott, that z is so american 20:46:05 fizzie, back up 20:46:27 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 20:46:43 what kind of pattern doesn't exist in life? 20:46:44 Phantom_Hoover: What, something that can eat everything? 20:46:54 elliott, indeed. 20:46:59 oh 20:47:05 Phantom_Hoover: I'm not so sure... 20:47:22 Phantom_Hoover: Well, "almost" anything anyway. 20:47:26 elliott, show me a spaceship that can survive a collision with a blinker. 20:47:29 i have to think about this 20:47:40 Phantom_Hoover: who says it's necessarily a spaceship 20:48:02 Phantom_Hoover: have some eaty things on the end, and have a special kind of spacefiller in the middle that, when it collides with the eaty things from *behind*, "pushes" them further forward 20:48:07 elliott, the principle is identicle. 20:48:14 | <-- how does one type this character? 20:48:15 i'm not so sure 20:48:18 although I think it's unlikely 20:48:18 -!- poiuy_qwert has joined. 20:48:24 quintopia: | 20:48:25 || 20:48:27 quintopia: altgr-` on uk keyboards 20:48:28 huh 20:48:37 Spaceship: self-propagating pattern into vacuum. 20:48:51 Energy virus: self-propagating pattern into *everything*. 20:48:53 so basically, we're asking, for a given CA, if there exists a finite pattern such that given any configuration with that pattern in the middle, the orbit converges to 0 20:48:53 i didn't output the character i meant to because apparently it is unicode 20:49:05 orbit of the configuration i mean 20:49:24 -!- augur has quit (Remote host closed the connection). 20:49:25 oklofok, such patterns exist in several CAs, and some unconventional formulations of Life. 20:49:26 in english, bigger and bigger balls are filled with 0 20:49:36 elliott: the vertical bar in you messages at 15:33 and 15:36. what unicode value is it? 20:49:51 quintopia: i don't know, ask python 20:50:01 >>> ord(u'|') 20:50:01 124 20:50:03 Phantom_Hoover: well yes, obviously you can make a CA with such a pattern 20:50:10 seems it's just | 20:50:16 on windows it's a broken | 20:50:17 oklofok, also, for this purpose I'll go for chaos for some value of "chaos". 20:50:17 you can even make it nilpotent, in which case every pattern has that property 20:50:49 -!- kar8nga has joined. 20:51:14 elliott: If you ever want to run a glibc program, absolutely TERRIBLE. 20:51:19 I mean, almost all dense agars have that problem. 20:51:23 elliott: Otherwise, not at all. 20:51:40 pikhq: doesn't glibc look at $TZ before /etc/timezone 20:51:53 And the blank universe isn't really distinguished from the infinitely striped universe. 20:51:54 Phantom_Hoover: i don't get your chaos comment 20:51:59 pikhq: i do want to be able to run quake ii, which is circa-1997 gcc/glibc static linking :) 20:52:07 elliott: You're asking about how brain-damaged Glibc is. 20:52:12 elliott: The answer is "very:". 20:52:16 Any further questions? 20:52:29 pikhq: No! Okay, name it then. Basically, writing to this file is the same as setting $TZ to the contents. 20:52:34 pikhq: /etc/TZ is the default but that is *ugly*. 20:52:37 pikhq: Maybe /etc/tz? 20:52:53 oklofok, it needn't be 0 within the bubble, just that the bubble overwrites all preëxisting structures and is almost impossible to stop. 20:53:06 and yes obviously we can define identicles w.r.t. every configuration (i liked your typo so much i'd like to name this concept that, even though it probably has a name already, and identicle doesn't make any sense) 20:53:23 almost impossible? 20:53:24 elliott: /etc/org.sun.xml.config.time.zone.xml 20:53:25 :P 20:53:26 I said identicles? 20:53:37 GYAAAAA 20:53:38 well you just typoed identical "identicle" 20:54:00 but so erm what does almost impossible mean 20:54:02 * Phantom_Hoover commits sepukku. 20:54:23 i guess measure theoretical or topological duh 20:54:48 oklofok, it's hard to define formally, but that almost all possible patterns will be destroyed would do. 20:55:36 we could just take the topological denseness and measure theoretical full measureness, and hope they make sense in this context too 20:55:41 elliott, incidentally, engineering isn't a very good solution to durability in Life. 20:55:47 Phantom_Hoover: Perhaps you should commit sehų'ku instead. 20:56:02 Erm, sorry. se'hųku 20:56:10 pikhq, MY GUTS ARE SPILLING OUT YOUR ROMANISATION IS NOT IMPORTANT 20:56:22 Phantom_Hoover: Your romanisation was spelled wrong anyways. 20:56:27 Phantom_Hoover: "Seppuku". 20:56:49 pikhq, I COMMIT SUICIDE AND YOU CRITICISE MY SPELLING 20:56:51 fizzie: This is just wrong: http://imgur.com/yMEWy.png 20:56:53 WHAt 20:56:55 Phantom_Hoover too 20:56:59 "Sepukku" comes out as something like "back poo phrase" 20:57:12 Phantom_Hoover: hey if pikhq hadn't, i would 20:57:26 fizzie facewalls at his duplication. 20:58:25 Speaking of the sparkles, http://zem.fi/~fis/current-hird.png 20:58:28 oerjan: is there an identicle for gol? 20:59:39 -!- augur has joined. 20:59:59 well what if you have two of them colliding? 21:00:13 good point 21:00:30 what's problematic about that 21:00:57 oklofok, what have you defined an identicle as? 21:00:58 http://cablegate.wikileaks.org/cable/2008/01/08OTTAWA136.html 21:01:00 you have two growing balls of zeroes, those would just both have to keep growing 21:01:14 hm 21:01:28 The US... Actively monitors Canadian TV for unAmerican things on prime time‽ 21:01:38 Phantom_Hoover: a finite pattern P such that, given any configuration C with P in the middle, T^n C --> 0 where T is the CA rule 21:01:45 and 0 is the all zero configuration 21:01:56 and limits are taken w.r.t. product topology 21:02:21 pikhq: RR RUEHAG RUEHAST RUEHDA RUEHDF RUEHFL RUEHGA RUEHHA RUEHIK RUEHKW 21:02:21 RUEHLA RUEHLN RUEHLZ RUEHPOD RUEHQU RUEHROV RUEHSR RUEHVC RUEHVK 21:02:21 RUEHYG 21:02:21 DE RUEHOT #0136/01 0252315 21:02:21 ZNR UUUUU ZZH 21:02:22 lol 21:02:24 oklofok, there does have to be a wavefront made of live cells at the edge of the identicle. 21:02:43 Moreover, there are rules about propagation into vacuum. 21:02:48 Bounding boxes and things. 21:02:51 pikhq: [["THE BORDER" -CANADA'S ANSWER TO 24, W/O THAT SUTHERLAND GUY]] LOL 21:03:04 "We need to do everything we can to make it more difficult for Canadians to fall into the trap of seeing all U.S. policies as the result of nefarious faceless U.S. bureaucrats anxious to squeeze their northern neighbor." 21:03:14 Hmm. How's about you stop doing stupid shit. I think that'd do it. 21:03:27 surely there is a wavefront, yes 21:03:57 "rules about propagation into vacuum, bounding boxes and things"? 21:04:09 [[GIVE US YOUR WATER; OH WHAT THE HECK WE'LL TAKE YOUR COUNTRY TOO]] 21:04:11 pikhq: these headlines are amazing 21:04:36 And this was *never once classified*. 21:04:38 oh you meant 21:04:38 oklofok, OK, and the absolute, unbreakable rule about propagation into the vacuum is that it must stay within a diagonal box expanding at less than c/2. 21:04:40 in the definition 21:04:43 there should be a wavefront? 21:04:47 or maybe not 21:04:48 limits in product topology is a pretty lenient requirement, the zero region can expand as slowly as it wants 21:05:11 oerjan: imo that's the correct definition 21:05:18 fizzie: Now watch as I fail to disappear. 21:05:25 That's restricted further to less than c/4, but I'm not sure. 21:05:26 oklofok, if there's one in Life it *must* have a wavefront. 21:05:34 well i'm just pointing out that it doesn't conflict with slow propagation 21:05:35 If any bubble of empty space expanded [tab complete]. 21:05:59 c/2 is rather arbitrary, if you halve a rule, make it slower that is, it can suddenly have no identicle, even though it's essentially the same rule 21:06:03 which is crazy 21:06:04 oh 21:06:09 c/2 changes too tho 21:06:41 Phantom_Hoover: what must stay within a diagonal box exp...? 21:06:46 the wavefront? 21:07:10 Any configuration of live cells cannot expand beyond the box. 21:07:19 " oklofok, if there's one in Life it *must* have a wavefront." <<< yes and i'm sure we can prove the existence of a kind of wavefront in general, in non-nilpotent rules 21:07:53 Also, movement at >= c/2 diagonally basically writes "THIS RULE EXPLODES" on the starting grid. 21:07:56 what is propagation into vacuum even? 21:09:05 Phantom_Hoover: i find that a less beautiful definition than mine though, i would prefer say calling certain identicles explosive, or even better, defining their explosion speeds 21:09:27 oklofok, turning on of live cells into an area filled with state 9. 21:09:34 *0. 21:10:39 -!- Sgeo has joined. 21:12:01 oklofok, incidentally, is your T^n thing indicating that T is a transition function operating n times? 21:12:20 so erm, can you reiterate, what are the things you'd like in the definition? 21:12:37 yes 21:12:57 * Sgeo wants a Truing machine 21:13:09 Makes false statements true by changing reality 21:13:33 ^^would have been funnier without those last three words, I think 21:13:44 maybe 21:13:46 we'll never know 21:13:49 oklofok, well, the T^n C → 0 thing was pretty good. 21:13:58 I'm just poorly expressing why I think no such configuration exists. 21:13:59 i think it's nice and pure 21:14:30 oh you were? i'm not really interested in gol in particular, i just thought there might be some neat properties you could prove for identicles in general 21:15:27 erm... 21:15:47 actually 21:16:06 Hmm. "In general" is pretty boring in CAs, since there's very little common ground other than the discreteness. 21:16:14 basically what an identicle is a neighborhood such that all points of it converge to zero 21:16:31 so in fact there is a very natural way to express this concept for a general dynamical system 21:17:20 Phantom_Hoover: in general is not boring in ca's, and when it happens to be, you assume a property from the ca's, you don't take one particular one, that's ugly 21:18:04 that's like talking about the properties of the number 8, who gives a shit 21:18:12 well 21:18:24 maybe not exactly, but close :D 21:19:30 This *started* with Life-related pedantry. 21:19:43 Although where it will end up is anyone's guess. 21:20:00 so basically, given a point in a CA, an identicle is an open set such that blah blah, this concept is probably very much connected with attracting sets or something 21:20:31 Phantom_Hoover: i usually hope it ends in a theorem/-y 21:21:06 oklofok, stop knowing more maths than me. 21:21:08 I find it mocking. 21:21:14 where did i know maths you don't 21:21:25 if you're talking about attracting sets, i basically just said i don't know anything about those :D 21:21:30 erm 21:21:34 What open sets are! 21:21:39 actually i didn't say the part where i know nothing about them 21:21:40 erm 21:21:44 you don't know what open sets are? 21:22:06 in this case or in no case? 21:22:15 Depends on whether it's in terms of intervals or topology and stuff. 21:22:31 it's the same thing, except w.r.t. the metric on the space of all configurations 21:22:58 and not intervals but balls 21:23:09 an open set is a set U such that for each x \in U, there is an open ball B(x, r) \subset U 21:23:09 Also know it there. 21:23:31 Intervals are one-dimensional balls 21:24:25 Incidentally, if you're considering lifeoid CAs there are some laws you can work out in terms of speed limits in some configurations. 21:24:31 and the metric says roughly that if you take the ball B(x, r), given a configuration x, you actually take the pattern P in x in the ball around origin, of size 2^(-r), and you take all configurations y that have that pattern in the middle 21:24:56 so basically, two points are close if they are the same around the origin 21:25:06 pretty much anyway you define that formally gives you the same topology 21:25:24 For instance, for anything to move diagonally at c/2 or greater through an area with no live cells, the rule basically has to be explosive. 21:25:41 oh there's a definition for explosiveness? 21:26:26 because i thought that was your definition of explosiveness 21:26:52 of course gol is particularly interesting for this question precisely because that CA apparently makes it impossible to create a structure that can survive contact with arbitrary chaos 21:29:40 " Depends on whether it's in terms of intervals or topology and stuff." <<< i don't think open sets refer to anything but the topology kind 21:29:40 but i contain an open ball around all of my points for corrections ofc 21:29:41 Indeed, but intervals \subset topology stuff. 21:29:41 And I only knew that subset. 21:29:42 Phantom_Hoover: Care to hear about my INSANE MINECRAFT FORT PLANS? 21:29:42 erm right, i actually slightly misparsed you 21:29:42 >_> 21:29:42 or misunderstood more like 21:29:42 elliott, I do. 21:29:43 elliott: let's talk about identicles instead 21:29:43 I like insane plans! 21:29:43 oklofok, explosive rules are those in which patterns which expand without bound are very common. 21:29:44 For a given value of "very common". 21:30:08 oerjan: i didn't know it was known for it's ability to that 21:30:57 well i mean, i've never heard of anyone inventing a gol structure that can survive such contact 21:33:07 oklofok, that's basically why Conway settled on it. 21:33:09 i would certainly like to know what given value 21:33:10 okay 21:33:11 good to know, i thought he just thought hey this is neat. 21:33:11 :P 21:33:13 "lol this glider is cute" 21:33:32 I think he tried multiple Lifelike CAs and went for the one he found that supported long-term dynamic behaviour without everything filling the board with chaos. 21:34:27 There is a most resilient known structure, and it's not very resilient. 21:34:39 And static. 21:34:53 the eater? 21:35:03 Phantom_Hoover: hm but can you build a spacefiller that works by replicating itself? 21:35:04 as in, sure, tons of them may die 21:35:13 -!- Sasha2_ has quit (*.net *.split). 21:35:14 -!- Leonidas has quit (*.net *.split). 21:35:14 -!- nooga has quit (*.net *.split). 21:35:14 -!- sshc has quit (*.net *.split). 21:35:14 but they're replicating fast enough that eventually, they will end up destroying the debris 21:35:47 elliott, all complex structures in life are *really really fragile*. 21:36:06 As in, "whoops I hit it with a glider and it's dead" fragile. 21:36:21 -!- sshc has joined. 21:36:21 Phantom_Hoover: So make the structure simple. 21:36:33 Phantom_Hoover: Rather than trying to fill space, just make a simple thing that makes little baby space-fillers. 21:36:37 The Gemini replicator would completely fail if a single glider in its instruction tape was changed. 21:36:41 Basically, instead of trying to grow to fill the space... 21:36:46 Just try and fill the universe with paperclips. 21:36:46 elliott, a spacefilling replicator with simple structure? 21:36:47 Constantly. 21:36:57 How would that even *work*? 21:37:01 Phantom_Hoover: Well, OK, I would try it in a Life-like rule with simple replicators first. 21:37:12 But the basic idea is: Keep replicating further away from yourself, constantly. 21:37:19 Spacefillers leave no room; they expand outwards at maximum speed in all directions. 21:37:29 Phantom_Hoover: I didn't mean a regular kind of spacefiller. 21:37:39 I just meant something that eventually gets rid of everything else on the plane. 21:37:45 elliott, so a breeder, then? 21:37:55 -!- Sasha2_ has joined. 21:37:55 -!- Leonidas has joined. 21:37:55 -!- nooga has joined. 21:38:00 Phantom_Hoover: Sure. Except that instead of one breeder, each unit is a breeder in itself. 21:38:16 "Spacefiller" is actually fairly well defined. 21:38:17 If one of them gets sucked up by some debris, no problem; another will end up being bred to fill its space. 21:39:03 elliott, that is just a replicator, surely? 21:39:03 And all of them will die when they attempt to replicate over each other. 21:41:14 Phantom_Hoover: Well, the trick is to make two colliding replicators result in one replicator. :p 21:41:33 elliott, I'm next to a deeep pit 21:41:46 elliott, from 20 below surface to lava lake 21:41:50 elliott, or so 21:42:06 Vorpal: Phantom_Hoover knows a deeper pit. 21:42:06 elliott, 1x1 wide almost all the way 21:42:15 elliott, you mean the one you fell in? 21:42:20 Vorpal: No. 21:42:35 Vorpal: I mean a *really* deep pit. 21:42:39 elliott, argh an even deeper one over here 21:42:54 Vorpal: Not as deep as Phantom_Hoover's. 21:43:02 Vorpal, I'm assuming he means the hole in the bedrock I found under the Mt. Hoover tunnel. 21:43:06 elliott, this one goes down to the minecart tracks 21:43:07 DON'T TELL HIM 21:43:10 Phantom_Hoover, ah right 21:43:15 elliott, I saw him mention that 21:43:20 I didn't consider it a pit 21:43:21 it is the void 21:43:22 so without any assumptions on the rule, is it true that, for each patterns P and block Q, where P is an identicle, there exists a constant k such that for all configurations C with P in the middle, Q is filled with 0 from T^k onwards? i don't think the function from configurations to "first everzeroings" is continuous, but it still seems like this should be true 21:43:40 *is necessarily continuous 21:43:43 Phantom_Hoover, this pit ends up above the cobble-water barrier next to the minecart tracks 21:44:01 *pattern 21:44:29 pikhq: How to set a timezone in kitten: "echo CST6CDT >/etc/tz". 21:44:58 pikhq: Although you should probably also add "export TZ=CST6DT" to /etc/profile to avoid file accesses. 21:45:07 pikhq: In fact, I'll probably add "export TZ=$(cat /etc/tz)" to /etc/profile. 21:45:09 heh it goes up to surface too 21:45:18 -!- Mathnerd314 has joined. 21:45:39 hmm i guess there's still a direct compactness argument 21:45:48 erm 21:47:17 or not, i'm too tired 21:49:05 Vorpal: BTW, cfunge will get bug reports if it doesn't run on Kitten. 21:49:15 -!- oerjan has quit (Quit: Good night). 21:49:19 elliott, okay? 21:49:22 * elliott removes xattr support. 21:49:31 Vorpal: So be prepared to support Linux/x86-64/pcc/uClibc :) 21:49:50 elliott, I depend on POSIX 2001 21:49:53 elliott, + XSI 21:49:58 if you don't do that then fuck you 21:50:07 Vorpal: I do include XSI functions. 21:50:13 I don't know how 2001y uClibc is but it should be good. 21:50:22 Vorpal: Math functions are slightly lacking but I doubt you use the full extent of POSIX math. 21:50:48 elliott, I use sinl and such 21:50:54 Vorpal: Those are of course included. 21:51:04 Vorpal: I somehow doubt cfunge will work with pcc, though. 21:51:14 elliott, also mmap extension 21:51:22 -!- poiuy_qwert has left (?). 21:51:31 elliott, it works with gcc, icc and clang. tcc except that tcc had somewhat limited C99 21:51:36 pcc I never tried 21:51:37 http://www.noradsanta.org/js/data.js NORAD have leaked Santa Clause's Christmas flight path!! Somebody submit this to Wikileaks! 21:52:51 elliott, whaat? 21:52:53 are you 21:52:54 talking 21:52:56 about 21:53:23 Vorpal: http://en.wikipedia.org/wiki/NORAD_Tracks_Santa 21:53:51 [[According to NORAD's official web page on the NORAD Tracks Santa program, the service began on December 24, 1955. A Sears department store placed an advertisement in a Colorado Springs newspaper. The advertisement told children that they could telephone Santa Claus and included a number for them to call. However, the telephone number printed was incorrect and calls instead came through to Colorado Spring's Continental Air Defense Command (CONAD 21:53:51 ) Center. Colonel Shoup, who was on duty that night, told his staff to give all children that called in a "current location" for Santa Claus. A tradition began which continued when the North American Aerospace Defence Command (NORAD) replaced CONAD in 1958]] 21:53:57 MOST AWESOME ORIGIN STORY *EVER* 21:54:11 Hey! "Many volunteers are employees at Cheyenne Mountain and Peterson Air Force Base." 21:54:20 I wonder if Daniel Jackson is there, or has he gone and ascended again? 21:55:17 pikhq: Should I bother supporting locales? I know, I know, I'm a bad person if I don't... 21:56:08 elliott: 他の言語があるぜ。 21:56:24 pikhq: Supporting locales != supporting other languages 21:56:42 pikhq: Supporting locales == supporting output and UI text in other languages even though there are a ton of untranslated programs /anyway/ 21:56:50 I doubt, for instance, BusyBox has many transaltions. 21:56:53 *translations. 21:57:08 elliott: I did that last year... stayed up until midnight answering phone calls :-) 21:57:18 Support locales so that it's possible and/or easy to actually *do* translations. 21:57:25 Mathnerd314: awesome :) 21:57:38 pikhq: But, but, it bloats things up! 21:57:39 Without locale support you literally have no choice in the matter. 21:57:55 pikhq: Also, not true; pretty sure you can statically select a gettext translation at compile-time to be the default. 21:58:17 elliott: Your precious metric system is only supported via locales. 21:58:42 pikhq: Either what you're saying is true but irrelevant or trivially false... 21:59:23 Programs that display units will look at the locale for which units to use. 21:59:23 Date formatting! Different decimal point separators! Proper sorting order for alphabets! It's not just translations. 21:59:42 And, like most everything else, default to US standard. 22:00:52 fizzie: You'd say that; you're a Finn. 22:00:52 PH: why quit? 22:00:55 Fine, fine, locales. 22:01:03 pikhq: BUT I WARN YOU THAT THE CTYPE.H FUNCTIONS WON'T USE TABLES 22:01:06 pikhq: but how does it work if it's distributed? you don't want some Chinese server giving you results in Chinese if you live in France 22:01:21 Be aware that enabling │ 22:01:21 │ this option will make uClibc much larger. 22:01:25 Ughhh... locales. 22:01:28 │ Enabling UCLIBC_HAS_LOCALE with the default set of supported locales │ 22:01:28 │ (169 UTF-8 locales, and 144 locales for other codesets) will enlarge │ 22:01:28 │ uClibc by around 300k. You can reduce this size by building your own │ 22:01:28 │ custom set of locate data (see extra/locale/LOCALES for details). │ 22:01:28 elliott, then it will not be locale-aware 22:01:33 pikhq: 300k!!! 22:01:35 elliott, no locales: I won't use kitten ever 22:01:46 Vorpal: Don't worry, I really don't care if you use it or not. But I probably am including locales. 22:01:47 Mathnerd314: It's based on the locale environment variables. 22:01:57 pikhq: I wonder how much of that 300k is included in a typical program? 22:02:06 elliott: Oh, and it'll default to USD for currency! 22:02:18 pikhq: If you can't write a simple program and get a 10K executable or less it's broken. 22:02:19 elliott: And our MM/DD/YY date display! 22:02:23 pikhq: I wonder how much of that 300k is included in a typical program? 22:02:57 Very little of that should be included... 22:03:30 pikhq: but what happens if it's a long-running daemon? changing the environment variables will have no effect. 22:03:52 Mathnerd314: And? 22:04:07 so you'll still get results in Chinese 22:04:57 Mathnerd314: ... Yes... 22:05:07 Mathnerd314 does not quite understand, methinks. 22:07:28 pikhq: Ugh. I don't really want to include every single locale; list all the languages that matter. :p 22:07:40 pikhq: (The one advantage of dynamic linking: I could just build a uClibc based on whatever locales the user wants.) 22:07:42 pikhq: so... there seems to be no way for pain-free locale support 22:08:01 Mathnerd314: you do realise it's implemented in just about every existing linux system? 22:08:05 Mathnerd314: You seem not to understand what locales do. 22:08:07 Mathnerd314: and your complaint about servers makes no sense? 22:08:42 ok... my complaint is that you can't change the locale while a program is running 22:09:13 Mathnerd314: why is that an issue? 22:09:29 Mathnerd314: Better than Windows, which doesn't allow changing the locales without *rebooting*. 22:09:32 (to this day) 22:09:43 Mathnerd314: Servers shouldn't care what locale you're using. 22:09:49 It only matters for normal programs and client programs. 22:09:56 elliott: it's an issue because programs never stop 22:10:02 Mathnerd314: Servers shouldn't care what locale you're using. 22:10:34 The only bad thing about Newspeak that I see is its lack of libraries at the moment 22:10:49 Mathnerd314: Anyway, if somehow you really want to change, say, the language that server logs are written in, and it is ABSOLUTELY VITAL that the server NEVER, EVER go down, not even for a second, then just support setting the locale as part of the server's control console. 22:10:51 But that's very rare. 22:10:54 And all the features still not implemented or fully designed 22:10:55 elliott: on my home PC, I have had uptimes of months 22:11:11 Mathnerd314: Which, of course, you do not need, being that it is a home PC. 22:11:29 Mathnerd314: And how often do you want your program to switch from French to Chinese UI and back? 22:11:31 pikhq: Will you hate me if I only build in a subset of locales? 22:11:34 Mathnerd314: And how often do you want your program to switch from French to Chinese UI and back? 22:11:37 not even relevant, we're talking servers here 22:11:54 elliott: Test the effects of having all the locales first? 22:11:58 -!- kar8nga has quit (Remote host closed the connection). 22:12:02 pikhq: fairly often; I try to learn new languages 22:12:11 Mathnerd314: We're talking about servers. 22:12:12 -!- mtve has joined. 22:12:22 Mathnerd314: Please tell me why you would want to change a server's language while it's running. 22:12:26 hi mtve! haven't seen you for... ages 22:14:06 elliott: because I do, OK? 22:14:20 Mathnerd314: that is not a valid complaint 22:14:32 Mathnerd314: you have yet to show why that is even vaguely desirable; i suspect you do not understand what locales are used for 22:14:49 in what use-case would you want to change the locale of a server process? what would you hope to accomplish by doing so? 22:15:00 elliott: programs should support features, and this is a feature. it doesn't matter if nobody uses it. 22:15:18 Mathnerd314: wait, let me check -- 22:15:29 Mathnerd314: do you think every program should support every feature possible, regardless of whether it is even vaguely useful? 22:15:32 Mathnerd314, zuh? 22:15:39 Mathnerd314: If so, you're a complete and utter moron, stop wasting my time. 22:15:56 Phantom_Hoover, want some more cobble? 22:16:01 Phantom_Hoover, I can put some in that chest 22:16:08 elliott: I think that it should be able to. 22:16:20 Mathnerd314: do you think every program should support every feature possible, regardless of whether it is even vaguely useful? 22:16:23 Mathnerd314: please answer this question 22:16:25 Vorpal, I have plenty. 22:16:35 Phantom_Hoover, ah okay 22:17:13 Phantom_Hoover, if you want a cobblestone generator I can build one, but I need your help since /home no longer works 22:17:19 Mathnerd314: Yes or no? 22:17:27 Phantom_Hoover, so one person must keep door to castle of doom open while the other fetch lava 22:17:33 elliott: at any given time, a program will not support all possible features. but somebody should be able to support it in an extensible manner. 22:17:46 s/it/a given feature/ 22:17:47 Mathnerd314: OK, but that is not an actual yes or no answer to my question. 22:17:50 I said should, not will. 22:18:37 I'd have to say yes. but one particular feature it should support is removing features. 22:18:50 Mathnerd314: You sound suspiciously like zzo38. 22:18:59 Mathnerd314: But hey, take heart -- you could, one day, be a GNU coreutils maintainer. 22:19:09 They like your sort, and this is evidenced by the man page for ls(1). 22:20:37 elliott, does busybox ls colour code the output? 22:20:44 elliott, if not: oh well, won't use it 22:20:47 elliott: but once it supports enough features, it might as well be an operating system 22:21:16 Vorpal: yes with --color=auto, presumably some env variable could make this default 22:21:46 elliott, alias ls='ls --color=auto' 22:21:49 Vorpal: anyway you have to realise that I *really* don't give a shit whether you use Kitten or not; I will provide support if you do and mock you mercilessly if you run into problems Kitten doesn't have, but fundamentally you can use whatever you like, and if one of your requirements conflicts with one of my requirements, mine take priority. 22:21:52 or a function wrapper 22:23:16 elliott, that mocking would be annoying. I assume you can turn that off 22:23:41 Vorpal: It's the risk everyone takes by not using Kitten. 22:24:18 Vorpal: Oh, and anyone who tells me that they'd "use Kitten, if only it had a proper installer rather than a guide to partitioning and installing the basic packages using a host Linux system" will get, I don't know, IP-banned from the package repository or something. 22:24:22 (Or just mocked. Mercilessly.) 22:24:40 (Note: I totally will make an installation program, I just don't want to be bugged about making one.) 22:25:01 elliott, well I done gentoo. And LFS. I'm no stranger to lack of installers 22:25:12 elliott, heck I even done cross-lfs 22:25:21 elliott, not canadian-cross lfs though 22:25:24 I would hate that 22:25:38 It shouldn't be very painful, anyway; due to static linking, all you really have to do is manually unpack the package manager and its dependencies, tell the package manager to install everything, and edit a few config files. 22:25:46 Vorpal: Canadian-cross LFS. Oh man. Has anyone done that? 22:25:49 That sounds amazing. 22:26:07 elliott, I don't know if it CAN be done even 22:27:16 Hey, I just realised that there's probably no TZ value that uClibc supports that handles automatic DST. Heh. 22:27:21 "Oh well; file under solve later." 22:27:22 elliott, I assume it will support software RAID? 22:27:36 elliott, it can't read zoneinfo files? 22:28:01 elliott: So, should be only about as hard as installing Debian via debootstrap. 22:28:42 (which I have totally done before.) 22:29:45 Phantom_Hoover, I figured out a way to get lava without going into temple of doom 22:30:12 Vorpal, yaaaaay. 22:30:42 I refuse to tell anyone since the admin would fix it 22:30:47 if he knew what I was doing 22:30:56 No he wouldn't. 22:31:12 What is it? 22:31:18 elliott, I assume it will support software RAID? 22:31:24 Uh, if it works then yes. Otherwise no. 22:31:27 elliott, it can't read zoneinfo files? 22:31:33 No; it has no /etc/timezone. 22:31:52 You put a string like CST6CDT in /etc/tz and /etc/profile sets TZ to that. 22:32:33 Phantom_Hoover, where do you want the generator? 22:32:50 Hmm. Bottom of the hull. 22:32:55 Phantom_Hoover, where in it 22:32:59 Phantom_Hoover, and which model? 22:33:04 Phantom_Hoover, fizzie made another one 22:33:25 Vorpal, whichever has the greatest output. 22:33:44 elliott: You'll have to recompile the distro next time some country decides to fuck with their time zones. 22:33:59 elliott: And countries are positively in *love* with the idea. Fuckers. 22:34:06 Phantom_Hoover, unknown as of currently 22:34:26 Phantom_Hoover: fizzie's leaves you with ghosts of yourself in the pool. 22:34:30 Vorpal's is safer too. 22:34:39 pikhq: Well, it's not even something I can configure. Anyway, "CST6CDT" implies to me that you can put offsets there. 22:34:41 Vorpal's then. 22:34:54 (yet another reason that the time zone EVERYWHERE should be a rounded-to-the-hour approximation of the offset from GMT!) 22:35:01 Phantom_Hoover, mine is the largest one 22:35:12 Phantom_Hoover, I doubt that ghost was related to the issue in any way 22:35:16 err 22:35:21 to the generator that was 22:35:23 Vorpal, hardly a shortage of space in the ROU, 22:35:33 (NOBODY gets to fuck with their time zones!) 22:35:46 Build it in the air if it's somehow too large for the bottom of the hull. 22:35:47 Phantom_Hoover, where in the bottom of the hull? 22:36:06 Vorpal, near the column at the centre. 22:36:35 Phantom_Hoover, it will almost the whole width 22:36:41 Phantom_Hoover, of the base layer 22:36:51 Phantom_Hoover, all but two colums if you put it along a side 22:36:52 Vorpal, that's OK. 22:36:56 Seriously. 22:36:56 in the middle just one column 22:37:21 Phantom_Hoover, lag atm... 22:37:24 can't do a thing 22:37:44 timed out 22:37:47 I just jumped down the Temple of Doom's lava and survived all the way. :p 22:37:58 elliott, did you crash the server or something? 22:38:06 No. 22:38:07 oh no it is just lagged to hell 22:38:53 -!- Sasha2 has joined. 22:39:11 Phantom_Hoover, it needs to go down 1 into the floor, I have to raise the thing I realised 22:39:12 │ Set this to compile all sources at once into an object (IMA). │ 22:39:12 │ This mode of compilation uses alot of memory but may produce │ 22:39:12 │ smaller binaries. │ 22:39:15 pikhq: Am I crazy enough? 22:40:06 -!- Sasha2_ has quit (Ping timeout: 240 seconds). 22:40:36 Vorpal, even better, build it in the air somewhere and connect it to the axes. 22:40:54 Phantom_Hoover, gah already got quite far 22:41:02 elliott: Awesomeness. 22:41:16 │ Note that you need a very recent GCC for this to work, like │ 22:41:17 │ gcc >= 4.3 plus eventually some patches. │ 22:41:18 pikhq: I'm scared. 22:41:20 Vorpal, OK, put it there. 22:41:21 elliott: You want that option. It is awesomeness. 22:41:29 pikhq: But I want to build this with pcc eventually! :-) 22:41:36 But FINE. 22:41:53 make: *** [extra/locale/c8tables.h] Error 1 22:41:54 What. 22:41:58 GEN extra/locale/c8tables.h 22:41:58 make: *** [extra/locale/c8tables.h] Error 1 22:42:08 could not find a UTF8 locale ... please enable en_US.UTF-8 22:42:09 What. 22:43:46 -!- oklopol has joined. 22:44:44 -!- Sasha2_ has joined. 22:45:41 -!- oklofok has quit (Ping timeout: 245 seconds). 22:46:34 -!- Sasha2 has quit (Ping timeout: 250 seconds). 22:49:33 elliott, so wait, you've still not moved past The Story So Far in Fine Structure? 22:49:41 Phantom_Hoover: indeed 22:49:59 DO SO 22:50:11 augh 22:50:18 quit using the cordless phone, parents 22:50:25 it knocks out the wireless signal 22:52:50 what's a cordless phone 22:52:54 is it a cellphone 22:53:01 no 22:53:08 it's a phone without a cord 22:53:10 landline 22:53:11 yeah yeah i know what it yes 22:53:30 *is 22:53:46 Sasha2_, what idiot designed that? 22:54:39 Phantom_Hoover: No idea 22:54:54 -!- Sasha2_ has changed nick to SashaPrime. 22:55:02 Find them and screw with their wifi. 22:55:18 hah 22:55:27 they use 2.4 GHz 22:55:27 elliott, ARE YOU READING IT NOW 22:55:30 no 22:56:54 Phantom_Hoover, it is done 22:57:16 elliott, YOU SHOULD BE 22:57:31 -!- SashaPrime has quit (Read error: Connection reset by peer). 22:57:51 -!- Sasha2 has joined. 22:58:38 It takes an astounding moron to make a cordless phone that hogs the 2.4 GHz space like that. 22:58:51 yeah 22:58:51 "But what person would ever want two cordless phones?" 22:58:59 spams the spectrum with noise 22:59:05 We've got like 6 22:59:29 one for each room 22:59:41 even though they haven't got a cord to keep them in that room 22:59:48 they gravitate towards the sofa 23:00:54 ... One for each room? 23:00:57 Your parents are morons. 23:01:13 yep 23:01:28 well, my phone, the one by this computer, is corded 23:01:30 I built ot 23:01:33 it* 23:01:57 and then modified it 23:02:18 it flashes instead of rings, no screen, uses tone-dialing, and has a mute switch. 23:02:39 *sigh* 23:02:54 The entire POTS is such a freaking archaic joke. 23:02:58 As is the cell network. 23:03:04 And the cable system. 23:03:09 yep 23:03:10 And analog radio. 23:03:23 totally keeping this phone though 23:03:36 it plugs into the phone jack and sits there 23:03:45 In fact, every single telecom system that's not an Internet link is just awful. 23:03:53 I don't really want a cell phone 23:03:59 they're annoying 23:04:28 Maintain several completely distinct high-bandwidth telecommunication systems? Such a stupid idea. 23:08:27 -!- Phantom_Hoover has quit (Remote host closed the connection). 23:11:29 * pikhq imagines a world where the entire radio spectrum is in use for Internet. And is ecstatic. 23:13:34 brb. 23:14:44 * Sasha2 imagines an alien race that sees that spectrum wiping us out because of light pollution 23:15:08 Sasha2: Eh, we'd already be fucked. 23:15:17 Pretty much every chunk of spectrum that can be used, is used. 23:15:21 exactly 23:25:24 thank goodness for dark sky communities...and eventually orbital telescope arrays 23:27:53 ineiros, gah 23:29:11 -!- perdito has joined. 23:29:58 -!- kresnicka has joined. 23:30:25 -!- Goosey has joined. 23:37:22 -!- kresnicka has quit (Quit: Leaving). 23:44:11 thank goodness for dark sky communities...and eventually orbital telescope arrays 23:44:14 i value internet more than the former 23:44:24 even though that barely makes any sense 23:44:27 your message didn't anyway 23:48:57 [[The worldwide Haskell community met up over beers today to celebrate their unprecedented discovery of an industry programmer who gives a shit about Haskell. 23:48:57 On Wednesday, researchers issued a press release revealing that 27-year-old Seth Briars of North Carolina, a Java programmer at Blackwater accounting firm Ross and Fordham, actually gives a shit about Haskell.]] 23:48:58 --http://steve-yegge.blogspot.com/2010/12/haskell-researchers-announce-discovery.html 23:51:11 It is, of course, physically impossible to Google for criticism of Newspeak 23:51:22 [["I'm kind of surprised I'm the only person on earth who gives a shit about it," Briars continued. "I'd have thought there would be more people following the press releases closely and then not using Haskell. But they all just skip the press releases and go straight to the not using it part."]] 23:54:23 -!- Quadrescence has joined. 23:56:48 [[I'm really disappointed that more programmers don't get actively involved in reading endless threads about how to subvert Haskell's type system to accomplish basic shit you can do in other languages.]] 23:57:15 * Sgeo learns of Ioke 23:58:56 -!- wareya has quit (Read error: Connection reset by peer). 23:59:24 -!- wareya has joined. 2010-12-02: 00:01:18 elliott: Sasha2 was implying that the light pollution from our spectral wipe-out would prevent us from spotting incoming aliens. dark sky communities allow us to at least spot them on the visible spectrum at night. 00:01:34 i don't think he was implying that we couldn't see them 00:01:36 * Sasha2 imagines an alien race that sees that spectrum wiping us out because of light pollution 00:01:39 just that they'd wipe us out. 00:02:42 no, I was implying that if an alien race could see them 00:02:49 they may attempt to explode us 00:02:53 for light pollution 00:06:53 right. 00:06:57 so not that we couldn't see them. 00:08:17 * Sgeo likes the thought of GTK+ or Qt being an option in a program 00:08:27 Just set this preference, the program switches 00:09:31 -!- augur has quit (Remote host closed the connection). 00:12:33 elliott, down? 00:12:39 Vorpal: Seems so. 00:12:48 Sgeo: that is the stupidest thing ever 00:12:50 elliott, I was falling in a boat while it happened 00:12:54 Vorpal: "Well, I won't rent whole layers, most likely. Do you have any idea how big 128x128 is?" 00:13:01 elliott, result: flying dutchman 00:13:03 :D 00:13:18 elliott, I have no fucking clue what will happen when I reconnect 00:13:26 elliott, probably loss of boat at the very least 00:13:31 Vorpal: The bottom few floors will be obsidian-bordered (eventually) and be for a post-apocalyptic scenario; supplies and such to build the world outside. After all, where is more secure than in the sea, bordered by obsidian, at the very bottom of the map, with bedrock? 00:13:36 elliott, and I answered "yes" 00:13:56 Vorpal: The top floor will be... I don't know, something snazzy. Indeed, though, floor 0 will be fun. 00:14:10 elliott, also my mines cover more than 128x128x2 considering amount of cobblestone 00:14:25 Although you'll enter it from the regular sea-level ground at floor -(small); there'll be a tunnel with stairs going just below sea level, and then a short walk to a hole in a low-numbered below-sea floor. 00:14:28 Then you can go up if you wish. 00:14:39 There will also be a lower-down minecart startion, and a skyway connection higher up. 00:15:31 elliott, I'll probably establish an embassy there if it ever gets done 00:15:40 elliott, also up again 00:16:03 Vorpal: Do you know how big the grid of large chests are? 00:16:10 Is it 2x the grid of small chests? (And what's that?) 00:16:16 You see, I need to store 81 thousand pieces of something... 00:16:17 elliott, 2x yes 00:16:19 elliott, and not sure 00:16:53 elliott, you need a boatlevator in that thing from top to bottom 00:17:18 elliott, measurements: 2x3 shaft, and 5 spaces away a 2x2 shaft 00:17:23 Vorpal: I was planning on just having a straight staircase that makes you turn around whenever it reaches a wall, and a multi-width ladder all the way. 00:17:25 elliott, some extra space needed at bottom 00:17:29 Boatlevators seem... unreliable. 00:17:37 elliott, they are faster, and quite reliable for me. 00:17:47 elliott, it is just everyone else that can't ride mine 00:18:00 So they're hard to use. :p 00:18:02 elliott, I guess they are trying to stear the boat or something 00:18:06 which is just very very wrong 00:18:09 never stear the boat 00:18:13 and exit behind it 00:18:25 It's hard to avoid steering it... 00:18:34 elliott, do not touch arrow keys 00:18:36 while in the boat 00:18:42 elliott, that way you don't stear it 00:18:45 steer* 00:18:55 err 00:18:57 wasd 00:18:58 not arrows 00:20:19 -!- mtve has quit (Ping timeout: 255 seconds). 00:23:06 ineiros: Can I have a /tp ehird BCxVAhxWQxi? 00:26:05 -!- FireFly has quit (Quit: swatted to death). 00:26:23 i'm weird 00:38:07 -!- augur has joined. 00:47:25 Oh look, I just fixed a broken test case in Newspeak 00:47:34 This is fun! 00:48:46 * Sgeo hits whoever wrote these tests for using ~= 00:53:06 -!- Leonidas has quit (Ping timeout: 240 seconds). 00:54:33 Vorpal: "Additionally, when Water is placed inside a "+" shaped pillar, the player can still interact with the water through the northwest indent of the "+". This allows a pillar of water to act as an elevator much quicker than a descending waterfall, as the downward motion of the water inside the pillar has no effect. The ascension rate is comparable to ladders at a lower cost, as one only needs a bucket and some building material. It is interes 00:54:33 ting to note that if a block is removed from the pillar, exposing the water, the downward pull will slow the player's ascent for the next few blocks." 00:55:01 elliott, huh 00:55:24 Vorpal: I'm still not sure where to place The Cube. 00:55:29 elliott, issue with that however is that you will be inside the water 00:55:35 elliott, not partly inside it 00:57:21 elliott, down? 00:58:13 seems so 00:58:23 http://www.youtube.com/watch?v=MXW0bx_Ooq4 01:00:20 pikhq: I love that video. 01:00:55 I love that Chrysler actually made that video. 01:01:31 elliott, up but I disconnected 01:03:14 http://www.youtube.com/watch?v=MXW0bx_Ooq4 <-- what, that is so much jargon I have no clue about 01:03:29 pikhq, is it technobabel? 01:03:30 There are four languages in the current Newspeak prototype 01:03:34 technobable* 01:03:43 Vorpal: No, it's technology. 01:03:44 Duh. 01:03:45 Simple stuff. 01:03:49 It's a turbo encabulator. 01:04:02 elliott, I never heard of that :P 01:04:42 Vorpal: Yeah, it's a turboëncabulator. It supplies inverse reactive current for use in unilateral phase detractors, and automatically synchronises cardinal grammeters. 01:04:49 Subclasses of Language: 01:05:03 pikhq, indeed pure technobabel 01:05:11 NewsqueakLanguage0 NewsqueakLanguage1 NewsqueakLanguage2 SmalltalkLanguage 01:05:44 Sgeo: Stop looking at Newspeak right now; close every relevant window. 01:05:45 Thank you. 01:05:50 elliott, why? 01:06:22 Sgeo: Because I said so. 01:06:41 elliott, besides the youngness, is there a good reason not to like Newspeak? 01:06:57 Because I said so. 01:07:06 pikhq, anyway it became blatantly apparent during the diagnosis part that it was a joke 01:07:50 -!- Leonidas_ has joined. 01:07:59 Vorpal: The bit about running additional tests that serve to increase billable hours is a dead giveaway, isn't it? 01:07:59 -!- Leonidas_ has changed nick to Leonidas. 01:09:20 pikhq, that and some other things 01:09:45 pikhq, such as "for the purposes of obscurity we have removed the casing" 01:10:43 pikhq, or the bit that any systems faults would be displayed in secret code 01:11:15 pikhq, also "manual and songbook" 01:11:38 also that a Geiger scale would be involved :P 01:12:33 pikhq, and further the bit about what would be covered in the next month :P 01:13:14 -!- BeholdMyGlory has quit (Remote host closed the connection). 01:13:18 pikhq, but the first part I could only catch because I realised that was too much jargon :P 01:13:23 * Sgeo ponders a possible fix for a certain annoyance 01:16:00 -!- Mathnerd314 has quit (Ping timeout: 260 seconds). 01:17:20 Vorpal: Hint: the jargon is meaningless. 01:17:53 pikhq, indeed I realise that 01:18:08 Also, "dingle arm" is an inherently hilarious phrase. 01:18:21 pikhq, but I'm no car expert so it took me a a few tens of of seconds to figure out what was going on :P 01:21:01 i know nothing about cars but it's obvious 01:21:02 bye 01:21:03 -!- elliott has quit (Quit: Leaving). 01:26:51 -!- sftp has quit (Remote host closed the connection). 01:28:23 pikhq, I remember reading about a Swedish company that manufactured screws got strange results on a 1 April joke ad 01:28:31 * Sgeo wikiwalks in Newspeak 01:29:07 pikhq, basically they made an ad for stuff like T-shaped screws and dual-head screws for extra torque. On 1 April one year during the 1970s or so 01:29:22 pikhq, they actually got phoned by people who tried to seriously order these "products" 01:29:43 for a few days after 01:30:03 pikhq, fun eh? 01:30:22 Both T-shaped and double-headed screws have legitimate uses, and the former most certainly exists. 01:32:11 Gregor, not the way these were done :P 01:32:32 Gregor, it was like a screw that split into two part way up like an actual T 01:32:43 Okidoke :P 01:32:54 -!- cal153 has quit (Ping timeout: 240 seconds). 01:32:55 Ah :P 01:33:05 Gregor, and the dual head one looked like: 01:33:06 - - 01:33:07 | | 01:33:07 -+- 01:33:07 | 01:33:14 (best viewed with mono-space) 01:33:26 and I don't think that would work 01:34:02 Gregor, also I believe they had a flexible screw. and a few more that I don't remember 01:34:08 Hyuk 01:34:14 Gregor, "hyuk"? 01:34:19 Yup. 01:34:24 what does that mean 01:34:30 It means "hyuk" 01:34:34 uh 01:34:43 Gregor, and can you explain what "hyuk" means 01:35:01 "Hyuk" is a folksy laugh :P 01:35:02 Gregor, or was "yup" the translation? 01:35:05 ah 01:35:06 okay 01:35:45 Gregor, anyway what would a "real" t-shaped screw be? 01:36:03 Just a screw with a T-shaped end opposite the screw proper. 01:36:22 Gregor, oh you mean the shape that the screwdriver fits into? 01:36:23 right 01:36:41 Gregor, well this was indeed... More literal 02:04:19 -!- cal153 has joined. 02:08:30 -!- poiuy_qwert has joined. 02:14:26 -!- poiuy_qwert has quit (Ping timeout: 245 seconds). 02:15:02 -!- poiuy_qwert has joined. 02:27:37 -!- mtve has joined. 02:36:41 Is it bad to have fun with trolling? 02:49:27 -!- elliott has joined. 02:49:56 Insomnia... 02:50:53 Vorpal: how did nailor do his underwater thing? 02:53:44 coppro: "On behalf of Google and the University of Waterloo Computer Science Club, we would like to thank everybody who took part in the Google AI Challenge." 02:53:54 oh wait, it's your challenge 02:53:54 heh 03:00:29 -!- perdito has quit (Quit: perdito). 03:09:06 -!- perdito has joined. 03:09:36 * Sgeo submits a bug report 03:22:24 http://iphone-chieftain.blogspot.com/2009/04/tweetsheet-10-released.html twitter client implemented in excel 03:29:31 elliott: Welp, time to kill myself. 03:29:41 Gregor: what 03:29:59 elliott: Twitter in excel = time to end it all 03:30:09 Gregor: no this is like a new age in human existence 03:30:26 10:38:14 Gregor: 14:53:14 * GregorR-W doesn't even know what tldr means :P 03:30:26 10:38:14 14:53:51 heh, I had to look that one up too 03:30:26 10:38:14 14:54:36 Too Long Didn't Read? 03:30:26 10:38:14 14:54:38 XD 03:30:27 elliott: Yes. The time without me. 03:30:33 Gregor: are you ashamed of 2006 you 03:30:34 i would be 03:30:40 bet he didn't even like dinosaur comics 03:31:11 Clearly he liked reading. 03:31:20 Since he didn't understand what it was for something to be too long to read. 03:31:26 Therefore, he probably liked Dinosaur Comics. 03:31:33 But then, we'll never know; he's dead now. 03:31:36 Gregor: dude you blew my mind. 03:31:43 Gregor: well um, you recommended hextris in 2006 03:31:47 and that's why my brain exploded 03:31:47 so 03:31:49 i blame you 03:31:55 09:06:37 23:49:05 I love how devfs survived for like a year :-P 03:31:55 09:06:37 23:49:34 yeah, what was wrong with it? worked for me 03:31:55 09:06:37 23:50:04 I really don't know. 03:31:55 09:06:37 23:50:08 Always worked great for me. 03:32:10 Gregor: we can clearly see here your ignorance of linux kernel maintenance practices 03:32:23 I'm still ignorant of Linux kernel maintenance practices. 03:32:25 Gregor: namely, that any system replacing another system is accepted IFF it is more pointlessly flexible and complex 03:32:27 Quite intentionally. 03:32:38 Gregor: and that putting XML into the kernel is never a bad thing (see HAL) 03:32:48 Gregor: those are the entire set of rules, actually 03:32:50 Gregor: wait, there's one more 03:32:56 elliott: IIRC, there was a time between devfs and udev when it was back to flat /dev. 03:32:58 Gregor: nobody must do *anything* to make the experience nicer for desktop users 03:33:15 because... because fuck you, we don't want the day of the linux desktop 03:33:21 Gregor: heh, static dev? 03:33:26 oldskoooool 03:33:45 Thereby invalidating your point ... 03:33:56 Gregor: no, a mere historical anomaly 03:34:01 just average the slope out, man 03:34:02 Gregor: devfs is back in the kernel now, it's called devtmpfs, it runs on tmpfs, and they snuck it in by saying it provides an environment for an initramfs before udev is loaded 03:34:10 Gregor: i fully intend to use it and nothing else in Kitten :) 03:34:18 lollercopters 03:34:34 Gregor: the reactions were varied 03:34:36 "Lol, devfs." --Andrew Morton 03:34:41 and uh 03:34:44 "Lol, devfs." --Andrew Morton again 03:34:50 (actual direct quote, although he only said it once) 03:35:10 Gregor: have you ever looked at /etc/udev 03:35:11 it is quite a sight 03:35:46 Gregor: Found a non-GNU binutils yet? :P 03:36:26 elliott: Haven't even looked :P 03:36:51 Gregor: looks like i will be using uClibc anyway, so that's a vaguely gnu-infested (some code copied from glibc) component 03:37:08 Gregor: and, well, i do have to use gcc to compile kernel and uClibc itself 03:37:15 but i should be able to use pcc for most other things 03:37:16 elliott: Yeahyeah, I get it, you lurve blowing the Gnu. 03:37:24 Gregor: i dont man its a hard fuckin life 03:37:31 X-D 03:37:42 Gregor: i did get a pcc/dietlibc toolchain fully self-bootstrapped, but dietlibc is probably too opinionated with anything :P 03:37:56 erm 03:37:58 Gregor: i did get a pcc/dietlibc toolchain fully self-bootstrapped, but dietlibc is probably too opinionated to use with with anything :P 03:38:00 *with 03:39:07 Gregor: i mean... patches welcome y'all 03:39:23 Gregor: I seem to have found a coreutils in busybox, even if busybox has bits of lameness 03:40:35 Gregor: man if you want a non-gnu linux you're gonna have to work for it that involves TALKIN man 03:40:54 I don't want one, I just want to see one :P 03:40:55 or do you want to let linux distros fellate rms UNTIL THE END OF TIME???? 03:40:59 Gregor: see one, yes, but 03:41:03 Gregor: YOU HAVE TO WORK TOWARDS IT 03:42:11 Gregor: ur motivation reaches all-time lowz 03:42:56 If I click a button and stupidly don't change the stupid default, deleting the result should not cause a crash 03:43:41 SHUT UP I'M TIRED ENOGUH WITHUOUT YOU 03:43:45 Gregor is dead to me now 03:44:15 fizzie: this could be you http://i.imgur.com/iCDrN.png 03:44:38 And the Gnu just rolls over and grumbles when he's done with elliott; they never /talk/ any more. 03:44:52 i know its like our relationship has reached a plateau of hate 03:45:05 and i fear that every move will only send me down a slippery slope 03:45:09 its why im tryin to get out man 03:45:12 its why im tryin to break free 03:45:40 The persistent interspecies pedophilic rape isn't part of it? 03:46:30 Gregor: no, i blame 4chan for that 03:47:38 -!- elliott has left (?). 03:47:40 -!- elliott has joined. 03:47:55 Gregor: does xorg build with non-gcc i wonder 03:48:15 elliott: It certainly did in the 7.0 days 03:48:27 Gregor: what compiler? 03:48:36 SunPRO 03:48:42 pcc is kind of old and crusty and it's nice and it's learning these C99 ways, but sometimes it falls down and can't get up and what why would you even do that 03:48:43 Or whatever bizarre name that compiler has/had. 03:48:45 what would possess you to do that 03:48:47 you monster 03:48:53 Intel :P 03:49:08 Gregor: even if i didn't have a handy checklist of reasons not to buy intel 03:49:09 Gregor: that 03:49:11 Gregor: that would convince me. 03:49:18 X-D 03:49:27 Gregor: how many babies did they rape and then grind up to use in chips, i mean in an average day 03:49:27 just 03:49:30 rough estimate here 03:50:35 Gregor: oh and i kinda need gcc for C++ 03:50:39 Well, judging by the trucks, assuming maybe 250 per truck (average weight, stacked) I'd say about 1,250/day. Assuming they were in cages in the trucks, they could have really only fit maybe 80, making a much more conservative ~400/day 03:50:46 Gregor: getting llvm/clang working with static linking is like on my list of things that are "not" fun, as in not fun 03:51:06 Gregor: however the only C++ thing i want to ship is like, webkit :) 03:51:11 and openjdk or whatever, to run minecraft. 03:51:29 Gregor: they didn't use cages in fact they dehydrated the babies furst, what's the term 03:51:39 like when you get tried fruit or, what they make concentrate juice from 03:51:40 taking out all the water 03:51:42 they did that to babies. 03:51:46 and packed them 03:51:51 Concentrated. 03:51:56 But I don't think so. 03:51:57 yes 03:52:00 At least, not judging by the screams. 03:52:09 Gregor: they rehydrated them before the process moron 03:52:18 wikileaks confirms it 03:52:28 (wikileaks and netcraft merged ) 03:52:43 "IAmA former smoker, quit one year ago today, and YOU SHOULD QUIT SMOKING TODAY!" 03:52:44 i don't smoke 03:52:45 idiot 03:53:12 elliott: Then you'll have to start, so you can QUIT TODAY. 03:53:24 i approve of this idea 03:53:29 what do severe chain smokers get through 03:53:30 40 a day? 03:53:32 i'll work towards it 03:53:39 quit on the 39th 03:53:46 s/40/40 packs/ 03:53:54 Gregor: really?? 03:53:58 No :P 03:54:02 But I wouldn't be surprised by 10. 03:54:10 Gregor: see i believed you there you destroyed my trust 03:54:18 Gregor: i think ill break up with you too 03:54:31 "Boy, 2, Smokes Two Packs a Day" 03:54:38 hardcore mfer 03:54:53 "He cries and throws tantrums when we don't let him smoke. He's addicted," his father, Mohammad Rizal, says. 03:54:55 i think 03:55:01 i think there is a clear sourec of blame going on here 03:55:05 like i mean 03:55:09 -!- Mathnerd314 has joined. 03:55:12 i think its hard for your baby to go out on the streets and smoke cigarettes 03:55:15 you sort of have to give him one i think 03:55:17 Gregor: can you confirm this 03:55:39 In the US, Barney advertises for Marlboro. 03:56:14 Gregor: <3 you have to make that now 03:56:16 that would be amazing 03:56:19 BUT IN SOVIETY RUSSIA 03:56:27 MARLBORO ADVERTISES FOR BAAAARNEY 03:56:44 soviety russia 03:56:46 is that kind of 03:56:47 In Soviet Russia, Object Verb Subject! 03:56:48 not soviet russia 03:56:50 just soviet..y 03:56:51 similar to soviets 03:56:53 sovietesque 03:56:56 but not soviet in and of itself 03:56:57 Mohammed Rizal seemed unconcerned. 03:56:57 "He looks pretty healthy to me. I don't see the problem," he said. 03:56:57 Read more: http://www.nydailynews.com/lifestyle/health/2010/05/26/2010-05-26_video_tragic_toddler_ardi_rizal_has_twopackaday_cigarette_habit.html#ixzz16vIwvOyv 03:56:59 confirm/deny augur 03:57:04 FUCK YOU WEIRD JAVASCRIPT 03:58:24 elliott: deny 03:58:32 augur: what why 03:58:37 soviety is a type because t and y are close together 03:58:38 OR 03:58:46 its indicative of palatalization on the t 03:58:48 TAKE YOUR PICK 03:59:11 augur: yur a horrible erpson 03:59:41 DONKEY 03:59:42 MOTHERFUCKING 03:59:43 KONG 04:01:42 pikhq: http://www.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap08.html look at the end, the specification of TZ; looks like you can define DST and stuff in $TZ itself 04:01:47 so all I need is like 04:01:56 /share/timezones/uk 04:01:57 to have the right thing 04:01:59 and you can just do 04:02:03 ln -s /share/timezones/uk /etc/tz 04:02:54 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep). 04:03:52 What happens if I want to do implicit logarithmic differentiation of, say, y = -4x 04:04:13 ln y = ln -4x = (ln -4) + (ln x) 04:04:29 1/y dy/dx = 1/x 04:04:36 dy/dx = y/x = x/x = 1 04:04:53 I'm too tired aren't I 04:05:22 ... it's not a problem with the negatives 04:05:27 It's a problem with my thinking 04:05:42 Where's the problem with my thinking?'' 04:06:13 * Sgeo facepalms 04:06:23 y/x = -4x/x 04:07:36 note to self: look into doing something like inbetween anarchy golf and all those project euler, sphere online judge things except realtime'd. because why go outside to BATTLE PROGRAM 04:11:13 elliott: Sooo. TZ is much more flexible than tzdata. 04:11:38 pikhq: Yes, just more manual. I have a feeling tzdata might be an extremely old, pre-TZ way of mapping names to things like this. :p 04:11:51 pikhq: So basically I can just maintain a set of common timezones and everyone else can just write their own fucking string. 04:12:12 pikhq: (I could also see about extracting them from the typical tz database if I decide to be crazy.) 04:12:34 elliott: You could just parse it from the file they compile *into* the tz database. 04:12:46 pikhq: Right. 04:13:06 Also, not "the typical" one. It's *the* tz database. http://www.twinsun.com/tz/tz-link.htm 04:14:15 pikhq: I just said "the typical" to avoid ambiguity with the "TZ" name of the environment variable. 04:14:30 [[To use the database on an extended POSIX implementation set the TZ environment variable to the location's full name, e.g., TZ="America/New_York".]] 04:14:33 Hey, that violates POSIX. 04:14:40 Why yes, yes it does. 04:14:42 TZ has to start with a : to be treated in an implementation-dependent way rather than the TZ specification. 04:15:10 Moral of the story: nothing is POSIXly correct. 04:16:06 pikhq: POSIX is kind of a useless standard, based on a status quo that doesn't exist, specifying nothing. 04:16:13 It's only useful as a reference manual. 04:16:31 It would at least be useful if everyone tried to follow it. 04:16:46 pikhq: Oh man, these files are painfully complex. 04:16:48 ftp://elsie.nci.nih.gov/pub/tzdata2010o.tar.gz 04:16:57 RuleUruguay2005only-Oct 9 2:001:00S 04:16:57 RuleUruguay2006only-Mar12 2:000- 04:16:58 As it is, it specifies the "platonic ideal UNIX". 04:17:01 RuleUruguay2006max-OctSun>=1 2:001:00S 04:17:01 RuleUruguay2007max-MarSun>=8 2:000- 04:17:03 Zone America/Montevideo-3:44:44 -LMT1898 Jun 28 04:17:03 -3:44:44 -MMT1920 May 1# Montevideo MT 04:17:04 -3:30UruguayUY%sT1942 Dec 14# Uruguay Time 04:17:04 -3:00UruguayUY%sT 04:17:09 I don't want to parse that, dude. 04:17:16 * pikhq vomits 04:17:35 pikhq: [[Numeric time zone abbreviations typically count hours east of UTC, e.g., +09 for Japan and -10 for Hawaii. However, the POSIX TZ environment variable uses the opposite convention. For example, one might use TZ="JST-9" and TZ="HST10" for Japan and Hawaii, respectively.]] 04:17:51 pikhq: POSIX: Oh, we know of your world standard. We decided it wasn't logical enough and replaced it. 04:17:51 Yeah, that's just oldschool brain damage. 04:22:11 Well, let's try this sleep thing again. 04:22:23 pikhq: If I can get uClibc compiled, maybe this Kitten thing will actually happen soon. :p 04:22:32 Perhaps it shall be a Christmas present of pain, suffering and difficult installation. 04:22:34 -!- elliott has quit (Quit: Leaving). 04:23:54 * pikhq makes a prediction: elliott wins the world record for failure to sleep, and then passes out of exhaustion. 04:24:08 Oh, and by the end of it RAINBOW PONIES 05:02:40 * Sgeo randomly modifies the Newspeak IDE 05:03:06 Hmm 05:03:10 Works as expected 05:03:18 But as expected is not as useful as I want 05:06:54 Hm 05:07:05 I just found out this kid I hit the other day brought a gun to school 05:07:14 He had cocaine on him too. 05:08:02 * Sgeo makes it more useful 05:08:53 My IDE modification, not the cocaine 05:10:03 elliott: In some fashion, remind me that I have simple but awesome changes in SelectorPresenter 05:12:12 I just need to pretty it up a bit 05:15:43 "Did you know? It's 12:14:55 am. Go get some rest!" 05:17:57 -!- poiuy_qwert has joined. 05:50:17 -!- Goosey has quit (Remote host closed the connection). 05:51:48 -!- sftp has joined. 05:59:25 Poor, poor Kingdom of the Netherlands. 05:59:32 It has 3 distinct currencies. 06:01:05 It occurs to me that with Smalltalk, Factor, and now Newspeak, I have attempted to make a contribution to the language 06:01:20 Euro in the Netherlands, Netherlands Antillean guilder in the BES Islands, Curaçao and Sint Maarten, and Aruban florin in Aruba. 06:01:28 (Um, "language" is the wrong word) 06:01:37 Yes, the nation's currency is dependent on *which part of it you're in*. 06:02:57 Granted, everything but the Netherlands itself is one of several small islands, not physically contiguous at all, but hey. It's still crazy. 06:04:07 (for those confused: the Kingdom of the Netherlands has a similar setup to the UK, in that it's a monarchy over several constituent countries which form a single nation.) 06:16:23 -!- sftp has quit (Remote host closed the connection). 06:37:03 ... Huh. Apparently Linux's filesystem handling is such that processes can have a private set of mount points. 06:37:16 That is to say, much like Plan 9, Linux offers per-process namespaces. 06:37:23 I know of nothing that actually uses this *at all*. 06:42:08 MIDI breath controllers: Too - damned - expensive. 06:44:32 My God. One could actually pretty much *have* Plan 9 just by replacing the Linux userspace. 06:46:48 eggnog is so delicious 06:46:49 Gregor, coming from you, that's saying something. I think. 06:47:46 Sgeo: ... I'm cheap. 06:49:06 Hmm. That'd take a bit of doing for some of the really nice bits of Plan 9. 06:49:26 (making a cluster by union mounting the /proc of a few different systems together, for instance) 06:50:44 Installing Mercurial apparently causes Newspeak to automatically use it 06:50:52 * Sgeo should bother at some point 06:59:01 -!- perdito has quit (Ping timeout: 245 seconds). 07:01:54 -!- FireFly|n900 has quit (Ping timeout: 240 seconds). 07:20:31 -!- FireFly|n900 has joined. 07:31:20 -!- Sasha2 has quit (Ping timeout: 250 seconds). 07:53:15 -!- Sgeo has quit (Read error: Connection reset by peer). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:01:49 -!- MigoMipo has joined. 08:19:30 -!- MigoMipo has quit (Ping timeout: 260 seconds). 08:40:23 -!- perdito has joined. 08:48:21 -!- perdito has quit (Ping timeout: 240 seconds). 09:07:37 -!- FireFly|n900 has quit (Ping timeout: 255 seconds). 09:07:56 -!- nopseudoidea has joined. 09:08:24 -!- MigoMipo has joined. 09:09:13 -!- ais523 has joined. 09:12:23 -!- ais523 has quit (Remote host closed the connection). 09:12:39 -!- ais523 has joined. 09:13:31 gah, the hard part of adminning #esoteric is occasionally I have to check twice whether something's spam or not 09:13:51 I mean, someone adds a random sequence of letters and punctuation to the hello world list, is that spam or an esoprogram? 09:14:12 (it's easy to tell, generally, but requires concious thought, I can't let spamfighting go on mental automatic) 09:14:46 -!- MigoMipo has quit (Ping timeout: 240 seconds). 09:19:27 i dreamt i was playing minecraft on the esoserver 09:19:48 and dying meant being banned forever 09:21:45 anyway there were these areas that were apparently "close to hell" where destroying a block might start a chain reaction that opened up this huge hole on the ground, and you had to run for your lives 09:21:46 -!- FireFly|n900 has joined. 09:22:07 and then the elf in my party had a lesbian relationship with her twin or clone or whatever 09:26:56 also in the world, islands weren't separated by water, but by emptiness, with only a bridge of sparsely distributed single blocks you could jump on to get across, i was sent to build a proper bridge across of these, alone, and my father told me i shouldn't go into the cave without torches because of all the foxes. 09:27:19 and because it's particularly hard to use electricity in that particular cave... i had no idea what he was talking about 09:48:03 and then the elf in my party had a lesbian relationship with her twin or clone or whatever <-- err 09:48:40 oklopol, weird dream 09:52:36 Vorpal: how did nailor do his underwater thing? <-- before health 09:53:06 elliott: also iirc he first did top down and got horrible streams, I helped fix those. then the rest he built top down 09:53:24 elliott: but since you don't plan to have water above the thingy you will build, that shouldn't be a problem 09:54:02 err the rest he built bottom up I meant 09:54:07 elliott: also I believe he kept moving a dirt barrier forward when he built it bottom-uå 09:54:09 up* 09:54:32 generally everything has sex with everything in my dreams 09:54:40 oklopol, weird 09:55:21 i make things have sex whenever i have lucid moments, and my dreams are usually half-lucid 09:55:34 that i "kinda" know they are dreams 10:14:25 -!- atrapado has joined. 10:35:26 -!- MigoMipo has joined. 10:40:52 -!- nopseudoidea has quit (Quit: Quitte). 10:45:30 -!- oerjan has joined. 10:52:31 -!- perdito has joined. 11:09:52 `addquote i make things have sex whenever i have lucid moments, and my dreams are usually half-lucid 11:10:20 also, a bridge of sparsely distributed single blocks sounds like every platform game ever 11:10:26 especially over emptiness 11:10:30 what color was the emptiness? 11:10:51 (or was color not a property it had? I find in my dreams, at least, many objects don't have properties you'd naturally expect them to have) 11:11:17 ais523: blueish. 11:11:22 bright blueish 11:11:53 266| i make things have sex whenever i have lucid moments, and my dreams are usually half-lucid 11:12:44 i luv this chan 11:12:49 :) 11:13:07 oklopol: hmm, likely one of the Mario games then 11:13:36 i don't recall objects not having properties, but they certainly have properties they usually couldn't have, like being really scary, or "proving something", a property normal objects can't have, if they actually prove something, it's on an intellectual level, not emotional, although in tv series it does happen, since you sometimes aren't really following the technobabble, but you get that "oh my god that table has a *scratch* on it!" 11:14:41 I know while I'm dreaming I don't notice all sorts of logical inconsistencies, I just assume that's the way the world works 11:14:59 in fact, I'm remarkably unsuspicious while asleep, it helps to stop me noticing I'm asleep and waking up 11:16:11 i tend to check i'm awake every now and then, when i'm awake, it's something they tell you should do if you want to get lucid dreams, i do it partly because of that, and partly because i occasionally confuse reality and my dreams 11:17:39 which is basically schizophrenia, luckily it's rather rare 11:18:38 at least i've understood you should always know, when you're awake, whether things have happened or not, if you have a clear memory of them 11:18:54 objects need properties to be identified, or even instanced as objets.. regarding to them as objects is the intellectual job, i think.. it's focussing on certain aspects of beeing.. and there is and infinite number of them out there 11:19:17 so its hard work 11:19:24 done while you're awake 11:20:00 we are better artist,then we have thought, as master eckhard says 11:20:19 we construct the world.. on the fly 11:21:56 i find it interesting that i can come up with awesome objects and worlds, compose okay songs, and come up with plots that make at least a little bit of sense, but math... i do it every day, but in my dreams, all the math parts seem like a 1st grader wrote them :\ 11:22:00 in our dreams, the doors of perception seem to open a little more 11:23:38 perdito: dunno about that, the way you think in dreams is the way you think when you're not really concentrated, except that you can send yourself sensory input, methinks. 11:23:50 indeed! 11:24:23 concentration = closing the doors of perception.. focusing.. filter the rest.. or even just identify and matter no more! 11:25:54 i can construct the same worlds in my head i do when i'm dreaming, i just explore them in a different, more pleasing way; the fact you can actually look at the world, as if through your eyes, doesn't really aid the process, it's just nice. 11:26:38 perdito: i find it a bit hard to follow your train of thought, and my meaningless poetry sensor starts beeping, no offense, i'm really trying :D 11:26:53 i guess i may be a bit hard to follow as well 11:27:04 hmm 11:27:11 yeah maybe i get your doors of perception 11:28:02 "or even just identify and matter no more!" 11:28:02 sry.. my english prevents me to express myself clearer 11:28:13 yes!! 11:28:16 that part is a bit hard to 11:28:23 you got it :) 11:28:59 i did? 11:29:01 :D 11:29:18 i copy pasted that from yours to ask "what?" 11:29:58 if by "mattering" you mean "making a difference", in some deep philosophical sense, then i don't think we're talking about the same subject 11:30:53 i'm mostly interested in the fact the dreaming brain seems to shut off certain functions, for instance obviously the part responsible for math 11:30:57 concentration is not required to percept the world around us! ..even worse! it makes us filter out all the "useless" information out there.. the infinity 11:31:06 which i find intuitive, but definititely not obvious 11:31:21 because certain parts of the brain are just as alive as they are awake 11:31:40 like the part that processes human relationships, that's on crack when you're dreaming 11:32:14 i'd like to mention, once again, the countless times i've fallen asleep reading math, and had the mathematical concepts turn into human relationships in a millisecond 11:32:45 in silly and intuitive ways, like a pair might be a marriage 11:32:50 and a list might be a queue 11:32:54 of people 11:34:02 amazing 11:34:03 :) 11:34:17 " concentration is not required to percept the world around us! ..even worse! it makes us filter out all the "useless" information out there.. the infinity" <<< i don't know what the infinity is, but yeah, this may be true, although i think it's a side-effect, not in any way inherently necessary for concentration 11:34:52 as huxley said, we need both: 11:34:53 work 11:34:56 & love 11:34:58 usually when i concentrate, i fall into a trance and don't really have any idea what i'm doing or what people are doing around me, but i think that's mostly "my thing" 11:35:09 work and love huh 11:35:19 another analogy 11:35:25 yeah maybe we need both, and maybe that's relevant here in some sense 11:35:28 hmm 11:35:33 right 11:35:34 analogy 11:35:35 body & soul 11:35:42 function & percept 11:35:53 sure sure, wing and wang, black and white. 11:36:43 listing analogies is fun and all, but it's the stuff the part of the brain does that lives when you're asleep. not the part that thinks, and i like to think when i'm awake. 11:37:12 http://en.wikipedia.org/wiki/Henri_Bergson#Creativity <-- interesting article 11:37:18 i'm sure it is 11:37:24 i'll open it just in case 11:38:00 hmm, esoidea: a lang that looks very like an existing lang, but has subtly different semantics 11:38:06 C might be a good one to base it on 11:38:28 exactly same syntax 11:38:29 my first idea is that instead of using break; to break out of a switch at the end of a case, instead you use continue; to /not/ break out 11:38:34 but nothing is what it seems 11:38:36 oklopol: yep, identical syntax 11:38:56 and ideally, it'd be similar enough that a program sort-of works like what you'd expect it to if you know the existing language 11:39:00 ah 11:39:10 for instance, you could make C call-by-name rather than call-by-value 11:39:15 okay i was thinking something completely insane that could never be realized, but yeah i like the sort-of-works thing 11:39:16 and people wouldn't realise something was wrong until much later 11:40:10 so i actually decided to stay home today and do my master's thesis, so if i'm not gone in an hour, you're all welcome to tell me to fuck off 11:42:06 anyway to continue the dream thing, wouldn't it be awesome, if there really is a way to "switch off math" from the brain (which is my conjecture, although you may disagree with my rather pseudo-scientific evidence of this), to learn to do math without it 11:42:14 i love the idea of sucking at something, and learning to do it 11:42:52 oklopol: esolangs are my way to do that, in a way 11:43:02 you write an esolang which doesn't have maths in, you figure out how to implement it in that 11:44:21 yeah but it's different when you're programming your own brain, and especially when it's something that you are, at first, just inherently incapable of understanding 11:45:28 ...that you're implementing 11:47:59 i just have a serious brain fetish, that's all 11:48:24 remember good ol' operation mindfuck? 11:48:42 what was that 11:48:43 wilsons theories on metaprogramming our minds 11:48:51 i haven't read 11:49:38 cosmic trigger.. illuminatus.. schroedingers cat and so on.. a lotta beatiful and funny books to read 11:50:08 i can't really stand pop sci 11:50:23 and i don't particularly enjoy fiction 11:50:47 not that i know what those books are about 11:51:54 dunn wheter there ever will be a way to create sth like artficial intuition, but im sure we wont without channels as this 11:52:19 and lucid dreaming programmers like you oklopol :) 11:55:17 would be fun if it turns out it's actually pretty easy to program a fully conscious program, it's just intuition is impossible to implement, these programs can play chess, and *know they're alive*, but they *still* can't love / realize a proof is essentially just an application of lagrange's theorem 11:55:21 but first i really need to do sth bout this english-leaks 11:56:02 i'm not a programmer, i'm a mathematician! they call me "the computer scientist" at work, i work in the math dep :P 11:56:54 oklopol: well, I was a mathematician first, then an engineer, then a computer scientist 11:56:56 programming's just a hobby 11:57:19 well, and I teach programming part-time 11:57:26 -!- nooga has quit (Ping timeout: 240 seconds). 11:58:26 "hey X, you're a computer scientist, wanna program this script for me?" 11:59:50 softwaredev. needs it all.. maths, physics, pschycholgy, philosphy ..and ..uh..even martial arts *g 12:00:16 not seeing it, but easy to believe 12:00:45 thanks 2 walls u can at least smash things on themt if they do not work as intended 12:00:50 -->love 12:00:56 remember 12:01:12 ah and if you know your martial arts, you might still be able to type 12:03:43 usually when i concentrate, i fall into a trance [...] but i think that's mostly "my thing" <-- sounds like what they call "flow" to me 12:04:07 hmm? like you follow people and eat food etc but you're not really there 12:08:42 also i have this matrix-like idea that when we dream we are actually connected to a different universe in which mathematical logic _does not exist_ 12:08:52 :D 12:08:58 luv it! 12:16:32 hm today's iwc ... i guess the universe really _is_ doomed (again) 12:19:30 oerjan: that arguably makes sense 12:19:30 -!- oklofok has joined. 12:19:54 -!- MigoMipo has quit (Read error: Connection reset by peer). 12:20:27 yeah doom at new years is becoming a tradition 12:20:42 oerjan: oh, I was referring to dreaming connected to a universe without mathematical logic 12:20:55 while dreaming, you're in a universe made of disconnected parts of your own thoughts 12:21:01 XD 12:21:01 and mathematical logic tends not to be among them 12:21:34 sometimes, when you wake up, you can reconstruct what parts of your dream-universe were made from 12:22:18 i often directly get something i've thought about during the day in my dream 12:22:23 -!- oklopol has quit (Ping timeout: 240 seconds). 12:22:31 indeed, that's common 12:22:33 for instance that game where you can really die 12:22:56 it wasn't common for me, before one day i told someone that's never happened to me, and then i had a dream i told her that 12:22:58 as in, if you die in the game, it kills the player not just the character? 12:23:00 which was... weird 12:23:03 oklofok: i vaguely recall in the logs _someone_ telling us to shout if he wasn't gone in an hour, about an hour ago 12:23:08 :D 12:23:09 oklofok: that's beautiful 12:23:43 ais523: also happened with that thing where your eye muscle starts repeatedly contracting, what's its name 12:23:44 awareness 12:23:48 i never had that 12:23:58 then a girl said she'd been having that all day 12:24:09 i told her i'd never even heard about that kind of thing 12:24:11 and i go home 12:24:14 and it happens 12:24:40 after that it was quite common for a while, nowadays i can stop that kind of thing 12:25:08 btw i don't really believe my own stories even though i know they are true 12:25:24 they sound too unlikely 12:26:24 and by i don't believe them i mean i find it hard to believe them 12:27:03 http://en.wikipedia.org/wiki/Fasciculation 12:28:29 "hearing about this concept" is not listed as a cause 12:29:14 or possibly http://en.wikipedia.org/wiki/Myokymia 12:29:50 -!- FireFly|n900 has quit (Read error: Connection reset by peer). 12:30:11 yeah so okay i'm leaving after this ep 12:30:18 6 minutes 12:30:36 so if you need my expertise, ask now 12:31:39 oklofok: How much wood would a woodchuck chuck if a woodchuck would chuck wood? 12:32:07 depends on how it's changed to give it that ability 12:32:34 hm, imagine it being bitten by a radioactive beaver 12:32:38 hmm 12:34:00 it could chuck whole trees in a matter of hours 12:34:06 rofl 12:34:12 -!- perdito has changed nick to perdito|afk. 12:34:27 ais523: also happened with that thing where your eye muscle starts repeatedly contracting, what's its name <-- blinking? 12:34:34 :D 12:34:47 that was actually pretty funny 12:35:54 oklofok never blinked before 12:38:02 erm so 12:38:04 i'm going now 12:38:13 will close irc and everything 12:38:15 wish me luck 12:38:16 okay 12:38:21 WISH 12:38:21 oklofok, going to what? 12:38:27 i'm going to write stuff 12:38:30 ah 12:38:31 BYE 12:38:32 cya 12:38:42 -> 12:38:43 and good luck 12:38:47 yay 12:38:51 -!- oklofok has quit. 12:40:27 -!- FireFly has joined. 12:41:56 -!- ais523 has quit (Read error: Connection reset by peer). 12:43:41 -!- perdito|afk has quit (Quit: perdito|afk). 12:44:38 -!- ais523 has joined. 12:44:45 -!- ais523 has quit (Changing host). 12:44:45 -!- ais523 has joined. 12:51:06 -!- FireFly|n900 has joined. 12:52:48 -!- ais523 has quit (Read error: Connection reset by peer). 12:53:29 -!- ais523 has joined. 13:11:20 -!- nopseudoidea has joined. 13:11:27 -!- elliott has joined. 13:14:44 22:44:32 My God. One could actually pretty much *have* Plan 9 just by replacing the Linux userspace. 13:14:46 pikhq: glendix 13:15:06 01:13:31 gah, the hard part of adminning #esoteric is occasionally I have to check twice whether something's spam or not 13:15:06 01:13:51 I mean, someone adds a random sequence of letters and punctuation to the hello world list, is that spam or an esoprogram? 13:15:06 01:14:12 (it's easy to tell, generally, but requires concious thought, I can't let spamfighting go on mental automatic) 13:15:10 ais523: fail (first linem, #) 13:15:45 01:26:56 also in the world, islands weren't separated by water, but by emptiness, with only a bridge of sparsely distributed single blocks you could jump on to get across, i was sent to build a proper bridge across of these, alone, and my father told me i shouldn't go into the cave without torches because of all the foxes. 13:15:50 this is better than minecraft 13:16:40 03:13:07 oklopol: hmm, likely one of the Mario games then 13:16:43 ais523: it was Minecraft 13:19:22 03:59:50 softwaredev. needs it all.. maths, physics, pschycholgy, philosphy ..and ..uh..even martial arts *g 13:19:29 what, software development is trivial and involves none of those 13:20:31 elliott, surely you know kung-fu is invaluable when dealing with java? 13:20:50 true. 13:21:02 i have used physics to debug a complex tangle of gnu makefiles once 13:21:15 (i dropped the hard drive from the top of a tall building) 13:21:19 ah 13:21:26 (note: story is fiction) 13:21:46 :(, DMM licenses his comics non-freely. 13:21:47 elliott, for being gnu, gnu make is quite decent 13:21:54 elliott, since when? 13:21:59 Vorpal: -nc- 13:22:03 is nonfree 13:22:09 elliott, depends on your definition 13:22:12 discrimination against fields of endeavour 13:22:13 no, it doesn't 13:22:26 elliott, it is freer than "all rights reserved" 13:22:27 elliott: shush, clearly perdito intends to start a new and glorious age of software development 13:22:30 it's against the DFSG, the OSI definition 13:22:39 there may even be giant robots involved 13:22:46 won't even bother looking up the FSF's opinion, i think it's obvious :) 13:22:55 Vorpal: freer -- "i'm slightly pregnant" 13:22:57 elliott, nd I would have considered non-free 13:23:09 elliott, that reply made no sense... 13:23:15 no, it made perfect sense 13:23:23 "my software is slightly unfree" -- "i'm slightly pregnant" 13:23:25 no such thing. 13:23:31 Vorpal: if you consider -nc- free you also have to consider -njews- free 13:23:37 elliott, law of excluded middle? 13:23:40 i.e., anybody but jews can redistribute this software 13:24:48 elliott, free is a gradual scale. GPL is free. BSD is more free. that "do wtf you want" license is in some sense even more free 13:25:05 you do realise i'm using free in the Free sense? 13:25:16 Vorpal: freer -- "i'm slightly pregnant" <-- this is ridiculous since nothing in our current world can be truly free, there are always limitations 13:25:19 elliott, as for njews, sure it is freer than all rights reserved. That isn't saying it is a good idea though 13:25:28 http://www.debian.org/social_contract#guidelines, something is either entirely free or not free at all 13:25:31 oerjan, indeed 13:25:33 oerjan: um i don't see how that is true at all 13:25:37 oerjan: please back that up 13:25:54 elliott, you aren't free if you need to include info on who originally made it. 13:26:00 thus *BSD is non-free 13:26:08 not according to the definition of http://www.debian.org/social_contract#guidelines 13:26:11 (see, this makes no sense) 13:26:15 I'm saying Free here, not free, you're stupid 13:26:32 "Free" means one of a few well-defined set of conditions 13:26:34 for instance, http://www.debian.org/social_contract#guidelines 13:26:38 elliott, you didn't use upper case above 13:26:43 :(, DMM licenses his comics non-freely. 13:26:48 non-Freely surely? 13:26:50 because the /other/ meaning of free is "costs no money" 13:26:55 and it was damn obvious 13:27:01 and i'm not about to start saying "libre" 13:27:02 elliott, no it wasn't 13:27:09 yes. indeed not to you 13:27:22 -!- Wamanuz2 has joined. 13:27:30 -!- Wamanuz has quit (Ping timeout: 265 seconds). 13:28:13 elliott, sure it isn't DFSG compliant. But it is somewhat free. 13:28:26 it is not Free(TM)(C)(R) at all 13:29:00 perhaps. it is a lot more free than, for example, dillbert though. 13:29:08 s/e,/e/ 13:29:16 hm 13:29:32 (insert other grammar fixes here) 13:29:49 Vorpal: define free 13:29:55 if you mean Free, then no, no it's not 13:30:33 elliott, I don't mean the DFSG sense. It should be obvious 13:30:54 elliott, since that is a boolean sense. While I clearly refer to a gradual sense 13:30:58 Vorpal: if you mean libre, well, good luck defining a scale of libre 13:31:04 because there isn't really one 13:31:06 elliott, I never said that either 13:31:13 elliott, I'm pretty sure you know what I mean 13:31:21 what, then? 13:31:22 free of cost? 13:31:55 Vorpal: ? I cannot think of any more definitions of free. 13:32:03 Free, libre, and free as in beer 13:32:04 what else 13:32:50 elliott, the everyday sense that is a gradual scale from "all rights reserved, full DRM, costs a shitload" to "do what the fuck you want with this" 13:32:59 Vorpal: so, libre. 13:33:15 remind me to avoid using confusing french around you in future 13:33:17 elliott, libre is not actually a gradual scale as commonly defined afaik 13:33:55 or not at least in the sense most commonly used in relation to software 13:35:18 i wonder if booting without an initramfs/initrd actually works these days 13:35:49 now I have to read scrollback to see what the argument was about 13:36:11 ais523: me saying that no, an -nc- license is *not* Free, Vorpal misinterpreting this and saying "but it's MORE FREE!!" 13:36:21 ais523: it was Minecraft <--- the dream was clearly a modified Minecraft, I was trying to figure out what it was modified /by/ 13:36:31 repeat until Vorpal reveals that he's not able to infer "Free" from "free" by obvious context 13:36:33 /win 2 13:36:45 ais523: 01:22:07 and then the elf in my party had a lesbian relationship with her twin or clone or whatever 13:36:51 ais523: what the heck is that from then :P 13:37:04 elliott: he explained a bit later 13:37:26 elliott: what time is it right now? 13:37:33 coppro: what? 13:37:41 elliott: what time is it right now 13:37:45 coppro: 08:37:05 when I asked your client what time it was 13:37:46 01:22:07 and then the elf in my party had a lesbian relationship with her twin or clone or whatever 13:37:46 01:26:56 also in the world, islands weren't separated by water, but by emptiness, with only a bridge of sparsely distributed single blocks you could jump on to get across, i was sent to build a proper bridge across of these, alone, and my father told me i shouldn't go into the cave without torches because of all the foxes. 13:37:46 01:27:19 and because it's particularly hard to use electricity in that particular cave... i had no idea what he was talking about 13:37:47 01:54:32 generally everything has sex with everything in my dreams 13:37:49 01:55:21 i make things have sex whenever i have lucid moments, and my dreams are usually half-lucid 13:37:51 ais523: thanks 13:37:52 01:55:34 that i "kinda" know they are dreams 13:37:57 ais523: i don't think that counts as explanation 13:38:11 it's 13:37 in my timezone 13:38:19 elliott: does to me 13:38:20 double thanks 13:39:03 ais523: well, I doubt he'd go out of his way to indicate a particular relationship if by his own admission he made /everyone/ had a relationship-by-some-definition 13:39:13 therefore i consider his dream an unexplained phenomenon. 13:39:17 we may never know. 13:39:21 meh, dreams 13:39:25 I don't have them often 13:39:31 at least, I don't recall having them often 13:39:35 probably I have them all the time 13:39:41 you only remember a dream if you wake up during it 13:39:46 that's why dreams never seem to get to the end 13:40:16 ais523: do you have proof of that or a cite or whatever 13:40:19 never heard that 13:40:24 brains to seem to have this thing of not committing dreams to memory 13:40:28 elliott: sounds about right 13:40:38 well sometimes you wake up because the dream does end, horribly 13:40:39 elliott: no, it's something like third-hand info that I can't remember where I've read it 13:40:46 but it's consistent with my experiences 13:40:50 oerjan: arguably, that would be waking up during 13:40:52 coppro: that doesn't count as evidence, though, especially because remembering what happens at the end of dreams just before you wake up is near-impossible 13:40:59 oerjan is right though 13:41:00 elliott: It's all hear-say anyways 13:41:05 i've woken up right when i died in dreams 13:41:10 coppro: there is actual dream research. 13:41:15 I'd say it's because you died in the dream and the dream was still continuing 13:41:22 but the death was a really obvious sign you were dreaming 13:41:26 and thus, a prompt to wake up 13:41:33 yes, but we can't empirically measure dream retention 13:41:49 I wonder if, if you were lucid dreaming, you could die in your dream and then keep lucid control over the afterlife 13:42:12 coppro: pi don't think that's necessarily true 13:42:13 *i 13:42:20 ais523: i doubt it :p 13:42:23 I have to agree with ais523 on one thing, though 13:42:31 I don't think it's obvious either way 13:42:38 I only remember a dream if when I wake, I was dreaming right before 13:42:47 (there. now we've avoided the "end of a dream" issue) 13:43:16 CLEVER 13:43:50 but not clever enough for oerjan 13:43:57 he will come and rip your soul out of your body 13:44:15 Vorpal: btw, you said i shouldn't clobber owners on dirs etc. that have to be owned by a specific special-purpose user 13:44:31 Vorpal: well, I'd have to chmod them in postinst anyway. because of course the target machine won't have the user, so the postinst script has to add it, and the UID might not be the same 13:45:48 elliott: Debian actually has some sort of crazy systematic solution for that 13:45:54 I can't remember what it is, but it's likely in debhelper somewhere 13:46:01 ais523: and I have postinst scripts!! 13:46:08 joy! 13:46:23 $ ls 13:46:23 description needs scripts source.tar version website 13:46:27 this package manager is comin' together 13:46:58 ais523: I *think* I've avoided the problem of understanding yours and CLC-INTERCAL's versioning systems altogether (for upgrades) 13:47:00 hmm, gitorious is down 13:47:03 -!- MigoMipo has joined. 13:47:48 ais523: I was considering bug-hunting C-INTERCAL to pass time, but then I realised I'd be entering the Realm of the ESR, and decided not to. you traitor :p 13:47:59 (ok so i also decided it sounded like not much fun at all) 13:48:19 you could try running the fuzz-tester, that's a) easy, and b) entirely written by me 13:48:41 in fact, esr tried to stop me doing it (on the basis he thought I'd be wasting my time, admittedly, rather htan thinking it was necessarily a bad idea) 13:49:02 ais523: the cathedral and the bazaar and the fascist dictatorial state 13:49:11 -!- perdito|afk has joined. 13:49:17 ais523:and -- oh, I meant actually analysing and modifying the code by hand 13:49:20 *ais523: and 13:49:24 (preferably avoiding running it) 13:49:36 ais523: you need to re-fork it :p 13:51:04 ais523: (or maybe I'll just write ITRALCEN!) 13:51:43 ais523: apropos nothing at all, have you seen http://steve-yegge.blogspot.com/2010/12/haskell-researchers-announce-discovery.html? 13:51:45 -!- nopseudoidea has quit (Quit: Quitte). 13:52:09 [["I'm kind of surprised I'm the only person on earth who gives a shit about it," Briars continued. "I'd have thought there would be more people following the press releases closely and then not using Haskell. But they all just skip the press releases and go straight to the not using it part."]] 13:57:46 -!- perdito|afk has quit (Ping timeout: 245 seconds). 14:00:17 "Would you please do me the kindness of adding a second "l" and a second "t" to my last name ("Elliott") in your link?" --Conal Elliott 14:00:19 HE FEELS MY PAIN 14:03:18 you'll have to start a secret society of elliotts 14:04:49 -!- Sasha has joined. 14:04:52 -!- Sasha has quit (Client Quit). 14:05:30 -!- Sasha has joined. 14:07:59 elliott: i think someone's been reading a bit of onion 14:08:17 *the onion 14:08:36 oerjan: also http://steve-yegge.blogspot.com/2010/07/wikileaks-to-leak-5000-open-source-java.html 14:08:47 oerjan: it's funnier than the onion though, with the onion you can usually just read the headline and skip the rest 14:09:41 -!- perdito|afk has joined. 14:16:03 ais523: would you appreciate the effort if I wrote something to convert every CPAN package to a Kitten package in the repos? :-P 14:16:10 -!- perdito|afk has quit (Quit: perdito|afk). 14:24:41 -!- perdito|afk has joined. 14:26:35 -!- perdito|afk has changed nick to perdito. 14:26:59 elliott, do you know if python allows you to have values such as NaN and +/-inf for floating point without throwing exceptions? 14:27:10 it seems to throw exceptions all the time when I try 14:27:39 >>> float('nan') 14:27:39 nan 14:27:43 hm 14:27:44 weird 14:27:46 >>> float('inf') 14:27:46 inf 14:27:46 >>> float('-inf') 14:27:46 -inf 14:27:54 >>> float('asdf') 14:27:54 ValueError: invalid literal for float(): asdf 14:27:58 Vorpal: but 1./0. is not allowed. 14:28:04 elliott, ah that explains it. 14:28:08 it raises a ZeroDivisionError 14:28:18 Vorpal: also math.isnan 14:28:21 elliott, indeed, I would have expected it to act as IEEE prescribes 14:28:26 and math.isinf 14:28:29 indee 14:28:29 -!- perdito has changed nick to perdito|afk. 14:28:34 indeed* 14:28:55 elliott, wait, is float single or double? 14:29:00 in python that is 14:29:13 double i think 14:29:17 ah good 14:29:22 how can i check 14:29:29 -!- sftp has joined. 14:29:42 * elliott looks into postoffice 14:29:45 well, I could do it as easily 14:29:53 (which is the say, it involves some work) 14:30:10 elliott, I wish the python REPL had tab complete 14:30:44 Vorpal: put in ~/.pythonstartup 14:30:47 import readline 14:30:51 import rlcompleter 14:30:53 readline.parse_and_bind('tab: complete') 14:30:59 or whatever 14:31:05 Vorpal: (and yes that works) 14:31:15 why on earth is that not default then 14:31:19 Vorpal: or try ipython 14:31:35 Vorpal: which is the python REPL so bloated, it's basically a shell 14:31:41 but it syntax-highlights :P 14:31:45 haha 14:31:57 probably in $your_distro 14:32:03 elliott, so wait, this will tab complete stuff like myintvar. to list possible members? 14:32:09 that is the rlcompleter thingy 14:32:12 Vorpal: maybe. it certainly works with modules 14:32:20 Vorpal: oh there's also bpython, which also has integrated docs: http://bpython-interpreter.org/screenshots/ 14:32:41 elliott, hm are you sure about ~/.pythonstartup ? 14:32:47 -!- perdito|afk has quit (Ping timeout: 245 seconds). 14:32:47 it seems to do absolutely nothing 14:32:50 no i just googled :D 14:32:53 * Vorpal tries it directly in the shell 14:33:04 PYTHONSTARTUP¶ 14:33:04 If this is the name of a readable file, the Python commands in that file are executed before the first prompt is displayed in interactive mode. The file is executed in the same namespace where interactive commands are executed so that objects defined or imported in it can be used without qualification in the interactive session. You can also change the prompts sys.ps1 and sys.ps2 in this file. 14:33:10 Vorpal: set PYTHONSTARTUP=$HOME/.pythonstartup 14:33:13 or .pythonrc or whatever 14:33:13 elliott, heh 14:33:27 http://bpython-interpreter.org/screenshots/ is actually really cool 14:33:42 Vorpal: http://geoffford.wordpress.com/2009/01/20/python-repl-enhancement/ also saves history to a file 14:34:01 haha, "/etc/postoffice.cf" oldschool 14:34:18 elliott, other feature I would like: reloading a file into the shell without a pain calling sys.whatever(). (alternatively you could just restart python but then you lose that scrollback) 14:34:41 Vorpal: try help(reload) 14:34:50 e.g. 14:34:52 >>> import sys 14:34:54 >>> reload(sys) 14:34:59 14:35:00 elliott, I seem to remember it managed to crash python for me 14:35:06 well, it shouldn't. 14:35:11 also that only works if you import it as a module 14:35:22 e.g. "from sys import * \n reload(sys)" won't change the in-scope definitions 14:35:32 "from sys import * \n reload(sys) \n from sys import *" will though 14:35:39 (but the old definitions will still be there, if any values got removed) 14:35:42 hm 14:36:35 elliott, the rlcompleter thing seems to do the job. :) 14:36:46 Vorpal: you may want to nab the history-saving from that blog post too 14:36:51 ok postoffice looks pretty cool 14:37:01 elliott, is it an MTA? 14:37:01 but still more configuration than i'd like 14:37:16 elliott, also isn't .cf something to do with m4? 14:37:17 Vorpal: well, it's an SMTP server/client 14:37:30 at least I seem to remember that sendmail used .cf and also m4 14:37:37 .cf is what sendmail used for configuration files, it's just that this guy was used to sendmail when he wrote postoffice 14:37:39 so he stole the extension :) 14:37:42 http://www.pell.portland.or.us/~orc/Code/postoffice/ 14:37:46 ah 14:38:03 on the one hand, it looks like i'd have to do quite a bit of configuration. on the other hand, it looks like a lot less of a bitch to package than qmail! 14:38:31 elliott, postfix is actually quite decent iirc. Qmail is better of course. 14:38:53 Vorpal: I tried to use postfix once, and then I looked at the configuration files and my process tree. 14:38:55 No thanks... 14:39:08 hm 14:39:13 elliott, what about the process tree? 14:39:39 Vorpal: postfix likes to spawn a new process to do every single thing it can think of, because that way it can reduce their privileges 14:39:50 so you end up with 1,000,000 processes each with their own postfix-specific user :) 14:39:51 elliott, you do realise qmail is kind of like that too? 14:39:58 Vorpal: yes, but postfix takes it to THE XTREME 14:40:06 huh 14:40:28 elliott, and I seem to remember qmail having far more users 14:40:34 than postfix? 14:40:36 yes 14:40:39 postfix is very popular. 14:40:42 qemu is quite niche. :P 14:40:50 elliott, I meant user account 14:40:53 accounts* 14:40:53 ah 14:40:58 but does it use them all at once? 14:41:36 elliott, well, I believe it tends to start stuff as it needs for many things, just a handful running all the time, supervised by daemontools 14:41:48 All I want is to route user@domain to ~user by default, define a few aliases/wildcards e.g. *@domain -> elliott@domain, and also if ~user/.filtermail exists, execute it for every incoming message with stdin being the headers and message body, then stop processing further if it exits 0 (if it exits 1) keep going 14:42:04 and just put it in a maildir 14:42:05 elliott, hm I can ssh to a computer with postfix and check user count 14:42:13 one user, called postfix 14:42:28 maybe different distros package it differently? 14:42:35 or i'm misremembering... 14:42:38 anyway it had a ton of processes 14:42:39 that's all i remember 14:42:53 Vorpal: anyway, if I packaged qemu, I'd have to replace the daemontools scripts with svmg scripts 14:42:55 elliott, yes it does have 4 processes atm. But qmail is the account-insane one 14:43:03 elliott, qemu? 14:43:03 since svmg is almost a direct clone of daemontools/runit, that wouldn't be too hard, but still 14:43:06 erm 14:43:06 what has it got to do with it 14:43:07 qmail 14:43:09 ah 14:43:23 also, that /package and /command crap 14:43:39 i think only daemontools is packaged like *that* though 14:44:36 All I want is to route user@domain to ~user by default, define a few aliases/wildcards e.g. *@domain -> elliott@domain, and also if ~user/.filtermail exists, execute it for every incoming message with stdin being the headers and message body, then stop processing further if it exits 0 (if it exits 1) keep going 14:44:36 and just put it in a maildir 14:44:40 i'm almost tempted to write it ;) 14:45:42 -!- Wamanuz2 has quit (Remote host closed the connection). 14:50:13 -!- nopseudoidea has joined. 14:51:26 ok why isn't locale support working in uClibc 14:53:03 /* Silly foreigners disabling en_US locales */ 14:53:08 --gen_wc8bit.c 14:55:51 Yay, it's working now. 14:55:58 Uh, sort of. 14:56:04 TODO: look into locales some more. 15:00:33 -rw-r--r-- 1 elliott elliott 1.7M Dec 2 14:56 lib/libc.a 15:00:36 Eh, that's not bad. 15:00:54 Ha! It's bigger than glibc on my system. I wonder why. 15:01:09 Of course glibc is a .so. 15:01:33 -rw-r--r-- 1 root root 4.3M Oct 31 00:34 /usr/lib/libc.a 15:01:33 There. 15:01:41 And of course there are dlopen'd parts of glibc... 15:01:47 -!- perdito|afk has joined. 15:03:57 -!- Wamanuz has joined. 15:04:56 $ cat /proc/cpuinfo | awk '/^processor/ { print $3 }' | tail -1 15:05:01 The ugliest way to get the number of cores possible. 15:05:06 Wait, that actually needs +1. 15:05:13 $ cat /proc/cpuinfo | awk '/^processor/ { print $3+1 }' | tail -1 15:05:40 -!- nopseudoidea has quit (Quit: Quitte). 15:06:34 Oh, this is cleaner: 15:06:35 cat /proc/cpuinfo | grep processor | awk '{a++} END {print a}' 15:08:01 -!- Phantom_Hoover has joined. 15:10:09 -!- ais523 has quit (Remote host closed the connection). 15:10:57 -!- oerjan has quit (Quit: leaving). 15:11:40 /var/pkg/vi/scripts/build 15:11:42 Mwahahaha, paths. 15:13:18 -!- jcp has quit (Read error: Operation timed out). 15:14:39 pikhq: ugh! i need to put two filenames on a line. rapidly losing hope :) 15:15:01 Why? 15:17:20 -!- jcp has joined. 15:17:27 Phantom_Hoover: symlinks 15:17:48 Go on. 15:18:36 Phantom_Hoover: x -> y 15:19:02 And this stops you putting two filenames on a line? 15:19:29 Phantom_Hoover: every character but \0 is a valid component of a path 15:19:44 Ah. 15:19:59 googling "manifest file" is impossible thanks to java :( 15:29:01 Phantom_Hoover: In fact I'm 90% of the way to not even bothering with a manifest... 15:32:57 http://news.bbcimg.co.uk/media/images/50260000/jpg/_50260127_searchingforporn,bbc.jpg 15:33:07 I can't even think of anything to say about that. 15:33:31 That is now my favourite image. 15:33:32 -!- sshc has quit (Ping timeout: 264 seconds). 15:33:43 Phantom_Hoover: Oh man, imagine the steps taken to create that image. 15:33:52 Load up google, type in porn, get the camera out, tripod, zoom... 15:34:08 Words fail me. 15:34:17 "That angle's not the standard BBC Angle To Show Zoomed In Computer Screens At! (pretty sure they have one, just about every photo they do of that sort has an angle like that)" 15:34:19 And, redo! 15:34:33 -!- sshc has joined. 15:38:06 -!- oerjan has joined. 15:39:47 oerjan is a bath tub 15:42:41 that's just bubble, er babble 15:43:03 oerjan, http://news.bbcimg.co.uk/media/images/50260000/jpg/_50260127_searchingforporn,bbc.jpg 15:43:05 Comment. 15:44:08 {- porn -} 15:47:40 Phantom_Hoover: Wanna help me build THE GLASS CUBE? 15:47:52 Mining now, I assume? 15:48:11 Phantom_Hoover: No! I'm getting the glass from the server, because you see, it involves 81 thousand pieces of sand. 15:48:24 Phantom_Hoover: And while I *could* obtain that without difficulty, I would sooner kill myself than face that kind of tedium. 15:48:33 Ah. 15:48:37 Phantom_Hoover: Fun fact! When it goes underwater, I will have to use a bucket 128x128x64 = 1,048,576 times. This is because of the sea 15:48:50 Phantom_Hoover: I do not like the sea 15:49:20 i blame the sea gets in the way of construction 15:49:59 indeed 15:51:18 Phantom_Hoover: Is chat broken or something? 15:51:32 No. 15:52:01 Phantom_Hoover: it 15:52:03 Phantom_Hoover: it is down 15:52:10 NO LONGER 15:52:10 Fair point. 15:52:13 It is back up. 15:52:20 Why do I have two pigs in my inventory. 15:52:20 How will you deal with the bedrock? 15:52:46 Finding a 128x128 block of it that's naturally smooth is an exercise in futility. 15:52:50 Phantom_Hoover: help help help i'm stuck 15:52:53 Phantom_Hoover: And, I just won't. 15:53:00 Phantom_Hoover: It's okay for the very bottom floor to be a bit uneven. 15:53:07 Phantom_Hoover: This thing *is* going to have something like 20 floors. 15:53:14 Or more. 15:53:31 Phantom_Hoover: The last three floors or so will be lined with obsidian on the walls and floors/ceilings, anyway (apart from the final bedrock floor). 15:53:38 !haskell 20^3 15:53:39 Phantom_Hoover: They are intended for the post-apocalyptic scenarios. 15:54:08 Perhaps I ought to do something about that... 15:54:13 Phantom_Hoover: About what? 15:54:19 The apocalypse. 15:54:21 Ah. 15:54:31 Wait, I have a 200-metre long warship under construction. 15:54:34 Ostensibly. 15:54:37 Indeed :P 15:55:16 Phantom_Hoover: FUN FACT! My cube will be 2,097,152 m^3 (and thus blocks). 15:55:37 Phantom_Hoover: I am going to rent out sections of it for free because let's face it, I can't even fill a 128x128 floor with my stuff. 15:55:48 !help 15:55:57 help: General commands: !help, !info, !bf_txtgen. See also !help languages, !help userinterps. You can get help on some commands by typing !help . 15:56:03 !haskell 20^3 15:56:05 8000 15:57:06 !haskell 2097152**(1/3) 15:57:10 127.99999999999997 15:57:45 Phantom_Hoover: Oh, and I'm also going to need TONS OF LAVA. 15:57:57 elliott, bug ineiros? 15:57:59 Phantom_Hoover: I'd like the lighting layers to be just one tall, so I can't use a bunch of falls. 15:58:10 Phantom_Hoover: So I'm going to need 128 * 128 * floors pieces of lava. 15:58:21 Yeah, I'm gonna ask ineiros to put some readily-accessible lava near the spawnpoint. :p 16:04:25 Phantom_Hoover: Taking a break already? 16:04:42 I love lava, red and hot 16:04:55 Yes. 16:06:31 -!- perdito|afk has quit (Ping timeout: 245 seconds). 16:12:40 meh minecraft 16:13:44 We like it, shut up. 16:13:49 alas, poor yorick, stepping into a minefield 16:14:30 -!- ais523 has joined. 16:15:16 http://www.maumae.net/yorick/doc/index.php 16:15:26 -!- nopseudoidea has joined. 16:17:07 -!- perdito|afk has joined. 16:17:30 ais523: does C-INTERCAL work with -jN? 16:17:36 ais523: its makefile, that is 16:38:11 * yorick stabs the Yorick namers 16:38:46 they're making those annoying "AI" bots say "yorick: you are an interpreted programming language" 16:52:54 ais523: hmm, can I have your esoteric opinion on something? 16:53:01 or oerjan's :P 17:08:52 (fn P P) A = A. 17:08:52 (fn P (F X)) A = (fn P F A) (fn P X A). 17:08:53 (fn P X) A = X. 17:08:54 Behold! Lambdas! 17:12:11 doesn't work if X is of the form (fn ... ...) with A inside somewhere 17:12:41 oerjan: hm? howso? 17:12:47 er i mean P inside 17:13:01 oerjan: don't quite see how that applies (although it certainly is failing in my tests :D 17:13:03 *:D) 17:13:17 also it seems to be non-lazy, Y foo is always diverging :p 17:13:20 ...you have no rule for that case 17:13:42 (fn P (fn Q P)) A 17:14:00 oerjan: = (fn P ((fn Q) P)) A 17:14:07 and that's the case which requires all the alpha machinery 17:14:08 oerjan: so F = fn Q, X = P 17:14:16 but yeah fucking alpha conversion 17:14:20 oerjan: i hereby invite you to fix it! ^_^ 17:14:27 i hereby decline 17:15:54 oerjan: a cool thing about this though 17:15:55 >>> (fn x (fn y x)) hello 17:15:56 ... 17:15:58 fn y hello 17:16:02 is that it SPECIALISES :P 17:17:42 mhm 17:17:56 i'll try it with de bruijn indexes... 17:18:46 -!- augur has quit (Remote host closed the connection). 17:20:23 meh : 17:20:24 :p 17:21:11 elliott: yep, it works with -jN for all positive integer N (that are small enough for make to parse correctly); and you can try to have my opinion, but I may not be paying attention 17:21:45 ais523: alas, my problem was another entirely and your opinion is thus not useful 17:21:59 ais523: but cool, let's see if i can get C-INTERCAL's latest release into Kitten 0.1 17:22:06 ais523: is there a convenient list of dependencies? 17:22:45 to what degree of granularity? 17:22:46 there are several 17:22:57 hmm, the list for DOS is probably best, as none of the software you need is installed on DOS by default 17:24:45 binutils, gcc, make, bash, diffutils, fileutils, findutils, awk, sed, shellutils, textutils; bison and flex are needed to recompile all the way from sources, texinfo and asciidoc (ugh esr) for the documentation 17:25:55 most are only needed for the build system to work 17:27:24 -!- nopseudoidea has quit (Quit: Quitte). 17:29:11 -!- Zuu has quit (Ping timeout: 272 seconds). 17:29:28 ais523: asciidoc is nicer than texinfo, but why the fuck use two?? 17:29:44 ais523: also, I doubt the latest release requires AsciiDoc, only the git, right? 17:31:30 ais523: in which case it doesn't matter 17:34:06 "SonicBlue was sued over the commercial-skipping feature of ReplayTV on similar grounds. "Your contract when you get the show is you're going to watch the spots [advertisements]. … Any time you skip a commercial … you're actually stealing the programming," asserts Turner Broadcasting CEO Jamie Kellner. He admits that "there's a certain amount of tolerance" for going to the bathroom during commercials." 17:41:22 ais523: ping? 17:42:25 pong 17:42:35 elliott: esr converted the README to asciidoc 17:42:41 with the result that it has random backslashes in now 17:42:54 ais523: so, only a problem in git. right. 17:42:58 as soon as you introduce escaping, everything goes wrong with that sort of format 17:42:59 and yes 17:43:42 ais523: I'll probably be wholly unreasonable and maintain my own constantly-out-of-date C-INTERCAL that has all the non-stupid things merged back in. Should I call it something else? :p 17:44:28 nah, just change what it stands for 17:44:38 ais523: Anyway, so there are no library dependencies? 17:45:27 no, apart from libc and the libraries it builds itself 17:45:30 well, cfunge, but that's optional 17:47:09 ais523: yeah i am *not* planning to build an iffi build :) 17:50:17 -!- augur has joined. 17:50:29 ais523: Does this look kosher to you? 17:50:35 ./configure --prefix= 17:50:47 make install -j$(NPROCS) DESTDIR=$1 17:50:58 To build C-INTERCAL. 17:51:02 s/$(NPROCS)/$NPROCS/ 17:53:05 -!- iamcal has joined. 17:54:00 -!- Zuu has joined. 17:54:02 -!- cal153 has quit (Ping timeout: 240 seconds). 17:55:52 ais523: please tell me if I've misrepresented your compiler :P: 17:55:53 C-INTERCAL is an implementation of Compiler Language With No 17:55:53 Pronounceable Acronym, abbreviated INTERCAL; it acts as a deobfuscator 17:55:53 by translating incomprehensible INTERCAL source code into vastly more 17:55:53 readable machine code, going through a C compiler on the way. It 17:55:53 supports all the common INTERCAL extensions, and has good 17:55:55 compatibility with CLC-INTERCAL. 17:56:23 (yes, yes, I stole the deobfuscator idea from the Debian packge description) 17:56:24 *package 17:58:24 -!- atrapado has quit (Quit: Abandonando). 18:06:10 it's not kosher, it has shrimps in it 18:07:19 ais523: i would like to express my complaint with c-intercal's default installation directories 18:07:24 *express a complaint 18:08:38 ais523: specifically, /share/ick-0.29/ should in fact be called /lib/ick-0.29/ or /libexec/ick-0.29/ 18:08:47 ais523: also, you shouldn't put the version name in the dirs like that 18:10:47 -!- nooga has joined. 18:11:08 ais523: ok i may be wrong about the share thing. but ick-0.29 is still wrong 18:11:32 especially for include/ 18:14:29 -!- jcp has quit (Ping timeout: 245 seconds). 18:20:51 -!- jcp has joined. 18:27:44 ais523: I fixed your bug :) 18:34:26 -!- jcp has quit (Ping timeout: 240 seconds). 18:39:51 -!- jcp has joined. 18:45:29 elliott, ever used cython? 18:45:42 Vorpal: i don't think i've *used* it but i know of it, yes 18:47:03 elliott, I had a reversi-playing thing to write as an assignment, using alpha-beta pruning. Course uses Python. It was kind of slow. I optimised it as much as I could to be able to increase search depth from 3 ply to something greater. So 3 ply = about 19 seconds in pure python when playing against itself. 18:47:12 elliott, with cython + some type annotation = 3 seconds 18:47:13 :D 18:47:19 python really really sucks 18:47:36 very computation heavy though 18:48:04 elliott, and well, lets see what adding further type annotation will do 18:48:24 2.3 seconds now 18:50:14 Vorpal: are you sure they'll accept Cython... 18:50:23 Vorpal: also, Did You Try Psyco First 18:50:34 (TM) 18:50:40 elliott, no, but I'll mention it in the report to hope to make them realise how silly python is for this task :P 18:50:46 elliott, also down to 1.7 seconds 18:50:58 Vorpal: try psyco (need 32-bit python) 18:51:01 without any cython 18:51:09 elliott, yeah I would need to setup a 32-bit python somewhere 18:51:13 probably needs a chroot 18:52:04 Vorpal: 18:52:05 # pkgcross x86 python 18:52:10 $ /arch/x86/bin/python foo.py 18:52:12 elliott, on what system? 18:52:13 .... 18:52:13 oh wait sorry you don't use kitten NEVER MIND 18:52:21 elliott, I can't use it yet 18:52:25 so that is pointless 18:52:35 yeah you can you just have to implement all the bits that aren't done or that i haven't released! 18:52:41 which is ALL of them! 18:53:48 CFLAGS=-Os ./configure --prefix= 18:53:48 make install -j$NPROCS ICK_SPECIFIC_SUBDIR=ick DESTDIR="$1" 18:53:53 Vorpal: look what horrible things ick makes me do! 18:53:57 yes indeed, I have to set a whole ONE variable! 18:54:11 (and only then because I think it should be that way anyway :P) 18:54:16 Also, yes, the lack of / after --prefix= is intentional. 18:54:22 because stuff does $(prefix)/foo 18:54:24 which would become //foo 18:56:16 elliott, hah 18:56:47 Vorpal: (ICK_SPECIFIC_SUBDIR usually includes the version, which is stupid because this way it goes into /share/ick and /include/ick like it should, not /share/ick- and /include/ick-) 18:57:06 elliott, also down to 0.6 seconds now. cython has a nice mode where it renders to html and colour codes lines (white to yellow) to indicate how much conversion between python and C data types is going on 18:57:08 rather useful 18:57:44 -!- jcp has quit (Ping timeout: 250 seconds). 18:58:12 is nobody on minecraft? :( 18:58:33 elliott, no time today 18:59:30 I'm at a bit of a loss as to where to build the Cube... 19:00:51 -!- jcp has joined. 19:02:42 -!- cheater99 has quit (Read error: Connection reset by peer). 19:09:57 elliott, actually I have to say cython is quite a nice language to use. On one hand when you need speed it isn't sluggish. On the other hand you can still use "high level" stuff when you need (such as non-painful dynamically growing lists) 19:10:01 and easily mix those 19:10:33 the Cube? what? 19:13:09 nooga: minecraft. 19:15:20 falses = cons false falses. 19:15:20 bch = bch1 nil falses. 19:15:20 bch1 (state (L : Ls) Rs) (left : Ps) = bch1 (state Ls (L : Rs)) Ps. 19:15:20 bch1 (state Ls (R : Rs)) (moustache : Ps) = bch1 (state ((not R) : Ls) Rs) Ps. 19:15:20 bch1 (state Ls (R : Rs)) ((loop LPs) : Ps) = if R then bch1 (bch1 (bch1 Ls Rs LPs)) ((loop LPs) : Ps) else (bch1 (state Ls (R : Rs)) Ps). 19:15:22 this better work 19:18:09 it does not! but it is close 19:18:36 -!- cheater99 has joined. 19:29:06 oerjan: ais523: could you delete [[Image:P''.png]]? thanks 19:31:05 i'm not an admin 19:33:06 oerjan: well 19:33:07 why not :P 19:33:34 Why are you programming in moustaches 19:34:32 Slereah: it's what i call } 19:34:34 i'm trying to do bitchanger 19:34:42 in anemone 19:35:12 What's anemone? 19:35:15 State machine? 19:36:16 Oh 19:36:20 Just a... 19:36:22 What's the name 19:36:26 Like BNF 19:36:40 elliott: um you are still linking to that image from Prehistory. also that messes up the table of contents. 19:37:02 oerjan: ' != ′ 19:37:05 Slereah: it's a term rewriter. 19:37:11 not like bnf 19:37:24 oerjan: good point about ToC, i'll fix 19:49:14 also presumably i'm not admin because no one has made me one 19:49:39 * oerjan now off to discover new and impressive tautologies 19:49:44 -!- Sgeo has joined. 19:49:54 elliott: you know your advice about using IE when Firefox wouldn't download executables? 19:50:15 it seems that something had really really locked the system down, IE wouldn't download them either but at least it gave a vaguely useful error message 19:50:25 ah 19:50:46 ais523: I asked you a few things when you were gone; can I re-paste them? 19:50:46 Hey, elliott didn't respond to anything I said in the log 19:50:49 That's unusual 19:50:51 in the end, I had to identify Microsoft's download domains and set them to trusted status in IE, and also set the security settings for trusted sites (which atm is /only/ three microsoft.com subdomains) to the lowest settings 19:50:52 elliott: go for it 19:51:00 ais523: Does this look kosher to you? 19:51:00 ./configure --prefix= 19:51:00 make install -j$(NPROCS) DESTDIR=$1 19:51:00 To build C-INTERCAL. 19:51:00 s/$(NPROCS)/$NPROCS/ 19:51:03 ais523: like, the virus you wanted to download anti-virus for? >:D 19:51:04 ais523: please tell me if I've misrepresented your compiler :P: 19:51:05 C-INTERCAL is an implementation of Compiler Language With No 19:51:05 Pronounceable Acronym, abbreviated INTERCAL; it acts as a deobfuscator 19:51:07 by translating incomprehensible INTERCAL source code into vastly more 19:51:09 readable machine code, going through a C compiler on the way. It 19:51:11 supports all the common INTERCAL extensions, and has good 19:51:13 compatibility with CLC-INTERCAL. 19:51:15 (yes, yes, I stole the deobfuscator idea from the Debian packge description) 19:51:17 *package 19:51:19 ais523: i would like to express my complaint with c-intercal's default installation directories 19:51:21 *express a complaint 19:51:22 ais523: specifically, /share/ick-0.29/ should in fact be called /lib/ick-0.29/ or /libexec/ick-0.29/ 19:51:26 ais523: also, you shouldn't put the version name in the dirs like that 19:51:28 ais523: ok i may be wrong about the share thing. but ick-0.29 is still wrong 19:51:30 especially for include/ 19:51:32 (the last one I've managed to fix without patching the code) 19:51:34 make install -j$NPROCS ICK_SPECIFIC_SUBDIR=ick DESTDIR="$1" 19:51:37 elliott: the versioned dirs are a historical thing, which cause all sorts of issues 19:51:39 ais523: and finally, the non-question that is "please delete http://esolangs.org/wiki/Image:P''.png" :P 19:51:41 -!- HackEgo has quit (Ping timeout: 240 seconds). 19:51:48 ais523: hmm 19:51:48 there's a single line in the Makefile that can be changed to patch them back out 19:51:52 also, what caused the image? 19:51:52 ais523: you don't need to do that 19:51:55 make install -j$NPROCS ICK_SPECIFIC_SUBDIR=ick DESTDIR="$1" 19:52:00 ais523: I caused the image 19:52:06 elliott: yep, but Debian prefer patching makefiles for some reason 19:52:09 elliott: what were you trying to do? 19:52:11 elliott: i was just about to get ops now ;| 19:52:18 oerjan: what, for flooding? 19:52:21 ais523 gave me permission! 19:52:22 ais523: get the P'' logo 19:52:27 ais523: I've uploaded it under another name 19:52:30 (with the prime characters) 19:52:33 which is also easier to embed 19:52:37 [[Image:]] doesn't like quoets 19:52:39 *quotes 19:52:49 -!- Gregor has quit (Ping timeout: 245 seconds). 19:52:52 ais523: anyway, are there any plans to set ICK_SPECIFIC_SUBDIR=ick by default in a future version? 19:52:53 OK, done 19:52:57 -!- HackEgo has joined. 19:53:00 elliott: no, not at the moment 19:53:10 ais523: (btw, ick 0.-2.0.29 identifies as ick 0.29, but presumably that's intentional) 19:54:07 elliott: indeed, alphas identify as the version they'll eventually be released as 19:54:15 -!- Gregor has joined. 19:54:38 ais523: I'll probably stick with 0.-2.0.29 for a while, since it doesn't depend on asciidoc >:) 19:54:44 -!- Gregor has changed nick to Guest37696. 19:54:52 elliott: well it was damn hard to _notice_ the permission with all that flooding ;D 19:54:56 ais523: btw, I should probably leave out the yacc build dependency and just use the prebuilt ones, right? 19:55:09 elliott: I'm not sure 19:55:26 oerjan: since when did I have permission to tell people to flood in this channel? 19:55:31 also, are you an op? I keep losing track 19:55:33 he's ais523 19:55:35 i am 19:55:36 he has permission to do anything 19:55:44 ais523: well, if the results would be identical whether I do or I don't, then I'll leave out the dependency to avoid wasting space 19:55:55 also, Oozlybub and Murphy has the second best reason for its name ever, after INTERCAL 19:56:12 elliott: they might not be if bison is upgraded to produce compatible but better output 19:56:21 ais523: who said I'm using bison? 19:56:33 ah 19:56:35 ais523: heck, I'm not even using gcc :) 19:56:50 I know SunOS lex has issues with lexer.l 19:56:50 ais523: although I haven't yet tested C-INTERCAL with pcc 19:57:00 because it uses hardcoded maximums, and they're too low 19:57:07 ais523: here, I have a pcc/dietlibc toolchain here, let's see if it'll compile c-intercal 19:57:09 you can increase the maximums with options, but seriously? 19:57:16 elliott: I know it compiles cleanly with clang 19:57:37 also, I had a go at getting it working with bcc (a 16-bit K&R C compiler), I can't remember whether I managed it or not 19:57:45 ais523: by the way, I gunzipped the pax and then renamed it to .tar; am I a bad person? 19:57:51 every package has to be /var/pkg/NAME/source.tar 19:57:55 and I didn't feel like re-packing 19:59:29 $ CC="$K/stage2/bin/diet -Os $K/stage2/bin/pcc" CFLAGS="" ./configure 19:59:31 ais523: this better work! 20:00:02 ais523: wow, that was a fast build 20:00:08 $ time make -j3 20:00:08 ... 20:00:09 real0m4.847s 20:00:18 slowest part was all that oilout stuff 20:00:19 does it run? 20:00:28 $ ./ick 20:00:28 also, that's the slowest part of the build in gcc, too 20:00:28 ICL999INO SKELETON IN MY CLOSET, WOE IS ME! 20:00:29 ON THE WAY TO 1 20:00:29 CORRECT SOURCE AND RESUBNIT 20:00:31 ais523: close enough! 20:00:42 ais523: -rwxr-xr-x 1 elliott elliott 384K Dec 2 19:59 ick 20:00:44 elliott: hmm, I hate skeleton errors 20:00:45 ais523: (statically linked) 20:00:54 what if you try installing it? 20:01:00 -!- kar8nga has joined. 20:01:03 or try ./ick -u to see where it's looking 20:01:05 yeah, I'll just do it again with another prefix 20:01:18 yeah, it looked in the totally wrong places 20:01:40 ais523: anyway, 384K isn't bad, methinks 20:01:53 with skeleton errors you don't even have the bare bones of a solution 20:01:59 ais523: especially considering that the dietlibc printf functions are very half-assed because felix thinks people shouldn't use them :) 20:02:07 (they add like 7-8K to the binary) 20:02:15 elliott@dinky:~/ick-0.29$ $K/cint/bin/ick 20:02:15 elliott@dinky:~/ick-0.29$ 20:02:18 ais523: great success 20:02:30 ais523: now, uh oh, does it know to use the CC it was compiled with? 20:03:50 (did you ever respond to my package description? misrepresenting C-INTERCAL is incredibly shameful!) 20:04:11 elliott: I'm not sure; it will respect the CC environment variable 20:04:24 and it doesn't look that misrepresented, except that I find INTERCAL easier to read than the machinecode it compiles to 20:04:33 any flag to ask it what it thinks CC is? :p 20:04:43 ais523: what good would an *accurate* description of an INTERCAL compiler be? 20:05:16 -!- Sgeo has quit (Read error: Connection reset by peer). 20:07:10 -rwxr-xr-x 1 elliott elliott 104K Dec 2 20:06 pi 20:07:22 but it matches "GCC" 20:07:26 indeed 20:07:41 ais523: does it respect CFLAGS? 20:09:14 elliott: I can't remember 20:09:16 I don't think so 20:09:42 elliott: if you use -c, the command to compile it will be dumped in the Emacs local variables header in the output 20:09:51 yeah, I'm looking now 20:09:53 it puts -O2 in there 20:09:55 very irritating 20:10:19 if you use -g, it doesn't optimise 20:10:27 if you use -F, it goes up to -O3 20:10:48 ais523: hmm... would you accept a patch that (1) modularised libick, so that each relevant block of code goes in its own .o, so that statically-linked INTERCAL program are smaller; (2) made it so that ick generates C programs that do not call printf and friends, directly or indirectly (instead using either fwrite or write, depending on what you'll let me get away with :)), and (3) respects CFLAGS? 20:10:55 I could split those up, but I'm very lazy. 20:11:21 ais523: the end result would be much smaller statically-linked programs, basically (and leaner dynamically-linked programs too, although you wouldn't really notice it) 20:11:30 and also perhaps slightly faster, since printf is quite big 20:11:33 emphasis on slightly 20:13:21 elliott: splitting it up would help; I'd almost certainly accept (3), (2) and (1) are more contentious 20:13:37 what do we use printf for in the generated C at the moment anyway? 20:13:47 ais523: I have no idea; probably error reporting or something silly like that. 20:14:08 ais523: I don't see why (1) should be contentious; it *only* affects libick.a, not any shared version (are there any?) 20:14:13 what about replacing it with puts and putchar 20:14:34 ais523: hmm... well, I wouldn't bother writing such a patch 20:14:55 ais523: really, the improvements are: going from printf -> anything else; and going from stdio -> write(2)/read(2) 20:14:55 elliott: changing which files exist require a) working out how they fit in with all the various permutations of build systems, b) working out which go in which version of libick.a, c) thinking up witty names for them 20:15:04 both have a rather dramatic impact 20:15:10 elliott: do you not have a libc that lets you set stdio as a thin wrapper? 20:15:18 ais523: a thin wrapper? haha 20:15:24 write(2) and read(2) aren't portable, they don't exist on Windows 20:15:32 ais523: with the amount of stuff stdio is required to do, you can't make a thin wrapper 20:15:40 -!- EgoBot has quit (Ping timeout: 265 seconds). 20:15:46 ais523: also, you use autoconf right? 20:15:52 easy enough to condition on read/write being present 20:15:53 -!- HackEgo has quit (Ping timeout: 255 seconds). 20:16:07 Hmm, mplayer is desyncing audio... 20:16:41 -autosync 30 doesn't seem to help... 20:17:00 ais523: I mean, 116K is really rather dismal, considering that useful dietlibc-based programs can be on the order of 7K. 20:17:02 -!- Guest37696 has quit (Ping timeout: 250 seconds). 20:17:14 I'd say that these changes together could lead to, say, a 30K pi, as a first estimate. 20:17:26 Perhaps a bit bigger. 20:18:43 elliott: I like how you don't have /usr. 20:19:02 pikhq: I like that too! It's yet another reason for Vorpal to say he'll never use it ever. 20:19:10 And lord knows I don't have nearly enough of those. 20:20:09 pikhq: Maybe I'll be all old-school Unix and make /usr the home directory. :) 20:20:24 Hah. 20:20:48 pikhq: Fun fact: /usr/bin originates from the fact there was, in research unix 4 or 5 or something, a user/group named bin, whose home directory -- /usr/bin -- had a bunch of tools. 20:20:53 pikhq: I have seen this personally on an emulator. 20:21:04 That's amazing. 20:22:03 pikhq: Then some luser decided that usr didn't mean usr because there was a single directory in there with binaries, and broke up everything. 20:22:22 And now, kids, even today, it is used to justify silly partitioning schemes where nothing has any leg room. 20:22:25 ~th end~ 20:22:26 *the end 20:22:49 ais523: "Berkeley Yacc (byacc) is generally conceded to be the best yacc variant available. In contrast to bison, it is written to avoid dependencies upon a particular compiler." 20:22:56 ais523: challenge: write a less objectively-agreed-upon statement than that 20:22:58 well, than the first sentence 20:23:12 wtf: running this reversi-algorithm against itself gave a pretty pattern looking like an arrow. A symmetrical one in colours 20:23:14 "The Holocaust is generally conceded to have been a wonderful event full of puppies and unicorns." 20:23:24 * Vorpal goes to take a screenshot 20:23:30 (not insulting byacc, just loling at the sentence) 20:24:07 ais523: btw, according to my understanding of BSD/MIT/GPL, I have to include the license, with copyright notice, on every system that installs the package. is this true? 20:24:11 elliott: "Berkeley Yacc (byacc) is the One True Yacc." 20:24:33 pikhq: "This is not the yacc you are looking for." 20:24:50 pikhq: "OS/2 is widely regarded to be the best and most widely-used server operating system." 20:24:52 berkeley yacc is best yacc 20:25:10 -!- kar8nga has quit (Remote host closed the connection). 20:25:17 Just like North Korea is best Korea. 20:25:36 pikhq: That is simply a factual statement. 20:25:40 THANK YOU, COMRADE OBVIOUS 20:26:04 `addquote berkeley yacc is best yacc Just like North Korea is best Korea. THANK YOU, COMRADE OBVIOUS 20:26:20 alas, hackego just pinged out 20:26:36 pikhq, I hear South... no, wait, they have professional StarCraft players. 20:26:45 oerjan: You're welcome, Comrade. 20:26:47 oerjan: hackego totally needs to read the clog logs when it reconnects and perform all the actions there 20:26:47 North is clearly superior. 20:26:50 elliott, very strange result: http://sporksirc.net/~anmaster/tmp/reversi-ab_prune_against_self.png 20:26:51 (after quoting them, naturally) 20:27:01 Vorpal: wtf: running this reversi-algorithm against itself gave a pretty pattern looking like an arrow. A symmetrical one in colours 20:27:05 Vorpal: "in colours" made me think "colourful" 20:27:07 i am disappointed 20:27:07 Phantom_Hoover: Televised and popular, no less. 20:27:13 Phantom_Hoover: They even make product endorsements. 20:27:15 elliott, err what? 20:27:24 elliott, how would that work? 20:27:29 Vorpal: like N-colour reversi! 20:27:30 somehow 20:27:33 elliott, that would be nice 20:27:41 elliott, but anyway, the pattern is strange 20:27:45 pikhq, I am tempted to join the DPRK Appreciation Society. 20:28:09 [[The My World Tour is an upcoming concert tour by Justin Bieber. It is his first official headlining tour, and is promoted by AEG Live, and Live Nation. The tour is anticipated to have multiple legs, and the supporting acts for the first will be Sean Kingston and Jessica Jarrell. Pop girl group The Stunners will also serve as an opening act for the first twenty dates. The tour is set to support his first release, My World, and its follow-up, My 20:28:10 World 2.0. Who wants Justin the most? Decide now... 20:28:10 CONTEST IS CLOSED. THE WINNER IS NORTH KOREA WITH 659141 VOTES]] 20:28:15 I really hope he goes to North Korea. 20:28:17 "Democratic People's Republic of Korea" is such a mistranslation. 20:28:30 pikhq: But the BEST mistranslation! 20:28:31 "Democratic People's Republic of Choson". 20:28:53 pikhq: Oppressed Starver's Republic of Korea doesn't have the same ring to it. 20:29:16 elliott: They actually call the country Choson. For... No reason at all. 20:29:28 corea 20:30:09 oh, that poll isn't official 20:30:11 LAME 20:30:45 http://en.wikipedia.org/wiki/Joseon_Dynasty 20:31:28 oerjan: Okay, okay, so it has historical relevance. 20:31:44 But still: the North and South can't even agree on what to call the country. 20:32:08 The ROK is Han, DPRK is Choson... 20:32:47 * oerjan thought Han referred to ethnic chinese 20:32:49 pikhq: I went to put #kitten on freenode but it's REGISTERED so I'm going to make it on OFTC^WBest Free Software Network. 20:32:59 Be there or be oblong. 20:33:08 obloid. 20:36:06 Heh... There's apparently second cause of IPv6 making things "slow" besides the "computer thinks it has IPv6 but doesn't"-problem: IPv6 routing is a lot more unstable than IPv4 routing... 20:37:58 ais523: so can I get the green-light to use write(2)/read(2) if they're present? 20:41:57 Ilari: Probably something to do with *significantly* fewer routers being IPv6. 20:42:00 pikhq is just not cool enough for OFTC. 20:45:15 Or actually it is "computer doesn't have a route to destination via IPv6" problem. 20:45:37 OFTC once declared war on pikhq. 20:46:28 * Phantom_Hoover declares war on pikhq. 20:47:31 * pikhq declares pikhq on war 20:48:07 pikhq: OFTC! #KITTEN! SQUARENESS DONATED TO ALL NOT PRESENT! 20:48:32 Or the great IPv6 routing split... 20:51:12 Ilari: ? 20:51:45 Some IPv6 upstreams have seriously incomplete routing table... 20:51:53 *facepalm* 20:53:05 -!- Gregor has joined. 20:53:10 -!- Gregor has changed nick to Guest24183. 20:53:18 Fun issues ensue if are trying to reach host that is unroutable over IPv6 but reachable over IPv4. 20:53:39 -!- Guest24183 has changed nick to Gregor. 20:54:16 http://en.wikipedia.org/wiki/Han_(trilobite) 20:55:04 Gregor: yon bots are dead 20:55:19 bon mots are dead 20:55:20 -!- wareya_ has joined. 20:57:11 oerjan: My friggin' everything was dead, patience :P 20:58:22 -!- HackEgo has joined. 20:58:22 -!- EgoBot has joined. 20:58:25 -!- wareya has quit (Ping timeout: 260 seconds). 20:59:00 Gregor: PRGMR RELIABLE UPTIME 21:04:16 *pfft* 21:04:29 NASA discovers life form that uses arsenic instead of phosphorous. 21:04:52 pikhq, hmm. 21:04:54 -!- fungot has quit (Ping timeout: 245 seconds). 21:05:00 That's... Woah. 21:05:09 Wait, yes, yes it is. 21:05:18 They _don't have DNA or RNA_. 21:05:39 Yes, they have completely different nucleic acids. 21:06:01 Yes. 21:06:07 Arse-nic. 21:06:26 -!- fizzie has quit (Ping timeout: 250 seconds). 21:08:28 Actually, apparetly only the PO4 linking groups have been replaced by AsO4 groups... 21:10:39 That's still pretty astounding. 21:12:13 -!- fizzie has joined. 21:19:07 -!- sjn has joined. 21:19:24 -!- sjn has left (?). 21:22:02 brb 21:29:33 How do I get this bloody computer to tell me my CPU model? 21:30:12 PRAY 21:32:08 O god, tell me in thine infinite wisdom the model of mine unworthy CPU. 21:33:11 -!- MigoMipo_ has joined. 21:34:21 -!- MigoMipo has quit (Ping timeout: 240 seconds). 21:47:05 -!- kar8nga has joined. 21:51:43 -!- Zuu has quit (Read error: Connection reset by peer). 21:58:21 -!- Zuu has joined. 22:03:36 -!- perdito|afk has quit (Ping timeout: 245 seconds). 22:03:46 x264 is officially ridiculous. 22:03:52 http://x264.nl/developers/Dark_Shikari/Flash/UltraLowBitrateAnime.mp4 67 kbps encode. 22:04:02 I did not omit a digit there. 22:04:09 Sixty-seven kilobits per second. 22:06:00 ha 22:08:13 And Dark Shikari claims he should redo that encode, because x264 has gotten better since. 22:12:59 -!- kar8nga has quit (Remote host closed the connection). 22:22:12 -!- Sgeo has joined. 22:29:52 fog 22:32:29 Phantom_Hoover: MC 22:32:36 Nooooooooooooooooooooooo 22:32:43 You: addicted. 22:32:52 YOU HAVE BECOME AS UNTO VORPAL 22:34:47 Phantom_Hoover: Actually, I'm just bored and MC without anyone else there is boring. 22:34:56 Phantom_Hoover, what? don't insult me. I had other stuff to to today. I haven't been on 22:35:17 Vorpal, I was actually mocking elliott there. 22:35:30 Phantom_Hoover, and insulting me at the same time 22:35:39 Since he went on about you being addicted whenever the server died and you asked ineiros why. 22:35:47 Phantom_Hoover, indeed :P 22:35:56 he is way more addicted than me 22:36:15 Vorpal: Seriously? 22:36:20 I don't actually play often at all. 22:36:22 I just hated being interrupted in a task. 22:36:25 in any task 22:36:25 I haven't mined in days. 22:36:32 In fact I've done nothing in days. 22:36:35 elliott, you been on doing other stuff though 22:36:40 Vorpal: Like? 22:36:42 elliott, I saw you jumping that water fall 22:36:56 Which waterfall? The one you made yesterday? 22:37:02 elliott, the one I made yes 22:37:15 You did that and *also* made it, so that does not demonstrate that I am "way more" addicted in any way. 22:37:19 It just demonstrates that I do in fact play it. 22:37:40 elliott, indeed but you have been complaining about no one being on today 22:37:48 elliott, I almost never complained about the place being empty 22:38:01 Because I've been rather bored today. Also I think I've complained twice. 22:38:16 okay, I haven't counted 22:38:21 10:58:12 is nobody on minecraft? :( 22:38:24 Phantom_Hoover: MC 22:38:27 that's all 22:38:36 elliott, anyway then you don't have to chat with people, instead you can get on building stuff! 22:38:39 ok, I also bugged Phantom_Hoover about it in #kitten :P 22:38:49 Vorpal: The only thing I want to build is the Cube and that needs the Server. 22:39:05 elliott, you could locate an area, and start marking out the boundaries 22:39:21 elliott, stuff like that just need a handful of dirt or cobblestone blocks 22:39:22 elliott, you bugged me because you couldn't deal with the fact that a photo of a kitten is not in fact a very good logo. 22:39:38 Phantom_Hoover, photos are almost never good logos 22:39:47 Vorpal, as I told him! 22:39:49 Vorpal: Not only was it a kitten, it was *on a computer*. 22:39:57 logos need to be more... symbolic, line art 22:40:00 Are you suggesting that there is something better than a kitten on a computer for ANY PURPOSE WHATSOEVER? 22:40:07 elliott, it would work if it was lineart of a kitten on a computer 22:40:10 but a photo: no 22:40:12 elliott, you could locate an area, and start marking out the boundaries 22:40:12 elliott, stuff like that just need a handful of dirt or cobblestone blocks 22:40:17 i'm fairly sure I need to make my own sea. 22:40:20 elliott, but it was a photo! And a jpeg! With a detailed and necessary background! 22:40:22 elliott, hm 22:40:35 http://filebin.ca/tvzvtn/sintel_trailer-240-pass3.mkv 22:40:41 It's a 768k video. 22:40:42 make your own sea with cobblestone blocks 22:40:44 And it doesn't look bad. 22:40:50 (aside from being 240p) 22:40:54 elliott, I suggest to the east because it will be closer to spawn than any other suitably large area 22:41:12 elliott, and minecarts will be close. Skyway will need a bit more 22:41:15 Vorpal: I don't care about proximity to spawn, only civilisation. 22:41:22 "The Blender Foundation". 22:41:23 Also Server said that he probably doesn't want it within 500 metres of spawn. 22:41:26 elliott, well, it is close to civilisation too 22:41:34 elliott, hm 22:41:39 elliott, north-west then? 22:41:53 pikhq, if that isn't related with the Society for the Advancement of Blenders I will be sorely disappointed. 22:41:57 Vorpal: Perhaps. Or I could just flood a large area on the path of the skyway from Vorpal to Hoover. 22:42:02 I ♥ x264. 22:42:02 Phantom_Hoover: Blender as in the 3D tool. 22:42:10 elliott, sssshhhhh! 22:42:11 elliott, that would work too 22:42:19 Vorpal: I'd also need TNT to get rid of some of the bigger mountains, probably. 22:42:35 elliott, as long as it is out of sight from my extruding glass room 22:42:39 elliott, (on far) 22:42:47 pikhq, how many opinions do you have about multimedia encoding? 22:42:57 elliott, or if visible on far, at least some distance away 22:42:59 Phantom_Hoover: Many! 22:43:09 Vorpal: If it isn't, that's not my fault; you don't own a huge radius around your mountain. 22:43:12 Phantom_Hoover: Rule #1: x264 is the best. Period. 22:43:14 Anyway, it's made out of glass, dammit, it's transparent. 22:43:19 elliott, I want a nature view, not looking up the side of an industrial building :P 22:43:41 Vorpal: Yeah... you do realise this thing is gonna be darn pretty, right? 22:43:50 It's ENTIRELY MADE OUT OF GLASS. With nice LAVA making it shine. 22:43:53 elliott, and yes sure but not completely, anyway that valley below the skyway entrance I have built stuff like a lava fall in 22:43:59 elliott, sure it is, but so is the nature 22:43:59 pikhq, why? 22:44:02 Well I'm not building /there/. 22:44:07 elliott, :) 22:44:10 Probably 1/3 of the way to Hoover or whatever. 22:44:14 Wherever is flattest. 22:44:16 elliott, that should be fine 22:44:22 probably 22:44:51 Phantom_Hoover: It is literally the best encoder. To match its quality with an encoder for any *other* compression scheme, you need to *at least double* the bit rate. 22:44:54 checking on map atm 22:45:16 pikhq: Such a shame that H.264 is so proprietary. 22:45:43 Phantom_Hoover: And for h.264, it is similar in quality but slightly higher than the highest-quality proprietary encoder, and it beats all the others about as badly as it beats, say, MPEG-2 encoders. 22:45:56 -!- MigoMipo_ has quit (Quit: Quit). 22:46:08 elliott: It is a shame, indeed. 22:46:58 elliott, you see that kind of rectangular mountain on http://a322.org/mc/topo-2010-11-29.png between me and PH? Just above the skyway. Quite close to my place. There is a blue area below it (lake). Beyond that mountain is quite flat. Why not there (and save the mountain as it is, it is pretty) 22:47:09 elliott, it seems to be a solution that fits everyone 22:47:29 The UK doesn't acknowledge software patents, does it? 22:47:32 http://x264.nl/developers/Dark_Shikari/Flash/UltraLowBitrateAnime.mp4 67 kbps encode. 22:47:34 just actually played this 22:47:43 w.t.f. pikhq i was expecting lameish quality 22:47:47 elliott: And that's an *old* demonstration. 22:47:48 it's better than youtube! 22:47:58 Vorpal: Maybe. I'll see about it. 22:48:13 Vorpal: I would prefer to use an existing sea. (Are there any known seas that are 128x128 big?) 22:48:19 -!- Phantom_Hoover has quit (Remote host closed the connection). 22:48:19 128x128 is pretty big. 22:48:29 In fact, how far does Far see? 22:49:05 elliott: If you reduce the resolution to about what Youtube uses for its lowest-quality videos, but keep the bit rate, you end up having an almost transparent encode. 22:49:12 -!- Sasha2 has joined. 22:49:13 See my filebin post. 22:49:37 pikhq: Hmm... I just had a stupid thought that maybe might sorta work. 22:49:53 elliott, hm 22:50:05 In fact, how far does Far see? <-- not sure, pretty far 22:50:10 pikhq: Have lossy x264 encoding. For each frame, store a compressed -- PNG or whatever -- image diff of the lossy encoding to the lossless (i.e. lossless - lossy or whatever) 22:50:19 Vorpal: 128 blocks far? 22:50:28 elliott, more than that I think 22:50:34 Vorpal: Aww. 22:50:37 elliott, I can see from me to fizzie 22:50:44 elliott, a bit more than that 22:50:45 I'm not sure that would be an *astounding* lossless compression scheme, but it would certainly work decently. 22:50:47 That's not 128, I don't think. 22:51:00 pikhq: Would it beat your zero-quantisation encodes? 22:51:10 Far sees a bit less than 200 blocks, but I'd say it's over 128. 22:51:20 pikhq: I can't imagine the diffs being *too* big, even on a relatively low bitrate... 22:51:24 You can almost see the other end of PH's ship from one end. 22:51:28 elliott, I'll measure on the map 22:51:31 elliott: I don't *think* so. 22:51:32 pikhq: Then again, it is every single frame... 22:51:33 fizzie, indeed 22:51:42 -!- Sasha has quit (Ping timeout: 276 seconds). 22:51:51 elliott: Though it would probably beat everything not x264 anyways. :P 22:52:00 "You Must Learn JavaScript" ;; no I mustn't, you webfag. 22:52:23 "It’s my belief that every single programmer should learn JavaScript." ;; one day you will discover that people write programs that don't get shown in Safari 22:52:43 "Knowing JavaScript well is probably one of the most challenging and rewarding things you can do as a programmer." 22:52:44 what? 22:52:48 how is learning javascript challenging at all 22:52:50 elliott, about 190 I'd say 22:53:06 Could even be 192. :p 22:53:12 Probably 192, yeah. 22:53:12 something like that 22:53:13 :p 22:53:20 it is approx, I measured on map 22:53:31 Yeah, but there's no power of two near 192 other than... 192. 22:53:37 indeed 22:53:44 erm 22:53:46 Yeah, but there's no power of two near 190 other than... 192. 22:53:55 192 is not a power of two either, but still. 22:54:14 elliott, and I believe it might be inexact. As in: a chunk is either visible or not 22:54:29 the distance I measured was diagonal 22:54:33 so that would be relevant 22:54:46 fizzie: Close enough! 22:55:14 elliott: As for existing seas, a 128x128 block would fit to the big sea that's to east of spawn (not immediately east, but further; it starts about as far from spawn than Mt. Vorpal is, euclidinially speaking. 22:55:23 elliott: BTW: Youtube's video bitrates start at 250kbps and go up from there. 22:55:51 elliott, I can see a distance that is at least 194 (near upper door entrance to end of huge stairs 22:55:57 pikhq: Is it just me, or do YouTube videos load painfully slowly? 22:55:59 elliott, which indicates it is probably per chunk 22:56:02 That's 250kbps for the 240p videos they had at the very start of the site. 22:56:02 not per block 22:56:20 fizzie: Yeah, but Server doesn't really want it within 500 blocks of spawn. 22:56:30 fizzie: So I'm better off starting at civilisation and going from there. 22:56:45 elliott, it would be 300 blocks away 22:56:49 Well, you could fit two 128x128 blocks in the big seas to the west, but those are pretty far. 22:56:50 definitely not visible from spawn 22:57:14 fizzie, not in one of them any more 22:57:27 fizzie: I do not plan to make *two* 128x128x128 cubes. :p 22:57:46 Vorpal: Hm? 22:57:49 fizzie, presumably you mean the one with a reed-lined shore? 22:58:01 fizzie, near that "easter egg"? 22:58:03 No, I meant the other one. 22:58:20 To north of the reed-lined-shore one. 22:58:24 fizzie, ah because I built a free-standing waterfall over ther 22:58:28 right 22:58:29 Yes, I saw it. 22:58:33 ah 22:58:38 fizzie, tried it with a boat? 22:58:49 Yes. (I borrowed your boat.) 22:59:03 fizzie, right 22:59:59 fizzie: Are *you* too boring to Minecraft today, too? 23:00:21 Yes, I'm just about to go to sleep, actually. 23:00:29 fizzie: So boering. 23:05:31 test 23:06:35 -!- ais523 has quit (Read error: Connection reset by peer). 23:06:51 elliott, I'll make a map with some suggestions for possible placements within existing oceans 23:06:54 Also fun: the source video, at 480p lossless x264, hits DVD target bitrates... 23:08:21 Incidentally, I head-estimated some numbers earlier. If you intend to empty 128x128x16 (a very low-end estimate assuming depth of 16) blocks of water one by one, and assuming one operation per second (I'm not sure what sort of overall throughput you'd get, but it's in the ballpark) that's take 262144 seconds = about 72 solid hours. 23:09:14 fizzie: Yes, yes; I'm trying to think of *other* ways to drain the water other than doing it block-by-block. 23:09:30 fizzie: Suggestions welcome :P 23:09:32 Does TNT work in water? 23:12:01 elliott, no 23:12:03 fizzie's silence is not reassuring. 23:12:21 I've read something about safely removing TNT by detonating it underwater, so I'd guess no. 23:12:28 elliott, TNT still generate shockwave in water. But it does not destroy blocks 23:12:33 this is used to build TNT cannons 23:13:13 The wiki-page says "TNT can clear water and lava. -- However, if the TNT falls in water, the explosion will not destroy any blocks at all but still cause damage." -- which is quite unclear. 23:13:20 Also, smelting 128*128*16 (cube walls and ten interior levels, again a rather low estimate) blocks of sand into glass will take 728 hours (30 days). (And burn 32768 blocks of coal, or 2622 buckets of lava.) 23:13:54 fizzie: Um, I was going to get the sand delivered to me in glass form. 23:14:01 fizzie, what about placing the blocks assuming he had the glass? 23:14:20 I think skipping the many-months-long process of gathering 81 thousand blocks of sand and smelting them all, which is trivially feasible, just really boring, is acceptable. 23:15:00 Vorpal: Well, it's the same amount of blocks than in the water estimate earlier, so assuming block/second throughput, another 72 hours. 23:15:23 elliott, fizzie: http://sporksirc.net/~anmaster/tmp/placement.png 23:15:26 -!- GreaseMonkey has joined. 23:15:26 -!- GreaseMonkey has quit (Changing host). 23:15:26 -!- GreaseMonkey has joined. 23:15:55 elliott, alt 3 which would be best is within 500 blocks 23:15:55 fizzie: Anyway, I'd actually have to empty 128*128*64 blocks of water. 23:16:13 I think 500 blocks was... not entirely serious. 23:16:14 elliott, no. Since water only goes down to about 50 23:16:15 so 23:16:22 64-50 for height 23:16:28 Well, okay, but definitely not 16. 23:16:36 fizzie: Anyway I'd build the actual levels over a long period of time. 23:16:39 64-50 is 14. 23:16:39 elliott, indeed. that is 14 23:16:40 :P 23:16:54 The seas aren't very deep. 23:17:15 indeed. And going down to 50 is rare. 52-53 is much more common 23:17:23 with a few smaller pits of 50 or so 23:17:24 True. 23:17:28 Still, you'd need to empty up that much space in general, so there. 23:17:41 and you only get 52 out near the middle 23:17:42 so yeah 23:17:49 Anyway, I never said it'd be easy. :p 23:17:57 elliott, still you need to mine a shitload of stuff below the sea 23:18:14 Vorpal: Or just use TNT... 23:18:21 If you can conjure up sand/grovel, I think the fastest way of getting rid of water is to just keep placing those blocks to fill it all up (they fall, so you can do a whole column without moving), then shovel/blow-up them away. 23:18:49 fizzie, you could do the torch trick 23:18:51 fizzie: Problem is, I'd have to have walls in place already... meaning TNT would be unwise. 23:19:05 You could TNT in the middle, though. 23:19:16 True. 23:19:17 still a shitload of TNT to do it 23:19:20 And anyway, shovels are fast, faster than "take a bucket, dump it down". 23:19:22 not sure I'd trust you with that 23:19:30 (if I was that admin that is) 23:19:46 fizzie: I would do 9 buckets at a time, obviously. 23:19:48 But yeah. 23:19:59 elliott, how would 9 buckets help? 23:20:01 -!- Sasha has joined. 23:20:03 -!- Sasha2 has quit (Ping timeout: 272 seconds). 23:20:07 elliott, elliott you can just empty it into another source 23:20:11 Vorpal: Larger period of monotony. 23:20:14 elliott, next to the one you are removing 23:20:19 elliott, which is probably faster 23:20:22 Oh, you can? Compress two sources? 23:20:23 Weird. 23:20:41 elliott, it's minecraft, what did you expect? 23:20:52 fizzie: Anyway, conjuring up sand is not the issue here, as I've established. :p 23:21:21 Anyway, those who help construct it get bigger free-rented spaces. 23:21:26 elliott, anyway since you don't plan water on top of the thing, getting rid of currents at the end should be ni issues 23:21:28 issue* 23:22:00 elliott, I can provide a shitload of cobblestone to help you with it certainly. For scaffolding and such 23:22:06 also a shitload of dirt 23:22:27 Vorpal: Work is more valuable than materials. :p 23:22:27 elliott, I have at least one large chest full of cobble + several partly filled ones 23:22:43 elliott, dirt: almost one filled 23:22:45 (not completely) 23:22:47 Incidentally, in order to give you 128*128*16 blocks of time, ineiros will have to repeat the /give command 4096 times, and it'd be 152 inventories worth. So I'd think you'd perhaps better wait until hMod time before the building in order for not to have to ask for glass all the time. 23:22:55 fizzie: He said he was going to automate it. 23:23:09 fizzie: He *can* just create a file with a huge number of commands, you know, and paste it in. 23:23:19 elliott, still you can decide on a place and put out markers there 23:23:24 elliott, that you can do today 23:23:32 elliott, so which of those places do you think is best? 23:23:35 Vorpal: I'm not going to be awake for long enough to research all the places today. 23:23:47 Yes, but you can't really get more than one inventory full of glass at a time, the rest will probably go and disappear before you have time to get them. 23:23:49 elliott, you saw the map I linked? 23:24:10 elliott, it is basically one of them if you don't want to be WAAY off from civilisation or have to build your own sea 23:24:18 and building your own sea is probably more work 23:24:33 Vorpal: Yes, but more impressive. :p 23:24:50 Vorpal: (And I wouldn't have to empty anything, if I built the underwater bit of the cube first. 23:24:51 elliott, you know that the water-source duplication thing only happens on a flat surface right? 23:24:56 elliott, up to altitude 1 23:24:59 as in 23:25:02 You could've crop-to-selection'd the map a bit. :p 23:25:10 you will have to build layer by layer down 23:25:17 Vorpal: Yeah... 23:25:18 fizzie, there are other sites further away 23:25:22 Vorpal: But I can get walls in before that. 23:25:23 -!- oerjan has quit (Quit: Good night). 23:25:29 elliott, so I think emptying it will be less work 23:25:37 Vorpal: What I really need to do is get a bitmap image 128x128, side view, zoom in, and start planning. 23:25:38 elliott, unless you want like a 2x wide channel around it 23:25:48 I need to figure out how many floors there'll be, how to make sure level 0 has a floor there, etc. 23:25:49 elliott, besides it won't look natural without a LOT of work 23:26:04 I also need to do experiments to determine how often I need lava lighting. 23:26:11 elliott, gimp: create new image, size 128x128 23:26:14 Hopefully only once every two floors, where a floor is about 5 blocks high. 23:26:23 I just hope that's enough. 23:26:29 -!- perdito|afk has joined. 23:26:40 (Since I want lighting to seem even throughout the whole building, even a 1/3rd diminishing would probably be bad) 23:26:42 elliott, you will certainly get lighting from below 23:26:50 Vorpal: true 23:26:51 hm 23:27:03 -!- Goosey has joined. 23:27:07 I know there's a formula or whatever but experimenting is easier. 23:27:11 elliott, also you *will* misplace blocks sometimes when building it 23:27:13 (Ha, how practical of me.) 23:27:15 Vorpal: I know! 23:27:21 -!- perdito|afk has changed nick to perdito. 23:27:23 You can experiment with torches; that's only one level less bright than lava. 23:27:23 elliott, which means you might need a few hundred blocks more 23:27:41 since they will be destroyed when you break them 23:28:02 Vorpal: And I also need more glass for *other* things, which is why I'm just going to ask for 131,072 pieces of glass, because that's a nice round number. 23:28:06 (2^17) 23:28:10 Or thereabouts. 23:28:11 Something like that. 23:28:13 hah 23:28:17 elliott, the other things being? 23:28:21 elliott, interior walls? 23:28:35 Vorpal: I need to build an underground tunnel to one of the first underground floors (the entrance; entering at ground level is fugly. So there'll just be a hole down to a glass, underwater tunnel connected to the cube.) 23:28:40 And yes, interior walls. 23:28:43 elliott, you realise that if you rent out space you need something that isn't glass to put things on 23:28:50 And also the fact that I need two floors for some floors to sandwich the lava. 23:28:54 Vorpal: I know that. 23:28:58 elliott, and minecart tracks I believe won't go on glass 23:28:59 Vorpal: Probably cloth, since it's nice and white. 23:29:07 elliott, and burns :P 23:29:16 Vorpal: Yeah, well, don't let the lava out. :P 23:29:19 indeed 23:29:32 Vorpal: And the bottom three levels will be completely obsidian-plated and lit with torches. 23:29:32 elliott, you know those jumping embers from lava 23:29:33 ? 23:29:35 Yes. 23:29:49 elliott, they don't hurt players but they *can* set fire to burnable blocks and burnable items 23:30:00 But you can't sensibly *get* 131072 blocks of glass at one time; even if ineiros generates that much by pasting in /give's, after your inventory is full, they'll just end up floating in the air where you were and disappear in 5-10 minutes. So you need some sort of glass-getting automation, and then you can just request as much as you actually need in sensibly-sized batches. 23:30:09 Vorpal: You do realise the lava has glass on either side? 23:30:11 elliott, not sure if they will jump through glass 23:30:18 elliott, I mean, considering how they are coded in general 23:30:25 fizzie: I'm going to make like 50 large chests, durr. :P 23:30:28 elliott, I have seen them jump through stone 23:30:41 Vorpal: Well, I've never been hurt inside the Glass Room of Hoover's. 23:30:50 or rather 23:30:53 never seen any embers at all 23:31:00 elliott, hm 23:31:10 I believe they jump up 23:31:12 not down 23:31:23 elliott, requesting in batches is probably better since that way you don't need to load from the chest 23:31:39 Vorpal: Well, to hit anything other than glass, they'd have to get through glass *and* whatever floor is being used in that part. 23:31:51 Also, yeah, I probably will. But a batch should fill 3 large chests are so. 23:31:52 *or so. 23:31:55 Because I need a lot. :p 23:32:04 hm 23:32:31 elliott, you might want to build a cobblestone 130x130 container and empty the water in it. Maybe 23:32:38 then build the thing inside 23:32:41 then remove the cobble 23:32:52 Vorpal: Yes, most likely. 23:33:12 elliott, also it needs a boatlevator. 23:33:17 elliott, do you know how far mine goes? 23:33:18 Yeah, you can build that. :p 23:33:23 elliott, in altitude 23:33:29 Down near bedrock, yes. I successfully rode it today. 23:33:35 I don't see how it'd work with 20 or so stops, though. 23:33:45 elliott, 5 above bedrock to 15 or so below max alt 23:33:46 Vorpal: At least I'll be able to proudly say that without the laws of physics changing, nobody will ever make a bigger cube than this. 23:33:55 elliott, hm stops would be an issue yeah 23:34:06 elliott, but maybe one to get to ground floor and then one to get to near max 23:34:20 elliott, remember it needs like 7 blocks at the top due to jumping up quite a bit 23:34:29 Vorpal: I was just going to use regular stairs; I mean, it wouldn't be that big a deal. 23:34:38 Although stairs are ugley. 23:34:45 (I'd use wood.) 23:34:59 hm 23:35:08 elliott, that would take forever to go up 23:35:20 Vorpal: Not *really*; have you ever walked up the bedrock-to-max Stairs? 23:35:27 elliott, sure I have 23:35:28 It only takes a minute or two, and that's for all the way. 23:35:40 elliott, and boatlevator takes.... 8 seconds or so? 23:35:48 plus maybe up to 20 to wait for the boat 23:35:50 Vorpal: Yes, but there needs to be a second or two at every single stop. 23:35:57 Let's say there's 20 floors; that's about right. 23:35:58 1.5 * 20 = 30. 23:36:03 hm 23:36:04 okay 23:36:04 So it has to take more than 30 seconds. 23:36:12 well 23:36:17 it won't be 20 if it is that short 23:36:18 And it's also, well, not that reliable if someone turns. 23:36:27 Vorpal: Eh? 23:36:37 oh right 23:36:45 I thought 20 was the delay 23:36:46 Let's say a floor's 6 high on average, taking into account that some of them will have 3-thick floors (extra lava layer, and ceiling); that's 21 floors. 23:36:48 floors 23:36:50 Right. 23:37:09 elliott, anyway boatlevator is not practical for anything less than, say, 60 blocks at a time 23:37:14 elliott, hm I seen another design 23:37:18 that allowed entry on side 23:37:24 and used a drop shaft to get down 23:37:29 elliott, I haven't tried it 23:37:41 Vorpal: Still; if anyone presses A or D there's a complete transport blackout in the Cube. :p 23:37:45 At least stairs never die. 23:37:49 but it might work if we only want to go up to one place from a lot of different ones 23:37:56 Gregor: http://src.chromium.org/viewvc/chrome/trunk/src/build/whitespace_file.txt?r1=67679&r2=67678&pathrev=67679 23:37:58 Gregor: Chrome: Somewhat sparta. 23:37:59 elliott, true 23:38:00 *Sparta. 23:38:36 Vorpal: Anyway I'm up for just about anything; the current plan is to just get it built, with lighting and completely empty floors. 23:38:45 Vorpal: Then we can smash a hole in it for an entrance, and go from there. 23:39:16 elliott, making holes in the lava levels would be annoying 23:39:22 Vorpal: What would be cool is having people's homes that are multi-storey; i.e. the regular floors aren't there, just an entrance and then whatever they want inside that block. 23:39:37 Vorpal: Yes, it would. I might figure out where to poke holes in the ceilings first. 23:39:37 elliott, I don't think you can place ladders on glass anyway so they are out of question I guess 23:39:49 Vorpal: I can always put some cloth against a wall... 23:39:53 true 23:40:01 Vorpal: Hell, I'd be fine lining every floor with cloth too. 23:40:11 elliott, I don't think you need that 23:40:13 As long as the whole thing is transparent from a distance. :p 23:40:17 Vorpal: Carpet! 23:40:25 elliott, just that you can't place "those not really blocks" on there 23:40:36 such as torches, tracks, and what not 23:40:41 That's so a flaw in Minecraft, though; why can't they go on glass. :p 23:41:02 The roof will be fun, you'll be able to climb up there and jump off into the sea. 23:41:18 elliott, it's a feature I bet. A feature to not need to make a texture for the back of a torch mounted against a wall or something 23:41:21 MAYBE 23:41:29 who knows 23:41:46 elliott, also minecart on glass: that would never work 23:41:51 Vorpal: why not! 23:42:06 elliott, I mean, it is completely unrealistic. Consider the load. Oh wait, this is minecraft. 23:42:12 Vorpal: Precisely :P 23:42:26 If it was realistic, you could fall from a distance onto glass and it'd shatter. 23:42:36 indeed 23:42:51 and you wouldn't get cubical cloth from sheep 23:43:01 and it wouldn't last as an outdoor road anyway 23:43:46 A cubic metre of cloth from a single sheep is a bit dubious too, even assuming you skip some steps there. 23:44:03 fizzie: More than that; you get two or three blocks. 23:44:40 and also obsidian a volcanic glass says wikipedia 23:44:41 huh 23:44:47 Well, lava. 23:45:04 "Obsidian has been used for blades in surgery, as well-crafted obsidian blades have a cutting edge many times sharper than high-quality steel surgical scalpels, the cutting edge of the blade being only about 3 nanometres thick." 23:45:08 wow that is cool 23:45:14 Heh, nice. 23:45:18 See, in Minecraft, it's just a bitch to mine. :P 23:45:32 elliott, and diamond should be harder actually 23:45:33 But it will be good for the last three levels, for when the world goes to shit! 23:45:50 "Even the sharpest metal knife has a jagged, irregular blade when viewed under a strong enough microscope; when examined even under an electron microscope an obsidian blade is still smooth and even. One study found that obsidian incisions produced narrower scars, fewer inflammatory cells, and less granulation tissue in a group of rats." 23:45:53 -!- sftp has quit (Remote host closed the connection). 23:45:57 All the supplies and tools you need to rebuild the world, obsidian-lined for extra protection, and with indestructible bedrock base. 23:46:06 Nothing could be safer -- and by god don't fuck it up this time around. 23:46:10 "Obsidian is also used for ornamental purposes and as a gemstone. It possesses the property of presenting a different appearance according to the manner in which it is cut: when cut in one direction it is jet black; in another it is glistening gray. "Apache tears" are small rounded obsidian nuggets embedded within a grayish-white perlite matrix." 23:46:19 It is very pretty. 23:46:50 elliott, will you mine that obsidian? 23:46:54 "Apparently this removal of comprehension notation was due to the fact that generalising comprehensions to monads made errors arising from comprehensions difficult for novices to understand." 23:46:57 elliott, I mean seriously that will be a pain 23:46:58 hahahaha 23:47:05 Like that's the most of the problem with GHC's errors! 23:47:12 Vorpal: No, I'll probably just make it lava and wet it. :p 23:47:18 (TODO: figure out how to do vertical lava.) 23:47:21 elliott, they removed comprehension? 23:47:25 for what? 23:47:28 lists? 23:47:28 Vorpal: Monad comprehension. 23:47:30 In 1998. 23:47:31 ah 23:47:40 right 23:47:47 But lol @ removing it because it makes errors hard to understand; GHC mocks this pitiful attempt. 23:47:59 elliott, I can't figure out what monad comprehension is exactly 23:48:09 I mean, I can't imagine what the concept would be 23:48:11 Vorpal: List comprehension, but for monads. 23:48:29 hm 23:48:30 -!- FireFly has quit (Quit: swatted to death). 23:48:34 elliott, that makes my head spin 23:48:36 Vorpal: See http://blog.n-sch.de/2010/11/27/fun-with-monad-comprehensions/. 23:48:42 It explains it nicely. 23:48:44 "Plinths for audio turntables have been made of obsidian since the 1970s; e.g. the greyish-black SH-10B3 plinth by Technics." 23:49:13 Hrmm... 23:49:19 pikhq: You, Only Person Who Will Use Kitten Who Isn't Me! 23:49:40 pikhq: Should the main libc be dietlibc or uClibc? uClibc executables aren't as small as dietlibc in my experience -- like 17K vs 7K. 23:49:50 pikhq: And they have a lot of "why is that in there?" symbols. 23:49:56 wow 23:50:09 Vorpal: ? 23:50:18 read part of that link 23:50:32 Ah. 23:50:38 pikhq: Oh, and I'm not quite sure dietlibc does locales... but anyway. 23:51:50 elliott, ugh if it doesn't 23:52:18 Vorpal: Yeah, yeah, it's all experimental, let me figure things out first. 23:52:26 -!- augur has quit (Remote host closed the connection). 23:52:32 Vorpal: I just don't want to settle for the second-best libc. :p 23:52:47 Vorpal: (And I put a lot of effort into getting dietlibc to compile with pcc, let me tell you! I doubt uClibc will compile with non-gcc any time soon...) 23:52:55 elliott, well one lacking locales surely can't be the best :P 23:53:06 -!- augur has joined. 23:53:29 elliott, on MC? 23:53:41 Not this second, but I can be in two seconds; are you going on? 23:53:43 -!- augur has quit (Remote host closed the connection). 23:54:02 elliott, I just logged on 23:54:08 will be on for a few minutes at least 23:55:43 Coming on. 23:56:32 elliott: Okay, maybe a US English-only system would be tolerable. 23:56:45 elliott: Because dietlibc is just so insanely small. 23:58:37 pikhq: It might support locales, I don't know. I might be able to patch in locale support./ 23:58:47 Probably doesn't. 23:58:48 pikhq: But really I'm just not sure; uClibc definitely has wider support. 23:58:50 That would be code size. 23:59:28 elliott: Downside to trying to have uclibc and dietlibc both: you will need a seperate lib dir for each. 23:59:49 As they are entirely seperate ABIs. 2010-12-03: 00:00:23 (see, this sort of thing is what makes the multiple-ABI directory layout thing not a terrible idea!) 00:00:45 pikhq: /lib/{libc.a,crt*.o} is main libc; /lib/otherlibname/* is the other one. :p 00:01:42 elliott: Well, that actually does work for static linking... *shrug* 00:01:50 pikhq: (I suppose I don't want to build every lib twice, though, against a different libc...) 00:02:09 Only the libraries that'll actually work against dietlibc. 00:02:17 Which is *not* going to be universal. 00:02:33 Or even incredibly common. 00:03:02 pikhq: That's what makes me want to use uClibc. 00:03:13 pikhq: But man, nm -a a uClibc'd executable some time. Bloooooat. 00:32:25 elliott, down? 00:32:39 Perhaps. :P 00:32:39 elliott, the next torch is close to me, there is a chest a bit further along 00:32:50 Ah. 00:33:58 elliott, up 00:38:24 -!- Sasha2 has joined. 00:39:01 -!- Mathnerd314 has quit (Ping timeout: 240 seconds). 00:39:55 -!- augur has joined. 00:40:03 -!- Sasha has quit (Ping timeout: 265 seconds). 00:40:56 pikhq: ping 00:41:19 elliott: Gnip 00:41:36 elliott: I'm sad that live-action doesn't compress as well as animation. 00:41:54 pikhq: Clearly we should all become animated. 00:41:57 Clearly. 00:44:03 Why, I have to resort to 256 kbps to get tolerable 240p! 00:44:06 pikhq: Wait, how do typical C compilers know what start files to link? Do they just go by whatever's at /lib/crt1.o and the like? 00:44:16 i.e. filename based? 00:44:58 The path is builtin to the compiler. 00:45:09 pikhq: So, path-based. 00:45:10 GCC at least has the courtesy to stick it in the spec file. 00:45:26 pikhq: How would one go about making a typical (non-gcc) compiler assume it's statically compiling always? 00:45:28 i.e. implicit -static. 00:45:37 Uuuuh. I dunno. 00:45:44 Really easy to do with GCC, though. 00:45:44 -!- GreaseMonkey has quit (Ping timeout: 245 seconds). 00:46:26 -!- GreaseMonkey has joined. 00:47:40 pikhq: pcc, so it's probably not configurable without patching :P 00:48:20 * Copyright(C) Caldera International Inc. 2001-2002. All rights reserved. 00:48:25 pikhq: Gotta love any piece of code that starts with that. 00:48:32 * This file should be rewritten readable. 00:48:34 And then has that. 00:48:41 ... Whaaa? 00:48:47 pikhq: It's pcc. 00:48:51 pikhq: pcc has... a LOT of authors. 00:49:05 pikhq: Caldera happens to be one of them and they stuck that copyright there :P 00:49:28 pikhq: ...come to think of it thought, pcc wasn't being maintained then. Whut? 00:49:30 Well, yes. It's got a shaggy dog story about as crazy as your typical genetic UNIX. 00:49:40 if (strcmp(argv[i], "-static") == 0) { 00:49:40 Bstatic = 1; 00:50:02 #ifdef DYNLINKER 00:50:07 Nice, I can theoretically disable that :P 00:50:20 TODO: figure all that out. 00:50:26 pikhq: So, what's your vote for main libc. uClibc or dietlibc? 00:52:09 uClibc, I guess. 00:52:40 pikhq: Okay! The people have spoken, and they choose MEDIOCRITY! 00:53:58 XD 00:59:46 pikhq: The worst thing about all of this is the kernel configuration. 00:59:59 pikhq: It is *so hard* to know what you need to get stuff working, and no matter how much you disable it always seems to end up huge. 01:00:09 (At least starting from the stock kernel.) 01:04:20 Hmm. I didn't need to scale that Sintel trailer down to 240p; it turns out fine at 480p. 01:05:02 SD VIDEO STREAMING VIA ISDN. 01:11:10 pikhq: I eagerly await "NES live game streaming over telegraph" 01:12:04 elliott: XD 01:17:43 night 01:19:26 -!- Sasha2 has quit (Ping timeout: 245 seconds). 01:24:32 -!- Sasha has joined. 01:29:32 There should be a digital-composey-MIDI-ish-tracker-y thing with a decent interface. 01:30:15 -!- augur has quit (Remote host closed the connection). 01:45:41 Huh. Microsoft has started funding Hercules. 01:45:47 The IBM mainframe emulator. 01:45:58 Why? Beats me. 01:48:07 Newspeak makes me feel like I can contribute to it 01:48:13 I like that feeling 01:50:46 pikhq: If it runs on Windows and they suspect people will want it, that's customers. 01:54:05 Well, it does run on Windows. 01:59:54 Why is newspeaklanguage.org down? :(:( 02:07:22 Sgeo: You know what's a good language...? 02:07:24 Sgeo: newLISP. 02:11:20 I like dynamic scoping.. but dynamic scoping by default? 02:11:59 Sgeo: Hey, original LISP had it that way! 02:15:25 pikhq: More kitten work tomorrow; let's see if I can bootstrap a usable if bare system with X11 by Christmas. 02:15:26 -!- elliott has quit (Quit: Leaving). 02:24:20 elliot: Needs more cowbell. 02:24:40 Can someone please tell me WHY elliott is trying to push me from Newspeak? 02:25:31 Sgeo: Because all is koneko. 02:25:43 ??? 02:26:00 Kitten. 02:27:34 -!- aloril has quit (Read error: Connection reset by peer). 02:28:09 * pikhq is amused by how extensive the Japanese article on cats is. 02:35:29 -!- aloril has joined. 02:53:47 Sigh... IPv4 addresses are running out and the replacement is quite a Charlie Foxtrot... :-/ 02:54:45 Well, at least it has major "last mile" issues, and major routing issues. 03:03:06 last mile issues? 03:04:19 Both of them are not inherent faults in IPv6, but rather faults in meatware. 03:04:35 -!- Mathnerd314 has joined. 03:04:46 You fucking *idiots*, IPv4 is *basically over*. Get that through your fucking skulls. 03:06:14 Don't "get a transition plan in the coming years". Get a motherfucking time machine and be THROUGH YOUR TRANSITION as of last year. Or else you will HAVE NO INTERNET you fucking apes. 03:06:40 This has been cursing-filled rants from pikhq. 03:06:50 you fucking apes. 03:12:56 How bad can it be to live with not getting IP addresses for a few years? Hurt a few consumers, businesses, etc, not the end of the world, right/ 03:13:02 ? 03:18:39 Sgeo: Try "critically injure all businesses". 03:19:14 New ones? How often do current businesses need new IPs? 03:19:44 Uh, every time they get new computers that should be publicly accessible. 03:19:56 Imagine a world in which all Internet services cannot grow. 03:20:19 o.O 03:21:00 It's still temporary. Unless the economic impact causes irreversible damage to society or something 03:21:12 It's still pretty bad shit. 03:21:33 Because everyone is absolutely, positively *unprepared*. 03:21:53 This is going to sneak up and surprise everyone. 03:22:13 We should get the media involved somehow 03:22:20 "We can't add that new server." "Why not?" "The Internet is full." 03:23:19 I don't know if we could do something ourselves, or motivate the people tracking this sort of thing to speak to the media, but 03:23:41 Sgeo: The only way to get the media aware is for IANA to announce the end of allocations. 03:24:04 Which is when the shit hits the fan. 03:24:14 You don't think the media is interested in "In all liklihood, the Internet fills up around this time"? 03:24:55 I don't think you realise just how soon IPv4 depletion is. 03:25:19 Pessimistic estimates give us until March. 03:26:26 I'm sure the media would love to hear about it, at the very least. Put pressure on ISPs to start IPv6 adoption now, as opposed to waiting untii, say, March 03:26:27 Even if there was a gigantic push to switch to IPv6 rivaling the space race in effort, we couldn't switch in time. 03:26:37 pikhq, but surely, the sooner the better? 03:26:50 -!- augur has joined. 03:26:59 Less time of economic turmoil? 03:27:13 People still have their heads in the sand. 03:27:30 Again: The media might help fix that 03:27:43 The media? 03:28:05 Those morons are too focused on Justin Beiber to report on anything of merit. 03:29:00 I thought they love doom and gloom predictions... or make fun of them blah 03:29:34 They also have the intelligence of a gold fish. 03:29:52 Remember: Glenn Beck is taken seriously. 03:29:52 If IPv4 was a household object that can cause 1 in 6 billion people to die, then they'd care 03:30:00 Remember: Glenn Beck is taken seriously. 03:30:12 * Sgeo has never seen Glenn Beck 03:39:22 Take a completely crazy right-wing conspiracy theorist. 03:39:31 Now give him a radio program and a TV show. 03:39:35 That's Glenn Beck. 03:40:29 By "crazy" I don't mean "has some really bizarrely fascist opinions". I mean "is literally schizophrenic". 03:42:54 Why are people so ridiculously short-sighted w.r.t. what constitutes "life"? 03:43:33 The only reason we're even looking for carbon-rich planets is that we can't formulate a way that life could exist without carbon; this is almost assuredly because we're stupid, not because it's impossible. 03:44:05 So when we find something really exotic, we just expand our search from Space Earth to Space Almost-Earth. Yeehaw. 03:45:29 Gregor: To be fair, we're only searching for carbon-rich planets because it's literally the only selection criteria we have. 03:45:48 Aside from "happens to be sending us a treatise on classical mechanics". 03:45:55 Sadly, no planets meet *that* criteria. 03:46:15 Criterion. 03:46:57 Right now we're so limited, we should be more focused on "things we can get to" than "things that might have life by our narrow definition" 03:49:13 I note that the only planet that was "things that might have life by our narrow definition" so far is just a few light years away. 03:49:14 That is, it's "things we can get to" if you opt for a generation ship. 03:49:15 (which is, of course, the only way we're getting anywhere right now) 03:50:10 -!- augur has quit (Remote host closed the connection). 03:54:03 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep). 04:03:22 -!- augur has joined. 04:06:59 Pessimistic estimates of IANA depletion are *this year*. 04:09:18 And those "March" estimates are of optimistic category. 04:10:55 And one of those pessimistic (2010) estimates is by some (I don't recall which exactly) RIPE (the euro RIR) executive (who is expected to know this stuff pretty well)... 04:11:33 (but then, RIRs don't know much what each other is doing... Granted, there's NRO, but still...) 04:13:38 -!- augur has quit (Remote host closed the connection). 04:21:27 -!- poiuy_qwert has joined. 04:24:42 -!- augur has joined. 04:24:47 #esoteric: Home of those watching the IPv4 apocalypse helplessly 04:25:46 I got my Dinosaur Comics neckties! 8-D 04:26:18 #esoteric: Home of those who have not yet realized that humans have an impressive ability to adapt to imperfect situations, albeit reactively. 04:30:58 http://www.youtube.com/watch?v=_y36fG2Oba0 04:31:20 I think that's assuming that people actually got to IPv6 in a sensible way :/ 04:31:49 Oh, no it isn't 04:32:22 It incorrectly talks about TCP thugh 04:32:37 Er, wait no 04:33:14 -!- augur has quit (Remote host closed the connection). 04:42:33 If we couldn't respond sensibly to IPv4 depletion, despite having a perfect solution in hand for years 04:42:38 We knew the problem was solvable 04:42:47 What hope do we have for Global Warming? 04:42:51 * Sgeo depresses 05:02:55 -!- augur has joined. 05:03:11 -!- Mathnerd314 has quit (Ping timeout: 245 seconds). 05:14:45 Gregor: It's still depressing that humans only adapt in reaction to shit that's already *happened*, rather than being proäctive. 05:15:28 Oh, there are the "converging catastrophes" and Global Warming is just one of them... 05:15:43 pikhq: Hence "reactively" :P 05:15:59 (Pronounced "reek-tively") 05:16:47 And the worst is when predictors of disaster (that will later come to pass) are ridiculed for forecasting ridiculous things... 05:17:38 I'm genuinely surprised that we actually bothered to handle Y2K ahead of time. 05:18:09 And that took spelunking into some of the nastiest code bases out there. 05:20:07 Maybe the media helped a bit? =P 05:20:24 Perhaps because media took upon really drumming on it? 05:20:36 (Doom... Doom... Doom...) 05:21:21 Doom interests the media. I still want to get the media to pay attention to IPv4 depletion 05:22:12 Even if it doesn't help stop the crisis, at least the situation will be helped at least a little 05:22:29 It might go a bit faster, businesses might be more prepared to withstand it 05:24:43 IIRC, current growth rate of IPv6 is about 70% per year. Not enough, we need at least 700% per year to make it... :-) 05:25:42 Can we, #esoteric, speak to the media? 05:25:43 -!- Sgeo has left (?). 05:25:48 -!- Sgeo has joined. 05:25:55 Or pressure some group into doing so? 05:27:41 Best case would be avoiding RIR depletions entierely (because of insufficient demand to deplete RIRs)... 05:28:17 But that's incredibly optimistic... 05:29:12 IANA would still be depleted (essentially nothing can stop that now). 05:30:58 Remember, APNIC could justify allocation at any momemnt. And they might have to in just couple weeks... 05:33:35 And now there's talk about RIR depletion estimates being too optimistic by several months... 05:34:27 You know what? 05:34:44 Soonish, I'm going to write something, ask #esoteric to proof it, then send it somewhere 05:36:10 It gets terrifying when the most pessimistic model is the reality... 05:37:04 Okay, lagerholm depletion model was the more pessimistic one... But now it seems hopelessly optimistic... 05:37:18 What can businesses do to prepare themselves? 06:28:28 -!- Goosey has quit (Ping timeout: 250 seconds). 06:31:38 -!- sebbu2 has joined. 06:33:12 -!- sebbu has quit (Ping timeout: 276 seconds). 07:00:17 -!- perdito has changed nick to perdito|afk. 07:03:02 -!- kar8nga has joined. 07:22:53 -!- wareya has joined. 07:25:09 -!- wareya_ has quit (Ping timeout: 240 seconds). 07:50:41 -!- FireFly has joined. 07:54:46 -!- kar8nga has quit (Remote host closed the connection). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:16:05 -!- MigoMipo has joined. 08:19:47 -!- MigoMipo_ has joined. 08:20:19 -!- MigoMipo has quit (Ping timeout: 245 seconds). 08:49:51 -!- FireFly|n900 has quit (Ping timeout: 245 seconds). 09:10:23 -!- FireFly|n900 has joined. 09:35:14 -!- Sgeo has quit (Read error: Connection reset by peer). 09:53:20 -!- GreaseMonkey has quit (Quit: ilua). 10:13:09 -!- nopseudoidea has joined. 10:20:56 -!- evincar has joined. 10:21:03 Hey all. 10:21:28 -!- MigoMipo_ has quit (Read error: Connection reset by peer). 10:24:58 -!- evincar has quit (Client Quit). 10:32:14 -!- FireFly|n900 has quit (Ping timeout: 255 seconds). 10:32:55 -!- oerjan has joined. 10:33:01 -!- oerjan has quit (Client Quit). 10:33:24 -!- oerjan has joined. 10:33:39 /quit 10:33:49 -!- oerjan has quit (Remote host closed the connection). 10:38:03 -!- oerjan has joined. 10:38:03 -!- oerjan has quit (Client Quit). 10:39:15 -!- oerjan has joined. 10:39:43 æøå 10:40:54 !haskell "æ" 10:41:13 æ 10:42:29 -!- FireFly|n900 has joined. 10:42:32 i discovered that my locale setup that got irssi to work with utf8 last time actually works by having an illegal locale which is reset to C, so some more tweaking is needed :D 10:42:49 !help 10:42:50 help: General commands: !help, !info, !bf_txtgen. See also !help languages, !help userinterps. You can get help on some commands by typing !help . 10:42:55 !haskell "æ" 10:42:58 "\195\166" 10:43:31 æ 10:43:36 !haskell putStrLn "\195" 10:43:39 10:43:47 good, seems it's still working 11:00:17 -!- nopseudoidea has quit (Quit: Quitte). 11:02:46 -!- perdito|afk has quit (Ping timeout: 245 seconds). 11:08:10 xkcd XD 11:17:00 oerjan, heh 11:20:29 oerjan, and I noticed the pirate theme of IWC is getting extremely absurd 11:20:34 more than average for iwc that is 11:24:26 today's square root of minus garfield is rather swedish 11:35:14 -!- perdito|afk has joined. 12:12:40 -!- sebbu has joined. 12:13:05 -!- sebbu2 has quit (Read error: Connection reset by peer). 12:40:22 -!- perdito|afk has quit (Quit: perdito|afk). 12:40:42 -!- perdito|afk has joined. 12:47:40 time to buy minecraft 12:47:40 -!- FireFly|n900 has quit (Ping timeout: 255 seconds). 12:49:10 I read that as Microsoft 12:49:14 Let's go buy Microsoft 12:53:00 why not 13:10:02 -!- FireFly|n900 has joined. 13:10:02 -!- nopseudoidea has joined. 13:10:02 -!- FireFly|n900 has quit (Changing host). 13:10:02 -!- FireFly|n900 has joined. 13:18:31 -!- perdito|afk has changed nick to perdito. 13:27:03 -!- Phantom_Hoover has joined. 13:29:19 -!- Sasha2 has joined. 13:30:58 -!- Sasha has quit (Ping timeout: 265 seconds). 13:33:38 -!- elliott_ has joined. 13:33:53 Gregor: gcc just ate up your least favourite language. 13:38:28 -!- elliott_ has quit (Ping timeout: 265 seconds). 13:46:43 Gregor, what's your least favourite language? 13:48:29 Presumably Go 13:50:50 -!- elliott_ has joined. 14:04:58 -!- elliott_ has changed nick to elliott. 14:05:01 -!- elliott has quit (Changing host). 14:05:01 -!- elliott has joined. 14:11:52 -!- nopseudoidea has quit (Quit: Quitte). 14:18:30 http://esolangs.org/wiki/Talk:INTERCAL#INTERCAL_is_not_Compiler_Language_With_No_Pronouncable_Acronym 14:20:55 ____ ___ __ ___ _ _ _____ 14:20:55 ___| / _ \ \ \ / / | | | / \|_ _| 14:20:55 \___ \| | | | \ \ /\ / /| |_| | / _ \ | | 14:20:55 ___) | |_| | \ V V / | _ |/ ___ \| | 14:20:55 |____/ \___/ \_/\_/ |_| |_/_/ \_\_| 14:21:44 wtf happened to the two first lines 14:22:20 oh duh the second line starts with / :D 14:23:28 do better next time 14:24:12 your second "O" in WHOOSH could be better too 14:24:17 ____ ___ __ ___ _ _ _____ 14:24:17 / ___| / _ \ \ \ / / | | | / \|_ _| 14:24:17 \___ \| | | | \ \ / /\ / /| |_| | / _ \ | | 14:24:17 ___) | |_| | \ V V / / | _ |/ ___ \| | 14:24:17 |____/ / \___/ \_/\_/ |_| |_/_/ \_\_| 14:24:24 GAH! 14:24:40 sed failure. oh missing the ^ :D 14:24:57 ____ ___ __ ___ _ _ _____ 14:24:57 / ___| / _ \ \ \ / / | | | / \|_ _| 14:24:57 \___ \| | | | \ \ /\ / /| |_| | / _ \ | | 14:24:57 ___) | |_| | \ V V / | _ |/ ___ \| | 14:24:57 |____/ \___/ \_/\_/ |_| |_/_/ \_\_| 14:25:29 you should have saved it for when it made sense to the conversation at hand 14:25:34 quintopia: it's just figlet generated 14:25:53 fix the figlet 14:27:57 the second O is just kerned with the S 14:28:27 yes 14:28:33 and it shouldn't be 14:28:38 because it makes it look bad 14:28:55 ____ ___ __ ___ _ _ _____ 14:28:55 / ___| / _ \ \ \ / / | | | / \|_ _| 14:28:55 \___ \| | | | \ \ /\ / /| |_| | / _ \ | | 14:28:55 ___) | |_| | \ V V / | _ |/ ___ \| | 14:28:55 |____/ \___/ \_/\_/ |_| |_/_/ \_\_| 14:29:47 i don't understand how i can read the sup-pixel message generator just fine, but i can't see the sub-pixels in your nick when you highlight me 14:31:09 because the subpixel message generator is ridiculously hyper-saturated on purpose... 14:31:10 duh 14:31:29 compare http://www.grc.com/image/cttech2.gif 14:31:45 ah yes 14:31:53 i can see the subpixels quite easily inn that message 14:32:18 say something in magenta 14:32:38 magenta delenda est 14:32:39 there's no colours in this channel. 14:32:52 oh right 14:33:06 but okay 14:33:07 -!- nopseudoidea has joined. 14:33:10 function feedthebear (enum[bear] whichone, enum[food] bearfood) 14:33:10 begin 14:33:10 bool fed;//if all goes well... 14:33:10 whichone[call] (); 14:33:10 try{ 14:33:11 whichone[eat] (bearfood); 14:33:13 throw (whichone[eat](armp));//armp is a global indicating 14:33:15 }//zookeeper's arm 14:33:17 14:33:19 return (fed=TRUE); 14:33:21 end; 14:33:23 (Am I part of the curse now too?) 14:33:35 what's a magenter? 14:34:18 zook the eeper 14:35:06 pikhq: please tell me why xorg is split into 3489573457839445 tarballs 14:35:42 i can see the subpixels a little bit in normal magenta text. i feel better. 14:37:02 aargh, not all of Magenta is on reocities 14:41:34 -!- FireFly has quit (Quit: swatted to death). 14:42:55 pikhq: Will you have me if I just package xorg as one gigantic package containing everything? 14:42:56 *hate 14:43:38 -!- FireFly has joined. 14:44:27 # Re-run the last command until a build succeeds. 14:44:30 that is so, so reassuring 14:45:45 "xserver ... requires ncurses" 14:46:54 -!- MigoMipo has joined. 14:59:20 -!- augur has quit (Remote host closed the connection). 14:59:43 -!- augur has joined. 15:04:21 -!- augur has quit (Ping timeout: 272 seconds). 15:09:45 -!- ais523 has joined. 15:09:46 -!- ais523 has quit (Changing host). 15:09:46 -!- ais523 has joined. 15:15:04 Gregor: http://codu.org/imgs/dinosaurComic.php?panels=0,1,5&comics=1544,911,527&strip i made a terrible 15:15:05 hi ais523 15:15:43 Gregor: http://codu.org/imgs/dinosaurComic.php?panels=0,1,5&comics=1544,911,1252&strip t-rex imagines the upcoming discussion, badly 15:18:49 -!- ais523 has quit (Read error: Connection reset by peer). 15:19:17 -!- ais523 has joined. 15:19:20 hi 15:19:35 ho 15:19:45 elliott: Because they decided to split it into multiple packages, and did it *far* too fine-grained. 15:20:04 pikhq: yeah and now i am discovering the joy of their build system 15:20:11 (seriously, a package for a *subdirectory* of headers‽) 15:20:20 pikhq: it depends on programs written in c++ 15:20:22 yaaaaaaay. 15:20:39 pikhq: anyway there's only going to be one single xorg package in Kitten because to hell with splitting this up 15:20:59 pikhq: but um this is kind of painful you should do the xorg package :P 15:21:18 oh no, it is disregard my cflags and -O2 instead of -Os, this is the sad 15:21:26 sad day 15:21:26 -!- sftp has joined. 15:21:31 and it may in fact be building git xorg instead of 7.5 15:21:33 which would be bad 15:24:12 elliott: Look at what Gentoo does for the xorg package for inspiration. 15:24:34 (should be fairly easy to grok; Portage runs on simple shell scripts.) 15:25:18 pikhq: So, um, I have a Dilemma. This patch: http://marc.info/?l=linux-kernel&m=128978361700898&w=2 is pretty much agreed by everyone to be on the order of, say, sliced bread in AWESOMENESS. There are videos showing before/afters where Linux is being compiled with -j64, 1080p video is playing, webpages are being scrolled and -- LIKE SOME KINDA MAGIC OS FROM THE FUTURE LIKE EVERY COMMERCIAL OS EVER -- everything just goes smoothly. (The before video 15:25:18 uh, less astonishing). Apparently -j128 is even more dramatic but makes for a bad demonstration because the "before" video is a static image of frozenness. 15:25:36 pikhq: BUT BUT BUT not only is this patch CFS-specific, but it uses cgroups! BFS explicitly does not have cgroups! 15:25:50 Thus a DILEMMA! Enhanced desktop performance OR-- enhanced desktop performance?? 15:25:54 ;____; 15:27:32 elliott: do you know what the patch does, specifically? 15:27:53 -!- sftp_ has joined. 15:27:58 -!- sftp has quit (Ping timeout: 255 seconds). 15:27:58 ais523: it's summarised in http://marc.info/?l=linux-kernel&m=128978361700898&w=2 15:28:04 it improves performance in the case where you run a lot of background processes in a terminal and do something interactive on the GUI or a different terminal 15:28:09 ais523: basically it automatically creates cgroups -- not very smartly at the moment, but -- 15:28:09 right 15:28:17 but "supposedly" it's going to be enhanced further 15:28:32 ais523: I suppose it does seem a bit niche, but -- I mean -- I do often get sluggishness when compiling stuff. 15:28:34 And that's rather irritating. 15:28:50 OTOH, it means using CFS, whereas BFS improves desktop performance in, like, every other case. 15:28:54 well, I compile at -j1 15:29:33 ais523: Mind you, I am going to be compiling stuff a *lot*, thanks to all the Kitten packages :) 15:29:42 But yeah, BFS is probably better overall. 15:29:59 hmm, according to Slashdot, there's now a mobile phone plan with a 21Mbps speed and a 5GB per month cap 15:30:12 conclusion: you can only use it for around half an hour per month 15:30:53 ha 15:31:09 -!- yorick has quit (Remote host closed the connection). 15:31:13 pikhq: Does such a thing as NON-modular Xorg still exist? 15:31:41 elliott: Wayland! 15:31:42 * ais523 runs 15:32:08 elliott: Not any more. 15:32:22 ais523: I'm pretty sure the only way to get X running on Wayland is to use Xorg :P 15:32:25 or something 15:32:28 pikhq: ;_; 15:32:40 pikhq: How old is the last non-modular version? How long will I be able to use it before it rots to death? :P 15:32:41 * pikhq should get coffee 15:33:23 elliott: 5 years. 15:33:29 (X11R6.9) 15:33:41 pikhq: i think that is totally practical and i should use it, don't you totally agree??? 15:33:53 :P 15:34:04 elliott: How do you feel about autoconfiguration? 15:34:28 pikhq: well since I don't have udev or HAL I don't think I can have that anyway 15:34:36 driver support is a rather bigger issue :P 15:34:39 Mdev? 15:35:14 Anyways, it should have 2D acceleration about as good as right now. 15:35:40 annoying Firefox feature I just figured out how to turn off: sending what you typed to Google if it isn't a URL 15:35:54 pikhq: mdev is vaguely compelling, but it's still udev. But you know what? devfs is back in the kernel. Seriously. 15:36:10 pikhq: They snuck it in -- newly-implemented -- under the pretence of being a temporary devfs for initramfses before udev is started. 15:36:18 pikhq: It's called devtmpfs, it runs on a tmpfs, and it's fully-featured. 15:36:20 -!- Sasha has joined. 15:36:20 -!- sftp has joined. 15:36:36 -!- sftp_ has quit (Ping timeout: 276 seconds). 15:36:45 -!- Sasha2 has quit (Read error: Connection reset by peer). 15:37:21 -!- augur has joined. 15:37:53 pikhq: ...so yeah, I was pretty much just going to use that. 15:38:39 wrt mdev, there's also http://code.google.com/p/hotplug2/ 15:39:13 pikhq: All these things aren't very useful when you don't have modules in your kernel, of course. 15:39:30 So devfs is A Bad Thing? 15:39:55 Phantom_Hoover: No, devfs is A Good Thing. 15:40:10 Is udev A Bad Thing, then? 15:40:37 It had some implementation problems, and the kernel idiots decided that rather integrating a proposed new implementation, they should add pointless flexibility (you can make /dev/sda1 be called /dev/frobni1cator instead! USEFUL!) and move everything to userspace (because Linux is a microkernel amirite guyz?). 15:40:46 udev isn't necessarily terrible. It has some valid usecases. 15:40:48 But it's really overblown. 15:45:45 elliott: What was the 08:33 < elliott_> Gregor: gcc just ate up your least favourite language. 15:45:50 coppro: Go. 15:45:54 elliott: ate up? 15:45:55 coppro: gccgo is being merged into gcc. 15:46:00 elliott: oh 15:46:01 :( 15:46:14 coppro: Dude, it also has Fortran and Objective-C. 15:46:17 It's not exactly an endorsement. 15:46:19 And Ada. 15:46:29 And Java 15:46:32 And C++ 15:46:33 And C :P 15:46:59 Anyway Go is a perfectly competent language in a certain niche that EVERYONE IS DETERMINED TO PRETEND IT DOES NOT EXIST IN. 15:47:05 And with rather bad marketing materials. 15:47:36 Nobody uses gccgo anyway, the Plan 9-style compilers are far better :P 15:47:37 elliott: what's this about a niche? 15:47:59 coppro: systems server programming. nothing else. 15:48:06 more or less 15:51:04 elliott: *Issue 9 15:51:16 ais523: no, that issue was the stupidest thing ever 15:51:33 indeed 15:51:45 can't you call it Issue 9 just because the name "Go" is stupid. though? 15:51:48 s/./,/ 15:51:57 umm, s/,/c/ 15:52:00 s/\./,/ 15:52:00 ais523: (1) yes, you can totally own the name "go", that's not one of the most common words ever; (2) your language is called "Go!" on all your publications, with an exclamation mark, so you can't even claim identicality 15:52:13 (3) lol internet bandwagon "because it was done in google 20% time it's google's projects now let's lynch evil google" 15:52:16 elliott: I don't think there was trademark infringement 15:52:26 ais523: how's the name Go stupid, it's just... not an interesting name 15:52:43 too easily confused with the typical word without context 15:52:47 -!- Gregor has set topic: WE ARE SOMEWHAT SPARTA | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 15:53:22 ais523: Even WITH context; it's too general of a word. 15:54:06 Gregor: isn't it THIS IS SOMEWHAT SPARTA 15:54:06 s/go/face/ 15:54:18 s/word/face/ 15:54:23 Your face is way too general. 15:54:41 elliott: Yes, but WE are somewhat sparta. 15:54:50 elliott: Also, no. 15:54:52 Your face is somewhat sparta. 15:54:54 elliott: It's "I AM SOMEWHAT SPARTA" 15:55:02 Ah. 15:57:01 pikhq: ouch, i just realised something about busybox 15:57:19 Somebody needs to invent descenders; like suspenders, but worn under your pants and keeps your shirt perfectly tucked. 15:57:40 No they don't. 15:59:00 Gregor: I love that concept 15:59:59 I'm not QUITE sure how they'd work just yet, but suffice it to say I'm tired of having to resort to the Picard Maneuver :P 16:00:34 -!- ais523 has quit (Remote host closed the connection). 16:00:45 Picard... Maneuver. 16:01:20 elliott: ? 16:01:35 I'm not QUITE sure how they'd work just yet, but suffice it to say I'm tired of having to resort to the Picard Maneuver :P 16:02:57 But, yeah, udev's only failing is that it's a bit overkill. 16:03:14 Which compared to some of the other odd shit done with /dev, makes it genuinely nice. :P 16:03:41 (devfs's organization scheme is, well, WTF.) 16:04:14 pikhq: Yeah, but fuck them for not accepting mini-devfs before udev came along. 16:04:20 elliott: In TNG, Patrick Stewart adjusted his shirt whenever he stood up; that adjusting is the Picard Maneuver :P 16:04:45 Gregor: So is http://memory-alpha.org/wiki/Picard_Maneuver the spaceship analogue to adjusting your shirt? 16:04:49 Say yes. 16:04:54 elliott: Let's go with yes. 16:04:58 And oh god why hasn't Memory Alpha switched from Wikia. 16:05:01 very fast adjustment 16:05:01 elliott: However, that name is actually just the source of the JOKE :P 16:05:07 Whyyyyyyyyyyyyyyyyy. 16:05:13 Gregor: THERE IS NO JOKE ONLY FACTUALS 16:05:24 "However, because the release of Star Trek took place nearly simultaneously across the world, the community has taken the decision to lock the English edition of Memory Alpha to editing from 2000 UTC on May 6th until 0400 UTC on May 9th, in order to allow the users of Memory Alpha time to see the film without having to worry about being spoiled before it was (technically) released." 16:06:30 This is why TOS sucked: "...that the original version of the script for Star Trek: The Next Generation's "Conspiracy" did not feature alien parasites? The 'conspiracy' in question was simply a military coup within Starfleet, but Gene Roddenberry vehemently opposed such an idea, since he believed Starfleet would never stoop to such methods; thus the alien angle was introduced at his insistence." 16:06:45 STARFLEET IS A PARAGON OF PERFECT EXCELLENCY IN OUR FUTURE UTOPIA WHERE NOTHING EVER GOES WRONG EVER 16:07:33 pikhq: Some parts of BusyBox require suid, like su, passwd, ping, traceroute. Apparently you're meant to make BUSYBOX ITSELF suid. That includes "ls" and "mv". 16:07:40 It says it drops permissions if it doesn't need them, but uh....... 16:08:04 Selected by: LOGIN || PASSWD || SU || VLOCK || IPCRM || IPCS && PLATFORM_LINUX || CRONTAB 16:08:12 TODO: Disable those, disable suid/sgid handling, build separate "busybox-suid". 16:10:37 │ │(1024) Maximum length of input (NEW) │ │ 16:10:38 lol 16:15:58 Gregor, soo, is Go your most hated language? 16:17:05 -!- nopseudoidea has quit (Quit: Quitte). 16:18:45 pikhq: BusyBox doesn't compile with dietlibc, using pcc or gcc. For fuck's sake. 16:39:44 http://abstrusegoose.com/323 16:41:22 lawl 16:45:14 Sgeo will still be useful in the 24th century. 16:45:20 What a terrifying thought. 16:52:47 -!- nopseudoidea has joined. 17:07:27 elliott, when will I get my specs??? 17:07:37 Phantom_Hoover: wut? oh right 17:07:46 Phantom_Hoover: uh, what was your budget again :P 17:07:48 Punctuation is a poor replacement for the full range of intonation. 17:07:56 also i refuse to do it unless the first os you install on it is kitten 17:08:00 elliott, £800 was the absolute upper bound. 17:08:24 OK, I'll be the flagship Kitten user. 17:09:38 Phantom_Hoover: You crazy. 17:09:54 elliott, of course! 17:10:04 Phantom_Hoover: (Note that the installation procedure involves an Ubuntu CD and a lot of manual installation :P) 17:10:23 elliott, can I install Debian first? 17:10:41 Phantom_Hoover: I said first OS! My demands are NON-NEGOTIABLE except under EXTREME circumstances. 17:10:52 Phantom_Hoover: (If you only use Debian to install Kitten that is okay.) 17:10:57 OK. 17:11:02 I shall do that. 17:11:29 Phantom_Hoover: I don't actually intend to force you to use Kitten :P 17:11:41 elliott, suuuuuure. 17:12:18 You know, the suffix "-matic" is underused in hardware names. 17:13:03 It would give everything a nice Wallace and Gromit-y feel. 17:13:13 crunchomatic 17:13:40 Processomatic. 17:13:49 Memory-o-mat. 17:15:12 Diskifier. 17:17:05 "Added /kill command. Does 1000 points damage to the player". Well, that's certainly a novel way to solve the lack of /home. 17:17:26 "The join server page now remembers the port as well as the ip", so it's not all bad. 17:18:35 fizzie: Yeah, he said he'd add that but seriously fuck that. 17:18:41 fizzie: Got lost? HAHA FUCK YOU YOU GET TO LOSE ALL YOUR ITEMS 17:19:11 "Fixed a bug where joining a server on a specific port caused the client to forget all keybindings". This has to be among the most random things ever. 17:19:41 fizzie: I think Notch actively tries to intertwine EVERY SINGLE CODE PATH. 17:21:11 -!- nopseudoidea has quit (Quit: Quitte). 17:24:19 -!- Zuu has quit (Ping timeout: 272 seconds). 17:24:58 -!- Zuu has joined. 17:25:54 Phantom_Hoover: Athlon II X4, quad core, 3 GHz, £74.78 y/n 17:26:22 elliott, I'm not employing you to give me decisions to make! 17:26:36 Phantom_Hoover: Oh yes you are! 17:26:58 elliott, I can't make decisions! I'm the president! 17:27:02 * oerjan vehemently agrees with Phantom_Hoover on principle 17:27:12 20:21:42 /home/elliott/kitten/stage3/include/dietref.h:-21: error: __PCC__ redefined 17:27:12 20:21:43 previous define: x.c:-21 17:27:16 having this problem again :DDD 17:28:42 elliott, more serious reason: for all I know, an Athlon II [... 17:28:51 *] could be a block of cheese. 17:29:10 Phantom_Hoover: It is. 17:29:37 elliott, Is it a good block of cheese for processing? 17:30:23 Yes. 17:30:40 Then it can go on the list. 17:32:24 elliott, also, what kind of cheese? 17:32:53 Phantom_Hoover: Athlon. 17:33:07 Not one I've heard of. 17:33:22 Phantom_Hoover: By the way, I'm not going to help you assemble this thing; don't forget the jumpers and if you fry stuff, you get to buy it again. 17:33:57 Yes, this pushes it into thought experiment, but I don't really care. 17:34:12 -!- oerjan has quit (Quit: leaving). 17:34:36 Phantom_Hoover: Eh? 17:34:50 elliott, CRAZY, REMEMBER 17:35:09 Phantom_Hoover: I am experiencing rapidly increasing doubts that I am using my time in a worthwhile manner :P 17:35:18 SO AM I 17:37:28 PERHAPS THIS IDEA WAS NOT THE BEST 17:39:27 That is because the best idea is objectively making a ladder to the moon out of sausages. 17:42:17 elliott, hm what are you doing then? 17:42:24 (kitten or mc?) 17:43:03 Vorpal: Neither! 17:43:08 elliott, oh? 17:43:31 elliott, so what is it that you doubt is a worthwhile use of your time? 17:43:43 Long story :P 17:43:49 Hey, renicing Xorg to -8 is great. 17:43:58 elliott, uh uh 17:44:08 It totally is. 17:44:29 elliott, your system must be very heavily loaded with something else then? 17:44:42 I just tried this -j64 thing, since it's so popular. :p 17:44:59 elliott, ah. well that sounds silly 17:45:11 Absolutely. 17:45:32 elliott, also depending on what compiler you use: it will probably be swap trashing 17:45:38 in which case nice -8 won't help that much 17:46:02 It wasn't. 17:46:10 I have 4 GiB of RAM and BusyBox probably doesn't require *that* much RAM to build. 17:46:51 -!- oerjan has joined. 17:51:32 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds). 17:58:11 hah, this miscompiles on gcc on lucid at -O2 or higher. Works fine on later gcc versions. 17:58:35 and yes, I need -O2 or higher, the difference is about 3x speedup 17:58:36 Vorpal: define this 17:58:46 Vorpal: also, tried -Os? :p 17:58:47 elliott, cython program 17:58:55 elliott, and no I haven't, willl 17:58:58 will* 17:59:25 elliott, -Os also broken 17:59:28 Vorpal: (tried statically linking with dietlibc at -Os? that'll be even smaller) 17:59:32 I meant as far as speed goes 17:59:38 -!- ais523 has joined. 17:59:38 elliott, doesn't help since it miscompiles :P 17:59:44 so use a newer gcc 17:59:45 :p 17:59:52 elliott, also I go for speed here, not size 18:00:04 Vorpal: -Os is often fastest 18:00:06 due to fitting in cache better 18:00:19 what ais523 said 18:00:24 not always, though 18:00:25 ais523, I tried that now. But this is numerical-intensive and seems to benefit from loop unrolling 18:00:34 Vorpal: that's also why i said dietlibc; it doesn't help if glibc is huge 18:00:35 erm 18:00:37 Vorpal: that's also why i said dietlibc; it doesn't help if your libc is huge 18:01:09 elliott, also it is long running, so loading time for libc is not important, if large parts are unused: so what 18:01:30 Vorpal: i don't think you understand cache 18:01:37 elliott, anyway -O3 is about 2x faster than -Os 18:01:40 also, *individual routines* in glibc are huge 18:01:41 elliott, I just checked 18:01:42 Vorpal: on glibc, perhaps. 18:01:53 Currently defined functions: 18:01:54 passwd, ping, ping6, su 18:01:55 smallest busybox evar 18:02:37 elliott, also python doesn't support static linking. I checked. At least if you use tkinter. 18:02:47 you use tkinter? 18:02:56 elliott, in one mode yes 18:02:59 elliott, since it is a game AI 18:03:15 I need to visualise that. 18:03:18 Vorpal: another reason you can't use kitten, then! 18:03:42 elliott, in fact it doesn't work if you use any sort of extension module in C 18:04:01 elliott, you are restricted to core python + pure python extensions 18:04:04 have fun 18:04:09 no numpy I think for example 18:04:43 -!- Phantom_Hoover has joined. 18:04:43 Vorpal: um, or i could just build those in. 18:04:53 duh 18:05:07 elliott, and do you know what I had to add to fix unresolved symbols when linking against libpython2.7.a? 18:05:35 no, i'm not psychic 18:05:44 -rwxr-xr-x 1 elliott elliott 1.6M Dec 3 17:54 busybox 18:05:44 -rwxr-xr-x 1 elliott elliott 770K Dec 3 18:03 busybox-suid 18:05:48 now if only they built against non-gcc/glibc 18:05:52 well, also /uClibc 18:05:59 elliott, -lm -lz -lssl -lcrypto -ldl (!) -lutil -lpthreads 18:06:11 Vorpal: i can patch, you know. 18:06:25 elliott, sure. But it will be a lot of work 18:06:30 not really 18:06:34 most things aren't as stupid as python 18:06:46 elliott, well for python, perl and other similar languages 18:06:58 true, not for most C programs 18:07:00 and ruby, say 18:07:01 ok, 3 programs 18:07:04 think i can handle that. 18:07:08 elliott, yeah probably ruby too 18:07:29 what is the goal of kitten again? 18:08:00 elliott, lua is probably somewhat "saner" (for some values of "saner") due to it's more limited scope 18:08:13 quintopia: to not irritate the fuck out of me 18:08:16 that's about it 18:08:35 elliott: and you're doing that by avoiding glibc? 18:08:47 erlang I know can load native modules, and it is used for some stuff in the standard distribution, but I don't think it is quite as prolific as with python and so on 18:08:56 hm 18:08:59 quintopia: avoiding gcc, glibc, dynamic linking, gnu coreutils 18:09:11 and a few other things too, like initramfs. 18:09:15 and kernel modules. 18:09:16 and /usr. 18:09:34 elliott, you know that the kernel uses an initramfs always? But the default one doesn't do very much 18:09:49 it has one that basically does next to nothing by default built in iirc 18:09:56 Vorpal: well, you can disable the initramfs code outright 18:10:01 and it tries the olde-style "let's find a root partition!" boot. 18:10:08 hm 18:10:19 elliott: is kitten somewhat sparta? 18:10:41 quintopia: it is so sparta that anyone who types sparta into it gets instantly decapitated. 18:12:59 elliott: i am convinced. it is clearly the best distro ever invented. 18:13:35 also, everyone who bugs me about it gets a fake package server filled with rootkits 18:13:44 be afraid. be very afraid 18:14:01 quintopia: to not irritate the fuck out of me <-- i sense someone fighting windmills... 18:14:43 oerjan: hey, on the off-chance that they are giants... 18:15:00 oerjan++ 18:15:12 elliott, any good at reversi? 18:15:35 ah well, in elliott's world there are far more giants than actual windmills. better to just destroy them all than waste time analyzing. 18:15:41 Vorpal: no good at it, but i like it 18:16:10 quintopia: do you object to someone making their own fortress without a single windmill in it if they like it better? 18:16:19 i do not 18:16:22 elliott, ah. Could you beet a greedy AI (one that just checks score after one move and goes for the best) 18:16:25 beat* 18:16:47 especially if the fortress contains a bottomless pit 18:16:50 at least i'm in good company, what with the plan 9 team decrying the same things, and among their membership are the people who created Unix... 18:16:58 and is surrounded by barbed wire and magical curses 18:16:59 Vorpal: no, but I can sure as hell try and fail to 18:17:12 quintopia: actually it's 128x128x128 and made out of glass. 18:17:22 LIKE MY HEART 18:17:24 ah yes 18:17:29 elliott, hm, but it is trivial to beat that, just think one move ahead and make sure it don't get corners. 18:17:36 i will tunnel into your glass heart 18:17:42 and fill it with water 18:17:43 then you have a decent chance of beating such an AI 18:17:45 mwahahahaha 18:17:47 Vorpal: i have been beaten by a moron playing for the first time. 18:17:51 elliott, heh 18:18:25 elliott: try the positional heuristic. i hear it's surprisingly good for how simple it is. 18:18:58 Vorpal: i'm lost in the north! 18:19:09 elliott, okay. So an alpha-beta-pruning with corner-favouring heuristics with a ply depth of 7 you wouldn't manage to beat I presume? Oh and it also uses number of possible moves in the heuristics. This seems to help quite a bit. 18:20:00 note: ply = 7 needs cython. With pure python you are stuck at ply = 4 or so 18:20:23 and then add on a neural-net-based action-state heuristic learned by playing the AI against itself 150,000 times and you've got a real winner :P 18:20:36 quintopia, that would be cool 18:20:51 quintopia, but I think it is outside the scope of the assignment I wrote this for :P 18:21:05 Vorpal: it beats the positional heuristic 76% of the time! 18:21:14 and that's at 1-ply! 18:22:11 quintopia, someone made such an AI? 18:22:12 hm 18:22:28 quintopia, and I wonder how large the ANN is 18:22:42 (and how long it takes to evaluate) 18:23:44 Vorpal: 3 layers. the input layer is large enough to accomodate a board and a set of possible actions, and the output is a real value indicating confidence that that is the correct move. one hidden layer. 18:24:12 Reversi/othello is a perennial... well, maybe not quite a favourite, but at least a recurring topic on the AI course. 18:24:25 so, once you've trained it (which would take a very long time since we're using boosting with straight victory-condition-backpropagation) it's essentially instantaneous. 18:25:20 fizzie: my school does a new variation on Isolation every time the course is taught. they make up a new one each year so you can't cheat :P 18:25:41 and it's always in Lisp. the proper AI language. 18:27:00 We used to have a Scheme-based framework for the "if you don't have your own topic" game, for which there is also a tournament between the participants' programs. 18:27:39 yeah that's what isolation was for. mine got second place in the tournament. 18:27:58 Sadly it's Java -- well, JVM, anyway -- now, due to all the complaints after our introduction-to-programming courses switched from Scheme to Java. 18:28:12 lame 18:29:30 The Java version lets the participants do quite a lot more computation, though. (The Scheme one was built on top of the SICP metacircular interpreter for instruction-limits and sandboxing.) 18:30:11 and it's always in Lisp. the proper AI language. 18:30:19 lisp was never designed for ai and its association with ai is largely accidental 18:30:32 but real 18:30:46 perhaps, but largely baseless. 18:30:48 Reversi/othello is a perennial... well, maybe not quite a favourite, but at least a recurring topic on the AI course. <- yeah it is easier to work on than chess but not as trivial as tic-tac-toe 18:31:05 lisp-likes (and other functional languages i suppose) have some nice properties for AI implementation 18:32:29 Chess is an even more frequent topic, I believe. Of course there's the code-stealing-from-the-webs problem, but on the other hand we don't so much care about the implementations (it's not a programming course), we just grade the reports. 18:33:00 quintopia, "Isolation"? 18:34:21 fizzie, at least python is somewhat less painful than java 18:34:29 quintopia: lisp was rarely used functionally in ai 18:35:17 elliott: i used it functionally. what's wrong with other people? 18:35:29 quintopia: you're talking about people in the 50s, 60s, 70s here 18:35:32 LABELS was very common. 18:35:42 elliott: is there a language that doesn't suck but compiles to run as fast as C or fortran? 18:35:43 i doubt you would have been significantly more "enlightened" than them at the time 18:35:48 quintopia: um, haskell? 18:35:49 Vorpal: Isn't there some sort of Jython? We allow any JVM languages (though we only support Java), after all. 18:36:04 Yes, there's Jython. 18:37:27 Our competition runs on http://www.niksula.hut.fi/~svirpioj/hierarkia/ partly due to the moderately higher-than-chess branching factor, partly because it's so unknown. 18:37:42 fizzie, hm 18:38:14 fizzie, is that the usual one you show each year? 18:38:17 Not many have done !Java; I think two in the three or so years the Java framework's been there. 18:38:24 Yes, the same. 18:38:41 fizzie, also no Swedish version? Strange for .fi 18:38:53 Probably hasn't been requested 18:38:56 ah 18:39:03 They're legally obligated to provide one if somebody does request it 18:39:05 Vorpal: http://boardgamegeek.com/boardgame/1875/isolation this is the original 18:39:11 Deewiant, ah I see. 18:39:23 We're not that serious about the whole "second official language" business. :p 18:39:57 If you want, I can cause trouble by demanding it in Swedish 18:40:04 quintopia, that looks like it has a high branching factor 18:40:28 Although I'm not sure if that implies that I want everything in Swedish, which might screw me over in the exam 18:40:34 Deewiant, well, I don't see the point of doing that 18:40:39 Deewiant: I'm not sure whose problem it would become. Possible the responsible teacher. 18:40:57 Who'd delegate it to you, presumably 18:41:13 Vorpal: it's basically a solved game in its original form. probably second player win. branching factor is at most 8. 18:41:14 fizzie, what is your role in that course btw? 18:41:25 quintopia, oh? No worse. Hm 18:41:35 Do we even guarantee Swedish on all courses? I don't really think so. 18:42:27 I think you're supposed to, but nobody really cares 18:42:52 Vorpal: but the tournament gives each player a limited total time for all moves combined, so there's still not enough time for more than five or six plies on your longest turns. 18:43:05 quintopia, hm reversi has something like 10 as the branching factor right? 18:43:20 max or average? 18:43:24 quintopia, average 18:43:35 quintopia, max must be quite a bit higher than that 18:43:36 I think my course-title is "course assistant"; I basically run the tournament and grade the programming assignments (both tournament-participating and custom-topics). 18:44:15 i don't know for sure, but i would guess it's somewhere in the 4-8 range based on the games i've played. 18:45:03 hm I wonder if memoising would help for reversi. Could speed up the computation at the next turn if it turns out we were right. And possibly during the same turn if we get the same board state down multiple paths. I guess I'll have to test. 18:45:20 Vorpal: the "queen motion" version of isolation has a huge branching factor though. like...more than 10 on average i think. 18:45:41 quintopia, how does queen motion apply to that game? 18:46:18 oh wait 18:46:22 the standard isolation uses king motion: move to an adjacent square. queen motion allows you to move as far as you want along a straight unobstructed path. 18:46:34 you don't refer to the "fit queens on a board" problem 18:46:41 now it makes sense 18:46:53 -!- myndzi has quit (Read error: Connection reset by peer). 18:47:23 -!- myndzi has joined. 18:47:48 Hierarchy has on average somewhere around 50 valid moves, based on tournament statistics. 18:49:12 ah 18:50:11 niiiice 18:50:21 what is Go's branching factor? 18:51:05 quintopia, more than chess iirc 18:51:06 A lot more, I think. 18:51:13 indeed 18:51:30 hm how painful would a multi-core alpha-beta pruning algorithm be? 18:51:39 presumably you could just split it at the top node 18:51:40 -!- benuphoenix has joined. 18:51:42 hi 18:52:01 and to n child node at the same time (n being the number of CPU cores) 18:52:22 i accidently ordered something online and want to talk about it 18:52:32 http://www.amazon.com/Serve-Man-Cookbook-People/dp/1880448823 18:52:45 trying to cancel the order 18:53:00 are you sure you are in the right channel? 18:53:22 is this #complain 18:53:24 -!- Vorpal has set topic: WE ARE SOMEWHAT SPARTA no| http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 18:53:27 Arimaa is said to have a branching factor of 17281 on average, but I guess that was one of their deign goals. 18:53:27 err 18:53:30 -!- Vorpal has set topic: WE ARE SOMEWHAT SPARTA | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 18:53:33 no it isn't :P 18:53:35 sorry 18:53:49 fizzie, arimaa? never heard of that one 18:54:08 fizzie, but I guess 2 ply is max there 18:54:12 or even 1 ply 18:54:14 Uh, it's been talked on this channel several times. 18:54:21 Due to the patentedness. 18:54:27 And weirdo license. 18:55:34 hm 18:56:34 i'm trying to figure out the speed equations for starburst. do you know where i should go? 18:58:23 -!- benuphoenix has quit (Quit: leaving). 19:03:11 -!- cheater99 has quit (Ping timeout: 245 seconds). 19:10:36 -!- Phantom_Hoover has set topic: WE ARE SOMEWHAT SPARTA AND SOMEWHAT ATHENS | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 19:10:48 that's weird, i thought i'd seen the nick benuphoenix here before 19:12:00 you have 19:12:04 he's a regular offtopicker 19:12:16 oh 19:13:05 pikhq: stop me from writing my own coreutils 19:13:53 i guess he'll just have to keep the book then. which means, of course, he'll have to try out the recipes. 19:14:00 * oerjan cackles evilly 19:16:07 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds). 19:16:18 -!- kar8nga has joined. 19:16:33 argv is guaranteed to be null-terminated, right? 19:17:28 argv[argc] is guaranteed to be a null pointer 19:17:54 Right. 19:18:08 -!- cheater99 has joined. 19:18:11 Deewiant: And saying argv[argc] = ...; would be an abomination, yes? ;) 19:18:15 Oh god I'm horrible. 19:18:18 No, elliott, don't do that. 19:18:32 Why would you? :-P 19:18:39 Deewiant: To implement yes(1)! 19:18:48 argv[argc] || argv[argc] = "y"; 19:18:52 Erm. 19:18:54 *argv[1] 19:20:02 That or const char *s = argc ? argv[1] : "y" 19:20:12 Deewiant: That's whole BYTES more. 19:20:21 How many? 19:20:46 One woulf think it just ends up in a register. 19:20:58 *argv++||*argv="y"; 19:20:58 char*s=argc?argv[1]:"y"; 19:20:59 SEE??? 19:21:08 A whole FIVE bytes shorter!!!!!!!!!! 19:21:11 elliott: You have to use it later on 19:21:22 *argv versus s 19:21:22 -!- evincar has joined. 19:21:32 Deewiant: Well then, let's GOLF. 19:21:36 :-P 19:21:39 (You must use write(2), not stdio.) 19:21:56 It doesn't have to be called argv, at least. 19:22:01 Hay guaiẓ. 19:22:07 z with a dot 19:22:23 I fail at typing. 19:22:25 Deewiant: int main(int c,char**v){*v++||*v="y";while(write(1,v,strlen(v))+write(1,"\n",1));return 0;} 19:22:27 Deewiant: Bring it on. 19:22:47 Deewiant: BTW, you don't need "char*s", you can reuse v. 19:23:00 (Assuming that sizeof(char *) == sizeof(char **).) 19:23:27 *v++||*v="y" 19:23:27 v=c?v[1]:"y"; 19:23:29 Same length :P 19:23:59 elliott: char* and char** are guaranteed to be the same length because they're both pointers to POD, I think. 19:24:01 I'd think the *v++ part there is always true, since it tests for argv[0]. Maybe *++v? 19:24:13 fizzie: Right, yes, that. 19:24:14 Same length. 19:24:15 main(c,v){while(1)write(1,c>1?v[1]:"y",c>1?strlen(v):1),write(1,"\n",1);} 19:24:24 And pointers to data certainly don't need to have same size. 19:24:28 Deewiant: Not valid C89. 19:24:46 I think implicit int arguments are OK in C89 though. 19:24:46 main(c,v)char**v;{while(1)write(1,c>1?v[1]:"y",c>1?strlen(v):1),write(1,"\n",1);} 19:24:54 You forgot int at the start. 19:24:57 No need 19:24:58 That's not implicit in C89. 19:25:02 No, no need only in C99. 19:25:02 You sure? 19:25:05 Yes. 19:25:08 100% 19:25:15 You also need return 0 at the end, of course. 19:25:16 I'll check anyway 19:25:22 return 0 is incorrect, you know 19:25:26 write can fail 19:25:37 At least on some Crays sizeof(char *) > sizeof(int *). 19:25:38 Deewiant: Who says that programs have to return error exit status on failure? 19:25:43 I do :-P 19:25:48 Deewiant: Anyway, yours is wrong. You have to stop writing when the writes return 0. 19:25:58 -!- EgoBot has quit (Ping timeout: 240 seconds). 19:26:00 Deewiant: yes has to stop writing when it can't write no' mo', and exit successfully. 19:26:05 Oh, of course 19:26:12 -!- EgoBot has joined. 19:26:14 So, in fact, yes should always return 0. 19:27:14 Deewiant: int main(c,v)char**v;{v=c>1?v[1]:"y";while(write(1,v,strlen(v))+write(1,"\n",1));return 0;} 19:27:17 Good luck beating that :P 19:27:29 int main(c,char**v){v=c>1?v[1]:"y";while(write(1,v,strlen(v))+write(1,"\n",1));return 0;} 19:27:34 Two bytes, I think 19:27:40 Is "(c,char**v)" kosher? 19:27:43 Not sure 19:27:58 Darn, I almost considered exit(0) but that leaves main trailing off the end 19:28:01 Is that valid C89? 19:28:03 v= isn't 19:28:08 Why not? 19:28:20 Anyhow, "for(;;);" is one char shorter than "while(1);". 19:28:21 What about c=? :P 19:28:24 With char**v you can't assign char* to it 19:28:28 fizzie: We've abandoned while(1). 19:28:35 Deewiant: Can you assign (char *) to int? 19:28:41 I see. I was up in the backscroll. 19:28:46 If so, 19:28:47 int main(c,char**v){c=c>1?v[1]:"y";while(write(1,c,strlen(c))+write(1,"\n",1));return 0;} 19:28:56 I'm not sure 19:29:06 You also have to have int -> char* for that to work 19:29:09 !c int main(c,char**v){v=c>1?v[1]:"y";while(write(1,v,strlen(v))+write(1,"\n",1));return 0;} 19:29:10 Does not compile. 19:29:16 Useful error, that 19:29:17 Not portably, int might not be big enough. 19:29:20 !c int main(int c,char**v){v=c>1?v[1]:"y";while(write(1,v,strlen(v))+write(1,"\n",1));return 0;} 19:29:24 In any case it needs a cast. 19:29:28 fizzie: write(2) isn't portable anyway 19:29:43 Deewiant: Probably running, but you'd only get the response when it (doesn't) finish or in 30 seconds :P 19:29:56 Yes, but stuffing pointers into ints is less portable than write(2). 19:30:01 Deewiant: int main(c,char**v){return execv("yes",v);} 19:30:02 Deewiant: I win. 19:30:03 Arguable 19:30:11 elliott: Even less portable :-P 19:30:21 Deewiant: It's portable to all POSIX systems. :p 19:30:26 Why are we not omitting "int" before "main"? 19:30:29 Deewiant: Good enough for cfunge! 19:30:32 And I'm more sure that c,char**v isn't portable 19:30:33 evincar: Not valid C89, only C99. 19:30:45 elliott: cfunge isn't portable, it doesn't even run on Windows :-P 19:30:50 elliott: I thought implicit int return type was older. 19:30:56 It is older 19:31:20 Well, I'm getting owned in this conversation. 19:31:28 Why are we golfing a "yes" implementation, anyway? 19:31:30 elliott: Implicit int is invalid C99 19:32:06 Deewiant: Not for main 19:32:10 Deewiant: Main is a special case. 19:32:12 (Not joking.) 19:32:20 evincar: BECAUSE 19:32:20 Where does it say that 19:32:35 -!- Phantom_Hoover has joined. 19:32:42 elliott: Implicit return 0 is a special case, you sure you're not confusing it with that? 19:32:49 Deewiant: Oh, seemingly. 19:33:15 Deewiant: Anywho, int main(c,v)char**v;{return execv("yes",v);} is both POSIXly correct and perfect :P 19:33:30 So I need a name for my most recent language design. 19:34:05 I was thinking something to do with light, like Enlight or similar, but I'm uncertain. My roommate suggested Spectrum. 19:34:06 !c printf("Forbleborble") 19:34:26 Gee, it was so responsive five minutes ago >_> 19:34:28 elliott: Is it guaranteed in POSIX that that stuff is in PATH or just that it exists? 19:34:33 Forbleborble 19:35:35 Deewiant: Good point. 19:35:51 int main(c,v)char**v;{return execvp("/usr/bin/yes",v);} 19:35:55 I think the locations are specified... maybe. 19:36:02 evincar: ZX 19:36:13 elliott: Haw haw haw. 19:36:33 YOU MOCK ME 19:36:41 Alternatively, "Spectre", though I think that's already taken. 19:36:49 And I wanted light, not ghosts. 19:38:15 And yes, I am just waltzing in here and changing the topic, 'cause I have nothing better to do right now, at least nothing that I want to be doing. 19:39:43 WHY is trac taking up 100% CPU. 19:39:48 If I could figure that out, I would be a happier person. 19:39:58 I sure hope you have, you know, tested those yes-codes of yours, instead of just speculating. At least the plain execv("yes",v) is not likely to work since yes doesn't path-search. (And the commands, I think, are specified to be executable from the shell, and execvp is defined to "duplicate the actions of the shell", so I think execvp("yes",v) would be okay.) 19:40:27 Since execv doesn't path-search, I mean. 19:40:53 Well, I doubt yes looks for any paths either, but that's not very relevant. 19:47:23 http://landley.net/code/toybox/ hmm 19:49:16 elliott: Totally GNU-free? 19:49:28 Gregor: Presumably. 19:49:41 Gregor: But not nearly complete enough. I consider mount quite a useful command. 19:50:02 Gregor: busybox mocks me by not being buildable with anything more minimal than gcc/uClibc. 19:52:07 Gregor: Sweet, and the pcc/dietlibc toolchain mocks me by making programs segfault if I strip them in any way, even though this halves their size :P 19:52:31 It seems it's stripping the something or other. 19:55:17 Oh, the segfault may be my mistake. 19:58:36 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds). 20:03:12 -!- perdito has quit (Quit: perdito). 20:14:32 -!- Phantom_Hoover has joined. 20:15:04 the seg was your fault 20:17:35 elliott, am I insane if I start manually unrolling fixed python loops in order to speed up the AI by avoiding to construct python tuples (note: it helps. By an order of magnitude) 20:18:04 1975 false/false 20:18:04 1971 true/true 20:18:06 How is this possible :P 20:18:09 Vorpal: Suuuuuure :P 20:18:19 like this: 20:18:20 # Unrolled to avoid constructing a python list. 20:18:20 voidcnt += self.validate_pos_pair(state, x, y, 0, 1) 20:18:20 voidcnt += self.validate_pos_pair(state, x, y, 1, 0) 20:18:20 voidcnt += self.validate_pos_pair(state, x, y, 1, 1) 20:18:20 voidcnt += self.validate_pos_pair(state, x, y, -1, 1) 20:18:29 Vorpal: dude just write the whole thing in cython 20:18:34 elliott, I am 20:18:39 Vorpal: in fact, write the whole thing in C 20:18:43 Vorpal: as a python extension 20:18:45 Vorpal: and just do 20:18:46 import foo 20:18:47 foo.run() 20:18:55 elliott, but for (x,y) in [...] will construct a list even in cython 20:19:20 elliott, and yeah writing it as C would be nice except the annoying variable length arrays for "possible moves" 20:19:29 which would mean manual memory management 20:20:07 Just write the whole thing in Haskell as a Python extension. 20:20:09 :) 20:20:34 Vorpal: Not really. 20:20:44 Vorpal: Is there a maximum you've hit so far? 20:21:05 Vorpal: You can basically just allocate as global or local and in the worst cases use mmap(), malloc is totally avoidable. 20:21:16 (I know this because I usually refuse to use malloc.) 20:21:33 pikhq: So I'm writing my own coreutils because I'm a stupid idiot. 20:21:36 elliott, well no, it varies of course 20:21:57 elliott: Awesome. 20:22:09 elliott, theoretically it is probably a few less than the board size 20:22:15 2227 bin/echo 20:22:15 1975 bin/false 20:22:15 1971 bin/true 20:22:18 pikhq: Sizes in bytes. 20:22:22 elliott: Would you like a copy of the small portion of coreutils I've already written? It could save you a whole two hours. 20:22:27 (No, I have no idea how false is bigger. Perhaps true relies on something being initialised to 0.) 20:22:30 pikhq: What portion? 20:22:36 pikhq: Bear in mind that I'm not using stdio at all. 20:22:38 base64 basename cal cat chgrp cksum 20:22:47 elliott, why are you surprised that true is smaller than false? 20:22:50 ... Oh, it uses stdio. Well, never mind! 20:22:54 pikhq: Well, I could port them. 20:22:55 elliott: Those are approximately 2K too large 20:23:04 elliott, generating a 0 takes fewer bytes than generating a 1 20:23:08 on x86 20:23:10 Vorpal: lawl :P 20:23:14 Deewiant: Yes, they can be shell scripts. But /bin/sh is pretty big. 20:23:18 elliott, and true is 0 in the shell 20:23:21 elliott: My cat is POSIX compliant! 20:23:25 thus true is smaller 20:23:31 elliott, it is pretty obvious 20:23:33 elliott: It supports the only option cat is required to have. ;) 20:23:38 elliott: They can be binaries that are approximately 2K smaller :-P 20:23:43 pikhq: But -u is utterly unused :P 20:23:55 pikhq, what exactly does -u actually do? 20:23:59 Deewiant: Well, yes, but I'm not Brian Raiter. 20:24:08 Vorpal: Use unbuffered IO! 20:24:23 Vorpal: It shouldn't be 4 bytes bigger, more like one or two 20:24:24 Deewiant: I do use his sstrip, though :P 20:24:29 pikhq: BTW, I'm compiling this with pcc. 20:24:34 gcc produces larger executables. 20:24:52 pikhq: Anyway, I'd appreciate a tarball of your code, since I can port or refer to it. 20:25:09 pikhq: What license? Or rather, how permissive can I convince you to make the terms you give it to me under? :P 20:25:27 If I can write a dobela interpreter in something like 4K, /bin/{false,true} should definitely be around 200 bytes at most :-P 20:25:31 I plan on using the WTFPL. 20:25:42 Deewiant: Patches written in C welcome :P 20:25:55 If you're writing in C your compiler limits you 20:25:56 Deewiant: Hmm, I could define _start and do _exit(0), couldn't I? 20:25:57 elliott: ISC license. 20:26:02 Deewiant: And tell it -nostartfiles. 20:26:05 pikhq: But, but, WTFPL. 20:26:12 pikhq: The ISC has more restrictions! 20:26:22 (It requires including the license with redistributed copies.) 20:26:27 The ELF headers emitted by most standard compilers are at least a few dozen bytes bigger than necessary 20:26:34 pikhq: By using restrictions you are SUPPORTING COPYRIGHT LAW. 20:26:39 Deewiant: sstrip strips 'em. 20:26:48 * sstrip is a small utility that removes the contents at the end of an 20:26:48 * ELF file that are not part of the program's memory image. 20:26:48 * 20:26:48 * Most ELF executables are built with both a program header table and a 20:26:48 * section header table. However, only the former is required in order 20:26:48 * for the OS to load, link and execute a program. sstrip attempts to 20:26:50 * extract the ELF header, the program header table, and its contents, 20:26:52 * leaving everything else in the bit bucket. It can only remove parts of 20:26:54 * the file that occur at the end, after the parts to be saved. However, 20:26:56 * this almost always includes the section header table, and occasionally 20:26:58 * a few random sections that are not used when running a program. 20:27:00 Oh, flood. 20:27:02 Whatever. 20:27:09 elliott: Does it rename the sections to something shorter? Presumably not. 20:27:12 This, incidentally, makes it impossible to decompile these with objdump. 20:27:30 $ strings bin/false 20:27:31 t5M9 20:27:31 /dev/urandom 20:27:31 LD_PRELOAD 20:27:31 valgrind 20:27:41 Deewiant: It eliminates the names altogether. 20:27:47 (Why is LD_PRELOAD in there? There's no dynamic linking going on.) 20:27:57 (Guess it didn't eliminate that then.) 20:28:12 It should be possible to make true and false good bit less than 200 bytes, without mangling ELF headers... 20:28:14 At most that first string should be in there :-P 20:28:23 NO! t5M9 is the SYMBOL OF BLOAT. 20:28:24 I can't remember how long the ELF headers are 20:29:39 248 bin/false 20:29:40 Deewiant: Happy? 20:29:45 void _start(void) 20:29:45 { 20:29:45 _exit(1); 20:29:45 } 20:29:51 Heh 20:30:01 If I made that noreturn, presumably it'd be EVEN SHORTER 20:30:11 elliott: But but true.asm is 45 bytes! 20:30:26 .asm is easily longer than the exe :-P 20:30:33 Erm, shorter 20:30:53 Deewiant: Erm, when assembled it's 45 bytes. 20:30:58 Deewiant: You're fucking up my build system here :P 20:31:01 the thing that annoy me with heuristics is that they are basically one huge fudge factor 20:31:08 (yes yes, they are by definition) 20:31:19 It's the smallest possible Linux-loadable ELF. 20:31:29 Linux-version-specific, too :-P 20:31:54 Deewiant: Gah, I can't even use diet(1), because it sticks start.o in there :P 20:32:12 elliott, um why do you care if it is less than 2 KB? 20:32:15 What's diet(1) 20:32:21 Vorpal: Because Deewiant cares. 20:32:30 Only in Linux 2.4... AFAIK, those 45-byte executables don't work in 2.6 20:32:39 Deewiant: "diet cc foo.c -o foo" handles all the -nostdwhatever stuff and appends the path to libc.a and start.o for dietlibc. 20:32:53 Deewiant: dietlibc being the reason these things are this small in the first place, as opposed to 17K or whatever with uClibc :P 20:33:09 libc.a? start.o? What are these unnecessarities 20:33:23 elliott: If you're using _start, you should probably just manually write the system call function. Thereby needing no libc. 20:33:28 elliott: http://filebin.ca/cemkzt/pikhq-coreutils-0.1.tar.xz 20:33:28 elliott, after all page size is 4096 bytes. There is no way you will allocate less than 4 KB thus. Also usually the file system block size is larger than a sector. 2 or 4 KB are common. Thus I think you are optimising pointlessly 20:33:48 seriously, you are microoptimising into the silliness now 20:34:01 Vorpal: Yes I am. 20:34:18 pikhq: What syscall number is exit again? 20:34:19 elliott, stop it. Or you will have to maintain cfunge in the afterlife 20:34:19 Make utilities detect argv[0] and work accordingly (sticking couple utilities together)? :-) 20:34:23 elliott: 1 20:34:26 Ilari: That's the loser's way out. 20:34:39 elliott: It's __NR_exit from asm/unistd.h 20:35:14 elliott, actually doing what Ilari said probably is better. It means you just need one entry in the page cache for true and false, and probably they will both fit into the same binary 20:35:21 Ilari: See pikhqbox.c in pikhq-coreutils. :) 20:35:22 pikhq: How about I just use :P 20:35:29 just check if argv[0][0] is 't' or 'f' 20:35:30 Does pikhqbox.c do 20:35:32 then use that 20:35:33 #define main progname_main 20:35:34 elliott, ^ 20:35:36 #include "progname.c" 20:35:36 ? 20:35:38 If so, you win. 20:35:38 elliott: Baaah. 20:35:43 Vorpal: Hardy har. :P 20:35:43 Vorpal: What if argv[0][0] is '/' 20:35:50 elliott: Also, yes. 20:35:52 Deewiant, hm good point 20:35:54 pikhq: So can I have assurance that that tarball is WTFPL'd? :P 20:35:56 Otherwise I can't use it. 20:36:03 Update: I've come back to "Enlight" as a name. I can't really come up with anything better, but I'm not sure it even fits now. 20:36:16 elliott: I hereby dual-license it under ISC and WTFPL. 20:36:24 elliott: Use at your discretion. 20:36:26 pikhq: Thank thee kindly. 20:36:31 pikhq: Hey, WTFPL doesn't require discretion! 20:36:39 I can go CERAAAAAAAAAAAAAAZY with it, so long as I WANT TO. 20:36:41 elliott: That was just a suggestion. 20:36:57 (Thought experiment: is it a license violation to do something you don't want to to a WTFPL program?) 20:37:00 Deewiant, check from the end for true/false (the second to last letter should be good. You need a strlen call probably though 20:37:07 I suggest the following fix: 20:37:10 elliott: But, yeah. pikhqbox.c does in fact do #define main progname_main and #include "progname.c". 20:37:12 1. You just DO WHAT THE FUCK YOU WANT TO. 20:37:17 2. Or you just DO WHAT THE FUCK YOU DON'T WANT TO. 20:37:23 3. Or you just DO WHAT THE FUCK YOU'RE NOT SURE WHETHER YOU WANT TO OR NOT. 20:37:32 elliott, this is too long and verbose 20:37:37 Vorpal: What if you're exec'd by something that gives you argv[0] = "hoody hoo" 20:37:40 elliott, what about "do whatever" 20:37:41 or such 20:37:49 1. You just DO WHAT THE FUCK. 20:38:03 elliott, better but perhaps a bit unclear 20:38:10 pikhq: I may require your assistance for commands such as mount. :P 20:38:18 elliott: Okay. 20:38:22 Deewiant, then you are fucked 20:38:28 Vorpal: Hence you don't do that. 20:38:31 Deewiant, but maybe default to one behaviour 20:38:43 pikhq: Dude, pikhqbox doesn't even use a hash table :P 20:38:49 Deewiant, but there are tools, such as busybox and grep iirc. which check argv[0] 20:39:03 elliott: I optimised for code simplicity. :) 20:39:03 well some grep implementations at least 20:39:04 pikhq: And even though every command starts with either b or c, you check the first character 5 times in the worst case. 20:39:11 for grep/fgrep/egrep 20:39:16 pikhq: So did I! main is more complex than _start because main has a return value. 20:39:46 elliott, what is pikhqbox? 20:39:49 elliott: If something was more work and harder to understand, I decided not to do it. 20:39:52 _syscall1(void, _exit, int, status) 20:39:54 I must have missed the code in it 20:39:57 Why does this not work... 20:39:57 for it* 20:40:03 Vorpal: busybox, but for pikhqutils. 20:40:10 elliott, huh 20:40:15 http://filebin.ca/cemkzt/pikhq-coreutils-0.1.tar.xz 20:40:32 pikhq: I remember ripping the hell out of your cat implementation at one point. :P 20:40:38 elliott, you never find that coloured ls output is nice? 20:40:39 *cal 20:40:40 not cat. 20:40:46 considering the current style 20:40:49 elliott: I changed it in response. 20:40:49 Vorpal: Sure I do. Who says I'm not going to implement that? 20:41:01 pikhq: Indeed. Now to rip the hell out of it with fresh new eyes! 20:41:01 elliott, because termcap is a pain? 20:41:06 elliott: :P 20:41:06 (I replaced my eyeballs recently.) 20:41:14 elliott, (and surely you will not hard code it) 20:41:15 Vorpal: Why the hell would I support anything that isn't ANSI-compatible...? 20:41:24 I mean, go on: name one terminal. 20:41:31 elliott, because how else could you hook it up to that DEC terminal!? 20:41:36 pikhq: static const int lengths_of_month[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; 20:41:37 pikhq: omg bloat 20:41:40 pikhq: :P 20:41:47 elliott: Clarity, not binary size. Sorry. 20:41:49 yes indeed. 20:41:54 pikhq, you should have used char 20:41:55 not int 20:42:01 No. BITMASK! 20:42:01 very much bloat 20:42:02 Vorpal: BAAAH 20:42:04 pikhq: Yeah, it is actually a pretty nice cal. 20:42:16 pikhq, 12*3 bytes wasted! 20:42:18 think of that 20:42:27 elliott: It beats just about every other cal I could find. 20:42:28 pikhq: However you do sin heavily by using stdio. :p 20:42:39 elliott: Which are pretty much all genetic UNIX, and are therefore horrifying. 20:42:47 pikhq, also it is incorrect for the second month every 4th year unless you have that logic elsewhere 20:42:54 He does. 20:42:56 well, almost every 4th year 20:43:00 pikhq: Does it handle september 1752? 20:43:07 *September 20:43:09 elliott: No. 20:43:09 elliott, is that when UK switched over? 20:43:22 elliott: That is the one bug. 20:43:37 elliott, if it doesn't handle the Swedish switchover (I told you about THAT mess before) it is broken :P 20:43:43 Vorpal: The British Calendar Act of 1751 / Declared the day after Wednesday / September 2nd / 1752 / Would be Thursday / September 14 / 1752 20:43:46 Vorpal: You only need 1 bit for each o f the eleven non-february months (february needs leap year checking anyway so might as well handle it completely separately) 20:43:51 s/o f/of/ 20:43:54 It is Unix tradition to support "cal sep 1752". 20:43:55 Deewiant, true 20:44:13 (Source for above clarification on the UK switchover time: http://www.youtube.com/watch?v=l4Zf1eyWYFs) 20:44:20 $ cal sep 1752 20:44:20 cal: illegal month value: use 1-12 20:44:21 Vorpal: Sorry, but I only wrote for C locale. 20:44:22 elliott, what ^ 20:44:32 Vorpal: Yeah, because Linux follows Unix tradition ... 20:44:35 Vorpal: Try 9 20:44:39 pikhq, indeed 20:44:43 pikhq, it works then 20:44:52 elliott, it just doesn't do named months 20:44:55 sep implies locales 20:45:02 Deewiant: Oh fuck off :P 20:45:10 Deewiant, oh so it does 20:45:15 elliott: What? :-P 20:45:16 Measurements and currencies and time: yes, locale-relevant. 20:45:26 Input and output messages: Fuck you, English-only :P 20:45:34 * pikhq loves that month. 20:45:50 _syscall1(void, _exit, int, status) 20:45:52 pikhq: srsly, why doesn't that work. 20:46:02 elliott, Why English only? That is discrimination. 20:46:04 elliott: Is "time" not an "input message" in this case 20:46:06 elliott: 2.6 removed that macro. 20:46:10 Vorpal: Yes it is! 20:46:14 Deewiant, indeed it is! 20:46:17 IIRC 20:46:37 pikhq: Well, I still have man _syscall... 20:46:41 Or do you mean just the "1" variant? 20:46:44 Deewiant: It would be, if I hadn't decided it wasn't. 20:46:56 Your decision is poor 20:46:57 Starting around kernel 2.6.18, the _syscall macros were removed from 20:46:57 header files supplied to user space. Use syscall(2) instead. (Some 20:46:57 architectures, notably ia64, never provided the _syscall macros; on 20:46:57 those architectures, syscall(2) was always required.) 20:46:58 Ugh. 20:47:21 elliott: You have to actually write the system call handler manually. 20:47:22 elliott, nothing wrong with syscall() 20:47:24 pikhq: I refuse to be unportable across architectures, how can I avoid using syscall(2) :P 20:47:40 elliott: Write _syscall for each architecture. 20:47:44 Vorpal: It goes through libc. 20:47:46 elliott, well _syscall would have been unportable too 20:47:48 pikhq, and? 20:47:49 Vorpal: And does a *lot* of stuff. 20:48:05 hm it sets errno 20:48:06 okay 20:48:08 that is annoying 20:49:59 elliott, well _syscall would have been unportable too 20:50:00 how? 20:50:03 not across architectures 20:50:11 apart from linux's failure to implement it 20:50:26 -!- Sasha has quit (Ping timeout: 240 seconds). 20:50:35 gah. This fudge factor is chaotic 20:50:53 elliott, not across architectures apart from linux's failure to implement it <-- uh... what 20:51:22 Vorpal: _syscall isn't unportable 20:51:32 linux just didn't implement it on every arch, for no real reason 20:51:49 pikhq: You know what, fuck this. _exit(0) is fine :P 20:52:22 elliott, also linux specific of course (but that is a different kind of unportable) 20:52:24 elliott: Then you're getting symbol collision for start; sorry. 20:52:34 pikhq: No I'm not. 20:52:37 pikhq: I link in libc.a but not start.o. 20:52:45 Oh, you're doing that manually. 20:52:53 pikhq: Yes. Because I'm a crazy goddamn fucker. 20:52:59 bin/true bin/false: \ 20:53:00 CC=~/kitten/stage2/bin/pcc -Os -nostdlib -nostdinc -nostartfiles \ 20:53:00 ~/kitten/stage2/lib-x86_64/libc.a 20:53:52 * elliott looks at pikhq's cat.c, decides that it's so stdioy that it's easiest to rewrite. 20:53:55 elliott: You sure are. 20:53:58 (Also, that handling -u is pointless binary bloat.) 20:54:07 elliott, as long as it is smaller than file system block size and page size you don't gain anything by making it smaller 20:54:24 stdio in cat? 20:54:25 ugh 20:54:26 Vorpal: Apart from e-penis length. 20:54:38 Vorpal: What, I would have expected you to be an stdio-lover. 20:54:50 elliott, why on earth 20:54:53 pikhq: Other things I won't support: "-" as an argument name! /dev/stdin exists for a reason! 20:54:55 Vorpal: Um, fopen? 20:55:18 elliott, stdio is nice when you work with textual in-data. But fwrite is no better than write when you deal with non-textual data 20:55:31 fwrite is no better than write ever :P 20:55:37 elliott, indeed 20:55:43 (Okay, if someone implemented an stdio that didn't suck, I might change my opinion.) 20:55:48 But 99% of the time it's just useless abstraction that you don't need. 20:55:50 elliott, but you wouldn't use either if working with textual data 20:55:56 printf is convenient but almost always severely-bloating, and error-prone too. 20:56:05 A nice formatting API would be, well, nice; I think libowfat has one. 20:56:07 elliott, you can make printf that is small 20:56:17 Vorpal: Yeah, but the API still sucks. :p 20:56:31 Haha! I just pioneered a NEW CONTROL STRUCTURE. 20:56:32 "else for" 20:56:34 elliott, what do you prefer? cout << setw(4) << i << endl; ? 20:56:56 Vorpal: It depends! 20:57:02 elliott, and what does else for do? 20:57:10 else for is for, except in an else clause. 20:57:21 Vorpal: Probably write_int_width(i, 4); 20:57:21 elliott, uh how is that new? 20:57:22 Or something. 20:57:26 I think libowfat has something like that. 20:57:29 Vorpal: Because it isn't else { for ... }. 20:57:31 It's "else for!" 20:57:33 *for"! 20:57:36 One whole indentation less! 20:57:42 elliott, you know format strings are nice because translation works with them 20:57:46 unlike most other solutions 20:57:53 remember you need to reorder stuff between languages 20:57:55 Vorpal: Sure, that's a language deficiency :P 20:58:05 As far as I'm concerned we should all struggle with English until somebody makes an OS that doesn't suck. 20:58:14 Vorpal: Also, printf SO FAILS AT THAT. 20:58:20 "The %s is %d years old." 20:58:23 and you often need the whole sentence to translate it (the same word will translate to different words in different contexts) 20:58:24 You can't swap the %d and the %s there. 20:58:25 If it was 20:58:30 elliott, you can 20:58:31 "The %{0}s is %{1}d years old." 20:58:35 and you could reorder them, sure. 20:58:59 elliott, you can reorder them like that when you translate the format string 20:59:06 using numbers like that 20:59:14 check man snprintf some day 20:59:17 elliott: If your language isn't flexible enough to adjust the phrasing such that that's in the right order, then you don't deserve i18n :P 20:59:28 * elliott writes lib.c! 20:59:32 The most libraryiffic C file ever! 20:59:41 Vorpal: Noooon-poooortableeeeee. 20:59:49 elliott, it is SUS iirc 20:59:50 (Pronounced "porta-blee".) 20:59:51 elliott, not C99 sure 20:59:53 but SUS 21:00:06 Vorpal: So it's useless on Windows. Deewiant! Yell at him! 21:00:15 * Deewiant yells 21:00:34 pikhq: Name my error-reporting function: oops, crap, damn, fuck, barf. 21:00:37 elliott, as if you would care about that. Your code is very linux specific it seems 21:00:46 Vorpal: Hey, I UNDID THAT MISTAKE 21:00:47 -!- yorick has joined. 21:00:51 Now I only depend on _start. 21:00:52 And _exit. 21:00:53 elliott: 糞 21:01:01 pikhq: æe@ł 21:01:04 elliott, the time to start worrying about windows support is the point you use stdio instead of read and write 21:01:05 and so on 21:01:22 Vorpal: He is unlikely to ever want to run this on Windows. 21:02:22 hm this seems to work, now I don't dare touch this heuristic. A tiny change, such as 0.26 to 0.25 for one constant completely changes the outcome. 21:02:30 pikhq, indeed my point 21:03:00 pikhq, so complaining about format string argument reordering for translation being unportable is... utterly stupid 21:03:24 Heh... Figured out why connections to one hostname were slow: It has two IPv6 addresses. The first one is unreachable (timeouts) but the second is reachable. So the first address has to timeout and then it falls back into second address, resulting connection being established. 21:04:03 Ilari, use sctp with the multi-homed stuff 21:04:17 then establish to both at once and use whatever works 21:04:18 or something 21:05:08 http://www.poemhunter.com/poem/a-problem-in-dynamics/ 21:05:20 By Maxwell himself. 21:05:23 I am in awe. 21:05:31 I don't know if those two are the same host... 21:05:39 void cat(int fd) 21:05:40 { 21:05:40 char c; 21:05:40 while (read(0, &c, 1) > 0) 21:05:40 write(1, &c, 1); 21:05:40 } 21:05:45 pikhq: Spot the unfortunately ugly-to-fix bug. 21:06:36 http://www.haverford.edu/physics/songs/rigid.htm 21:06:41 There's a song, too. 21:06:43 pikhq: Erm, apart from read's first argument. 21:07:08 pikhq: bin/cat is annoyingly big because of strerror :( 21:07:14 -!- evincar has quit (Quit: ChatZilla 0.9.86 [Firefox 3.6.12/20101026210630]). 21:07:30 EFBIG See EOVERFLOW. 21:07:35 Please tell me this stands for Fucking Big. 21:08:22 elliott: You know you want the system call for read and write! 21:08:24 It's probably File 21:08:24 I don't know if those two are the same host... <-- hm true 21:09:26 * pikhq suspects that stupid NATs don't handle sctp. 21:10:06 pikhq: It occurs to me that not supporting - as an argument may ... break some things... slightly. 21:10:07 SO NOW I AM 21:12:24 pikhq: Feel like de-uglying my code? :P 21:12:37 pikhq: (Or just telling me what's really ugly.) 21:12:47 Hey, YOU don't handle read errors either. 21:12:49 Sure, why not. 21:12:50 Right then, I won't! 21:13:06 pikhq: http://sprunge.us/PWFX 21:13:20 pikhq: The main ugliness is handling errors nicely, a thing that Unix has built up a wonderful reputation of NOT doing and making it extremely difficult to do. 21:13:30 So I'm just going to rip out the part of cat() that handles errors because really what kind of thing fails at that point. 21:13:52 pikhq: Still. main() is a bit ew. 21:14:07 pikhq: Hey, yours is NOT compliant. 21:14:11 pikhq: It gives up after the first error. 21:14:15 elliott: Baaah. 21:14:25 pikhq: Ha ha! You fail at cat! 21:14:42 ,[.,] is enough 21:15:00 -!- Sgeo has joined. 21:15:20 pikhq: Wait, you're right. 21:15:26 It's okay to give up after the first error. 21:15:28 Yay. 21:15:35 pikhq: (Although slightly more irritating to use...) 21:15:47 Yeah, in fact, that's so irritating that I'm not going to do it. 21:15:55 (Isn't it? Oh the dilemma.) 21:17:06 Phantom_Hoover, I'm still COBOL Guy? 21:17:20 Sgeo, yes. 21:18:25 pikhq: I think I'll do date(1) next, it's vaguely meaty. 21:18:26 oh duh, I just increased speed quite a bit from realising I did the top node in alpha-beta wrong. 21:18:31 Does anyone use date -u? 21:19:30 elliott, yes 21:19:47 I'm going to go watch the only SG-1 episode I haven't seen 21:19:48 elliott, very useful to get UTC 21:20:37 It's pretty easy to fake methods returning classes in Newspeak 21:20:44 Still, might be a bit annoying 21:21:03 elliott, also if you don't support the gnu extension %s in the string, then there is no way to get UNIX timestamp from shell script 21:21:14 elliott, so it might be a GOOD extension to support 21:21:25 I think FreeBSD has it too 21:21:29 and a handful of other ones 21:21:32 but not POSIX 21:22:35 #define isflag(s, c) ((s)[0] == '-' && (s)[1] == c && !(s)[2]) 21:22:36 ^ useful. 21:23:18 elliott, getopt? 21:23:30 Vorpal: Pointless when you only have one single flag. 21:23:35 elliott, true 21:23:51 Vorpal: A better question would be "strcmp?", to which I reply: inflated the binary for no real gain. 21:24:16 elliott, will you support %s in date's format string? 21:25:40 Vorpal: I'm using strftime. :P 21:25:56 -rwxr-xr-x 1 root root 59K Apr 28 2010 /bin/date 21:25:56 -rwxr-xr-x 1 elliott elliott 6.4K Dec 3 21:25 bin/date 21:26:06 Ha, wait, I forgot to actually PRINT the date. 21:27:10 elliott, idea: multi-core to make the AI n times as fast (n depending on number of cores) 21:27:22 $ bin/date -u 21:27:22 Segmentation fault 21:27:29 elliott, gdb on that then 21:27:39 Vorpal: Or just look at the code. 21:27:43 if (isflag(argv[1], 'u')) { 21:27:43 utc = 1; 21:27:43 argv++; 21:27:43 } 21:27:43 if (argv[1][0] == '+') fmt = argv[1] + 1; 21:27:45 Mistake is obvious. 21:27:50 Fix trivial. 21:28:13 yes indeed it is obvious 21:28:21 if (argv[1] && argv[1][0] == '+') fmt = argv[1] + 1; 21:28:21 Tada. 21:28:27 elliott, actually there are two mistakes there 21:28:47 Vorpal: That argc is left out-of-sync? 21:28:53 Deliberate; I don't use argc anywhere after that. 21:28:55 elliott, where does it say argv will have a NULL pointer after the last element? 21:29:02 Vorpal: That is guaranteed. 21:29:04 ah okay 21:29:25 Vorpal: So what's mistake #2? 21:29:43 none then 21:29:54 elliott, or do you check that argv[1] exists above the isflag check? 21:29:59 if not that is another mistake 21:30:53 if (argc > 1) { 21:30:55 Yes, I do. 21:31:02 good 21:31:03 Actually I can avoid that outer conditional trivially... 21:31:31 elliott, what if someone passes you argv[0] = NULL? 21:31:37 -!- Mathnerd314 has joined. 21:32:01 elliott, by execv or such 21:32:04 Vorpal: Then argv is {NULL, NULL, whatever} 21:32:07 Well. 21:32:09 I suppose that 21:32:20 elliott, it could be {NULL, whatever} I think 21:32:28 not sure though 21:32:38 Vorpal: Yes, true. (But if you deny something an argv[0], you're just a monster.) 21:32:42 And everything will break on that :P 21:32:53 elliott, not stuff which checks for it 21:33:03 Hmm, why is $TZ not doing anything... 21:33:15 elliott, presumably your libc doesn't use it 21:33:20 Presumably :P 21:33:33 Vorpal: You're on a non-GMT timezone, presumably. Can you test bin/date for me? 21:33:41 elliott, does it do zones like Europe/London or Europe/Stockholm? 21:33:47 Vorpal: Let's find out! 21:34:13 Vorpal: http://filebin.ca/gwobyk/date 21:34:26 Vorpal: (I know that could be malicious, but if I managed to fit a virus into 6K of ELF, well, that would be impressive.) 21:34:26 elliott, I don't have TZ set, I have the normal /etc/localtime 21:34:29 Vorpal: Right. 21:34:32 Vorpal: So that should work! 21:34:40 Also, /etc/timezone and the like. 21:34:46 no such file 21:34:49 Vorpal: But yeah, just check that "date" prints the right thing and "date -u" prints the right thing too :P 21:34:50 just /etc/localtime 21:35:15 $ objdump -d date 21:35:15 date: file format elf64-x86-64 21:35:16 what 21:35:19 same for -D 21:35:23 Vorpal: It's sstrip'd. 21:35:31 elliott, what is sstrip? 21:35:33 Vorpal: objdump can't look at stuff without pointless crap in the ELF file. 21:35:39 elliott, I refuse to run it 21:35:41 then 21:35:41 Vorpal: sstrip is Brain Raiter of INTERCAL fame's strip tool. 21:35:47 Vorpal: Use a different disassembler? 21:35:57 elliott, rm-ed the file. Get me one that works with objdump :P 21:36:00 Fine, I'll upload a non-sstrip'd one. 21:36:13 This one's almost 10K. 21:36:17 no issue 21:36:26 Vorpal: http://filebin.ca/ktvtue/date 21:36:29 I have more than 2000 baud :P 21:36:54 huh there is a __valgrind symbol 21:37:03 Vorpal: Yeah, and LD_PRELOAD too. 21:37:06 I can't seem to get rid of those. 21:37:12 Much as I would dearly like to. 21:37:16 well what is __valgrind used for exactly 21:37:20 No idea. 21:37:24 I mean, for valgrind obviously 21:37:28 (but why does it need it) 21:37:47 __unified_syscall_16bit ? 21:37:58 Vorpal: Oh just run the damn thing :P 21:38:04 4001e4:76 0f jbe 4001f5 <__you_tried_to_link_a_dietlibc_object_against_glibc> 21:38:05 :D 21:38:11 Indeed :P 21:38:30 elliott, how does that bit work? 21:38:43 Vorpal: Not sure. It's some crazy asm hack that makes an error appear with that if you try to do that. 21:38:55 Presumably a careful clash with something glibc does. 21:38:58 Under that name. 21:39:14 Vorpal: So does it work? :P 21:39:15 write(1, "Fri Dec 3 22:38:33 CET 2010", 28Fri Dec 3 22:38:33 CET 2010) = 28 21:39:17 seems to work 21:39:21 elliott, but it ignores my locales 21:39:23 Vorpal: What about with -u? 21:39:29 And yes, it does; dietlibc has no locale support. 21:39:33 $ LC_ALL=sv_SE ./date 21:39:33 Fri Dec 3 22:39:02 CET 2010 21:39:34 fuck it 21:39:42 Vorpal: Excuse me, try -u please. 21:39:44 elliott, completely fucked up date format for sweden 21:39:47 I know it won't work with locales. 21:39:51 SHUT THE FUCK UP ABOUT LOCALES 21:39:52 Just try -u. 21:40:06 elliott, doesn't work 21:40:08 Fri Dec 3 21:39:35 CET 2010 21:40:11 wrong timezone 21:40:13 in output 21:40:14 Ah. 21:40:19 elliott, correct time I think 21:40:19 So gmtime() isn't sufficient for this. 21:40:28 tm = utc ? gmtime(&now) : localtime(&now); 21:40:29 elliott, yes the hour change 21:40:30 is what I do. 21:40:35 but the timezone does not 21:40:43 $ date 21:40:43 fre dec 3 22:40:10 CET 2010 21:40:46 $ date -u 21:40:46 fre dec 3 21:40:12 UTC 2010 21:40:56 $ ./date 21:40:56 Fri Dec 3 22:40:24 CET 2010 21:40:59 $ ./date -u 21:40:59 Fri Dec 3 21:40:25 CET 2010 21:41:40 Vorpal: http://filebin.ca/vkhbbe/date 21:41:42 Vorpal: This might work. 21:41:48 It does setenv("TZ", "UTC", 1). 21:41:57 -!- Mathnerd314 has quit (Ping timeout: 245 seconds). 21:42:11 elliott, no 21:42:12 it doesn't 21:42:18 Hmph. 21:42:21 I'll have to think then. 21:42:32 elliott, also strace show nothing about the setenv 21:42:32 Vorpal: BTW, you will easily be able to link these against a libc that *does* do locales. 21:42:37 ...? 21:42:41 Weird. 21:42:43 Oh well. 21:42:44 elliott, surely env is in kernel 21:42:52 Vorpal: What? 21:43:04 elliott, I mean, it has to be. Otherwise env wouldn't work with exec 21:43:13 I don't get the relevance. 21:43:15 so thus it should show up in strace 21:43:18 when I run 21:43:22 strace ./date -u 21:43:22 I don't know why it doesn't. 21:43:34 which means you either uploaded the wrong version or it doesn't work 21:43:42 or env is done in a screwy way 21:43:46 which might well be the case 21:48:08 elliott, how horrible is the multiprocessing module in python? 21:49:12 Vorpal: Global Interpreter Lock. 21:49:20 elliott, no it is the forking one 21:49:21 Vorpal: You have to use subprocess instead for any kind of concurrency at all. 21:49:23 Oh. 21:49:25 Acceptable. 21:49:35 elliott, but how bad is it to use 21:49:58 Acceptable, I guess. I never have. 21:50:05 elliott, I also expect I need 16 bytes of shared memory (two floats) that I can update atomically. 21:50:08 err 21:50:10 two doubles 21:51:47 gah only lock sync. No sane sync 21:51:50 pikhq: This makes nooooo sense at all :P 21:51:53 (sane = compare and swap) 21:53:40 Vorpal: env is *definitely* not in the kernel. 21:54:16 pikhq, but then how does the exec*() family of functions propagate the enviornment? 21:54:21 environment* 21:54:30 Vorpal: The system call takes an environment argument. 21:54:36 %D Equivalent to %m/%d/%y. (Yecch — for Americans only. Americans 21:54:36 should note that in other countries %d/%m/%y is rather common. 21:54:36 This means that in international context this format is ambigu‐ 21:54:36 ous and should not be used.) (SU) 21:54:46 "Americans, you are ignorant and backwards. In this manual page, I will enlighten you. Dumbfucks." 21:54:48 The libc maintains the actual environment. 21:55:12 elliott, i prefer yyyy-mm-dd 21:55:57 elliott, is your strftime() long-now compliant? 21:56:07 I prefer ISO 8601. 21:56:08 Vorpal: nope! 21:56:15 elliott, should fix that 21:56:17 pikhq: that /is/ iso 8601 21:56:23 pikhq: iso 8601 has the stupid flaw of using T as a separator 21:56:25 rather than a space 21:56:28 making it harder to read 21:56:31 Vorpal: no :P 21:56:39 elliott, I don't use a T there 21:56:41 elliott: Shame, that. 21:56:42 I use a space 21:56:43 Vorpal: If anyone is using Unix in the year 10,000... I pity them. 21:56:52 And laugh at their misfortunes, for they will be endless. 21:57:05 elliott, true but they could use the data files printed on current unix 21:57:10 HERE, ARCHAEOLOGISTS FROM THE FAR FAR FUTURE!!!!!! 21:57:11 Vorpal: If anyone is using Unix in the year 10,000... I pity them. 21:57:16 elliott, indeed 21:57:16 THAT WAS SAID BY ME, A PROMINENT CULTURAL FIGURE OF THIS AGE 21:57:22 I AM CONSIDERED TO BE INCREDIBLY WISE AND CHARISMATIC. 21:57:23 BY ALL. 21:57:26 THAT IS ALL, STOP READING NOW 21:57:28 no you aren't 21:57:33 (MY ENEMIES ARE ABOUT TO INTERCEPT THIS STREAM WITH MISINFORMATION) 21:57:36 OH LOOK IT ALREADY HAPPENED 21:57:40 :P 21:57:57 elliott, anyway. they could use data files created in the next few years 21:57:59 over then 21:58:04 on a non-unix system 21:58:15 Vorpal: Then they'll have their own strftime. 21:58:45 elliott, yes then in the future. But if they want to read a textual file created in the year 2011, it might have 4 digit dates 21:58:49 which would be annoying 21:59:03 * elliott reads busybox date.c, and BREAKS THE LAW! 21:59:12 elliott, what law? 21:59:13 (Reading GPL'd code for information on how to write a non-GPL'd program is ILLEGAL.) 21:59:20 I'll be COPYRIGHT INFRINGING with my MIND. 21:59:25 mhm 21:59:26 If only I hadn't told anyone... 21:59:41 if (opt & OPT_UTC) 21:59:41 putenv((char*)"TZ=UTC0"); 21:59:41 LOLZ 21:59:58 elliott, what is so funny with that 22:00:11 elliott, except for them casting a string to char 22:00:15 char* 22:00:17 oh wait 22:00:21 from const char* 22:00:23 to char* 22:00:24 right 22:00:29 Vorpal: Just that that's what I've been doing 22:00:31 except with setenv 22:00:33 and it isn't working 22:00:39 elliott, different libc? 22:00:46 #if ENABLE_FEATURE_DATE_NANO 22:00:46 /* libc has incredibly messy way of doing this, 22:00:46 * typically requiring -lrt. We just skip all this mess */ 22:00:46 syscall(__NR_clock_gettime, CLOCK_REALTIME, &ts); 22:00:46 #else 22:00:46 time(&ts.tv_sec); 22:00:48 #endif 22:00:50 Y'all crazy. 22:00:54 Vorpal: Yes, indeed. 22:01:04 Vorpal: It may be one of those dietlibc bugs that they won't fix because it'd increase the size. :p 22:01:17 elliott, also clock_gettime is -lrt on linux, it is -lc on *bsd 22:01:25 just to complicate the thing 22:01:34 elliott, clock_gettime is *nice* though 22:01:36 Vorpal: That's nice! I'm using time()! 22:01:41 Because it's goddamn date(1)! 22:01:58 elliott, what about %N ? 22:02:06 What about it? 22:02:16 oh wait, not POSIX 22:02:19 Right. 22:02:20 elliott, nano seconds :P 22:02:30 $ date +%N 22:02:31 212106062 22:02:31 Orn ot? 22:02:33 *Or not? 22:02:33 s/o // 22:02:38 That's smaller than +%s, even. 22:02:40 elliott, yes nanoseconds in current second 22:02:41 :P 22:02:43 Ah. 22:02:43 lawl 22:02:47 I think not :P 22:03:06 elliott, nanoseconds since 1970 would be absurd 22:03:08 % date +%N 22:03:08 %N 22:03:23 Deewiant, what system? 22:03:28 Vorpal: My date is so evil, it doesn't even let you set the current time with it. 22:03:30 That's right! 22:03:30 *BSD I presume 22:03:33 That's NON-XSI-COMPLIANT. 22:03:36 Solaris 11 Express 22:03:40 Deewiant, heh! 22:03:43 Deewiant: ...I love you. 22:03:46 Deewiant, Express? 22:03:48 Please tell me you installed it JUST FOR THAT 22:03:50 In like 3 seconds. 22:03:57 Nope 22:04:02 I should get a DS9K just to irritate people. 22:04:07 % uptime 22:04:08 12:03am up 11 day(s), 7:13 22:04:10 elliott, he installed it to run oracle mysql on it I guess :P 22:04:16 Deewiant: The first time a Sun has ever been up 11 days! 22:04:17 * Vorpal ducks 22:04:25 Vorpal: *Oracle'sSQL 22:04:32 elliott, they named it that? 22:04:33 elliott: Ah, but it's not Sun anymore is it 22:04:36 Vorpal: No, but I just did :P 22:04:47 (Although before the update it was up for a few months) 22:04:59 "No, you see, MySQL isn't YOUR SQL. It's MY SQL. It serves MY corporate interests, see?" 22:05:25 elliott, yes that was obvious when you said it wasn't the actual name 22:05:26 Vorpal: And yes, Express. I don't know why it's called that. 22:06:11 Deewiant: Because it's FAST! 22:06:20 Maybe. 22:06:23 gah, I conclude that it is impossible to do anything with compare and swap from within python 22:08:55 openmp doesn't support CAS? 22:10:19 pikhq: Alas, I cannot do all program that don't parse args as _start. 22:10:22 pikhq: /home/elliott/kitten/stage2/lib-x86_64/libc.a(stackgap.o): In function `stackgap': 22:10:28 So that's for syscall-only programs. 22:10:43 Wait. Is getcwd a syscall? 22:10:55 Eh, whatever. 22:14:17 pikhq: Dynamically-linked glibc versions of what I have so far total to 210K. My statically-linked dietlibc versions: 18K. 22:14:24 (That's in decimal Ks.) 22:14:27 (Just going from wc -c.) 22:18:23 elliott, hm cython allows you to release the GIL 22:18:29 but with lots and lots of warnings 22:18:31 Vorpal: Good luck with that. 22:18:38 elliott, no I'm not quite that insane 22:18:48 elliott: Nice. 22:18:53 elliott, since the "generate valid moves" code still uses a python list 22:19:31 elliott, all of the tight loop code except for that compiles to pure C now though 22:19:37 pikhq: Should I bother supporting [:upper:] and all that crap in tr? 22:19:54 Oh fuck it, tr can wait. 22:22:42 pikhq: I feel like I'm doing the easy stuff and avoiding the harder stuff. Any suggestions for what to do next? 22:22:45 -!- Sasha has joined. 22:22:49 kill, maybe? 22:22:59 -!- perdito has joined. 22:25:54 pikhq: If I go through sys_siglist to convert a signal name into a number, am I a bad person? 22:26:31 Wait, that won't work. 22:32:08 __GNU_nonoption_argv_flags_ 22:32:09 This variable was used by bash(1) 2.0 to communicate to glibc 22:32:09 which arguments are the results of wildcard expansion and so 22:32:09 should not be considered as options. This behavior was removed 22:32:09 in bash(1) version 2.01, but the support remains in glibc. 22:32:12 pikhq: dear god. 22:33:33 * Sgeo nostalgias at http://www.ccs3.lanl.gov/mega-math/workbk/infinity/inhotel.html 22:34:17 ... That's *revolting*. 22:35:27 gcc was in bed with bash? 22:35:46 Wait, not gcc 22:36:02 ...all programs? 22:36:04 pikhq: Yeah. It totally is. 22:36:07 Sgeo: glibc. 22:36:11 And by extension every program that used getopt. 22:36:25 pikhq: I love how it took them exactly 0.01 version to remove that hideous abomination. 22:36:31 Maybe *a single person noticed*. :P 22:37:01 pikhq: Ha! kill can't use getopt. 22:37:07 Because kill takes -FOO for every signal FOO. 22:41:31 -!- ais523 has quit (Read error: Connection reset by peer). 22:44:59 elliott, hmm, the version is a unit? 22:45:05 What does it measure? 22:46:14 Phantom_Hoover: ? 22:46:30 pikhq: What the fuck. Apparently "kill -l $?" has to print out what signal killed the relevant process. 22:46:32 pikhq: Does anyone use that? 22:46:37 It's an esoteric concept! 22:50:07 elliott, I'm going to try pypy 22:50:48 elliott: *What the fuck*? 22:52:03 I'm pretty sure I've used that, but I can't remember if I had any good reason to 22:53:02 pikhq: Yeah... wut. 22:54:26 elliott, zuh? 22:54:53 Binary size just inflated after separating out barf.h. TODO: diagnose. (I think it's strlen calls.) 22:54:58 Phantom_Hoover: ? 22:55:06 So kill -l prints what pid was killed by? 22:55:16 Phantom_Hoover: No... $? is the exit status. 22:55:41 -!- Sasha has quit (Ping timeout: 245 seconds). 22:55:59 elliott, aaaaaaaah. 22:56:16 die agnostic 22:56:31 -!- Gregor has set topic: HELP COMPUTER | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 22:56:42 -!- Sasha has joined. 22:56:47 pikhq: For some reason, kill keeps giving me "Invalid argument" back. 22:57:36 brb 22:58:44 * Vorpal watches pypy compile itself 22:59:48 http://www.wikipl.com/index.php/Main_Page 23:00:14 elliott, minecraft bug update (fixes the forgetting port bit and other stuff) 23:00:16 but also uh 23:00:18 "* Added lakes and rare lava pools, both on the surface and randomly in caves." 23:00:22 how is that a bug update 23:00:26 lol 23:00:43 oerjan, highly esoteric. 23:01:08 indeed 23:02:14 http://www.youtube.com/watch?v=lobeX6ft6PA "This sounds absurd, therefore it couldn't possibly be physical reality" (Note: I'm pretty sure everyone is aware that no one these days says that the universe is infinitely old, but still) 23:02:55 oerjan, let's make it something awesomely crazy! 23:03:14 you go ahead 23:03:21 Sgeo, Hoyle went to his grave swearing by a modified Steady State theory. 23:04:38 And Hoyle was not a nutcase. 23:05:33 My browser froze. Unfortunatly, I was in the middle of playing a YouTube video 23:05:43 There is now an annoying sound emmenating from my speakers 23:05:46 *emminating? 23:06:09 Sgeo, was it another video by that idiot? 23:07:16 Also, it's "emanating". 23:07:19 elliott, I don't know what it means but pypy compiling itself draws pretty colour coded output 23:07:23 like ASCII art 23:07:33 Vorpal: mandelbro6 iirc 23:07:36 brot 23:07:40 elliott, why 23:07:56 fun 23:07:57 elliott, why compute that while it compiles itself? 23:08:05 I mean, it would slow down the thing 23:08:28 its prolly hardcoded. also instant anyway... 23:08:54 not very pretty when interrupted by warning messages 23:09:06 though it does line up properly below the warning 23:10:06 -!- MigoMipo_ has joined. 23:10:16 -!- Sgeo has quit (Ping timeout: 245 seconds). 23:11:09 -!- MigoMipo has quit (Ping timeout: 240 seconds). 23:11:39 oerjan, how does WikiPL work right now? 23:11:49 And is it headed towards being WikiFalcon? 23:12:14 http://www.wikipl.com/index.php/WPL_Documentation 23:12:29 i just found this on reddit so i don't know much more than you :D 23:12:56 apparently you cannot currently register automatically for security reasons 23:13:10 oerjan, how are we meant to make it AWESOME 23:13:25 afaiu each article contains python code for part of the language implementation 23:14:31 -!- Sgeo has joined. 23:15:21 Hmm... 23:15:28 PH, I was listening to some music 23:16:28 Sgeo, was it music from the late 90s or early 2000s? 23:16:35 lol 23:17:01 * Sgeo suddenly thinks of some music that he likes for nostalgic reasons 23:17:12 This song isn't one of those though 23:17:20 http://www.youtube.com/watch?v=GE_FhAGYy8w 23:19:37 -!- zzo38 has joined. 23:20:11 btw the reddit post is http://www.reddit.com/r/programming/comments/efuve/wikipl_the_free_programming_language_that_anyone/ 23:21:20 http://www.wikipl.com/index.php?title=Main_Page&action=edit 23:21:24 That's no Python! 23:21:55 there are obviously a few exception pages :D 23:22:41 oerjan: it should be haskell 23:22:44 less sandboxing needed too 23:23:22 It should be Newspeak. Less sandboxing needed too 23:23:26 (Well, not atm) 23:24:04 But not functional. 23:24:24 Non-functional languages are really just relics of the past, making new ones is basically laughable. 23:24:51 Haskell, and (in the future) Newspeak. What other nicely sandboxed languages are there? [Although I must point out that in Haskell, code either has full access to the outside world or no access to the outside world] 23:25:34 Sgeo, in the future all languages will be @! 23:25:43 Sgeo: the latter is not true 23:25:52 you can build more access control on top of IO 23:26:30 -!- MigoMipo_ has quit (Read error: Connection reset by peer). 23:27:09 "Justin Bieber Wikipedia Page Hacked With Homosexual Remark" --spam link on reddit 23:27:18 Translation: Someone vandalised Wikipedia for WHOLE SECONDS (probably the article author) 23:27:33 "Wikipedia (The Free Encyclopedia) is usually a reliable source of info so we aren’t sure how this one got by them. This is the first time we have seen someone sabotage a celebrity’s Wiki page. At the time it is unknown who is responsible for hacking Justin Bieber’s bio." 23:27:46 elliott, The Onion? 23:27:50 Chris Pressey made some new ideas for esoteric programming language. I like this 23:27:52 No. 23:27:52 Spam. 23:28:55 # (cur | prev) 04:08, 2 December 2010 ClueBot NG (talk | contribs) m (45,439 bytes) (Reverting possible vandalism by Tom191 to version by Silvergoat. Questions, comments, complaints -> BRFA Thanks, ClueBot NG. (84172) (Bot)) 23:28:55 # (cur | prev) 04:08, 2 December 2010 Tom191 (talk | contribs) (51 bytes) (←Replaced content with 'Justin Bieber is squirrel in a blender. He is gay.') 23:28:59 It stayed there for a whole ZERO MINUTES. 23:31:49 pikhq: Wanna DEBUG MY KILL?? 23:34:22 * Sgeo desperately wants to know why scrolling via trackpad isn't the same as scrolling via mouse wheel 23:36:01 Hey, we should totally do an esoteric version of wikiPL on the esolangs wiki. 23:36:14 Phantom_Hoover: We couldn't do it there, if it's automated at all. 23:36:22 On a separate wiki, sure. 23:36:27 elliott, why? 23:36:34 Phantom_Hoover: Because the wiki doesn't have any patches? 23:36:40 maybe on that hackiki thing? 23:36:58 elliott, what patches do you need for "pull page source from site, extract code"? 23:37:26 Phantom_Hoover: It'd need protecting anyway. 23:37:31 oerjan: Yeah, you could hack it into hackiki. 23:37:49 Phantom_Hoover: DottyWeb does pull page source from site and extract code but it is not built-in to the wiki program, you need to downloadit separately. 23:37:56 http://www.wikipl.com/index.php/HelloWorld Wow, way overengineered. 23:38:02 XML! Unit tests! 23:38:11 Camel-case thus failure at PEP-8! 23:38:16 http://www.wikipl.com/index.php/Test001 wtf web interface 23:38:20 I thought this was a collaborative programming language 23:38:52 elliott, my hatred for it shot up when you said "XML". 23:39:24 elliott, also underground lakes from now on hm 23:39:53 It should all be written in Smallnewfactor obviously 23:40:05 Smallnewfalctor 23:40:26 pikhq: I have a feature that busybox doesn't! BLOAT! 23:45:05 -!- augur has quit (Remote host closed the connection). 23:47:47 Sgeo, *Smallnewfalctorscala 23:47:57 -!- FireFly has quit (Quit: swatted to death). 23:47:59 Scalamallnewfalctor 23:50:55 http://sprunge.us/IgWe 23:50:56 Handy! 23:51:33 It still can't kill processes though. 23:51:40 Probably because pikhq won't look at the code. 23:52:25 Why doesn't Creative Commons have a "no attribution required" option? 23:53:57 Because somewhere out there is the Anti-Sgeo 23:56:07 zzo38: it does 23:56:14 Sgeo: doesn't, not does. 23:56:21 zzo38: oh you mean 23:56:25 it requires people to *not* attribute you? 23:56:26 that's non-Free 23:56:30 i think 23:56:31 and uh, stupid 23:56:34 just release it anonymously 23:57:55 -!- kar8nga has quit (Remote host closed the connection). 23:58:09 No. I don't mean it should require people to *not* attribute me. I mean it should provide the option that they can attribute me or not depending on their choice 23:58:36 CC PD? 23:59:24 But I do want share-alike to be the condition 23:59:38 That share-alike is require but attribute is optional 2010-12-04: 00:01:22 That is, instead of being forced to use CC-BY-SA, I would like to use CC-SA. 00:01:51 People who want to contribute might not if they know their contributions might not get credited. 00:01:55 zzo38: Well, uh, nobody really wants that except you, so I guess nobody really bothered. 00:01:58 Sgeo: Stop talking crap. 00:02:11 pikhq: Ping. 00:02:59 elliott, gah downloading binary pypy since it started swap trashing on my 4 GB RAM thinkpad 00:03:06 Vorpal: lawl 00:03:18 Then again, my Newspeak IDE tweak is so little code I don't think I'd get credit for it 00:03:19 Vorpal: Do YOU want to look at my kill and tell me what's wrong with it? :p 00:03:26 I still need to figure out how to submit a patch 00:03:47 elliott, not really no, everything is sluggish on both systems atm. minecraft on one, and 90% of userland in swap on the other 00:03:56 /* actually send the signal */ 00:03:56 pid = strtol(argv[i], &endptr, 10); 00:03:56 if (!argv[i][0] || *endptr) badusage(); 00:03:56 if (kill(pid, sig) < 0) { 00:03:56 barf("kill"); 00:03:57 ret = 1; 00:03:59 } 00:04:07 Vorpal: Pop quiz: Why does this always give "invalid argument"/ 00:04:17 elliott, which point in the code gives that 00:04:21 Wait, now it doesn't. 00:04:23 Now it just does nothing. 00:04:24 elliott, try gdb 00:04:28 elliott, gdb and step 00:04:32 Vorpal: No, I hate gdb. I've figured out what the problem is. 00:04:39 elliott, why do you hate gdb? 00:04:42 gdb is awesome 00:04:44 Vorpal: It irritates me. 00:04:49 elliott, WHY? 00:05:08 Vorpal: Because I don't have much connection with the code's execution path; I prefer reasoning about the code. 00:05:26 Vorpal: The most effective debugging tool is still careful thought, coupled with judiciously placed print statements. -- Brian W. Kernighan 00:05:32 gah binary pypy (built 2010-11-25) uses cpython 2.5.2 00:05:33 wtf 00:05:33 At least I am in good company. 00:05:35 Well, I want you to know, that any programs or other works I have written that the license requires attribution, that I give everyone permission to make attribution optional. (The exception is stuff related to things I do commercially; these things will have their own permission) 00:08:51 -!- Mathnerd314 has joined. 00:09:30 elliott, nailor has been *really* busy I see 00:09:39 Vorpal: Seen. 00:10:02 elliott, I can't find the mystery cave though 00:10:09 Vorpal: Down the stairs. 00:10:11 There's a sign. 00:10:19 elliott, yes I seen the sign 00:10:24 then just a normal but well lit cavern 00:10:25 So follow the arrow. 00:10:27 is that it? 00:10:29 Vorpal: That's the mystery cave. 00:10:39 I'm a bit disappointed it is no more mysterious 00:10:39 Whether you consider if mysterious or not is entirely dependent on you. 00:10:56 * elliott decides to move most of kill into a new program, signal(1). 00:12:48 elliott, that is a shitload of glass around that lava 00:13:45 Vorpal: Hm? What lava? 00:14:42 Grrr 00:14:43 elliott, the deep lava cavern, the lava fall starting next to the library 00:14:49 elliott, and going to bedrock or such 00:14:57 Someone vandalized an UnNews article I wrote in 2007 00:15:08 They vandalized it in 2010 00:15:15 That's a bit of a WTF and a Grr 00:15:26 http://uncyclopedia.wikia.com/index.php?title=UnNews:All_atheists_proven_to_be_Muslims&action=history 00:16:20 thats gay 00:16:22 yeah it is 00:16:25 -!- perdito has changed nick to hagb4rd. 00:16:27 (To quote the esteemed vandal of 2007.) 00:17:43 OK, seriously: Why would the barf() code path end up always executing in http://sprunge.us/TYib (unless signal=0 or whatever), with the "Invalid argument" error? 00:17:51 EINVAL An invalid signal was specified. 00:17:51 wtf. 00:17:58 Oh, wait, it's not doing that any more. 00:18:01 It's just... not doing anything. 00:18:10 elliott@dinky:~/code/tools$ bin/kill 1087 00:18:10 elliott@dinky:~/code/tools$ 00:18:10 elliott, didn't you see the lavafall? 00:18:11 -!- augur has joined. 00:18:13 elliott, go do it then 00:18:16 And printing a blank line in-between those for no apparent reason. 00:18:17 Vorpal: no thanks 00:18:26 elliott, it is inside a 3x3 glass pillar 00:18:34 very impressive 00:18:34 cool 00:18:36 and very long 00:18:44 elliott, why not log on and check and then log off? 00:18:57 Okay... apparently a bunch of }s and a return ret; cause an additional newline to be printed. 00:19:13 elliott, the server was there a moment ago, if you are far from spawn he could tp you to me 00:19:35 Vorpal: Not right now. Later, okay? 00:19:37 I'm here all night. 00:19:39 elliott, did you make the function "barf"? 00:19:41 Phantom_Hoover: Yes. 00:19:44 Aha! Sleep can't kill its parent. 00:19:47 elliott, well then I will log off 00:19:53 elliott, I'm going to sleep very soon 00:19:57 I clearly have to use setsid. 00:19:59 Vorpal: Soon, okay? 00:20:19 http://uncyclopedia.wikia.com/wiki/UnNews_talk:All_atheists_proven_to_be_Muslims 00:20:39 -!- oerjan has quit (Quit: ZZZ). 00:21:19 -!- Phantom_Hoover has quit (Quit: YYY). 00:23:52 aha! 00:23:57 Vorpal: I was parsing "-9", not "9" 00:23:59 so the signal was negative :D 00:24:06 that's one bug at least 00:24:34 ok, it now mostly works 00:25:59 Yay, it all works. 00:27:24 -!- hagb4rd has quit (Quit: hagb4rd). 00:27:42 -!- hagb4rd has joined. 00:30:17 My brother's character in D&D game is afflicted lycanthropy 00:30:57 pikhq: So, I currently have cat, date, echo, false, kill, pwd, signal (kill -l, basically), sleep and true in 34K. 00:33:49 Totally awesome. 00:34:29 pikhq: Want a tarball of what I've got so far? Feel free to tell me some programs are utterly hideous; I need advice in that area. :) Also, bin/signals.h is a horrible hack that doesn't do the Right Thing for a few architectures. 00:36:20 pikhq: I'm crazy, so here, have a .cpio.Z: http://filebin.ca/rghto/tools.cpio.Z 00:36:40 pikhq: The Makefile is very me-specific at the moment. If you actually want to compile them, uh, I can get you the relevant toolchain (bootstrapped pcc/dietlibc) 00:37:12 :) 00:37:36 TODO: man pages, all the other useful things out there, testing testing testing. 00:39:57 elliott, in a proper language that parser bug would have been detected at compile time 00:40:15 Vorpal: Not any language where argv is an array of strings. :P 00:40:25 elliott, well what about coq? 00:40:30 Vorpal: "Just use an option parser!" Yeah, I would, except that I'd have to do -n. 00:40:47 Vorpal: It's perfectly possible to write programs in Coq just like Haskell. It's just that usually you have the entire library of rich types working against you. 00:40:53 You can easily define "dumb" non-dependent types in Coq. 00:40:58 hm 00:41:01 And they would readily accept the bug I made. 00:41:19 Vorpal: Of course if this wasn't Unix and tools took proper objects instead of an array of strings... yes, there would be no bug. 00:41:26 You can't be too much smarter than your environment. 00:42:02 Vorpal: Also, when you start using gotos rather than creating a new function, you're crazy! 00:42:21 The code in question: http://sprunge.us/GcNO 00:43:43 elliott, server is on atm. 00:43:56 Eh, I'll come on. 00:45:51 -!- Sasha2 has joined. 00:46:21 -!- Sasha has quit (Read error: Connection reset by peer). 00:47:50 http://zzo38computer.cjb.net/music_storage/seasonstacker.ogg (Please note I did not write this music; I think Purple Motion did. I do not know what format it was originally made in.) 01:02:52 pikhq: Looked at the code? 01:03:14 NEIN 01:04:12 pikhq: The only thing to fear is fear itself and avoiding startup code so that true and false can be 200 bytes!! 01:15:34 pikhq: Psht! 01:16:23 "Plan 9 is a programmable debugger that understands multiple-process programs, and except at its own console, it doesn't run as an exercise in understanding the principles and mechanisms useful in designing operating systems, and not as a product as such. In this way it is analogous to the Unix operating system. In the most general configuration, it uses three kinds of networks, including Ethernet, Datakit, specially-built fiber networks, ordinary 01:16:23 connections, and ISDN. In Plan 9, each network presents itself as a product as such." 01:36:02 pikhq: Ugh. Just realised pcc doesn't have warnings. 01:36:03 * elliott fixes up code 01:48:44 pikhq: Woo, I almost have a vis where "vis ..." = "cat -v ...". 01:48:49 (More or less.) 01:57:48 wtf... 01:59:08 elliott, painterly sure have a nice cobble texture 01:59:14 but why turn the torches into candles 01:59:23 Vorpal: you can select what parts you want, I think 01:59:33 true 01:59:37 elliott, but that is work 01:59:44 Vorpal: Doesn't it have a web interface? 01:59:56 Vorpal: http://painterlypack.net/customizer.php 01:59:57 Vorpal: Yes it does. 02:00:20 Vorpal: I thought you were going to bed "very soon"? :P 02:00:23 also biome grass 02:00:24 hm 02:00:29 that seems lacking 02:00:31 or broken 02:00:47 Largest program so far: kill, at 8775 bytes. 02:01:02 And most of that is all the errno and signal text. :p 02:02:29 huh 02:02:37 Vorpal: if you do "continue" in a for loop, is the i++ part meant to be skipped? 02:04:50 elliott: I like how you do the sane thing with cat's options. :) 02:05:12 (i.e. make a seperate program from them, LIKE IT SHOULD BE.) 02:05:25 pikhq: Yep! And this program actually existed in 8th Edition Unix, although it printed out octal instead. 02:05:39 pikhq: BusyBox also does this, but it calls its program catv, and why name a program after a mistake? 02:05:48 http://man.cat-v.org/unix_8th/1/vis btw 02:06:28 Vorpal: if you do "continue" in a for loop, is the i++ part meant to be skipped? 02:06:31 pikhq: Do you know the answer to that? 02:06:35 It seems to be acting that way. 02:06:35 elliott, which language? 02:06:37 But that seems strange to me. 02:06:38 Vorpal: C. 02:06:48 I believe it shouldn't 02:06:54 very strange 02:06:59 hahahaha WOW 02:07:00 http://www.wikipl.com/index.php/WPL_Code_Guidelines 02:07:04 Good name: CompareTwoTextFilesAndGetTheDifferentLines 02:07:06 Bad names: CompareTwoTextFiles, CompareTextFiles 02:07:11 this MUST have been written on crack 02:07:17 that table is beyond unbelievable 02:07:58 -!- Sasha2 has quit (Ping timeout: 240 seconds). 02:08:28 Vorpal: ok it isn't doing that, my program is just KERRAAAZY :) 02:08:39 -!- Sasha2 has joined. 02:09:05 ok, wtf @ this 02:09:06 makes no sense 02:09:44 pikhq: http://sprunge.us/XRRA PLZ2BE TELLING ME WHY THE CONVERSION LOOP RUNS FOREVER ON /DEV/URANDOM 02:09:54 oh wait 02:09:54 "c" 02:09:55 lol 02:10:24 elliott, what "CompareTwoTextFilesAndGetTheDifferentLines" 02:10:24 still doesn't work though 02:10:25 XD 02:10:29 Vorpal: yeah :D 02:10:56 Vorpal: CompareTheseTwoTextFilesSpecifiedAsUtfEightFileNamesAndGetEveryLineInOneButNotBothAsAListOfUnicodeStrings 02:11:10 Vorpal: CompareTheseTwoTextFilesSpecifiedAsUtfEightFileNamesAndGetEveryLineInOneButNotBothAsAListOfUnicodeStringsAndRaiseAnExceptionIfAnythingGoesWrongDuringTheProcessOfDoingThis 02:11:19 elliott, int loop_counter_variable_used_in_for_loop_to_count_up_from_0_to_100 ? 02:11:25 Vorpal: Yes! 02:11:33 char *string_entered_by_the_user_that_is_dynamically_allocated; 02:11:53 long i_like_muffins_and_also_this_variable_is_a_long_integer_and_it_stores_the_users_current_happiness_level; 02:12:40 night → 02:12:50 wtf is up with this code 02:14:24 Vorpal: wait i have an important question 02:14:36 Vorpal: if your code starts spewing out bits of the environment when outputting /dev/urandom 02:14:42 you probably have a buffer overflow somewhere right :D 02:15:44 what the FUCK 02:16:03 pikhq: Yo. Can you write vis(1) for me? :P 02:16:14 Not ATM. Perhaps later this weekend. 02:18:35 pikhq: I'll just keep hacking at the code then. 02:18:46 pikhq: pikhq cal should make its way in basically intact, as writing cal sounds boring. 02:18:58 pikhq: Hey, Tcl is in good historical company; Multics used [...] to do what Unix does with `...`. 02:19:03 (Source: http://www.multicians.org/unix.html.) 02:19:43 Huh. 02:22:35 pikhq: BTW, I did the same split-option-out-into-separate-command thing with kill. 02:22:49 pikhq: -l is meant to print a list of available signals, and also -l $? is meant to print what signal a process with that exit code was killed by. 02:23:03 pikhq: But GNU kill has something better: -l TERM prints out the number for TERM, and -l 15 prints out TERM. 02:23:20 So I made a signal(1) which can list available signals, and translates signal names/numbers. 02:23:27 And got rid of -l from kill. 02:23:31 Beautiful. 02:23:53 And if you want POSIXly correct, well, screw you. :P 02:24:04 Oh, bin/signal has a bug ... 02:24:05 * elliott fxies 02:24:06 *fixes 02:24:52 hmm what's up with that 02:25:04 pikhq: I'm going to WhatStuffActuallyUsesly correct. :P 02:25:20 Ah, the GNU way without the stupid. 02:26:09 GNUpid 02:29:08 pikhq: [[The precision used may be less than the default six digits of %f, but shall be sufficiently precise to accommodate the size of the clock tick on the system (for example, if there were 60 clock ticks per second, at least two digits shall follow the radix character).]] 02:29:18 pikhq: Does that mean... CPU clock? 02:29:23 Or scheduler clock? 02:30:41 TODO: fix signal, vis 02:31:03 Clearly it means a grandfather clock attached to the computer. 02:31:24 -!- wareya has quit (Read error: Connection reset by peer). 02:32:24 -!- wareya has joined. 02:39:16 Now why is env broken... 02:39:39 pikhq: BTW, I'm going to have probably a separate project moretools that has things like wget, ping, etc. 02:39:44 i.e. the bigger, auxiliary stuff. 02:40:53 Does it have netcat? 02:42:10 pikhq: env(1) done. 02:42:17 zzo38: No; use Hobbit's original netcat. 02:42:22 That's the best anyway. 02:42:32 Whereas things like wget are rather big and could do with shrinking. 02:43:22 The full system, if it is intended to have a connection to the internet, should require netcat. 02:43:34 zzo38: Yes, but moretools is my implementations of things. 02:43:39 For netcat, I'll use Hobbit's netcat. 02:43:47 elliott: OK. You can do that, then. 02:44:10 pikhq: 50K for cat, date, echo, env, false, kill, pwd, signal, sleep, true, vis. signal has some bug that I don't know what it is right now, vis is amusingly broken. 02:44:22 date has one bug (-u shows the correct time, but doesn't say "UTC") 02:45:07 Hey kid! 02:45:09 I'm a computer! 02:45:24 -!- baojian has joined. 02:45:26 Gregor: Hi! 02:45:27 Use short options (I do not like GNU long options) 02:45:37 elliott: Stop all the downloadin'! 02:45:47 zzo38: I do. Well, not for most things, but wget, sure 02:45:48 *sure. 02:45:53 Gregor: Nope! 02:46:00 elliott: Help computer. 02:46:11 Gregor: What is wrong. 02:46:31 elliott: You're doing your part all wrong :P 02:46:43 Use long options if you want to, but in my implementation there will be no long options. 02:46:45 Gregor: I have no idea what you are referencing :P 02:47:08 D-8 02:47:16 elliott: You don't know of the Fenslerfilm GI Joe PSAs? 02:48:46 Well, I googled a minute ago and found http://www.fenslerfilm.com/PSAS.htm. 02:48:56 elliott: Watch them FOREVER 02:49:30 Gregor: What :P 02:49:37 elliott: Watch them once? :P 02:49:39 Does this make any more sense when intoxicated? 02:49:43 *these 02:49:44 *Do 02:49:53 Idonno, but they grow on you like Charlie the Unicorn :P 02:50:11 I liked Charlie the Unicorn first time around. 02:51:54 How 'bout I list the particularly-funny ones? :P 02:52:55 Have you found all of the secrets yet in Godel, Escher, Bach? 02:53:12 (Yes; this book does, in fact, have secret pages.) 02:53:38 secret pages? 02:53:40 pikhq: -rwxr-xr-x 1 elliott elliott 26K Dec 4 02:52 box 02:53:40 elliott: 5, 6, 7, 8, 13, 15, 16, 17, 20, 22 and 24 are the funny ones :P 02:53:49 pikhq: Just sayin'. 02:54:15 Sgeo: Yes. There are secret pages, as well as secret things and obscure things found on the non-secret pages. 02:54:28 pikhq: But I don't like the changes I had to make to the codebase to do that. 02:54:32 How do secret pages work in a physical medium? 02:54:41 pikhq: (I could avoid it if I did each program as an object.) 02:55:06 Sgeo: Figure it out! 02:55:12 Gregor, wtf? 02:55:24 Sgeo: Porkchop sandwiches! 02:56:01 (Hint: Some of the things the dialogues discuss are somewhat related to the way the secret pages work in a physical medium.) 02:56:51 Gregor, those... those can't be derived from the actual cartoon, with stuff dubbed over, can they? 02:57:04 That's what they LOOK like, but the content of the visuals makes no sense in that context 02:57:39 Sgeo: The cartoon had stupid PSAs in it. 02:58:15 How TF does some guy vaporizing people in a burning building... 02:58:21 * Sgeo goes insane 02:58:32 What was the original PSA. I have to know? 02:59:44 Sgeo: They sometimes modified the video slightly :P 02:59:50 Ah, ok 03:01:28 * pikhq giggles 03:01:44 As part of the CGA Collection, I made a variant of the Wumpus game. One difference is there is nine levels on top of each other. You have only one arrow (non-crooked), once used it can never be retrieved. You are usually not told the room number or the direction of the exits. There are other differences, too. 03:02:08 And there is five wumpus instead of just one. 03:02:15 gettimeofday() provides enough bits to accurately measure time from 1970 to 292277026596. 03:02:18 There is also various colored potions. 03:02:25 So very much overkill. 03:04:31 Y29227702.6597K 03:04:55 Wait, I put the decimal in the wrong spot 03:05:02 Meh, correcting jokes ruins them I think 03:08:33 pikhq: -rwxr-xr-x 1 elliott elliott 22K Dec 4 03:07 box 03:08:39 pikhq: This time with separate object files and no code changes. 03:08:43 I am trying to make a Semi-literate Gforth this is what I have so far: http://sprunge.us/KaMH 03:09:18 Please tell me if it is wrong or any other suggestion and so on. 03:09:46 elliott: Hmm. 03:09:50 pikhq: Hmm? 03:09:54 Hmm. 03:10:02 pikhq: Is this the "evil idea" kind of hmm? 03:10:07 No. 03:10:13 pikhq: Aww. 03:10:14 Nice work though. 03:10:34 The box isn't my focus though; the individual programs are. 03:10:37 Perhaps you'd like a shell in there. 03:11:40 Please tell me an opinino of what I have so far this program!!?!. ! 03:12:07 pikhq: If there is a "shell" it will be one optimised to run init scripts and the like. For an interactive shell just use a ksh. 03:12:19 zzo38: Cool. 03:13:30 http://uncyclopedia.wikia.com/wiki/UnPoetia:Walking_in_a_Klingon_Wonderland 03:14:33 I will have to add some things, such as explanation section (I can have a TeX macro switching the category codes between both modes), and then make a variant of Computer Modern for typesetting Forth codes, and then add some things for formatting each word..... 03:14:49 I have not quite figure out yet how to make it format each word. 03:15:28 (The only thing this program does so far is indexing! I do need to add the other things in, too.) 03:17:06 This is because I want to make the "Secrets of SoS" roguelike game to be four books in one book (with tabs sticking out of the pages to beginning of each one). 03:18:29 There is a problem with this program the way it works so far; the words NEXT-ARG REQUIRED BYE are indexed, even though they should not be indexed. 03:19:41 pikhq: Barf. 03:19:42 pikhq: uname. 03:19:49 pikhq: Irritating because I have to join things up with spaces. 03:25:30 pikhq: uname done! 03:28:57 pikhq: I wish pcc had nicer warnings. 03:29:06 (It has very few, and seemingly none if you don't use system headers.) 03:43:15 pikhq: I'm going to tackle test; seems like fun. 03:43:39 Mmm. 03:44:06 Although actually no, not right now, it has some corner cases that look annoying. 03:44:14 Head! Everyone loves getting head in their coreutils. 03:44:34 o.O 03:45:03 Sgeo: What. 03:45:13 http://www.opengroup.org/onlinepubs/009695399/utilities/head.html 03:45:14 Head! 03:45:23 Ok 03:51:13 pikhq: Man, have you seen how laughably minimalist POSIX head is? 03:51:17 pikhq: http://www.opengroup.org/onlinepubs/009695399/utilities/head.html 03:51:22 pikhq: No negative argument, no bytes... 03:54:23 Man, to hell with head for now. 03:58:16 -!- baojian has quit (Read error: Connection reset by peer). 04:12:41 elliott: It's... Just head. 04:12:42 Wow. 04:12:53 This from the same people that brought us pax. 04:13:08 pikhq: I like how their head(1) is useless and yet they've bloated everything else. 04:13:11 Literally useless; I use -c all the time. 04:13:25 Yeah, -c is definitely a useful option. 04:13:52 2399 bin/basename 04:15:16 -rwxr-xr-x 1 elliott elliott 23K Dec 4 04:14 box 04:15:52 if (suffix) { 04:15:53 pathlen = strlen(path); 04:15:53 suffixlen = strlen(suffix); 04:15:53 if (!strcmp(path + strlen(path) - suffixlen, suffix)) 04:15:53 path[pathlen - suffixlen] = 0; 04:15:53 } 04:15:55 Deuglification welcome. 04:16:01 *pathlen, duh. 04:18:35 pikhq: Hey, you did basename too. 04:18:52 pikhq: Um, how did it take you 87 lines and various functions? I've done it in 36 lines of main... 04:20:03 -!- Goosey has joined. 04:21:52 -!- augur has quit (Remote host closed the connection). 04:22:01 elliott: I implemented the precise algorithm POSIX specifies. 04:22:37 pikhq: So did I. 04:22:59 I must have made it more complicated than necessary. 04:23:05 Indeed :P 04:24:16 pikhq: I think I'm going to start replacing uses of strtol with atoi i the codebase, because I don't have to check errors and the like and if you pass a stupid non-number that's your problem ... 04:30:45 -!- Wamanuz has quit (Ping timeout: 276 seconds). 04:31:45 pikhq: Now I'm doing strings. 04:31:51 As in strings(1). 04:31:56 -!- Wamanuz has joined. 04:35:00 pikhq: strings done! 04:35:32 pikhq: Remind me to make these program use mmap sometime. 04:35:33 *programs 04:37:56 -!- augur has joined. 04:44:24 elliott: That's not my job, that's AnMaster's job. 04:44:42 pikhq: Actually, mmap is just plain nice. 04:44:47 pikhq: Think about it: It's orthogonal persistence. 04:44:58 "I want this bit of memory to happen to correspond to this bit of disk." 04:45:03 Let the OS handle the rest. 04:46:01 mmap is definitely a nice function. 04:48:59 Do you know how to make Where Is My Keys Soup? 04:57:16 pikhq: Lol, Wikipedia power abusers: http://en.wikipedia.org/wiki/User_talk:The_last_username_left_was_taken 04:57:23 log-reading ais523: http://en.wikipedia.org/wiki/User_talk:The_last_username_left_was_taken 05:03:20 If the computers were, say, set up by a person who set up the machines identically, and none of the users installed anything... 05:04:56 At least that seemingly isn't case of wikipedia admins abusing their position for advancing agenda (yup, seen that too). 05:08:08 Ilari: Who hasn't. 05:08:35 Me, who doesn't pay attention to Wikipedia politics 05:08:41 Ilari: I love how they go from "same IP address and headers" ========> "STOP QUESTIONING ME IT'S YOUR COMPUTER BECAUSE Q.E.D., NEVER QUESTION MY AUTHORITY" 05:08:53 They must get a real kick out of it. 05:09:09 Does XFF even reveal anything beyond IP? 05:10:10 Shouldn't think so. 05:10:52 You know what might work somewhat? Using cookies 05:10:58 No. 05:11:05 Shouldn't get any false positives from that, I th.. 05:11:10 Actually, n/m 05:14:07 -!- yorick has quit (Read error: Operation timed out). 05:14:24 pikhq: Yeah, I have ABSOLUTELY NO IDEA why vis is failing. I've even made it basically identical with the BusyBox logic. 05:14:28 I'll look into it tomorrow. For now, sleep. 05:14:31 -!- elliott has quit (Quit: Leaving). 05:17:22 -!- yorick has joined. 05:30:50 There is Paranoia RPGness that focuses on High Programmers?! 05:39:11 Now, how do I make the formatting work with this literate Forth system I did, do you know anything about this? 05:42:37 * Sgeo has a DreamWriter 500 05:42:43 * Sgeo wonders how hackable it is 05:45:43 -!- Sasha has joined. 05:46:35 -!- Sasha2 has quit (Ping timeout: 272 seconds). 05:49:26 -!- hagb4rd has quit (Ping timeout: 245 seconds). 05:56:12 -!- evincar has joined. 05:56:23 Hello world. 06:04:46 Sgeo: I have dealt with the DreamWriter before. I do not have one, but I have been able to support copying files to another computer by the serial port and printing them. (Someone else who had it asked me to do that, and having never seen it before, I had to figure it out, so I did.) 06:06:55 So...I have a bit of a problem. 06:07:05 Good language idea, no idea what to name it. 06:07:53 evincar: What is the idea? 06:09:00 zzo38: The language is purely functional in the same sense that Haskell is purely functional (that is, kinda), but instead of abstracting sequential operations using monads, it uses a set of timelines, which may be asynchronous. 06:09:48 evincar: Can you call it "Timehaskell"? 06:09:52 Or, something similar 06:10:21 zzo38: Nah, it's not really like Haskell design-wise. I was just drawing a parallel. 06:10:33 I was thinking of something related to time, light, a timeline, or speed. 06:10:36 Or parallelism. 06:11:33 Maybe you can mix up the letters of some words to make a anagram. 06:12:12 Bit of a cheap trick. 06:12:23 Yes, it is bit of a cheap trick. 06:12:29 I've looked around in other languages, finding nothing really satisfying. 06:15:03 How does Enlight sound? 06:17:13 OK. 06:24:47 That's how I feel about it...it's not thrilling. 06:30:50 But I think it will do. 06:31:21 If you are unsure, make it as a subpage of your user page just with a title numbered, and then move it when you have a proper title. 06:33:56 Oh, it's not an esolang... 06:34:04 ...at least, it's not supposed to be. 06:34:14 I think "Momentum" is better. 06:35:09 OK. 06:37:06 Blah, boring topic. It is an interesting language, though. 06:40:34 -!- evincar has quit (Quit: ChatZilla 0.9.86 [Firefox 3.6.12/20101026210630]). 06:40:59 Haskell is not "kindof" functional 06:41:10 * Sgeo growls at everyone who thinks that IO introduces an impurity 07:15:14 Do you know if there is any way in Gforth to override the prior use of a non-deferred word? 07:36:53 -!- Wamanuz2 has joined. 07:36:54 -!- Wamanuz has quit (Read error: Connection reset by peer). 07:43:17 -!- Sgeo has quit (Read error: Connection reset by peer). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:03:43 I made a override that I almost got it to work. 08:19:15 -!- zzo38 has left (?). 08:53:44 -!- Phantom_Hoover has joined. 09:17:55 -!- Goosey has quit (Ping timeout: 264 seconds). 09:29:27 -!- sebbu2 has joined. 09:31:42 -!- sebbu has quit (Ping timeout: 276 seconds). 09:35:24 -!- oerjan has joined. 09:41:37 -!- MigoMipo has joined. 10:24:17 -!- sebbu2 has changed nick to sebbu. 10:27:46 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds). 10:29:20 -!- nopseudoidea has joined. 10:37:05 -!- kar8nga has joined. 10:41:09 -!- Phantom_Hoover has joined. 10:46:58 -!- nopseudoidea has quit (Quit: Quitte). 10:50:56 -!- aloril has quit (Ping timeout: 264 seconds). 11:04:18 -!- aloril has joined. 11:07:52 -!- FireFly has joined. 11:46:34 -!- FireFly|n900 has quit (Ping timeout: 245 seconds). 12:19:46 -!- MigoMipo has quit (Ping timeout: 240 seconds). 13:16:29 -!- elliott has joined. 13:17:12 04:47:40 time to buy minecraft 13:17:14 nooga: l o l 13:18:22 22:40:59 Haskell is not "kindof" functional 13:18:23 22:41:10 * Sgeo growls at everyone who thinks that IO introduces an impurity 13:18:28 Sgeo: the IO monad is impure. 13:42:29 -!- nopseudoidea has joined. 13:48:55 -!- nopseudoidea has quit (Quit: Quitte). 14:15:50 -!- geo has joined. 14:17:33 pikhq: I made true and false smaller but they don't work now. :p 14:25:10 -!- geo has left (?). 14:31:55 77861 bytes for false, true, yes, sleep, pwd, echo, basename, uname, signal, link, cat, date, chroot, env, strings, vis and kill, in ascending order of size. 14:32:41 TODO: Figure out some sort of way to only include the subset of error strings that the calls in the program can produce. 14:32:50 Probably by manual specification. 14:35:48 -!- aloril has quit (Remote host closed the connection). 14:42:46 -!- aloril has joined. 14:48:20 -!- yorick has quit (Remote host closed the connection). 15:07:02 Vorpal: HA! 15:07:08 pikhq: And HA! 15:07:25 Vorpal: pikhq: cal(1)'s behaviour is not specified to be locale-dependent (POSIX 2004). 15:07:27 " The cal utility shall write a calendar to standard output using the Julian calendar for dates from January 1, 1 through September 2, 1752 and the Gregorian calendar for dates from September 14, 1752 through December 31, 9999 as though the Gregorian calendar had been adopted on September 14, 1752." 15:07:36 That is all. 15:10:03 char *shortmonths = "janfebmaraprmayjunjulaugsepoctnovdec"; 15:10:06 saves me 11 nul bytes 15:10:08 -!- jcp has quit (Quit: Later). 15:13:02 -!- jcp has joined. 15:14:18 you could probably save the nul byte at the end of that too :D 15:14:38 somehow 15:16:51 -!- Sasha2 has joined. 15:18:39 -!- Sasha has quit (Ping timeout: 245 seconds). 15:19:59 oerjan: wait, yes i could, just a matter of convincing the C compiler :D 15:26:03 -!- Sasha has joined. 15:26:04 -!- Sasha2 has quit (Read error: Connection reset by peer). 15:29:35 oerjan: but hey, I'm not crazy! 15:29:38 sorta! 15:29:50 >_> 15:31:25 oerjan: just because I have false, true, yes, sleep, pwd, echo, dirname, basename, uname, signal, link, cat, date, chroot, env, strings, vis and kill in 80204 bytes doesn't make me crazy! nor that I manually call the linker and use Brian "INTERCAL Style Guidelines" "41 byte ELF executable" Raiter's sstrip utility, which renders the file unreadable by the GNU objdump disassembler! 15:31:47 oerjan: just because I can link them into one executable of 23231 bytes doesn't make me crazy either! It makes me a genius! 15:31:48 yes! 15:31:49 that is what I am! 15:31:52 hahahahahaha! 15:32:30 as long as that's settled then 15:32:42 WHY ARE YOU LAUGHING AT ME 15:32:51 hey WAIT 15:32:54 char *months[] = { 15:32:54 "January", "February", "March", "April", "May", "June", "July", "August", 15:32:55 "September", "October", "November", "December", NULL 15:32:55 }; 15:32:55 char *shortmonths = 15:32:57 "jan" "feb" "mar" "apr" "may" "jun" "jul" "aug" "sep" "oct" "nov" "dec"; 15:33:05 i could just use the first three characters of the months array! 15:33:25 quite so 15:33:53 why do you need null termination on months? 15:35:08 -!- nopseudoidea has joined. 15:35:30 oerjan: good point :P 15:35:43 oerjan: alas the code-based solution does *not* seem to help things. well, using tolower(). 15:35:45 i'll write my own tolower 15:36:47 wait what... 15:36:54 oh 15:37:23 That is all. 15:37:39 elliott, I believe all utils should have that 15:37:44 according to the spec 15:37:59 Vorpal: no, see http://www.opengroup.org/onlinepubs/009695399/utilities/cal.html 15:38:14 Vorpal: it is *expressly* defined, without any mention of locales, to use the 1752-switchover calendar 15:38:24 elliott: apropos locale and cal, if i set it to nb_NO.utf8 the month and day names do become norwegian, although the julian/gregorian jump is still sep 1752 15:38:30 oerjan: that's just what GNU does 15:38:38 oerjan: which is usually completely uncorrelated with what posix wants :) 15:38:47 heh 15:38:51 elliott, I believe POSIX has a blanket statement about locales for output months 15:39:00 oerjan: but in that case, yes, it is correct 15:39:05 Vorpal: [[ The cal utility shall write a calendar to standard output using the Julian calendar for dates from January 1, 1 through September 2, 1752 and the Gregorian calendar for dates from September 14, 1752 through December 31, 9999 as though the Gregorian calendar had been adopted on September 14, 1752.]] 15:39:09 Vorpal: it is hard to get more precise than that 15:39:09 elliott, correct 15:39:14 everything else starts "In the POSIX locale" or the like 15:39:21 but then i'd hazard a guess that most norwegians, just like me, have no f idea when norway switched :D 15:39:26 elliott, but it doesn't say anything about what the output month names should be 15:39:28 Vorpal: ok, find the blanket statement; otherwise I contend you want me to violate POSIX 15:39:34 Vorpal: duh, I know *that* 15:39:51 Vorpal: but the point is that regardless of what locale you're in, the switchover is in sep 1752 and no other date 15:39:53 elliott, and that bit is afaik covered by the blanket statement 15:39:55 elliott, indeed 15:39:56 *no other month 15:40:03 that seems correct 15:40:17 anyway if you want locale support, link these with uClibc or glibc :P 15:40:30 although right now date's default formatting string is hardcoded because I can't figure out how to get it from the locale without Pain(TM) 15:41:11 elliott, gettext? 15:41:38 Vorpal: um posix specifies that each locale should define its own date(1) formatting string 15:41:48 ah 15:41:50 okay 15:41:53 so I would *expect* it to be a standard call or something, but knowing Linux ... 15:42:05 elliott, it is probably by catgets 15:42:09 maybe 15:42:09 Vorpal: anyway gettext is *huge* especially for just one string... 15:42:17 i could just use an env var or something :P 15:42:18 elliott, more than that 15:42:27 Vorpal: not for date 15:42:32 char *fmt = "%a %b %e %H:%M:%S %Z %Y"; 15:42:33 $ date 15:42:34 lör dec 4 16:41:54 CET 2010 15:42:37 Vorpal: the actual month names etc. are done by strftime. 15:42:37 $ LC_ALL=C date 15:42:37 Sat Dec 4 16:42:00 CET 2010 15:42:41 Vorpal: and so are Not My Problem. 15:42:44 elliott, so they are localised? 15:42:52 Vorpal: in whateverlibc with locales,y es. 15:42:53 elliott, you still need to make one library call to make that happen 15:42:53 not with dietlibc. 15:42:56 Vorpal: it's just the default formatting string that's different. 15:43:00 Vorpal: no i don't 15:43:03 strftime looks at the locale 15:43:05 it's specified to 15:43:22 elliott, yes but the locale won't be used without that one library call 15:43:27 trying to remember the name of it 15:43:39 Vorpal: 15:43:40 ENVIRONMENT 15:43:40 The environment variables TZ and LC_TIME are used. 15:43:42 --strftime(3) 15:43:56 setlocale(LC_ALL, ""); 15:44:04 "On startup of the main program, the portable "C" locale is selected as default. A program may be made portable to all locales by calling:" 15:44:09 and then that call 15:44:09 Vorpal: heh 15:44:13 well fuck that, i'll add that later 15:44:43 elliott, I mean it is one call :P 15:44:53 Vorpal: yes, but i have a lot of prorgams. 15:44:55 *programs 15:45:04 Vorpal: I'll do locale support after I implement, say, mount. 15:45:14 porngames 15:45:15 i want to get it useful first 15:45:24 oerjan: patches to add those welcome 15:45:31 O KAY 15:45:32 elliott, mount is not POSIX iirc 15:45:37 :P 15:45:39 oerjan: EVERY PATCH WELCOME 15:45:51 Vorpal: yes, it's useful; usefulness is in fact prohibited by POSIX 15:46:01 Vorpal: this is why POSIX still specifies SCCS commands (and in the same list as normal commands, at that) 15:46:13 hah 15:47:33 * elliott eliminates a division 15:48:29 poor soldiers 15:48:29 * elliott decides to steal most of the cal logic from pikhq 15:48:32 cal is a very ugly command 15:48:41 all the alignment, side-by-side, etc. 15:48:57 Vorpal: oh joy, another MC update 15:49:26 elliott, oh? 15:49:42 elliott, today? 15:49:48 hmm, maybe not 15:49:51 something just came through supposedly 15:49:52 elliott, nothing on his blog about it 15:49:59 "Now supports !" 15:50:03 * elliott dearly hopes that's a legitimate bug in the yellow 15:50:16 elliott, I think it is intentional 15:50:38 shush 15:50:46 elliott, it has been there for ages 15:51:59 Vorpal: http://en.wikipedia.org/wiki/Charles_Bukowski 15:52:16 HAHAHA CROSS-MEDIUM CONVERSATIONS 15:52:23 indeed 15:53:44 AAAAA jimmy wales 15:54:17 wait nothing about crossing mediums in that article 15:55:01 oerjan: no, I mean my conversation with Vorpal 15:55:27 you mean that link wasn't supposed to be on #esoteric? 15:55:42 oerjan: you can't Ctrl+V into minecraft. 15:55:49 so i said "IRC" on minecraft and linked it here 15:55:51 oh 15:56:08 clearly we need EmacsCraftTalk 15:57:00 Why does cal(1) start months with Sunday? 15:57:00 One cannot simply ctrl-V into Mord^H^H^Hinecraft. 15:57:08 Is it perhaps because it is an evil instrument of capitalism? 15:57:13 fizzie, ? 15:57:23 elliott, what would emacscrafttalk be? 15:57:42 Vorpal: Rip out Minecraft's chat input line and replace it with Emacs. 15:57:44 I mean full-blown Emacs. 15:57:46 Modelines and all. 15:58:04 elliott: i think that's locale dependent too 15:58:18 oerjan: yeah but fuck you i'm not implementing locales in cal to start with :D 15:58:23 it's enough of a mess to begin with 15:59:32 huh wait it's not 15:59:51 starts with sunday in norwegian locale too 16:02:02 oerjan: yeah that's just silly 16:02:05 only morons start the day with sunday! 16:02:30 "A future version of IEEE Std 1003.1-2001 may support locale-specific recognition of the date of adoption of the Gregorian calendar. 16:02:39 static const int months_offset[] = {0, 3, 3, 6, 1, 4, 6, 2, 5, 0, 3, 5}; 16:02:39 from man cal 16:02:40 what 16:02:41 pikhq: what 16:02:53 oerjan: well, i'm quoting from the 2004 standard 16:03:02 or at least an indistinguishable draft 16:03:16 well they didn't say how far in the future :D 16:03:18 wait oerjan uses unix now? 16:03:23 or just googled manpages :P 16:03:38 i _do_ have an nvg shell account you know 16:03:57 oerjan: no you use windows on EVERYTHING 16:04:03 including your watch 16:04:06 even if you don't haveone. 16:04:08 IF YOU SAY SO 16:04:09 *have one. 16:04:15 my watch has only one window 16:04:18 it is round 16:08:08 starts with sunday in norwegian locale too 16:08:13 it starts with monday for me 16:08:17 in Swedish locale 16:11:43 sheesh 16:11:48 oh well 16:14:35 -!- wareya has quit (Read error: Connection reset by peer). 16:15:30 -!- wareya has joined. 16:17:26 If you're speaking of cal's first-day-of-week, using a fi locale does Sun → Mon too: http://p.zem.fi/cal-fi 16:18:03 fizzie: I think I'll just make it always Monday to Sunday because that's how everyone worth considering to exist thinks about the week. 16:18:24 (Of course, if I bloat this stuff up with locales (probably behind an ifdef), I'll see what I can do about getting the information from there.) 16:18:46 huh, apparently the cal here is BSD ncal 16:19:16 oerjan: is it linux? 16:19:24 the machine is linux 16:19:29 says uname -a 16:19:40 Ubuntu's cal is from bsdmainutils. 16:19:48 ok 16:19:51 Mine too, it seems. 16:19:52 (Debian.) 16:20:04 oerjan: try "dpkg" then "rpm" to determine approx. distro :P 16:20:24 Or "lsb_release -a" instead. 16:20:35 fizzie: Here, cal does the rather irritating thing of inverse-videoing the current day. I blamed it on GNU, but no! Nobody is safe from the crazy! 16:20:36 It's S as in Standard! 16:20:46 fizzie: Hey, Kitten is non-LSB-compliant. :P 16:20:51 And proud! 16:21:10 dpkg exists, rpm doesn't (at least in PATH) 16:21:12 elliott, are you on MC? 16:21:17 Kitten is angry, kitten is offended. 16:21:32 oerjan: And lsb_release? 16:21:35 fizzie: How did I get that reference without even double-taking... 16:21:42 fizzie: no such thing 16:21:51 My brain's random access times are AWESOME. 16:21:56 Vorpal: No; should I be? 16:22:02 elliott, maybe 16:22:05 do you want to? 16:22:13 Vorpal: I don't know. Are you doing something interesting? 16:22:21 elliott, fishing 16:22:29 Vorpal: what. 16:22:45 elliott, catching fish 16:22:50 utilising a fishing implemenat 16:22:54 implement* 16:23:10 Vorpal: there are no fish. 16:23:21 there are 16:23:26 elliott, they got fixed in MP 16:23:35 Vorpal: what, they exist in SP? 16:23:42 elliott, you don't see any swimming of course 16:23:47 Vorpal: wat. 16:23:48 but you can still catch them 16:24:00 elliott, 3 sticks + 2 strings = fishing rod 16:24:18 The fishing rod generates fish from otherwise plain water, as in real life. 16:24:49 fizzie: Do you always catch a fish -- * this big * -- and then mysteriously lose it seconds later? 16:24:58 You know, like in real life. 16:25:22 Well, there is a timing-related catchery you need to perform, I think. I've never really fished. 16:26:35 TODO: Make basename and dirname call strlen() only once and then work out the new length from the modifications made. 16:26:54 ah /proc/version has: 16:26:56 Linux version 2.6.26-2-486 (Debian 2.6.26-25lenny1) (dannf@debian.org) (gcc version 4.1.3 20080704 (prerelease) (Debian 4.1.2-25)) #1 Thu Sep 16 18:43:30 UTC 2010 16:27:47 elliott, going to check? Also I want to try something 16:28:02 you can hit animals and drag them to you with the fishing rod 16:28:07 I wonder if it works on other players 16:28:14 oerjan: I suggest deleting [[WikiPL]] and [[Talk:WikiPL]] to avoid immense confusion 16:28:26 Vorpal: unlikely, I'm doing other things right now 16:28:37 elliott: i already made a request to the admins in the article 16:29:54 oerjan: oh you're not an admin :D 16:30:30 so it is 16:31:37 oerjan: I think I'm going to clone WikiPL and make it (1) actually a programming language and (2) esoteric because, really, the concept is too good to pass up. 16:31:39 fizzie: elliott: ^ so it was apparently debian 16:31:43 right 16:31:47 also (3) done in a functional language 16:31:56 coughhaskellcough 16:32:12 elliott: wikiplia was done in ML 16:32:24 looks like http://www.wikipl.com/index.php/Main_Page has been updated to s/programming language/programming environment/g 16:32:31 oerjan: yes, but ML has untagged side-effects 16:32:38 oerjan: with Haskell, I'd just ban IO 16:32:39 yes 16:32:47 and limit computations to 30s or whatever 16:33:05 with haskell you can also make your own restricted IO monad 16:33:12 oerjan: indeed 16:33:25 oerjan: but usually it's nicest to deal with input as a presumably-lazy list anyway 16:33:29 at least for simple esolangs 16:33:34 and they rarely have non-stdin inputs 16:35:27 of course only this machine (tyrell) needs to be debian, nvg has other hosts too (i recall there's an OpenVMS somewhere) 16:35:38 oerjan: openvms? awesome :D 16:36:17 [[As another data point, Squeak forces "Han disunification" by encoding the language in bits 24-31 of each UTF-32 element... it's not a coincidence IMNSHO that Unicode support was added to Squeak by a Japanese.]] 16:36:17 :D 16:38:15 -!- MigoMipo has joined. 16:38:55 elliott: when i first joined nvg back in 1991/2 or something, their main machine was VAX/Ultrix 16:39:12 oerjan: I think I'm going to clone WikiPL and make it (1) actually a programming language and (2) esoteric because, really, the concept is too good to pass up. <-- 1) hackiki 2) hackiki 16:39:33 -!- kar8nga has quit (Remote host closed the connection). 16:39:59 at that time the _main_ university system was VAX/VMS 16:40:46 hah 16:41:15 oerjan, in 1992 I had recently learned to speak. You are old 16:41:22 apparently so 16:41:32 bbl 16:46:42 Vorpal: (1) no (2) you are wrong 16:46:53 (3) you don't understand hackiki, or you don't understand what i said, pick one 16:48:37 wtf c-mode. 16:48:39 you are doing it wrong 16:48:40 oh 16:48:41 lol 16:51:26 -!- sftp_ has joined. 16:51:36 -!- cheater99 has quit (Quit: Leaving). 16:51:40 -!- sftp has quit (Ping timeout: 265 seconds). 16:52:06 http://www.vg.no/nyheter/utrolige-historier/artikkel.php?artid=10027789 16:55:36 static void repeat_print(const char *s, int n) 16:55:36 { 16:55:37 for(int i = 0; i != n; i++) 16:55:37 printf("%s", s); 16:55:37 } 16:55:41 pikhq: How did you manage to make that a function. 16:56:07 http://translate.google.no/translate?u=http%3A%2F%2Fwww.vg.no%2Fnyheter%2Futrolige-historier%2Fartikkel.php%3Fartid%3D10027789&sl=no&tl=en&hl=&ie=UTF-8 16:56:34 lovely translation, that 16:56:52 (forspiste = over-ate) 16:56:56 -!- sftp has joined. 16:58:08 -!- sftp_ has quit (Ping timeout: 264 seconds). 16:58:45 http://www.vg.no/nyheter/utrolige-historier/artikkel.php?artid=10027789 <-- fake news? 16:59:00 Vorpal: AP from the looks of it, so no 16:59:06 it's in "Amazing Stories" 16:59:07 um not that i know of... 16:59:28 oerjan, what is "sekk"? 16:59:29 AP, Reuters and probably others all have sections dedicated to weird stuff. 16:59:55 oerjan: "I took the rat in uninvited dogjest" what the hell is dogjest :D 17:00:04 is it like... the kind of joking a dog does 17:00:07 dog jest 17:01:34 do-gjest = toilet guest 17:01:52 Vorpal: bag 17:02:15 hm 17:02:26 -!- sftp_ has joined. 17:03:14 -!- sftp has quit (Ping timeout: 245 seconds). 17:03:16 elliott: it's not AP, it's norwegian news and it says the source is VG itself 17:03:26 also that translation did 50 cm -> 50 inches 17:03:27 oerjan: then google translates VG as AP :) 17:03:27 fail 17:03:33 presumably due to statistical translation 17:03:35 same as Vorpal's error 17:04:05 elliott: huh that's VG Nett in the original 17:04:21 also i noticed it translated 50 centimeter into 50 inches 17:04:57 oerjan: well google translate is all statistical translation 17:05:10 oerjan: you're likely to see AP and VG in similar places but in english vs. norwegian texts 17:05:12 thus the error 17:05:15 same with cm vs. inches 17:05:20 quite so 17:06:22 amazing stories is not far off though, although "incredible" is closer 17:07:22 elliott, I really like painterly 17:07:27 wish there was a high-res one 17:07:56 -!- sftp has joined. 17:08:01 oerjan: http://www.pulpworld.com/images/amazing_stories_2808.jpg 17:09:04 static const unsigned char sep1752[] ALIGN1 = { 17:09:04 1,2,14,15,16, 17:09:04 17,18,19,20,21,22,23, 17:09:04 24,25,26,27,28,29,30 17:09:04 }; 17:09:05 CHEATER 17:09:06 (busybox) 17:11:34 -!- sftp_ has quit (Read error: Connection reset by peer). 17:13:35 heh 17:14:06 -!- sftp has quit (Ping timeout: 240 seconds). 17:14:29 -!- sftp has joined. 17:18:25 December 2010 17:18:26 Mo Tu We Th Fr Sa Su 17:18:26 1 2 3 4 5 17:18:26 6 7 8 9 10 11 12 17:18:26 13 14 15 16 17 18 19 17:18:26 20 21 22 23 24 25 26 17:18:28 27 28 29 30 31 17:18:30 It's a start. 17:20:18 ...looks pretty finished to me... 17:22:40 oerjan: You also need to handle printing entire years. 17:22:58 oerjan: Which are, traditionally, three months side-by-side. 17:23:01 == pain. 17:23:05 right 17:23:14 oerjan: And I also have to handle Julian dates to be Totally Correct(TM). 17:23:15 coroutines maybe? 17:23:18 (different leap year logic) 17:23:28 oerjan: pretty much, pikhq's implementation manually does coroutines 17:23:35 oerjan: by having one step of the coroutine be a function :P 17:23:39 and then building the rest manually 17:23:44 if I wasn't using C I could use proper coroutines, but eh. 17:23:54 -!- sftp has quit (Ping timeout: 240 seconds). 17:23:59 -!- sftp has joined. 17:24:13 Also I have to clean up pikhq's horrible code ;) 17:26:49 elliott: I previously had it as actual Duff's Device coroutines. 17:27:06 pikhq: I believe that I saw that and told you you were crazy. 17:27:07 :P 17:27:26 elliott: Also: my C code there is heavily heavily Haskell-influenced. 17:27:32 elliott: Lots and lots of tiny functions! 17:27:38 pikhq: Yeah... 17:27:42 Functions are the DEVIL, they take up code space :P 17:27:47 (Usually.) 17:27:54 Any reasonably optimising compiler will inline them. 17:28:05 pikhq: pcc produces smaller code in general than gcc, but it's not very smart, so it's safer to do things by hand. 17:28:23 writecentred(months[i], strlen(months[i]), 20); printf(" "); 17:28:24 writecentred(months[i+1], strlen(months[i+1]), 20); printf(" "); 17:28:24 writecentred(months[i+2], strlen(months[i+2]), 20); printf("\n"); 17:28:25 Two or more, use a for! 17:29:19 :p 17:30:05 elliott: Look at BSD cal for a bit. 17:30:09 pikhq: No thanks! 17:30:18 pikhq: Plan 9 cal is quite nice. BusyBox cal is pretty horrid. 17:30:18 Aaaaw. I wanted to induce serious trauma. 17:30:28 BusyBox cal is a derivative of BSD cal. 17:30:32 pikhq: Does *anyone* actually *use* cal? 17:30:34 what 17:30:36 And by association, a derivative of UNIX cal. 17:30:41 pikhq: And if so, WHY 17:30:42 *WHY? 17:30:48 I DON'T KNOW. 17:30:50 IT'S JUST REVOLTING 17:31:06 cal cal calllll 17:31:12 pikhq: I'm sorely tempted to split it into two programs, the second being a "columnaterate" one. 17:31:17 elliott: I didn't even know there was a cal before I wrote it. :P 17:32:21 pikhq: It reminds me of those olde Unix tymes when people actually used this stuff like they would use an actual calendar. (Except it doesn't show the current day, so it's useful for... figuring out what date a weekday is, and vice versa.) 17:32:27 elliott: i _have_ occasionally used cal in the past 17:32:35 oerjan: for what?! 17:32:42 GNU cal, I'm pretty sure, actually shows the current day. 17:32:45 ...for looking up a date? 17:32:46 Yeah, it does. 17:32:49 pikhq: ncal too 17:32:51 pikhq: but it's a bit ugly 17:32:59 and by the time that was implemented everyone stopped using cal :) 17:33:02 And GNU cal's code is probably revolting. 17:33:20 pikhq: They probably employ Greenspun's Tenth Law to implement, not coroutines, but continuations. 17:33:27 Actually, I hope they do. That would be cool. 17:34:23 6375 cal 17:34:27 Surprisingly, it's smaller than cat... 17:34:35 Also broken! Yay! 17:34:43 for (cal1 = cal2 = cal3 = 0; cal1 || cal2 || cal3; line++) { 17:34:45 pikhq: Spot the stupid. 17:34:57 pikhq: Ooh, I should use termios or something to figure out how wide the terminal is, and, and :P 17:35:31 $ bin/cal 17:35:32 2010 17:35:32 January February March 17:35:32 Segmentation fault 17:35:35 a terminal condition 17:35:42 January, February, March, Segmentation fault, April, June, July... 17:35:47 elliott: ... 17:35:54 pikhq: I done broke it somehows. 17:36:06 elliott: bit of a rough spring, there 17:36:15 Astounding considering my avoidance of memory allocation. 17:36:19 oerjan: you'd better swat yourself 17:36:28 pikhq: I haven't allocated memory *once* in this entire coreutils yet. 17:36:34 pikhq: Malloc is my most-hated function. 17:36:45 elliott: Yeah, I'm just saying it's a whole lot harder to do a segfault without malloc involved. 17:36:48 Yeah. 17:36:55 Well. By accident. 17:36:57 Clearly I've overrun some static array. 17:36:58 Or something. 17:37:02 It's really easy to do segfault intentionally. 17:37:15 int main(){*NULL=0;} 17:37:16 for (mo = 0; mo < 11; mo += 3) { 17:37:19 writecentred(months[mo], strlen(months[mo]), 20); write(1, " ", 1); 17:37:19 writecentred(months[mo+1], strlen(months[mo+1]), 20); write(1, " ", 1); 17:37:19 writecentred(months[mo+2], strlen(months[mo+2]), 20); write(1, "\n", 1); 17:37:22 10+2 = 12, so 17:37:36 pikhq: my months array is 17:37:39 static char *months[] = { 17:37:39 "January", "February", "March", "April", "May", "June", "July", "August", 17:37:39 "September", "October", "November", "December" 17:37:39 }; 17:37:46 pikhq: which is also what yours is 17:37:51 pikhq: so how come you didn't overflow that buffer? 17:38:03 for(int i = 0; i < 11; i += 3) { 17:38:03 output_centered(months[i], strlen(months[i]), 20); printf(" "); 17:38:03 output_centered(months[i+1], strlen(months[i+1]), 20); printf(" "); 17:38:03 output_centered(months[i+2], strlen(months[i+2]), 20); printf("\n"); 17:38:07 ^ from your code 17:38:28 I genuinely do not know how. 17:38:38 pikhq: :D 17:39:02 "Age: 12 years" --BSD CVS. 17:39:05 FreeBSD, in particular. 17:39:14 My code is *incorrect* but it works correctly. XD 17:40:13 pikhq: that isn't the bug though 17:40:16 wait what the fuck 17:40:23 oh, have to reset line 17:41:15 pikhq: btw, i've changed it to start the week with monday 17:41:19 because that's the right thing to do. 17:41:43 elliott: I'm gleefully US-centric except when I'm not. :P 17:41:52 pikhq: By the way... 17:41:53 static char *shortmonths = 17:41:54 "jan" "feb" "mar" "apr" "may" "jun" "jul" "aug" "sep" "oct" "nov" "dec"; 17:42:00 pikhq: NUL BYTES TAKE UP VALUABLE BINARY SPACE 17:42:19 o.O 17:42:43 pikhq: You have to understand: right now, cal is *less than 7 decimal kilobytes*. 17:42:53 I can achieve these things because I am a lunatic. 17:42:57 -!- nopseudoidea has quit (Quit: Quitte). 17:43:25 I presume you still have the Doomsday algorithm. 17:44:10 pikhq: Wait. Your code isn't incorrect. 17:44:20 pikhq: Also, what Doomsday algorithm? All the logic is from your code. 17:44:35 pikhq: 3*3 = 9, 3*4 = 12. So, in fact, the conditional exits after 9. 17:44:37 * elliott makes this clearer 17:45:30 Note to self, centring is broken. 17:45:47 elliott: I use the Doomsday algorithm for figuring out which day of the week the month starts on. 17:46:12 doomy day of doom 17:46:17 elliott: Which is an algorithm Conway invented to figure out which day of the week *any day* falls on with mental computation. 17:46:56 pikhq: Is that... efficient? :P 17:47:27 elliott: Depends on your opinions of division and modulus. 17:47:48 pikhq: Division baaaad. Modulo good. 17:48:01 The algorithm, BTW, is starting_day() in my cal. 17:48:01 pikhq: (Division by power of two acceeeeeptable.) 17:48:09 *firstday in *my* cal :P 17:48:20 /* Thirty days hath September, 17:48:21 April, June and November; 17:48:21 All the rest have thirty-one, 17:48:21 Save February, with twenty-eight days clear, 17:48:21 And twenty-nine each leap year. */ 17:48:22 static int monthdays[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; 17:48:28 Nice comment. 17:48:29 Not only do I improve on your code, I give it nice comments too. 17:48:35 MY SERVICES ARE BOUNDLESS 17:48:40 pikhq: (That rhyme is really terrible in the last two lines.) 17:48:46 Yuh. 17:48:49 It's like, hey, guys, you know those leap years we have now?? WE HAVEN'T UPDATED THE RHYME 17:48:51 Damned February. 17:48:56 "Oh well, let's just do it half-assedly." 17:49:13 pikhq: You know, monthdays could be a ... bitmask. 17:49:19 Well. Tritmask. 17:49:26 Actually, bitmask. 17:49:29 Just special-case February. 17:49:52 0b1X1010110101 17:49:55 Where X doesn't matter. 17:50:15 pikhq: Question: Am I crazy enough to think that (monthdays & (2< 6247 cal 17:51:13 Now to make the change. 17:51:41 elliott: So now you're making it clever. 17:51:54 elliott: And it'll *still* be better than UNIX cal. 17:52:25 NOT IF I HAVE ANY SAY IN THE MATTER 17:53:12 YOU DON'T 17:53:20 YOU CANNOT ESCAPE YOUR DESTINY 17:54:24 6367 link 17:54:27 Nope, it's a net loss. 17:54:40 -!- MigoMipo has quit (Ping timeout: 255 seconds). 17:56:58 MoMo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su 17:56:58 1 2 3 Mo 1 2 3 4 5 6 7 1 2 3 4 5 17:56:59 4 5 6 7 8 9 10 Mo 8 9 10 11 12 13 14 6 7 8 9 10 11 12 17:56:59 11 12 13 14 15 16 17 Mo15 16 17 18 19 20 21 13 14 15 16 17 18 19 17:56:59 18 19 20 21 22 23 24 Mo22 23 24 25 26 27 28 20 21 22 23 24 25 26 17:56:59 25 26 27 28 29 30 31 Mo2 17:57:01 what. 17:57:24 what. 17:57:51 pikhq: Would this not be simpler? http://en.wikipedia.org/wiki/Zeller%27s_congruence 17:58:09 Try it. 17:58:19 pikhq: That's work :P 17:59:15 Oh, BTW, if you're *really* anal about it, you might want to make it handle Julian dates correctly. 18:00:00 IANAL 18:00:33 pikhq: I'm going to, hopefully. 18:00:44 pikhq: Because I want September 1752, the whole calendar before that should look right! 18:01:00 pikhq: Anyway, this thing is still, inexplicably, smaller than cat. And link. 18:01:11 I think because I don't have the errno strings in there. :p 18:03:40 6239 cal 18:03:49 Yeah, it's probably errno doing that. 18:04:24 6079 cal 18:04:27 Success! Shrinkage! 18:04:30 Awesome. 18:04:55 * pikhq looks forward to elliot's install disk for kitten. 18:05:02 Two Ts! Two Ts! 18:05:03 I will be disappoint if it won't fit on a floppy. 18:05:10 pikhq: I was about to say. :p 18:05:26 elliot's insttall disk for kitten. 18:05:44 pikhq: 26231 box 18:05:48 " I ANAL" " Success! Shrinkage!" 18:06:02 WHOOPS LOOK AT THAT BASENAME CAL CAT CHROOT DATE DIRNAME ECHO ENV FALSE KILL LINK PWD SIGNAL SLEEP STRINGS TRUE UNAME VIS AND YES IN 26K 18:06:06 -!- Mathnerd314 has quit (Ping timeout: 245 seconds). 18:06:10 I GUESS I FORGOT TO WRITE ALL THE CODE THAT MAKES THAT HAPPEN 18:06:15 IT IS INSTEAD RELYING ON MAGIC 18:06:17 elliott: And that's before upx. 18:06:19 :D 18:06:29 pikhq: I very much doubt UPX will work on this. 18:06:38 Are you sstrip'ing? 18:06:40 pikhq: I'm using sstrip, which is like strip except it uses a fucking chainsaw. 18:06:41 pikhq: Yes. 18:06:45 It won't work. 18:06:50 elliott: Does it highlight the current day in cal? :P 18:06:55 pikhq: If you give one of these executables to objdump, it says it's an ELF, and then just quits. 18:07:13 Gregor: No. I don't actually like how that looks, but want me to implement it to prove to you JUST HOW BADASS I AM? 18:07:15 upx compresses it, and then fails to decompress it. 18:07:20 Cal doesn't process command-line arguments yet but that's a few bytes of code :P 18:07:39 elliott: Where IS this code? :P 18:07:45 Gregor: ~/code/tools 18:07:51 Gregor: I can get you the latest .cpio.Z if you want. 18:08:03 (Format chosen for ridiculousness. .cpio.lzma (not xz) also available.) 18:08:08 elliott: I only want it if you implemented both cpio and compress. 18:08:15 Gregor: Not yet, but soon :P 18:08:29 Gregor: I could finish the dd/sharchiver and get you a dd/shar, though! 18:08:34 Then you'd only need sh and dd. 18:08:58 pikhq: Did I mention I'm calling the linker manually so I can use --gc-sections/ 18:08:59 *sections? 18:09:04 That actually has an impact on the resulting size. 18:09:14 elliott: -Wl,--gc-sections? 18:09:39 pikhq: OK, looks like pcc does, in fact, have -Wl. 18:09:43 pikhq: I'll try that later. 18:09:53 pikhq: I wish I could use -ffunction-sections, but that's gcc-only :P 18:10:05 pikhq: What, UPX compresses box to 14232 bytes. 18:10:13 Now execute it. 18:10:16 It works. 18:10:20 (I strip -s'd it instead of using sstrip.) 18:10:25 Aaaah. 18:10:28 Awesome. 18:10:33 ^QÉ^AÛu^H<8b>^^H<83>îü^QÛsíH<81>ý^@óÿÿ^QÁè1ÿÿÿë<83>YH<89>ðH)ÈZH)×Y<89>9[]Ãh^^^@^@^@Zè½^@^@^@PROT_EXEC|PROT_WRITE failed. 18:10:34 ^@ 18:10:34 ^@$Info: This file is packed with the UPX executable packer http://upx.sf.net $ 18:10:34 ^@$Id: UPX 3.05 Copyright (C) 1996-2010 the UPX Team. All Rights Reserved. $ 18:10:34 ^@<90><90>^j^B_j^AX^O^Ej^?_j Duuuude, that's so wasting space. 18:10:47 lawl 18:10:57 Quick info for achieving the best compression ratio: 18:10:57 · Try upx --brute myfile.exe or even upx --ultra-brute myfile.exe. 18:10:57 · Try if --overlay=strip works. 18:10:58 Though you might want to sstrip it and then use a compressed filesystem, instead of upx. 18:10:58 DON'T MIND IF I DO 18:11:21 upx: packer_c.cpp:43: static bool Packer::isValidCompressionMethod(int): Assertion `0 && "Internal error - LZMA not compiled in"' failed. 18:11:24 Okay, not ultra-brute then. 18:12:35 Aha, there's a non-free UPX. 18:12:37 Let's try that one. 18:13:36 26752 -> 13708 51.24% linux/ElfAMD box 18:13:38 pikhq: HOW IS THIS WORKING 18:13:45 elliott: MAGIC AND AWESOME 18:13:54 ^@$Info: This file is packed with the UPX executable packer http://upx.sf.net $ 18:13:54 ^@$Id: UPX 3.05 Copyright (C) 1996-2010 the UPX Team. All Rights Reserved. $ 18:13:54 grrr 18:13:57 GET THE FUCK OUT OF MY EXECUTABLE 18:14:19 elliott: strip it! 18:14:27 pikhq: Tried that; it gets killed when I start it :P 18:14:32 Aaaaw 18:14:40 what 18:14:44 I just sstrip'd the upx'd box. 18:14:45 It works. 18:14:56 The UPX string is still there though. 18:15:01 But I saved 9 bytes. 18:15:51 pikhq: "But any modification of the UPX stub (such as, but not limited to, removing our copyright string or making your program non-decompressible) will immediately revoke your right to use and distribute a UPX compressed program." 18:15:57 I do not like these people. 18:16:39 pikhq: Hey, you CAN UPX an sstriped executable. 18:16:41 And then sstrip that. 18:16:44 -rwxr-xr-x 1 elliott elliott 13508 Dec 4 18:15 box 18:17:15 pikhq: Did I mention this box has stupid things like two copies of every signal name? 18:26:52 pikhq: Woo! It all works apart from Julian dates. 18:29:49 pikhq: I know that the leap year logic is different for Julian dates. 18:29:50 Anything else? 18:30:09 nope 18:30:16 -!- Sasha has quit (Ping timeout: 245 seconds). 18:30:23 oerjan: that's it? 18:30:23 cool 18:30:34 unless you want to calculate Easter ;D 18:30:38 no :P 18:31:58 September 1752 18:31:58 Mo Tu We Th Fr Sa Su 18:31:58 1 2 14 15 16 17 18:31:58 7 8 9 10 11 12 13 18:31:58 14 15 16 17 18 19 20 18:31:59 21 22 23 24 25 26 27 18:32:00 -!- Sasha has joined. 18:32:01 28 29 30 18:32:03 pikhq: Can I have a failure badge please? 18:32:25 September 1752 18:32:25 Mo Tu We Th Fr Sa Su 18:32:25 1 2 14 26 38 18:32:26 And another? 18:35:13 elliott, why is it so tricky to just skip some days? 18:35:34 elliott, oh and cfunge has jdn/gregorian conversion code if you need it 18:36:30 Vorpal: it isn't tricky to do that at all :P 18:36:34 also, i don't need to conevrt 18:36:35 *convert 18:36:38 just show correct calendars 18:38:11 1 2 15 16 17 18 18:38:11 15 16 17 18 19 20 21 18:38:11 15 16 17 18 19 20 21 18:38:11 21 22 23 24 25 26 27 18:38:11 28 29 30 18:38:12 wat 18:38:29 pikhq: Your architecture sucks and I blame you wholly :P 18:39:26 -!- Sasha2 has joined. 18:39:59 elliott: Your architecture sucks and I blame you wholly. 18:40:05 pikhq: Your architecture sucks and I blame you wholly. 18:41:17 -!- Sasha has quit (Ping timeout: 240 seconds). 18:41:47 -!- hagb4rd has joined. 18:41:47 pikhq: Yay, I have to handle January, February and March 1752 specially too. 18:42:10 hello 18:42:16 elliott: 貴方のアーキテクチャが悪くて、全部貴方之所為です。 18:42:48 pikhq: wat 18:42:53 elliott: Your architecture sucks and I blame you wholly. 18:43:20 elliott: (anata no âkitekutiȳa kà warukute, sènnhù anata no sei tèsu.) 18:43:30 pikhq: Oh jesus christ, 1683 was fucked up too. 18:43:32 H S E The body of Tho[mas] 18:43:33 the sonn of Tho. Lambert gent. 18:43:33 who was borne May ye 13 An[no] Do[mini] 1683 18:43:33 & dyed Feb. 19 the same year. 18:44:16 pikhq: http://web.mac.com/jac314159/CTC/AllArticles/ShortYear.html 18:44:20 pikhq: Fuck everything about this. 18:45:43 elliott: So, proleptic Gregorian calendar? 18:46:15 pikhq: Now technically POSIX says that Julian dates must be handled 18:46:15 correctly. But then POSIX also said that it loved me, and 18:46:15 I'm sick and tired of it. 18:46:19 Problem solved by way of code comment. 18:46:31 s/Julian/*all* Julian/ 18:46:35 (I'm doing sep 1752) 18:46:54 -!- Goosey has joined. 18:48:11 elliott: that was just a case of the year starting in March, i believe. i think that varied from country to country (the original julian calendar started in january, although an even earlier roman one did start in march) 18:48:20 oerjan: yeah. well. fuck that 18:48:56 actually i'm not entirely sure on the last point 18:49:56 -!- Sasha has joined. 18:50:09 -!- ais523 has joined. 18:51:33 -!- Sasha2 has quit (Ping timeout: 240 seconds). 18:52:31 pikhq: BTW, your cal doesn't pad out single months with the extra \ns. 18:54:51 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds). 18:58:53 pikhq: 18:58:53 $ bin/cal 10000000000 18:58:53 1410065408 18:58:54 lol 19:02:33 elliott: I DISBELIEVE IN THAT BEHAVIOR 19:03:14 pikhq: I hereby proclaim it a feature because it's probably more trouble to fix than it's worth and why are you even calling cal like that. 19:04:05 pikhq: Want the current code? 19:04:30 -!- MigoMipo has joined. 19:06:51 -!- Phantom_Hoover has joined. 19:09:16 pikhq: y/n? 19:09:29 pikhq: I have devised an even better archive format than last time to give it to you in. 19:09:31 Gregor take note. 19:10:15 pikhq: what do you use when filebin is down like it is now? 19:10:17 erm 19:10:18 ais523: 19:10:19 not pikhq 19:10:38 Oh, it's up now. 19:11:01 pikhq: Gregor: BEHOLD: http://filebin.ca/wsszc/tools.minixfs.lzo 19:11:07 I dare anyone to come up with a better archive format than that. 19:12:06 Phantom_Hoover, hi 19:12:15 Phantom_Hoover, gave you more cobble, also helped a bit 19:12:27 Vorpal: Dude, shut up and behold my archival format. 19:12:32 An LZO-compressed Minix filesystem image. 19:12:35 I am a friggin' genius. 19:12:52 elliott, you are insane 19:12:59 Vorpal: And a GENIUS. 19:13:17 Vorpal, does the term "evil genius" not come to mind? 19:13:34 Phantom_Hoover, mad scientist 19:14:28 Vorpal, OS design is not, in fact, a science. 19:14:48 $ cal 10000000000 19:14:48 cal: year 1410065408 not in range 1..9999 19:15:44 by year 10000 we're going to need to change the leap year rules anyway unless we want the year to slip 19:16:03 elliott: Insufficient partitions. 19:16:55 oerjan: By the year 10000, we will clearly have eradicated the Earth, making leap years a curious historical artifact. 19:17:14 well that's a possibility 19:18:01 Gregor: That's Y10K incompliant. 19:18:15 Gregor: Anyway, dude, tools.minixfs.lzo. 19:18:18 Gregor: Can you BELIEVE how awesome I am 19:18:18 Phantom_Hoover, have you abandoned MC? 19:19:08 pikhq: Would you like a copy of the pcc/dietlibc toolchain required to build this? It's not very big. 19:19:20 elliott: AHAHAHAH. 19:19:27 pikhq: wut. 19:19:35 elliott: Oracle added ZFS code to GRUB. Which is under GPLv2+. 19:19:40 pikhq: Indeed. 19:19:48 pikhq: But it's a very limited form of ZFS. 19:20:01 Pity. 19:20:15 pikhq: Now do you want the toolchain? :P 19:20:26 pikhq: I swear I'll come up with an EVEN BETTER packaging method for it. 19:20:48 pikhq: Oh, wait... dietlibc remembers its prefix. You'd have to install it into ~elliott/kitten/stage2. 19:20:58 If only Oracle weren't asshats. 19:21:26 "Here's a ZFS Linux kernel module, under GPLv2. Have at." 19:21:39 pikhq: YOU CANNOT AVOID TALKING ABOUT MY COREUTILS :P 19:21:43 elliott: YES I CAN 19:21:53 pikhq: Do you not APPRECIATE them?!?!?! 19:23:46 Vorpal, I was off IRC! 19:24:17 Vorpal: lol @ http://www.pcgamer.com/2010/12/03/the-minecraft-experiment-day-8-alive/ 19:24:20 Phantom_Hoover too 19:24:48 Ah, he updated. 19:25:55 SHOCKING NOTCH SCANDAL AFFAIR 19:25:55 http://twitter.com/dannyBstyle/status/10591046236905472 19:25:57 http://twitter.com/notch/status/10592312375644161 19:25:59 http://twitter.com/notch/status/10595190087622656 19:26:00 http://twitter.com/notch/status/10595258538663936 19:26:05 READ ALL ABOUT IT 19:26:11 elliott, come to think of it, there's a good chance he'll survive that fall, if he aims for the water. 19:26:28 Phantom_Hoover: And a good change he won't :P 19:26:31 *chance 19:27:06 elliott, "So that night, I hatch the most ingenious and original idea any Minecraft player has ever had: I will build a tower! As tall as the clouds! A beacon to guide me home! No-one has ever had this idea before!" <-- idiot. This is well known. Was used a lot before the compass was added 19:27:28 Vorpal: HURR I'M SWEDISH SO I CAN'T FUCKING UNDERSTAND SARCASM 19:27:36 THEREFORE I WILL CALL FUNNY PEOPLE IDIOTS 19:27:53 (AND ALSO IGNORE THE FACT THAT HE'S PLAYING THE GAME WITHOUT READING ANY SPOILERS OR ANYTHING) 19:28:06 ah 19:28:26 -!- impomatic has joined. 19:28:48 Vorpal, that's a new low for you. 19:28:55 "I wonder what command I'll implement next, oh, I know; compress(1)! That sounds EASY!" 19:28:57 Sub-self irony. 19:30:04 Phantom_Hoover, anyway finished one half more layer on the ROU 19:30:06 [[I had the idea of making a beacon on my second day, must be two weeks ago now :D sorry to dissapoint you, but you were certainly not the first, I doubt I was either.]] 19:30:28 Vorpal, how'd you get the ellipse shape? 19:30:55 compress should be a short one 19:31:02 Phantom_Hoover, from looking at the opposite side 19:31:07 Phantom_Hoover, which was done 19:31:28 Vorpal, aaaah. 19:31:37 -!- evincar has joined. 19:31:51 the evil car is back 19:31:55 I've decided that inaccuracy is tolerable since the thing already has tonnes of it. 19:32:43 oerjan: If I am an evil car, do you really want to mess with me? Have you seen any campy horror movies involving evil cars lately? They mean business. 19:33:11 pikhq: WTF. Unified diffs aren't POSIX. 19:33:46 evincar: not lately. i think i saw parts of christine once. 19:34:23 Hmm, Good Old Games is in trouble. 19:34:39 * Phantom_Hoover feels guilty for torrenting FreeSpace 2. 19:34:42 clearly there is nothing unified in POSIX 19:35:54 Standards shmandards. 19:36:20 Phantom_Hoover: in trouble? 19:37:06 Phantom_Hoover, still you might want to check the thing 19:37:29 Phantom_Hoover, I also widened walkway to workshop 19:38:10 Phantom_Hoover, and added drop pool at the bottom of the ladder 19:38:18 -!- Smmick has joined. 19:38:35 hi 19:38:38 Hola 19:40:19 Smmick: Welcome. 19:41:03 hi evincar 19:41:22 Phantom_Hoover, should I extend the middle floor all the way out? 19:43:13 must extend the ke?? 19:43:26 what? 19:43:34 oh that was an off topic thing 19:44:03 Smmick, this channel is about esoteric programming languages, not esoterica btw. Surprisingly many get that wrong 19:46:01 Phantom_Hoover, I'll default to yes then 19:46:40 you know the programming of computers 19:46:42 are called binary numbers 19:46:56 uh... in a way I guess 19:48:09 computers is when data is transferred or messages with just 0 and 1 19:48:31 knows that any hacker like me 19:48:47 elliott, I think this is one for you 19:49:08 jaja 19:49:16 elliott 19:49:57 " knows that any hacker like me" wow X-D 19:50:21 XD 19:50:28 Smmick: Caultrick of the vordemont. 19:50:36 Smmick: Dost thou know otooooooooooooooooooooooooooooooooooooo? 19:50:45 elliott: Clearly POSIX be damned. 19:50:51 Smmick: I'n your mother crappy -- on the news that mroing -- and everyone died. 19:50:56 Smmick: You too shall die soon! Your house I'm at. 19:51:02 Haha, , throough! the window you pretty. 19:51:03 Smmick: Caultrick of the vordemont. <-- what 19:51:05 OCTETS? OCTETS ARE EVIL 19:51:10 Vorpal: DON'T THE VARIABLE 19:51:15 Smmick: YOU DON'T EVEN KNOW ABOUT THE VARIABLE 19:51:28 i cry softly but tomorrow revenger 19:52:10 whether the variables in a PHP Code 19:52:28 elliott, stop acting like an insane markov chain 19:52:29 Smmick: Whether they, yes, indeed, but soon such conerns will be none of yours; the cone-shaped nature of velvet will be REAVEALED unto you !! 19:52:35 Smmick: and that is when i stab 19:52:46 my uncle just in English or Spanish that if no other language or just know there will be 1 19:53:05 Smmick: Your uncle may only be in English or Spanish now... 19:53:07 But soon there will be THREE. 19:53:48 Gregor: I think "HELP COMPUTER" was an unfortunate choice of topic. 19:54:08 elliott: Bahahahaa 19:54:21 i can fix that. 19:54:39 -!- quintopia has set topic: We welcome our new arsenic-based overlords | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 19:54:55 -!- elliott has set topic: I, for one, am somewhat sparta. | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 19:55:05 I was going to fix quintopia's but then I got A BETTER IDEA half-way through. 19:55:10 lies 19:55:22 -!- Gregor has set topic: I, for one, welcome our new arsenic-based spartans | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 19:55:43 -!- quintopia has set topic: We, for Legion, welcome our new arsenic-based spartans | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 19:55:59 look is at least 3 languages ok 19:55:59 English 19:56:00 Frances 19:56:00 Spanish 19:56:05 ________________ 19:56:12 only if you use them all at once 19:56:14 Smmick: The fourth one is Lojban 19:56:30 -!- elliott has set topic: I, for arsenic, sparta our overlord-based legion. | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 19:56:38 y.. 19:56:45 Yes, indeed, the arsenics are coming to sparta the legion of overlords. 19:56:48 okay that's good enough. i'll leave that one 19:56:49 I don't parle pas español 19:56:58 `addquote I don't parle pas español 19:57:13 `echo NO I DON WANNA 19:58:32 `help 19:58:34 No output. 19:58:34 Runs arbitrary code in GNU/Linux. Type "`", or "`run " for full shell commands. "`fetch " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ 19:58:37 No output. 19:58:44 :/ 19:58:46 ...not promising 19:59:04 `ls 19:59:06 babies \ bin \ paste \ quine \ quotes \ tmpdir.1875 19:59:25 `addquote I don't parle pas español 19:59:34 266| I don't parle pas español 19:59:35 Failed to record changes. 19:59:35 Where to go to the \ bin \ pasta \ quine \ quotes \ 19:59:40 `cd babies 19:59:42 No output. 19:59:49 `ls 19:59:51 babies \ bin \ paste \ quine \ quotes \ tmpdir.2038 20:00:12 huh. apparently changing PWD isn't allowed? 20:00:23 quintopia: There is no cross-session PWD 20:00:26 between commands anyqway 20:00:27 quintopia: The 'babies' directory was for an unpopular feature that decreed that people had babies every time they said "fuck" :P 20:01:12 `run cd babies;ls 20:01:13 babies.db 20:01:18 `quote 265 20:01:20 265|Thanks to nooga for constructive criticism, his ideas and being a constant annoyance. --http://theendisnear.no-ip.info/ 20:01:23 `quote 266 20:01:25 No output. 20:01:43 Well that's nae good :P 20:02:04 Gregor: your partition has become read-only D: 20:02:15 `run echo hi > foo 20:02:16 No output. 20:02:20 `cat foo 20:02:21 hi 20:02:25 okay maybe not 20:02:25 I disagree. 20:02:29 quote program breakage 20:02:38 Probably doesn't support ñ :P 20:02:49 flail 20:02:56 `cat bin/quote 20:02:57 #!/bin/bash \ DB="sqlite3 quotes/quote.db" \ \ if [ "$1" ] \ then \ ARG=$1 \ ID=$((ARG+0)) \ if [ "$ID" = "$ARG" ] \ then \ $DB 'SELECT id,quote FROM quotes WHERE id='$ID \ else \ ARG=`echo "$ARG" | sed 's/'\''/'\'\''/g'` \ $DB 'SELECT id,quote FROM quotes WHERE quote LIKE 20:03:00 -!- Zetro has joined. 20:03:04 Erm 20:03:06 `cat bin/addquote 20:03:09 #!/bin/bash \ DB="sqlite3 quotes/quote.db" \ \ if [ ! "$1" ] \ then \ echo 'Add what quote?' \ exit 1 \ fi \ \ QUOTE=`echo "$*" | sed 's/'\''/'\'\''/g'` \ $DB 'INSERT INTO quotes (quote) VALUES ('\'"$QUOTE"\''); \ SELECT id,quote FROM quotes ORDER BY id DESC LIMIT 1;' 20:03:37 `addquote ẅ 20:03:39 266|ẅ 20:03:40 Phantom_Hoover, get on MC! 20:03:41 Failed to record changes. 20:03:43 Gregor: wat. 20:03:51 That is why part of the DB Table Base date 20:03:57 `addquote 20:03:57 Add what quote? 20:04:02 elliott: Idonno *shrugs* :P 20:04:05 Wow, that [ ! "$1" ] actually works. 20:04:30 `addquote < elliott> Wow, that [ ! "$1" ] actually works. 20:04:32 266|< elliott> Wow, that [ ! "$1" ] actually works. 20:04:33 elliott: So does your mom. 20:04:40 `quote 266 20:04:41 266|< elliott> Wow, that [ ! "$1" ] actually works. 20:04:50 yeah probably the character thing 20:05:04 OHHH y'know what, I'll bet the problem is committing with a commit message including unicode to the hg repo 8-D 20:05:13 haha 20:06:02 que c'est 20:06:05 ?=???=?? 20:07:09 Talk confused me XD 20:07:10 20:07:13 Talk confused me XD 20:07:35 bye 20:07:44 adios to all 20:07:58 Okidoke 20:08:13 ooo_ooo 20:10:43 bye 20:12:24 -!- Smmick has quit (Remote host closed the connection). 20:16:55 -!- Sgeo has joined. 20:17:28 Is the reason people pushed me away from PLT-Scheme because it called itself a "Scheme" and thus I'd get wrong ideas, or is there something wrong with the language itself? 20:17:39 (It's now called Racket) 20:24:29 -!- Phantom_Hoover has quit (Remote host closed the connection). 20:26:30 -!- elliott has left (?). 20:26:32 -!- elliott has joined. 20:27:08 -!- Phantom_Hoover has joined. 20:27:13 o.O 20:27:20 pikhq: I now have mkdir, with everything apart from symbolic modes. 20:28:15 Note to self: always change monitors *before* disconnecting the output device. 20:30:50 pikhq: I need a profiler except for binary size. :P 20:31:05 mkdir is pushing 10k for no apparent reason. 20:31:16 Any answer to my question? 20:31:24 -!- impomatic has left (?). 20:31:43 Phantom_Hoover, so, did you check my ROU work? 20:32:37 I will now. 20:32:43 What shall I call it... 20:32:59 Phantom_Hoover: "So Did You Check My ROU Work?". 20:33:13 Phantom_Hoover: Or: "Pushing 10K For No Apparent Reason". 20:36:27 -!- zzo38 has joined. 20:37:00 What does "I, for arsenic, sparta our overlord-based legion." mean? 20:37:54 zzo38: I think it's pretty clear. 20:39:20 They talked about arsenic on the radio today. 20:40:33 Just... arsenic? 20:40:35 On its own? 20:41:24 They talked about arsenic based lifeform and how it is related to the other elements in the periodic table. 20:41:25 Now You're Cooking with Arsenic-Based Bacteria! A cookbook for those who wish to destroy both rare endangered species and their friends. 20:42:43 elliott, is your pushing me away from Racket in the past to do with it deviating from Scheme, or other reasons? 20:43:08 Gregor: my favourite cookbook. 20:43:20 Gregor: Also, as opposed to common endangered species? :P 20:44:20 elliott: I meant rare ... Idonno, in some other way I can't describe. Rare as in they're representatives of a rare style of life, which is distinct from the particular species being endangered. 20:45:06 Gregor: What you're saying is, they're not well-done. 20:45:39 elliott: Yes. We need to send them back, they're still red inside. 20:45:57 Gregor: That's what happens when you cook with arse-s. 20:46:01 (That was terrible.) 20:46:18 -!- wareya_ has joined. 20:46:34 Their binomial name is Archaea arsedick 20:46:56 (Note: They're not even archaea, and if they were, that wouldn't be their genus :P ) 20:48:14 Gregor: YES IT WOULD 20:48:29 -!- wareya has quit (Ping timeout: 265 seconds). 20:49:28 On Windows I need to run 7z twice to extract a .tar.gz file. On Linux, I can use a pipe command. 20:50:43 zzo38: Is this at all surprising? 20:51:39 evincar: No, I do not think so. But I think 7z does not have a option to extract twice? 20:52:04 arsenic based life? really? 20:52:32 zzo38, you could use tar -zxf on linux 20:52:55 Vorpal, indeed. 20:52:55 Vorpal: But I used: zcat < filename.tar.gz | tar -x 20:53:13 It s/phosphorus/arsenic/s 20:53:15 zzo38, seems needlessly complicated 20:53:27 Vorpal: they're bacteria that can (optionally) use arsenic instead of phosphorus in their DNA and stuff 20:53:29 Phantom_Hoover, oh, still carbon-based then 20:53:29 And if I make Linux distribution, I would also make it work with pipe commands, too. 20:53:32 Vorpal: technically, that's simpler than "tar xzf", Unix-wise. 20:53:39 elliott, longer to type 20:53:45 oerjan: They prefer phos., though. 20:53:57 Vorpal: Ken Thompson would have something to say about you and it wouldn't be pretty. 20:53:58 yeah 20:54:04 (Probably me too, but still.) 20:54:22 Arsenic comes directly below phosphorus on the periodic table of elements. This is an important part of this reason. 20:55:17 zzo38: however i also read that unlike phosphorus, arsenic combounds are usually destroyed by water, so it is still surprising 20:55:21 (They did talk about the periodic table of elements, on the radio, today) 20:55:23 *compounds 20:55:41 oerjan: Yes, then it would make it surprising. 20:57:56 pikhq: Symbolic permissions are PAIN 20:58:50 elliott, are you using POSIX 2008 for this? 20:59:03 Vorpal: 2004. 20:59:12 elliott, 2004!? 20:59:16 elliott, no such thing 20:59:17 Vorpal: I doubt they changed coreutils much, if at all, in the interim. 20:59:24 Well: 20:59:25 The Open Group Base Specifications Issue 6 20:59:25 IEEE Std 1003.1, 2004 Edition 20:59:25 Copyright © 2001-2004 The IEEE and The Open Group, All Rights reserved. 20:59:32 Such thing. 20:59:36 elliott, that is SUS 20:59:41 Vorpal: Same damn thing. 20:59:48 elliott, SUS against POSIX 2001 20:59:53 :P 21:00:00 Vorpal: So? 21:00:06 elliott, so it is SUS 2004 21:00:12 What's the actual advantage of Wikiplia over a VCS with the privileges of which you are very liberal? 21:00:13 Vorpal: Okay. So what's the issue? 21:00:23 elliott, nothing except you not using 2008 edition 21:00:28 Phantom_Hoover: Well, it's literate programming. 21:00:30 Vorpal: Why is that an issue? 21:00:43 Phantom_Hoover: Consider being able to say [[Count words]] (my_file); 21:00:52 Phantom_Hoover: (Of course, this requires a Sufficiently Smart Wiki.) 21:01:02 elliott, VCS blah blah blah with literate Haskell? 21:01:15 Phantom_Hoover, add in a browser GUI for it 21:01:17 Phantom_Hoover: It's not hyperlinked. 21:01:22 Phantom_Hoover: um did you mean wikiplia or wikipl there? 21:01:28 oerjan, either. 21:01:32 Literate programming is when you make it is both a computer program and a book, both at once. 21:01:36 Also, you could do reordering with a wiki. 21:01:39 zzo38: We know. 21:01:49 argh 21:01:58 * oerjan is starting to regret the move :D 21:02:04 oerjan, what move? 21:02:58 also the esolang wiki is down for me 21:02:59 Vorpal: after discovering that wikiPL wasn't actually a programming language i sort of deleted the esolang article, except i technically moved it to wikiplia instead 21:03:11 oerjan, what is wikiplia? 21:03:39 oerjan, google is nhelpful 21:03:43 unhelpful* 21:04:01 see esolangs wiki, duh ... 21:04:05 a joke language from 2007 that _actually_ was "The free programming language that anyone can edit" 21:04:34 oerjan, ah 21:04:34 Vorpal: um the top google hits are quite relevant 21:04:53 oerjan, maybe if you aren't logged in to gmail 21:05:29 Vorpal: are you maybe getting referred to wikipedia instead? 21:05:52 it's suggested for me that i might mean that instead 21:07:07 oerjan, hm wikidictionary (sp?) for "plia" 21:07:11 * oerjan once again curses google's use of redirecting urls 21:07:13 is the top hit for me 21:07:22 that's no 3 for me 21:08:18 ugh at the = operation in symbolic modes 21:08:23 + is "mode |= bit", - is "mode &= ~bit" 21:08:28 but doing = makes me want to die now 21:09:00 bit <<= who; 21:09:00 switch (op) { 21:09:00 case '=': mode &= ~(7 << who); 21:09:00 case '+': mode |= bit; break; 21:09:00 case '-': mode &= ~bit; break; 21:09:01 } 21:09:02 I think that does it. 21:09:26 Vorpal: http://www.cs.cmu.edu/~tom7/sigbovik/wikiplia.pdf and http://radar.spacebar.org/f/a/weblog/comment/1/893 21:09:33 (note PDF) 21:09:57 fuck! i have to handle "a" too 21:10:03 oerjan: whoa, that guy again 21:10:16 elliott: which guy? 21:10:18 oerjan: he keeps popping up all over my internets. 21:10:22 oerjan: *that* guy 21:10:30 the Wikiplia guy 21:10:33 tom7? 21:10:37 yeah 21:10:45 who is that 21:10:50 a guy 21:11:40 He's elliott from the future 21:11:53 is he? 21:12:51 oerjan: ok this guy wasted *insane* amounts of time on this :D 21:15:51 $ bin/mkdir -m -x x 21:15:51 drwxr-xr-t 2 elliott elliott 4096 Dec 4 21:15 x 21:15:54 ok that did not work :D 21:15:57 yeah, "Since I really implemented the latter (I think the only SIGBOVIK paper that comes even close to being real)" 21:16:50 oerjan: so the thing was the implementation of a programming language written in that programming language, right? 21:16:53 interesting 21:17:45 possibly, as usual i'm too lazy to read the whole thing :D 21:18:03 it was ML at the bottom though 21:19:16 oerjan: i've always wanted to maintain one of those "live"; like, you make a chance to add feature X, tell it "yo update compiler!"; then you rewrite the implementation of feature X to use X, tell it "yo update compiler!", and it runs each successive compiler on the source until fixed-point 21:19:20 You could put in the traditional /* fall-thru */ comment at the end of that =; I had to stare at it a moment before noticing that. 21:19:20 (or warns you if it doesn't reach one) 21:20:11 fizzie: comments take up valuable disk space 21:20:45 elliott: it reminded me a bit of Feather 21:20:47 $ bin/mkdir -m g-x x 21:20:47 drwxr-xr-t 2 elliott elliott 4096 Dec 4 21:19 x 21:20:49 what. 21:20:50 what's t again 21:20:57 sticky? 21:21:02 Sticky indeed. 21:21:21 It's the suid/sgid-bit position except for "other". 21:21:31 lawl 21:21:35 Ugh, shit is le broken. 21:21:46 fizzie: YOU SHOULD WRITE ME A SYMBOLIC MODE PARSER ^__^ 21:21:58 elliott, it should be trivial? 21:22:13 Vorpal: it isn't that trivial really 21:22:19 Vorpal: a lot easier without "a" 21:22:29 Vorpal: also consider that i'm optimising for binary size and mkdir is already the second-largest tool... 21:22:31 elliott, a? 21:22:33 (almost 9k!) 21:22:34 Vorpal: a+x 21:22:35 duh 21:22:43 elliott, yes but why is it an issue 21:22:44 Well, you need to handle "ugo+x" anyway. 21:22:53 fizzie: oh lawd, i don't right now 21:23:01 Vorpal: and then consider that a=xu+g-xoug-r is valid 21:23:08 Also remember to handle +X properly. 21:23:09 just set the "affects who" bitmask to all 1 21:23:20 then and with the modes as you see them 21:23:26 or such 21:23:40 fizzie: I meant to say X with the a= there. 21:23:45 X I will handle later :P 21:23:53 Vorpal: It's not exactly trivial... 21:24:10 elliott, true but easier if you write it without premature optimisation 21:24:11 Vorpal: Especially since a naive implementation will end up interpreting ug+xo+w as ug+xugo+w. 21:24:28 Since you have to clear the bitflag on a new "who" iff you've already set some bits. 21:24:45 elliott, hah, what about the , ? 21:24:57 u+w,g+w is quite common or such 21:24:57 Vorpal: Optional... duh. 21:25:01 elliott, yes 21:25:05 You have to handle the case without htat. 21:25:05 What is it with Americans and their crazy equation of higher education with school? 21:25:05 elliott, but you need to handle it 21:25:12 Vorpal: Go on then, show me the ultra-simple trivial code... I'm not prematurely optimising and it's not super-difficult, it's just really irritating. 21:25:21 elliott, not ultra-trivial 21:25:33 Vorpal: Trivial, then. 21:25:35 You said trivial. 21:25:36 but not as hard as you seem to indicate 21:25:45 elliott, yes but maybe "easy" is better 21:25:45 Vorpal: Very irritating. 21:25:47 Not impossible. 21:26:02 elliott, indeed not imposisble even on an FSA I believe 21:26:07 Vorpal: (If you think I'm just trying to get free code out of you, license it GPLv3 or whatever and I won't touch it with a ten foot pole.) 21:26:07 <3 Newspeak workspaces 21:26:46 The suid/sgid/sticky bits I would think are especially annoying, since they're not at all logical like the rest. 21:26:55 fizzie, indeed 21:27:12 bbl 21:27:15 fizzie: Yeah, I'm not even trying to implement those at this point. 21:27:22 fizzie: SO HAVE YOU WRITTEN IT YET 21:27:29 No, and I'm not going to. :p 21:28:04 You're just afraid. Afraid of the truth. 21:30:14 How does something like u=rwx,g=u work, anyway? Does the g=u use the old or the new permissions of u? 21:30:28 Interestingly, chmod here accepts "o+s" without complaints, but doesn't do anything with it. 21:30:49 The rarely used soid bit. 21:30:50 elliott and Vorpal are bickering, Sgeo is obsessing over a language he'll have forgotten in a week and sshc's a pathetic little weed. 21:30:58 All is right with the world. 21:31:33 Quite so. 21:31:44 fizzie: Yes, it sets what the program thinks every other user is. 21:32:20 Phantom_Hoover: not quite, i cannot think of a pun to go with that 21:32:27 fizzie: Is it just me, or are octal modes even easier to read and write than this symbolic crap? 21:32:28 oerjan, how sad. 21:32:36 oerjan, insult sshc with the use of pun! 21:32:40 fizzie: I mean, +r, +w, +x, sure, and their - versions too. But the rest... 21:32:44 Did I mention how much I hate sshc? 21:33:42 For the mkdir case it doesn't matter, but when doing chmod or something, remember that = has to treat files and directories differently. 21:33:51 it's a lot of hate for someone who hasn't spoken recently 21:33:58 -!- Zetro has quit (Remote host closed the connection). 21:34:35 fizzie: seriously? 21:34:37 fizzie: ;____; 21:34:43 fizzie: who invented symbolic modes. 21:34:51 Satan. 21:34:57 apart from him 21:35:07 Yes, u=rwx will do the same as u+rwx for a directory, but it will remove the suid bit for a file. 21:35:12 well probably hitler, then 21:35:16 fizzie: what. why. 21:35:41 Or in other words, the "= clears unmentioned bits" has an exception that a directory's suid/sgid bits aren't touched, even if you don't specify them. 21:36:02 fizzie: ;_; why 21:36:11 Hey pikhq. 21:39:21 http://d116.com/lispm/3675xmas.gif Christmas discount on a Symbolics 3675! 21:39:23 Actually it seems that what is done to suid/sgid bits on a non-file is implementation-defined, so you could be POSIXly compliant and ignore that distinction. 21:39:56 (But o+s is explicitly defined to be not an error, it just doesn't do anything.) 21:45:40 Incidentally, the "ug+xo+w" and "a=xu+g-xoug-r" you mention up there are not valid. The grammar (for the "actionlist" part of "+xo+w" or such) is a list of "action = op | op permlist | op permcopy", where "op" is [+-=] and "permlist" is a list of [rwxXst] and "permcopy" is [ugo]. 21:46:27 With suitable commas they become legal, of course. 21:47:20 fizzie: Hmm, so you really do only have to clear it on comma? 21:49:02 Within one clause's action list, you can have an arbitrary list of stuff like +rwx-o+g-t=g, but you can't have both [ugo] and [rwxXst] characters within the same op (+, - or =), and ops that have [ugo] must have only one of them. 21:51:15 fizzie: This is a mess. 21:52:34 Maybe I should try this out. Though I don't quite know what things like mkdir do with the "use current permissions" characters; maybe those refer to the usual umask-derived permissions. 21:53:04 fizzie: Oh, all I'm doing is a function to convert a symbolic mode string to the regular octal bits. 21:53:14 fizzie: Right now the "base mode" is 0777, but you could easily take that as a parameter. 21:53:27 (It also does octal, but that's just strtol and hardly worth mentioning.) 21:53:46 Maybe I should try this out too, after all. 21:53:52 fizzie: If you do get it working, a WTFPL license would be nice, since it's much easier to minimise some non-minimised code than to write some small code the first time. :p 21:54:00 Or we could have a golfing competition, and there would be no survivors. 21:54:09 Unfortunately nobody else here actually codes. 21:56:57 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds). 21:57:40 I'll try it out, but I don't think I have a good test set. 21:57:58 Hell, you think I do? 21:58:08 Maybe I could generate all possible productions (of length < K) out of the POSIX grammar, and then compare it with the chmod utility. 21:59:56 fizzie: Or you could just try u=x,g-o,o-x,oug-r,a+x. :P 22:00:03 (I have no idea what that produces when run on initial mode 0777.) 22:03:15 But everybody else here actually codes! 22:04:43 WTF 22:04:52 The scroll wheel doesn't work AT ALL in the Newspeak IDE 22:05:55 Sgeo: The scroll wheel doesn't work at all on my computer, but that is because I disabled it. 22:06:21 But everybody else here actually codes! 22:06:25 zzo38: Phantom_Hoover doesn't. 22:09:38 fizzie: DO YOU FEEL THE PAIN YET 22:09:45 -!- kar8nga has joined. 22:09:52 Not really, but this will be a bit on the large side. 22:10:44 fizzie: I won't hold it against you if you aren't POSIX-compliant with something like mutually-recursive assignments. :p 22:12:00 I think those permcopy ops are actually always resolved against the "old" (as in, completely before any clauses have been applied) mode, if I read the spec right. 22:12:11 -!- evincar has quit (Quit: ChatZilla 0.9.86 [Firefox 3.6.12/20101026210630]). 22:14:25 fizzie: I was just using it as a placeholder for [stupid thing nobody really cares about]. 22:18:27 -!- Phantom_Hoover has joined. 22:19:03 I want to change the topic to "Human slaves / in an arsenic nation". 22:19:18 But I doubt anyone'd get it/ 22:20:00 -!- Sasha has quit (Ping timeout: 260 seconds). 22:20:02 Vorpal: In 2004, a new edition of the POSIX:2001 standard was released, incorporating two technical corrigenda. It is called POSIX:2004 (formally: IEEE Std 1003.1-2004) [4].[3] 22:20:05 Vorpal: Ha ha, you're wrong. 22:20:25 -!- Sasha has joined. 22:21:21 elliott, oh so I was 22:21:37 POSIX 2008 is online though, yay. 22:22:03 elliott, yes since last yeart 22:22:05 year* 22:22:13 or even since two years ago soon 22:22:28 fizzie: http://www.opengroup.org/onlinepubs/9699919799/utilities/chmod.html seems to specify the symbolic modes a little more than 2004, but I may be wrong. 22:22:43 compress is still there, god bless it. 22:22:44 elliott: Okay, it does the same thing with u=x,g-o,o-x,oug-r,a+x (for base mode 0600) than chmod, and works with other spot-testing too, but it's hugely long. 22:23:00 fizzie: Longer than http://git.busybox.net/busybox/tree/libbb/parse_mode.c? 22:23:09 (WARNING: LGPL CODE, YOUR BRAIN WILL VIOLATE THE LICENSE!!11) 22:23:23 http://p.zem.fi/modeparse.c -- there's a plaintext download link there. 22:23:26 Well, maybe not quite that long. 22:23:48 fizzie: Can I has that under WTFPL? 22:23:59 Sure. 22:24:22 Don't use it in a nuclear plant maybe, though. 22:24:30 fizzie: Hoorj. So what are you, in "this code is based on code written by" terms? "fizzie" "Heijkyj Kallasojidio"? "That guy over there"? "turgledurd@zem.fi"? 22:24:32 I don't want to be responsible for a glass crater somewhere. 22:24:39 Duly Noted. 22:24:40 *noted. 22:25:09 I think I've usually just said "use the real-name", so I guess that. 22:25:26 fizzie: Got an email address you want me to put in little angle-brackets to the right of it? 22:25:44 -!- MigoMipo has quit (Ping timeout: 264 seconds). 22:26:27 elliott, so wait, the LGPL is *worse* than the GPL? 22:26:31 Phantom_Hoover: No. 22:26:35 Phantom_Hoover: I'm being silley. 22:26:45 I wonder... I usually use "fis+something@zem.fi" for this kind of stuff, with a suitable +something, but I'm not sure what this could be. Maybe just fis@ then. Unless you figure out a good identifier there, they all go to the same box anyway. 22:26:59 fizzie: fis+kludge@zem.fi? :P 22:27:01 I'll just use fis@. 22:27:02 fis+rwxXst@zem.fi. :p 22:27:04 + is kinda ugly anyway. 22:27:27 mode_t new = old; 22:27:31 Out with the old, in with the new. 22:27:39 who_mask sounds like the best kind of mask. 22:28:08 It does the suid/sgid stuff somewhat sensibly, but those are partially implementation-defined anyway. 22:28:44 -!- Sasha2 has joined. 22:28:45 fizzie: Oh man, you use Allman style. That's perverse, dude. 22:29:02 I think it's actually illegal in most civilised countries. 22:29:36 And C99! If it didn't work I wouldn't be forever grateful. 22:30:00 Is it accidentally C99? It might be, I wasn't especially careful with it. 22:30:03 AND IT GOES OVER 80 COLUMNS OH MY GOD YOU'RE JUST LIKE HITLER 22:30:13 fizzie: You declare two variables in a while loop, so yeah. 22:30:16 It doesn't matter though :P 22:30:18 -!- Sasha has quit (Read error: Connection reset by peer). 22:30:23 But that's a block. 22:30:29 fizzie: (But Allman style really is unforgivable.) 22:30:29 You can declare variables at the beginning of a block. 22:30:33 Oh, wait, yes it is. 22:30:37 I'm just so used to not doing so, you know! 22:31:32 I'd try it out in gcc -ansi -pedantic, but apparently mode_t doesn't exist even with #include under those flags. 22:31:41 It's 22:32:03 Okay, there's C99 in the main function. 22:32:11 if (*str == 'u' || *str == 'g' || *str == 'o') { 22:32:12 case 'u': bits = (old&04700) | ((old&0700)>>3) | ((old&0700)>>6); break; 22:32:12 case 'g': bits = (old&02070) | ((old&0070)<<3) | ((old&0070)>>3); break; 22:32:12 case 'o': bits = (old&7) | ((old&7)<<3) | ((old&7)<<6); break; 22:32:26 How WASTEFUL! I will convert it into a switch statement, because I'm lovely. 22:33:17 Yes, it certainly could be that, though you'd then have to str++ thrice. 22:33:38 fizzie: As far as I can tell, you also have an "ok" variable that is executed iff it wouldn't go to a default clause. 22:33:45 Is there some reason that can't just be a default clause? 22:34:00 Well, it has to break out of the while loop. 22:34:01 I mean, apart from not breaking out of the for without a label. 22:34:09 Yes, that's the only reason for it. 22:34:24 You can gotoize it or something if you like. 22:34:28 I am. 22:34:28 :P 22:36:11 It doesn't do the "don't touch suid/sgid bits of a directory when doing =" thing GNU coreutils chmod does. 22:36:35 fizzie: That seems stupid to me, anyway. 22:36:55 And, well... if you have a suid bit set in the old mode and do a "g=u" mode, it doesn't set the sgid bit. That's a bit debatable anyway. 22:36:57 fizzie: Er. 22:36:58 elliott, fizzie: I'm planning something BIG in MC atm 22:37:02 feel free to come and watch 22:37:02 $ bin/mkdir -m -x x 22:37:04 $ ls -l 22:37:05 d--------- 2 elliott elliott 4096 Dec 4 22:36 x 22:37:16 fizzie: Technically I use int in mkdir.c rather than mode_t; could it be that? 22:37:21 mode = parsemode(optarg, 0777); 22:37:22 is the call. 22:37:32 $ ./tmp "-x" 0777 22:37:32 00666 <- -x [00777] 22:37:35 Vorpal: What is it, then? 22:37:36 Well, that's what my code does. 22:37:54 You get to debug all your minimizations yourself. :p 22:37:56 fizzie: mode_t fixed it. 22:37:56 elliott, a throne room 22:38:01 Vorpal: wat. 22:38:13 fizzie: I haven't minimised it at all yet, actually. :P 22:38:16 Thus making mkdir the largest utility so far. 22:38:25 elliott, what I just said 22:38:36 Oh. Well, then. But I'm not instantly sure why mode_t'd matter; but if it did, good for you. 22:38:42 fizzie: Signed/unsigned? 22:38:45 fizzie: while (*str == 'u' || *str == 'g' || *str == 'o' || *str == 'a') { 22:38:55 fizzie: Now you have no excuse; that's for (;;) with a goto in the default. :P 22:39:09 Sure, sure. 22:39:23 UNFORGIVABLE! Just kidding it's fine, you're cool. 22:39:35 It also has COMMENTS, remember to remove all those. 22:39:36 Actually it's a "for (;; str++)" which is now my favourite type of control structure. 22:40:10 elliott: Mmm, for(;;str++) 22:40:14 fizzie: Those don't take up binary space :-P 22:40:32 -rwxr-xr-x 1 root root 48K Apr 28 2010 /bin/mkdir 22:40:32 -rwxr-xr-x 1 elliott elliott 9.0K Dec 4 22:39 bin/mkdir 22:40:35 Perhaps I shouldn't worry too much. 22:40:40 (And the former one is even dynamically-linked.) 22:40:48 Also you might not exactly want to call abort() there if the mode string has some trailing dirt that was not parsed. :p 22:40:54 fizzie: Fixed that. :P 22:41:03 fizzie: (Made it return -1, i.e. "No! Bad mode! Bad user! You're a horrible person!") 22:41:33 fizzie: Actually, got a simple way to check whether something's a valid mode? That high bit has a limited range of values, I think. 22:42:39 fizzie: I like how your code readily accepts u-+q. 22:42:44 That should be a valid mode. 22:42:51 Oh, wait, no. 22:42:52 * Sgeo decides to try DropBox 22:42:55 Mode_t is just unsigned. 22:42:59 Sgeo: *Dropbox 22:43:31 * Sgeo vaguely hopes that Dropbox doesn't require installation on all computers 22:43:43 I'm willing to install it on this machine, but not my old machin 22:43:45 machine 22:44:00 I think anything >= 0 and <= 07777 is an okay mode; but in things like struct stat they use a mode_t field where the higher bits are for file type. 22:44:29 Sgeo: Of course it does. (Unless you want the web interface.) 22:44:42 elliott, as long as it has a web interface, I'm ok 22:44:49 My taskbar just died 22:45:37 Interestingly, the standard explicitly allows the +, - and = operations without any permissions listed, so "g+" and "a+-" are valid no-ops, and "o=" is okay for basically "o-rwx". 22:47:16 fizzie: I am having great trouble figuring out where to add "oh hey, something invalid" here. :p 22:47:52 fizzie: Hmm, yours accepts u,... 22:48:00 As a nop. 22:48:19 That one might not be quite kosher, that's true. 22:48:29 The "actionlist" part shouldn't be empty. 22:48:31 * Sgeo swears at typo 22:48:58 You could set "actions = 0" at the /* "action = op | op permlist | op permcopy"; always op first */ 22:49:13 comment, then actions++ in the loop below, and if (!actions) ... after it. 22:49:17 If you want. 22:49:21 case '+': case '-': case '=': goto afterwhomask; 22:49:21 default: return -1; 22:49:23 in the ugoa block 22:49:24 seems to do it 22:49:48 (I really want to get rid of that second switch though! But I don't think I can. 22:49:58 i.e. the +-= switch after a condition already proved it true 22:50:01 *can.) 22:51:02 -!- humanB has joined. 22:51:05 Hmh, right; you can either test for +-= after reading the "who" part -- because any action must start with an op -- or count the actions as you're reading them and test for count>0. 22:51:36 fizzie: It's more that I want to replace the outer if with a switch, but there's code common to each action. 22:52:02 -!- humanB has left (?). 22:53:32 fizzie: Hrm, does chmod usually have a race condition? 22:53:37 i.e. read mode, modify, write 22:54:30 -!- MigoMipo has joined. 22:54:33 I don't think I've ever read the code of any chmod utility, but it doesn't sound very easy to avoid. 22:54:47 Can't install Dropbox desktop client on the old machine 22:54:59 And the upload limit for single files from the web interface is 300MB 22:55:42 * Sgeo gos ack to using ... why don't I just use the USB drive? 22:56:23 Hmm, my -p option ignores -m for the outer directories. Now why would that be... 22:56:54 If I can find it :( 22:56:57 Oh, I see. 22:56:58 Wait, what? 22:57:25 Okay, what the fuck. 22:57:26 Heh, GNU coreutils chmod: 22:57:26 $ chmod --r t 22:57:27 chmod: option '--r' is ambiguous 22:57:39 fizzie: What kind of mode is --r? 22:57:40 :P 22:57:45 It's just -r. 22:57:57 fizzie: That is *valid*? Wow. 22:58:06 Well, it works with the usual "chmod -- --r t" thing. 22:58:33 chmod o+=x is nice and confusing :P 22:59:01 Isn't that just equal to o=x? 22:59:11 Yup, but it sure doesn't look like it to a C programmer 8-D 23:00:27 -!- humanB has joined. 23:00:50 97174 total 23:01:03 false, true, yes, sleep, pwd, echo, dirname, basename, uname, signal, link, cat, date, chroot, env, strings, vis, cal, kill, mkdir. 23:01:21 27995 box 23:01:25 When compiled as one executable. 23:01:47 -!- humanB has left (?). 23:01:53 14460 box 23:01:55 When UPX'd. 23:02:06 (Would be smaller without that goddamn UPX copyright notice in there. 23:02:50 Dear old computer: Please do not take two hours to copy a 500MB file from disk to USB drive 23:03:18 * Sgeo wonders if it's actually minutes that I'm seeing 23:04:14 Oh yeah, and all of those are on 64-bit. 23:04:16 It's a bit shame that UPX doesn't do anything really clever, like disfilter in kkrunchy: http://www.farb-rausch.de/~fg/code/disfilter/readme.txt ("disassembling binary x86 code preprocessor that increases compressability by LZ-based compressors or context coders") 23:04:18 On 32-bit, it'd be even smaller. 23:04:28 (kkrunchy is, of course, Windows-only.) 23:05:03 elliott, the throne room will be 25x25x7 at least 23:05:11 Vorpal: 128x128x128 in your face. 23:05:37 elliott, yes but try to fit that in mt vorpal. Also mine will be ready long before your 23:05:43 elliott, also it will not be a single room 23:06:38 $ bin/mkdir -m 0 -p x/y/z 23:06:38 x: File exists 23:06:38 x: File exists 23:06:39 What. 23:07:01 Heh; mkdir here uses default permissions for -p. 23:07:03 That seems wrong to me. 23:07:29 For each dir operand that does not name an existing directory, effects equivalent to those caused by the following command shall occur: 23:07:29 mkdir -p -m $(umask -S),u+wx $(dirname dir) && 23:07:29 mkdir [-m mode] dir 23:07:29 O-kay. 23:09:28 Why was I playing Runescape in my dream? 23:09:56 fizzie: Is umask implicit? 23:11:11 In mkdir() and the like. 23:11:58 What good web browsers are there that work on Win98? 23:12:05 Sgeo: opera 23:12:17 That's it? 23:12:54 * Sgeo watches the time remaining thingy keep going up 23:15:43 * Sgeo is reading some Win32 tutorial 23:15:45 If you mean the syscalls that take a mode_t (like mkdir, open and such), yes, I think those apply the umask always. 23:16:14 "hPrevInstance used to be the handle to the previously run instance of your program (if any) 23:16:14 in Win16. This no longer applies. In Win32 you ignore this parameter. " 23:16:35 * Sgeo is very curious as to what that was used for, exactly 23:17:04 fizzie: So then 23:17:05 mkdir -p -m $(umask -S),u+wx $(dirname dir) && 23:17:08 fizzie: should have mode 0777. Right. 23:17:13 (Presumably?) 23:17:27 Er, maybe not. 23:17:30 fizzie: I'm confused now. 23:17:34 What mode would that correspond to? 23:17:37 * Sgeo loses interest 23:17:57 Sgeo: You can go steal already-loaded data by memory-copying from the previously opened instance, to start faster. 23:18:03 Sgeo: See http://blogs.msdn.com/b/oldnewthing/archive/2004/06/15/156022.aspx 23:20:13 * Phantom_Hoover decides he ought to murder the people who are ruining the cool bits of the Museum of Scotland. 23:20:31 -!- kar8nga has quit (Remote host closed the connection). 23:20:56 That is awfully complicated. But "umask -S" seems to return the symbolicized version of what (0777 & umask) ends up like, so "$(umask -S),u+wx" would just mean "like what mkdir without a mode argument usually does, except the user's write+execute bits are forced on always, even if umask would not". 23:21:04 Presumably because otherwise you couldn't create subdirectories under it. 23:21:38 fizzie: Right, but as far as the argument to the malloc syscall... 23:21:46 Well, default uhh... 23:21:48 BRB 23:21:49 fizzie: Okay, I'll just pass 0777. 23:21:51 Sound reasonable? :p 23:22:14 -!- Sgeo has quit (Read error: Connection reset by peer). 23:22:19 $ bin/mkdir -m 0 -p a/b/c 23:22:19 a: File exists 23:22:19 a: File exists 23:22:22 Now to diagnose this. 23:22:30 Actually, happens with just -p too. 23:23:21 Yes, I think passing 0777 to mkdir(2) is reasonable; if your user gives a -m argument, you're going to have to manually chmod it anyway, unless you really want to do some sort of "okay, here the umask didn't change the mode, so I don't need to" logic. 23:24:01 fizzie: Manually chmod it? 23:24:02 Why? 23:24:14 fizzie: Oh, because of the umask? 23:24:23 Because "mkdir -m a+rwx foo" must set all the bits, not just umask-allowed ones, right. 23:24:23 fizzie: You mean I can't just do mkdir(path, mode)? 23:24:33 fizzie: You can't see it right now, but I'm vomiting. 23:24:37 fizzie: Does chmod really bypass that? 23:24:39 The syscall. 23:24:50 Yes, it does. 23:25:04 Otherwise you'd have no way of setting any non-umask-allowed modes. 23:25:04 There's a rumor going around that the PS3 master key has been found... 23:26:57 If true, this would probably make the PS3 the single most hacked console of this generation. 23:28:40 -!- Sgeo has joined. 23:31:31 -!- hagb4rd has quit (Ping timeout: 245 seconds). 23:31:50 pikhq, wait, there's a single key that gives unbridled access to all consoles? 23:33:31 * Sgeo goes to install Win98 23:34:09 -!- hagb4rd has joined. 23:37:23 elliott, more TV Tropes madness: Crowning Moment of Awesome is now just Moment of Awesome. 23:37:49 ... 23:37:58 what about funny 23:38:20 Still Crowning, AFAIK. 23:38:25 -!- augur has quit (Remote host closed the connection). 23:38:46 Awesome Moment of Crowning is less punny now :( 23:38:58 No, wait, it's been made into "Funny Moments". 23:39:05 ..................... 23:39:37 Phantom_Hoover: i was right 23:39:41 fuck tv tropes 23:39:58 so i guess it's been taken over by "serious" people? 23:40:57 -!- Phantom_Hoover has quit (Remote host closed the connection). 23:42:34 Where did I put my Windows 98 license key? 23:42:56 Sgeo: In the microwave. 23:43:07 -!- MigoMipo has quit (Read error: Connection reset by peer). 23:45:32 An email to myself titled "Random porn" is not helpful here 23:48:52 Sgeo: We needed to know that! 23:49:03 It didn't actually contain any porn 23:50:43 well try the folder named "My Al-Qaeda contacts" 23:51:27 And if not that, steganographically encoded into your PDF copy of "Sodomy and the Pirate Tradition" 23:51:58 I need COMPUTER SCIENCE BOOK ADVICE. As in what to buy. 'cuz I wanna binge. 23:52:11 Candidates: SICP, Purely Functional Data Structures, Land of Lisp, Real World Haskell, ...? 23:52:33 Facebook for Dummies //I'm sure that's on a CS bookshelf somewhere due to stupidity 23:52:57 Didn't you recommend Purely Functional Data Structures to me once? 23:53:14 Yes. I have heard extremely good things about it from sources I trust highly, and I have read other things by Okasaki. 23:53:19 But the book itself I haven't read. 23:53:51 ...there are sources elliott trusts highly? 23:54:17 oerjan: You do know I like people, right? :P 23:54:36 yeah but you never _agree_ with them... 23:55:28 -!- Zuu has quit (Ping timeout: 255 seconds). 23:55:34 oerjan: It's not my fault most people are wrong. :p 23:56:00 true, true. i mean NONSENSE 23:56:01 oerjan: To be fair though, most people in #esoteric aren't indoctrinated into the same cult I am, so it's only natural that you basically just see me disagreeing. 23:56:35 oerjan: your children are all goats! 23:56:51 entirely correct 23:57:01 you were spot on, there 23:57:58 oh right... 23:58:33 oerjan: now *i'm* confused. anyway recommend a CS book to me. (<-- sentence least likely to produce helpful results when directed at oerjan :P) 23:59:03 suggest a bo-- categories for the working mathematician --ok about CS 23:59:06 i am merely confirming that my children are, in fact, all goats. 23:59:17 oerjan: and horses, too 23:59:22 indeed 23:59:26 elliott: http://www.abebooks.com/products/isbn/9780814712368 <-- my advice 23:59:40 Err ... recommendation. 23:59:48 Actually, neither sounds better :P 23:59:58 * oerjan hasn't actually read categories for the working mathematician 2010-12-05: 00:00:04 Gregor: Now come on, piracy is more a social issue than CS-related. 00:00:10 And I've already made my mind up about copyright! 00:00:25 oerjan will now swat me 00:00:25 elliott: And sodomy? 00:00:30 Gregor: I'm all for it! 00:02:03 Note to self: mention support of sodomy ==> conversation dies. 00:02:08 X-D 00:02:13 I had nothing further to say :P 00:04:15 elliott, that 128x128x128 thing... do you realise how enormous it will actually be? 00:04:30 elliott, considering a 25x25 room is HUGE 00:04:39 Vorpal: I have a vague comprehension in my head. Is that 25x25 room there right now? 00:05:03 Vorpal: I'm imagining it like a really tall shopping centre/mall, not a bunch of rooms. :p 00:05:05 Dear Ubuntu: Learn to count 00:05:12 Oh wait 00:05:14 elliott, well partly, and it is not 7 high yet 00:05:15 Idea for D&D game. When you play D&D game, maybe, you can make your character ettercap or other monster character, and then ask your brother if they want their character to be afflicted lycanthropy. And then see if there is human NPC in your party, too. 00:05:18 !help 00:05:19 Guess it's not counting a directory as a file 00:05:26 Vorpal: Is serv on? 00:05:48 !haskell 128^3 00:06:27 !help 00:06:53 oerjan: 2,097,152 m^3. 00:06:56 1 block ~= 1 m^3 00:07:02 Maybe I should just go online and find something? 00:07:07 oerjan: it's the biggest cube possible because the world is only 128 high :) 00:07:13 help: General commands: !help, !info, !bf_txtgen. See also !help languages, !help userinterps. You can get help on some commands by typing !help . 00:07:14 help: General commands: !help, !info, !bf_txtgen. See also !help languages, !help userinterps. You can get help on some commands by typing !help . 00:08:02 !haskell 128^3 / 86400 00:08:04 Vorpal: is serv on? 00:08:21 !echo hi 00:08:27 elliott, now it is all there 00:08:33 Gregor: this is not very promising 00:08:34 elliott, though just 2 high so far 00:08:44 elliott, don't think so. Anyway it is in my mountain 00:08:59 Vorpal: I'll come see. 00:10:44 `perl print (2097152/86400) 00:10:48 erm 00:10:53 `perl print (2097152/86400); 00:10:58 oh wait 00:11:09 `help 00:11:12 *sigh* 00:11:16 * Sgeo starts xPUD 00:11:24 I DON' WANNA 00:11:33 -!- EgoBot has quit (Ping timeout: 240 seconds). 00:12:23 Runs arbitrary code in GNU/Linux. Type "`", or "`run " for full shell commands. "`fetch " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ 00:12:44 No output. 00:12:44 No output. 00:12:52 `run perl -e 'print (2097152/86400);' 00:12:54 24.2725925925926 00:13:11 elliott: so how many blocks can you place per second? 00:13:35 if it's one, and you don't sleep, then that's how many days you need 00:14:37 oerjan: yeah yeah fizzie's done all the calculation -- 00:14:40 oerjan: i don't need to fill the cube duh 00:14:44 i'm just going to have floors inside it 00:14:53 oh. 00:14:58 you can place like 2 blocks/s 00:15:02 oerjan: what will take ages is emptying 128x128x5 or so 00:15:06 of water 00:18:42 fizzie: Question. Why does mkdir have an -m parameter? 00:19:58 -!- HackEgo has quit (Remote host closed the connection). 00:20:06 -!- EgoBot has joined. 00:20:10 -!- HackEgo has joined. 00:20:11 elliott: To make you cry. 00:20:19 Gregor: BUT IT'S POINTLESS 00:20:30 -!- augur has joined. 00:20:30 -!- nooga has quit (Ping timeout: 250 seconds). 00:21:13 -!- zzo38 has quit (Remote host closed the connection). 00:21:22 -!- sftp has quit (Remote host closed the connection). 00:21:32 elliott: RACE CONDITIOX 00:22:02 Gregor: There's one *already*; malloc has to use chmod() because mkdir() is limited to umaskable stuff. 00:22:21 ... malloc? 00:23:16 Also, if you pass the mode requested into mkdir then chmod, you'll only be /expanding/ permissions, not /reducing/ permissions, which is OK. 00:23:27 (Idonno if it does this, and I'm just being a jerk anyway :P 00:23:42 ... malloc? 00:23:43 mkdir 00:23:44 you know what i meant 00:23:56 -!- sftp has joined. 00:24:00 I figured it out, but it actually did take me a while ... like, 'til my next line :P 00:24:29 Gregor: Anyway, mkdir is 9229 bytes and I consider this unacceptably large. :P 00:24:32 It would be small without -m. 00:24:58 $ bin/mkdir -p x/y/z 00:24:58 x: File exists 00:25:04 whyy do i get this error it doesn't sense-make 00:25:12 and then x is empty 00:25:27 Wow, that is bizarrely huge ... it'd be smaller if you used shared objects or a multibinary X-P 00:25:46 Gregor: It is, in fact; I have a script to do that. 00:25:54 Gregor: 28155 box 00:26:07 Gregor: That's false, true, yes, sleep, pwd, echo, dirname, basename, uname, signal, link, cat, date, chroot, env, strings, vis, cal, kill and mkdir. 00:26:14 Gregor: BUT WAIT, THERE'S MORE 00:26:40 Gregor: $ upx --ultra-brute --overlay=strip box && ./sstrip box 00:26:41 $ wc -c box 00:26:41 14532 box 00:26:44 And yes, it works. 00:26:55 Also, it's bigger than it needs to be because UPX puts a UPX copyright notice in the file because it's stupid. 00:27:14 (Supposedly even though it's GPL'd, somehow they think they can make removing this a license violation revoking even your permission to *use* it. :P) 00:27:28 Gregor: BUT YEAH I TOTALLY JUST KINDA 14.5 DECIMAL KILOBYTESDED A BUNCH OF UTILITIES YO 00:27:51 Gregor: Oh, and that box has flaws such as multiple copies of every signal name. And a few functions that could be shared. 00:28:00 What I'm saying is: I'M AWESOME. 00:28:08 Gregor: Did you ever bother actually unpacking that .minixfs.lzo? :P 00:28:18 I spent at LEAST two minutes thinking of a format insane enough. 00:28:30 I like how it's just "box" 00:28:36 Not busy, tiny, anything. 00:28:40 Gregor: I can't decide whether it's busy or not. 00:28:45 But it definitely is a box! 00:29:11 How 'bout industriousbox :P 00:29:13 Gregor: The box executable has some flaws right now; you can't symlink right now, only argv[1]. And it has no error reporting for no command arg (just segfaults) or command not found. :p 00:29:15 But eh. 00:29:18 Gregor: How about picobox. 00:29:37 Gregor: Let's put it this way: I am pretty sure that nobody has used a toolchain capable of producing executables that small from this code before on Linux. 00:29:42 ... what could possibly be making it difficult to do with symlinks? 00:29:49 Gregor: I am 99% sure I am the first person to compile dietlibc with pcc. 00:29:56 (Since I had to do patching.) 00:29:58 Quite probably. 00:30:01 And yes, it produces smaller executables than gcc. 00:30:09 ... what could possibly be making it difficult to do with symlinks? 00:30:11 Grrrr 00:30:14 What if argv[0] has path components? 00:30:14 :p 00:30:19 VBoxGuestAdditions doesn't support Win98 00:30:23 box.c is just a really quick autogenerated thing anyway. 00:30:24 Sgeo: ...no shit. 00:30:44 elliott, uh? 00:30:47 Gregor: Oh yeah, and the dietlibc-linked static pcc is 34K. 00:30:53 Gregor: This is the kind of compiler fit for the late 80s. :P 00:30:55 Mmm right, path components, okidoke. Still, strrchr *shrugs* 00:31:24 Gregor: Huh, I didn't realise strrchr was actually POSIX. Also, right back at ya: basename() :P 00:31:42 Hmm, I think strrchr could HELP with some of my PROGRAMS. 00:31:50 Such as BASENAME. 00:31:59 There's a basename function as part of POSIX? 00:31:59 (BASENAME actually GROWS in size when I just use basename(). I don't know why or how.) 00:32:08 http://www.opengroup.org/onlinepubs/009695399/functions/basename.html 00:32:11 Gregor: Part of XSI! 00:32:15 Like every damn thing. 00:32:28 For instance mmap :P 00:32:31 (Is XSI-only.) 00:32:33 I didn't even know there was a basename function :P 00:32:51 My hand-written basename is smaller SO YEAH 00:32:54 (But not in larger programs.) 00:33:05 (Only in basename(1). TODO: figure out where logic went.) 00:33:22 while ((slash = strchr(path, '/'))) 00:33:22 path = slash + 1; 00:33:27 Gregor: LOOK AT ME I DON'T KNOW WHAT STRRCHR IS HURRR 00:33:30 Time for MEASUREMENTS 00:33:59 HAHA IT GOT SMALLER 00:34:10 HAHA IT STILL WORKS 00:34:57 Gregor: Did I mention I compile false and true specially so that I can avoid all startup code? They are both 248 bytes. 00:35:09 #include 00:35:09 void _start(void) 00:35:10 { 00:35:10 _exit(0); 00:35:10 } 00:35:12 HUGELY wasteful. 00:35:25 Gregor: It's the best I can do with C that's even vaguely portable P 00:35:26 You still need _exit 00:35:26 *:P 00:35:33 Mmm, vaguely portable :P 00:35:34 Gregor: Yes; the alternative is assembly. 00:35:37 OK, that's ELF-portable :P 00:35:49 I have to special-case true and false in mkbox because I can't link them to ANYTHING X-P 00:36:21 Surely the size added to box of a more conventional true and false command would be smaller than 248 bytes? 00:36:40 night 00:37:07 echo " if (!strcmp(argv[0], \"true\")) return 0;" 00:37:07 echo " if (!strcmp(argv[0], \"false\")) return 1;" 00:37:12 Gregor: Probably, yeah. 00:37:19 Gregor: But I'm primarily targeting separate executables for now :P 00:37:29 Ahhhhh 00:37:34 *cough*PUSSY*cough* 00:37:51 Gregor: No way, this is more hardcore. Because I have all the overhead to deal with. 00:38:07 "Do nothing, unsuccessfully" -- GNU coreutils, attempting to describe false(1) and instead managing to confuse everyone who thinks about it for more than a second 00:38:10 elliott, and what if you have argv[0] = "foobar" 00:38:14 Gahaha 00:38:16 [[This version of false is implemented as a C program, and is thus more secure and faster than a shell script implementation, and may safely be used as a dummy shell for the purpose of disabling accounts.]] 00:38:20 Our false: MORE SECURE THAN EVERYONE ELSE'S FALSE. 00:38:24 Vorpal: Then the trick fails. Duh. 00:38:28 ... 00:38:28 wait. 00:38:33 They said their false is *faster* than other falses. 00:38:37 * elliott explodes with laughter 00:38:46 Faster if it didn't respond to --help and --version! 00:38:50 And have localised strings! 00:38:51 $ type true 00:38:51 true is a shell builtin 00:38:52 elliott: Actually, the "safely be used as a dummy shell for the purpose of disabling accounts" is pretty important. 00:38:52 elliott, ^ 00:38:57 Vorpal: Not as a shell. 00:39:01 Gregor: Yes, but come on: faster? 00:39:02 FASTER? 00:39:06 elliott, indeed 00:39:07 Yeah, that's silly :P 00:39:24 Gregor: Oh my god I want to delve into the kernel's executable loading code now to figure out the most optimised code path to exit with status 1 :P 00:39:39 elliott, don't be silly 00:39:42 elliott: Do you require a.out binaries to be supported? ;) 00:39:49 Vorpal: He says, in #esoteric. 00:39:53 Gregor: I didn't say modify the kernel's code. 00:39:55 elliott, yee. 00:39:57 yes* 00:39:57 Gregor: I meant analyse it. 00:40:06 elliott: The kernel DOES support a.out, but it's optional. 00:40:15 Gregor: I know. I wanted to use a.out in Kitten a while back. 00:40:20 Gregor: But debugging with a.out is a total clusterfuck :P 00:40:30 Gregor: And N O T H I N G supports it. 00:40:38 i.e., pcc doesn't. 00:40:38 For SOME reason :P 00:40:42 I think gcc dropped support too. 00:40:59 Gregor: Clearly we need a Unix that runs on PE. 00:41:02 elliott: objcopy certainly supports it, it may even be able to produce correct a.out files from static ELF files, but I wouldn't rely on that :P 00:41:04 (I know, I know, COFF. But I mean actual Windows PE.) 00:41:08 the standard executable name is still a.out 00:41:11 which is strange 00:41:13 Vorpal: No shit :P 00:41:15 It's history. 00:41:17 -!- oerjan has quit (Quit: Good night). 00:41:17 Delicious history. 00:41:28 elliott, should be e.lf now 00:41:34 Gregor: My objdump is so optimised it contains NO CODE AT ALL: 00:41:36 $ objdump -D bin/mkdir 00:41:36 bin/mkdir: file format elf64-x86-64 00:41:36 $ 00:42:33 erm. 00:42:34 Gregor: My mkdir :P 00:42:55 Your malloc? What? 00:43:17 elliott, hm does it contain any sections at all 00:43:20 Gregor: Shaddap. 00:43:43 Vorpal: Yes, but it removes the section header table. 00:43:44 elliott, if not, how does the kernel know what to load as executable and what to load as read only 00:43:49 So silly tools think it has no sections at all/ 00:43:50 and then what to load as read-write 00:43:55 * Most ELF executables are built with both a program header table and a 00:43:56 * section header table. However, only the former is required in order 00:43:56 * for the OS to load, link and execute a program. 00:43:57 Vorpal: See above. 00:44:04 hm 00:44:15 elliott, and does the former define what is read only and read-write? 00:44:22 Vorpal: One would presume so :P 00:44:33 sstrip has basically no effects on any program in my testing. 00:44:40 Well, unless the compiler does Weird Thangs. 00:44:47 No effect apart from dramatic size reduction, that is. 00:45:17 elliott, not dramatic for large binaries I presume 00:45:35 $ egrep -r 'malloc|calloc|alloca|printf|fopen|fwrite' bin 00:45:36 $ 00:45:41 Behold my not-using-most-of-libc skillz. 00:45:48 Vorpal: Well, at least as dramatic as strip -s. 00:46:00 And perhaps up to a kilobyte more? Maybe? 00:46:13 Vorpal: It also strips trailing zeroes, which you can't do if you have a section header apparently. 00:46:19 And I seem to recall seeing quite a lot of them in most ELF files. 00:46:30 So sstrip is definitely worthwhile for a final-product no-debugging type thing. 00:46:54 elliott, I'd want debug symbol packages available :P 00:47:06 Vorpal: Do you do "strip -s" before debugging? No? 00:47:10 Then you wouldn't sstrip either. :p 00:47:21 elliott, I do aptitude install libsdl-dbgsym :P 00:47:25 and so on 00:47:34 Vorpal: (Of course if debuggers were actually *useful* and not destroyed by most optimisation and a pain beside, then you wouldn't want to strip anything; see Lisp Machines.) 00:47:51 (But on Unix, for a non-development program, a smaller size is almost always vastly more useful than that.) 00:47:52 elliott, debuggers are still useful 00:47:58 Vorpal: Not outside of development. 00:48:04 And, uh, the occasional bug report. 00:48:08 elliott, indeed. 00:48:08 Which is basically development. 00:48:18 elliott, and unix is so buggy you want lots of bug reports :P 00:48:25 elliott, did you still want to shave off that trailing \0 from that char array? 00:48:38 like months[] = "foobarquu" 00:48:40 Vorpal: I would ... not be ... averse to doing so... 00:48:49 But I don't want to write {'a','b','c'} etc. :P 00:48:49 elliott, just give the size in the [] 00:48:59 elliott, to be exact fit without the zero byte 00:49:02 Vorpal: Yeah, I just realised that. I'll get a warning though. Well. I would get a warning if pcc was any good with warnings. 00:49:12 (It seems to go into "TRUST THE PROGRAMMER" mode if you specify -nostdlib -nostdinc.) 00:49:24 I occasionally compile it with gcc just to see what headers I forgot :P 00:49:29 hah 00:49:50 elliott, -Wall -Wextra -pedantic -std=c89? 00:50:10 of course C99 is nicer 00:50:14 but I doubt you would use that 00:50:19 Vorpal: pcc doesn't have any warning options; all the warnings that exist are always on. 00:50:24 (There do not exist terribly many.) 00:50:28 (But there's a few.) 00:50:28 elliott, I meant for gcc checking 00:50:50 Vorpal: Oh. Yeah. Well, usually I just do CC=gcc. But CC="gcc -std=c89 -Wall -pedantic" is a more thorough check. 00:51:01 elliott, -Wextra! 00:51:07 -Werror 00:51:09 Vorpal: No, no thank you. 00:51:13 Deewiant: You are a horrible human being. 00:51:14 elliott, why not 00:51:30 Vorpal: Because it's mostly noise. Hey, Linus agrees with me, and lord knows he never does or says anything wrong! 00:51:32 Deewiant, -Wwrite-strings 00:51:39 elliott, :P 00:51:49 $ make CC="gcc -std=c89 -Wall -Wextra -Wwrite-strings -pedantic" 00:51:52 Ha ha, endless warnings for all. 00:52:04 warning: initialization discards qualifiers from pointer target type 00:52:04 warning: initialization discards qualifiers from pointer target type 00:52:04 warning: initialization discards qualifiers from pointer target type 00:52:04 warning: initialization discards qualifiers from pointer target type 00:52:05 warning: initialization discards qualifiers from pointer target type 00:52:07 ouch 00:52:10 just imagine that x1000 00:52:12 elliott, you forgot const 00:52:15 Vorpal: not really, that's basically deliberate 00:52:23 Vorpal: const correctness is vastly overrated and hinders the readability of code 00:52:23 elliott, why deliberate? 00:52:29 and I'm old school 00:52:46 elliott, "type checking is vastly overrated and hinders readability of haskell code" 00:53:05 untyped haskell ftw 00:53:07 Vorpal: Maybe if cc could infer my consts I'd say differently, then. 00:53:12 OH SNAP RIGHT BACK ATYA 00:53:16 *ACTHA 00:53:19 *ATCHA 00:53:28 elliott, what? 00:53:42 untyped haskell sounds completely wtf 00:54:15 elliott, const decrease binary size 00:54:23 elliott, because it can get rid of one page 00:54:24 for .data 00:54:32 if you are lucky you just have .rodata 00:54:38 bin/kill.c:39: warning: implicit declaration of function ‘kill’ 00:54:38 (and you will probably have that anyway 00:54:39 Wtf. 00:54:47 I included all the headers in the man page. 00:54:49 elliott, oh probably -std=c89 00:54:51 elliott, that does that 00:54:53 Oh. 00:55:01 elliott, it doesn't think you want POSIX extensions then 00:55:17 How do you turn off qualifier-discarding warnings? It's drowning out all the stuff I /want/ to fix. 00:55:26 Also, I'm now tempted to try out consting EVERYTHING and seeing if binary size really decreases. 00:55:26 -D_POSIX_C_SOURCE=200112L 00:55:28 elliott, ^ 00:55:33 Vorpal: Or just ignore that one :P 00:55:36 How do you turn off qualifier-discarding warnings? It's drowning out all the stuff I /want/ to fix. 00:55:37 is more important 00:55:49 elliott, well if there are many of them then it might help to add that -D 00:55:54 Only one. 00:55:57 okay 00:56:01 I wonder what people who do -Wextra -Werror do when they get "unused variable argc!!" 00:56:13 elliott, as for turning of that: removing -Wwrite-string would drop a few 00:56:28 Indeed, that does it. 00:56:30 Thanks. 00:56:36 elliott, __attribute__((unusued)) maybe? 00:56:43 bin/chroot.c:15: warning: implicit declaration of function ‘chroot’ 00:56:43 bin/date.c:11: warning: unused parameter ‘argc’ 00:56:44 bin/env.c:8: warning: unused parameter ‘argc’ 00:56:46 bin/kill.c:39: warning: implicit declaration of function ‘kill’ 00:56:47 bin/signal.c:21: warning: comparison between signed and unsigned integer expressions 00:56:58 Two incorrect warnings, two irrelevant warnings, and one really really pedantic warning. 00:57:00 elliott, the last one sounds a potential problems 00:57:11 for (j = 0; j < 7 - strlen(signals[i].name); j++) 00:57:14 Vorpal: Not really. 00:57:15 elliott, -Wno-unused-parameter 00:57:25 or something like that 00:57:38 elliott, strlen returns size_t 00:57:42 elliott, what is your j 00:57:42 -D_POSIX_C_SOURCE=200112L 00:57:45 Still warns about chroot. 00:57:48 elliott, huh 00:57:50 Even though I've included . 00:57:54 (Is chroot POSIX? Probably not.) 00:57:57 chroot(): 00:57:57 Since glibc 2.2.2: 00:57:57 _BSD_SOURCE || 00:57:57 (_XOPEN_SOURCE >= 500 || 00:57:57 _XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED) && 00:57:58 !(_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600) 00:58:00 Before glibc 2.2.2: none 00:58:02 yeargh! 00:58:05 :D 00:58:24 Vorpal: j is an int. (I would love to see a system with so many signals that it overflows. signals is a constant array anyway.) 00:58:29 int is smaller than size_t usually :P 00:58:34 Maybe I'll make everything char. 00:58:41 bin/mkdir.o: In function `main': 00:58:41 mkdir.c:(.text+0x457): undefined reference to `__posix_getopt' 00:58:45 lol ld --gc-sections is so stupid 00:58:49 good thing it works with pcc :P 00:59:00 (yes, it does decrease the binary size) 00:59:08 Vorpal: Okay, Operation Const. Time to see if your THEORY has any MERIT! 00:59:09 then pcc is doing something stupid 00:59:14 No it isn't. 00:59:18 elliott, it does help in many cases 00:59:20 ld --gc-sections is *really* naive. 00:59:30 pcc/dietlibc happens to not trigger it. 00:59:31 elliott, if it needs gc-sections it is doing something stupid 00:59:40 Vorpal: Um, --gc-sections helps with gcc too. 00:59:49 elliott, I didn't say gcc wasn't stupid as well 01:00:02 Vorpal: At least pcc has "70s" as an excuse :P 01:00:16 It is a very reliable compiler though. Just not a super-feature-rich one. 01:00:28 Vorpal: Okay, time to const EVERY SINGLE THING IN CAT. 01:00:41 Ha, argc and argv are both mutated in this program. 01:00:52 elliott, remember to do const char * const foo = ... 01:00:53 In fact, uh, yup, cat has nothing I can const. 01:00:56 if you have such constructs 01:00:57 (Except the barfu library function, but.) 01:01:11 Vorpal: Unless this saves a DRAMATIC amount of space, it's so ugly I don't care :P 01:01:21 7863 bin/cal 01:01:23 That's the score to beat. 01:01:23 elliott, it saved over 1 KB in mosaic I remember 01:01:37 Vorpal: Over 1K... in a gigantic program. 01:01:42 SOUNDS WORTH IT 01:01:48 elliott, well check it 01:01:56 I am. 01:01:58 Time to constify cal.c. 01:02:00 Constipate. 01:02:02 elliott, also look at readelf for .data and .rodata sections 01:02:05 Yes, let's go with that. Constipate. 01:02:22 elliott, "så konstigt" 01:02:22 static const char const shortmonths[3 * 12] = 01:02:27 That's not right, is it. 01:02:27 elliott, what :P 01:02:29 How do you say that? 01:02:33 shortmonths[...] const? :P 01:02:36 elliott, I believe the const goes inside the [] 01:02:37 shortmonths const [...]? :P 01:02:41 Vorpal: ...really? 01:02:42 elliott, not completely sure 01:02:50 static const char shortmonths[3 * 12 const] = 01:02:53 MOST RIDICULOUS THING EVER :P 01:02:57 elliott, check it 01:03:00 though 01:03:12 I thought it was static const char shortmonths[const 3 * 12] 01:03:22 Syntax error :P 01:03:23 For both forms. 01:03:27 elliott, actually I don't think that inner const matters 01:03:31 since it is after all an array 01:03:33 not a pointer 01:03:38 Vorpal: WHAT WOULD YOU KNOW 01:03:54 Okay fine. 01:03:54 elliott, your innermost secret? 01:04:00 What is it? 01:04:08 elliott, buggered if I knew :P 01:04:18 Buggery and the Pirate Tradition 01:04:27 am i doin it rite Gregor 01:04:34 what 01:04:54 elliott, also this will help at runtime 01:05:00 elliott, since const stuff can be shared 01:05:05 between running instances 01:05:13 Vorpal: "char *const daydec;" means that I never do "daydec = ...", just "daydec[n] = ..." right? 01:05:23 hmm 01:05:26 const char *daydec; 01:05:27 elliott, err yeah 01:05:29 daydec = ultostr(day); 01:05:37 is that kosher if ultostr modifies a global buffer before returning? 01:05:42 and returns that global buffer 01:05:42 elliott, thus it will be faster since less data will have to be copied to a new page by t he kernel when the app is run 01:05:47 as long as /I/ never mutate it later 01:05:53 yes/no? 01:05:57 elliott, should be 01:06:02 yay 01:06:04 elliott, as you state the problem it should be 01:06:37 elliott, check with valgrind. Always do that for any program written in C. It is _always_ a good idea. 01:06:46 as long as you aren't linking to a crazy gc that is 01:07:13 (crazy gc: anything that doesn't work with valgrind in this context) 01:07:15 7863 bin/cal 01:07:15 CC cal 01:07:15 7863 bin/cal 01:07:18 Vorpal: Fully consted. 01:07:19 NO DAMN CHANGE AT ALL 01:07:24 And code is now 110% ugly. 01:07:27 elliott, what about .data vs. .rodata? 01:07:29 elliott, remember speed 01:07:31 when copying 01:07:37 because less copying 01:07:43 due to shared data 01:07:53 Vorpal: I don't really care how fast these utilities run, I have trivially-unrollable loops that I don't because of size :P 01:07:57 A clock cycle takes ~0 seconds. 01:08:13 Vorpal: In fact, fuck reasonability. I'm going to constipate the util.h functions too. 01:08:16 elliott, but what about my 386? 01:08:35 Vorpal: You do realise BusyBox, designed for tiny slow hardware, optimises for size waay above speed? :P 01:08:36 It pays off. 01:08:43 elliott, indeed 01:08:49 elliott, what about my pentium4 then? 01:08:52 It pays off on modern machines, too. 01:08:56 Vorpal: Your Pentium 4 is like unto an abortion. 01:09:08 elliott, p4 unrolling probably pays off 01:09:16 P4 throwing out of a window pays off :P 01:09:31 elliott, yes in the electricity bill 01:09:51 static const char *const ultostr(const unsigned long i) 01:10:09 7863 bin/cal 01:10:12 elliott, well duh there it won't do anything except help you catch errors 01:10:14 Conclusion: const does FUCK ALL :P 01:10:27 elliott, it is for static variables that it often helps 01:10:35 Vorpal: Yep. Did it to every static variable (and cal.c has a lot). 01:10:45 weir 01:10:47 weird* 01:10:57 Maybe pcc is just TOO DUMB to do ANYTHING with them :P 01:11:00 elliott, btw how many cm snow over in UK so far? 01:11:00 IIRC a few binaries even have their rodata sections stripped by --gc-sections. 01:11:04 So const there is likely to HURT things :P 01:11:14 elliott, wtf :P 01:11:16 Vorpal: I don't measure the snow... but a decent amount (quite a lot) by our standards. 01:11:20 elliott, your setup = crazy 01:11:23 Probably not much by your Swedish standards. 01:11:24 elliott, half a meter yet? 01:11:30 Vorpal: Nnnnnnnnno :P 01:11:33 Not that I know of at least X_D 01:11:34 *X-D 01:11:36 elliott, ah, nothing then 01:11:51 Vorpal: You can't make me feel small, I'd like to live in Scandinavia. 01:11:58 I LOVE SNOW (as long as I stay indoors forever) 01:12:19 #define WANT_BARFX 01:12:25 elliott, I remember that periodicvideo youtube clip where they went to Sweden last year 01:12:35 I have not once regretted my choice of "barf" as the standard name for the error-reporting function. 01:12:39 barf, barfu, and barfx. 01:12:48 The middle one sounds amusingly Asian-stereotypy. 01:12:52 barfu desu 01:13:05 I loved the comment about who he said "I got this brush when I hired the car, I wonder what it is for... but I do have a feeling the car might be snowy" 01:13:07 or something like that 01:13:21 xD 01:13:45 elliott, after all, yttrium, ytterbium, erbium, and terbium are all named after the same place in Sweden 01:13:59 s/who/how/ 01:14:00 Vorpal: Coldium 01:14:05 elliott, har har 01:14:29 Vorpal: I should visit Stockholm some time. ("You know, just one day. No big deal!") 01:14:37 ("I might just spontaneously decide to go there.") 01:14:42 elliott, let me find the clip 01:14:43 ("It's on my TODO list.") 01:15:19 We've got snow here. 01:15:23 Snow on the high seas. 01:15:25 Snow and the pirate tradition. 01:15:31 What I'm trying to say here is sodomy. 01:16:13 Gregor: Sodomy and the Sodomical Tradition 01:16:41 elliott, about 55 seconds into http://www.youtube.com/watch?v=F9QmVM536Ks 01:17:03 elliott, until 1:20 01:17:06 Vorpal: Ouch, interlacing. 01:17:26 elliott, also some other cool winter scenery after that 01:17:32 elliott, including a large snow plow 01:17:33 Vorpal: But the interlacing! 01:17:57 hm 01:18:05 Vorpal: This flight path is rather indirect :P 01:18:09 (To Stockholm) 01:18:14 elliott, well yeah 01:18:31 Is it usually that snowy in the summer? :p 01:18:45 elliott, that is the winter duh 01:18:53 HE SAID NICE SUMMER WEATHER 01:18:57 I INTERPRET HIS STATEMENTS LITERALLY 01:19:13 elliott, "nice sunny" 01:19:19 Oh :P 01:19:20 elliott, not "summer" 01:19:39 elliott, at least I think he said that 01:21:14 Vorpal: i don't think these guys used a staircase mine 01:21:24 drills? why didn't they use a pickaxe? 01:21:37 elliott, :P 01:21:42 explosives? dude, they must be really impatient, diamond pickaxe mines everything in like a second 01:23:07 elliott, :P 01:24:45 chroot is stupidly simple :P 01:25:53 I love how little POSIX specifies. 01:26:14 You could have the craziest file hierarchy ever, have no chroot(), no mmap(), no mount(), and still be POSIX-compliant. 01:26:19 Yet it specifies SCCS. 01:26:20 So silley. 01:31:17 -!- Zuu has joined. 01:40:21 -!- sebbu2 has joined. 01:42:19 -!- sebbu has quit (Ping timeout: 272 seconds). 01:47:28 Vorpal: The only thing worse than putting an interlaced video up on Youtube is scaling it as though it were progressive before uploading it. 01:47:35 (you CANNOT FIX THAT) 01:50:28 pikhq: So I totally have a mostly-working malloc. 01:50:31 And chroot. 01:50:35 And things! 01:50:47 elliott: Any benefit over dietlibc malloc? 01:50:56 pikhq: I mean mkdir. 01:51:01 God dammit why do I keep making that typo. 01:51:56 pikhq: Oh, and uname. Did I have uname last time? Whatever. 01:52:15 pikhq: BTW, question: You know the common "#!/usr/bin/env interp" trick? 01:52:25 Any suggestions as for how to get that working if you don't have /usr? 01:54:29 Well, you could get Linux to think that "#!/usr/bin/env" is the magic for a new binary format. 01:55:21 Vorpal: Which, BTW, was done. 01:55:31 Vorpal: That video is impossible to fix. 01:55:37 pikhq: You need the space there too. But yeah, I thought that, and then I realised "wait, it'd be easier just to patch exec to special-case /usr/bin/env". 01:55:58 elliott: Actually, no, it wouldn't be easier. 01:56:08 pikhq: No? 01:56:19 elliott: Linux lets you register an interpreter for a binary format just by writing to some file in proc. 01:56:25 pikhq: True. 01:56:32 pikhq: Lemme try it... 01:56:46 I've used it for Java, WINE, and Plof in the past. 01:57:00 "To register a new binary format you have to issue the command echo :name:type:offset:magic:mask:interpreter: > /proc/sys/fs/binfmt_misc/register with appropriate name (the name for the /proc-dir entry), offset (defaults to 0, if omitted), magic, mask (which can be omitted, defaults to all 0xff) and last but not least, the interpreter that is to be invoked (for example and testing /bin/echo). Type can 01:57:00 be M for usual magic matching or E for filename extension matching (give extension in place of magic). If you do a cat on the file /proc/sys/fs/binfmt_misc/status, you will get the current status (enabled/disabled) of binfmt_misc." 01:57:06 pikhq: Plof? Wow :P 01:57:25 pikhq: Wow, there's Python in there. 01:57:27 Also CLI, and jar. 01:57:28 Already. 01:58:07 pikhq: How does one work out the magic? Just the hex of the magic? What endianness? (Does it matter?) 01:58:10 Can you have multiple magics? 01:58:27 pikhq, okay. I don't really care. It is still cool 01:58:42 Vorpal: Never mind, I totally fixed it. 01:58:49 pikhq, okay? 01:58:53 Vorpal: -vf yadif,fspp=5 makes it tolerable. 01:59:01 pikhq, I can tolerate it as it is 01:59:11 pikhq, I don't know what it is with you 01:59:19 pikhq, also is that to vlc? 01:59:22 Vorpal: Actually, it /is/ really irritating. 01:59:23 Mplayer. 01:59:29 Why would you ever use VLC? 01:59:32 It's like mplayer but worse. 01:59:37 Especially for subtitles. 01:59:42 pikhq: what is maaagic :P 01:59:46 elliott, oh? I don't use subtitles 01:59:59 elliott: Uh, it will be a string that it should look for. 02:00:06 Vorpal: Probably because you don't watch foreign-language content... 02:00:13 pikhq: Python's is "magic d1f20d0a" from the proc thing 02:00:18 So are you sure about that? 02:00:19 elliott, indeed I don't 02:00:33 pikhq: Or is that just how /proc shows it when I cat? 02:00:43 elliott: Probably just proc being weird. 02:00:57 pikhq: So you can't have a magic with : in it then... 02:01:02 Also, can you have multiple magics? 02:01:07 elliott: Hmm. Maybe it's a hex string. 02:01:31 -!- FireFly has quit (Quit: swatted to death). 02:01:43 No, indeed, that seems to work. 02:01:48 But do I really need two interpreters for two magics? 02:02:25 elliott: I dunno. I guess you'd need two entries for two magics. 02:02:26 um 02:02:38 elliott, doesn't #! detection come before binfmt_misc? 02:02:43 as in: 02:02:45 Vorpal: No. 02:02:46 I just tried it. 02:02:49 #!bork registered. 02:03:01 elliott, I thought lookup order was: ELF, a.out, #!, binfmt_misc 02:03:15 Vorpal: binfmt_misc always comes first 02:03:17 yes it would register, but would it work? 02:03:17 binfmt_misc overrides. 02:03:20 huh 02:03:22 weird 02:03:22 It worked, I tested it. 02:03:24 With #!bork.l 02:03:26 *no l 02:03:34 Vorpal: Qemu has a script to set up binfmt_misc for foreign ELFs. 02:03:37 You can, in fact, make Linux valgrind everything. 02:03:38 Now how do you get rid of an interpreter...? 02:03:50 pikhq, what about valgrind itself 02:03:55 wouldn't this get recursive 02:03:56 pikhq: Wouldn't that get into some horrible binfmt_misc loop? :P 02:04:06 Gregor: It's valgrind all the way down. 02:04:11 XD 02:04:14 X-D 02:04:17 <3 02:04:19 Gregor: Alternately, you could set up a noöp interpreter for valgrind. 02:04:23 NO 02:04:28 I approve of this meta-valgrind technology. 02:04:32 Just evaluate the valgrinds lazily. 02:04:52 actually I seem to remember it does loop detection nowdays 02:05:10 it must hit ELF or a.out within n layers 02:05:21 Seriously, how do I remove an interpreter? :P 02:05:27 elliott, you read the man page 02:05:28 elliott: You can't. 02:05:34 I think you can 02:05:39 pretty sure you can 02:05:40 elliott: It compiles it into the kernel live, then it's stuck forever, even through reboots. 02:05:49 Gregor: Thought so. 02:05:53 Vorpal: *Which* manpage? 02:05:58 There is no binfmt_misc man page here. 02:05:59 elliott, buggered if I know 02:05:59 elliott: It even modifies the compiler so that if you compile a new kernel, you keep your binfmt_mscs. 02:06:00 *miscs 02:06:12 Vorpal: Then stop being annoying just because you can't help... 02:06:14 Gregor, trusting trust reference eh? 02:06:21 Vorpal: :P 02:06:26 -!- Sasha2 has quit (Remote host closed the connection). 02:06:29 elliott, I done it before, I just don't remember where 02:06:30 or how 02:06:32 Gregor: But does it counteract Diverse Double-Compiling? http://www.dwheeler.com/trusting-trust/ 02:06:46 elliott, /usr/src/linux/Documentation I guess 02:06:47 check there 02:06:59 elliott, or whereever you have the kernel source 02:07:06 Vorpal: I, like most people, do not have the kernel source on my system all the time. 02:07:18 elliott, well that is your problem 02:07:25 Thankfully I have a copy here. 02:07:35 pikhq: Ah, you can select whatever : you want. 02:07:35 as I expected 02:07:41 Still, you can't have a 256-char magic :P 02:07:44 (Of all ASCII.) 02:07:49 Vorpal: Only because of Kitten. 02:08:06 - 'magic' is the byte sequence binfmt_misc is matching for. The magic string 02:08:06 may contain hex-encoded characters like \x0a or \xA4. In a shell environment 02:08:06 elliott, again your problem 02:08:06 you will have to write \\x0a to prevent the shell from eating your \. 02:08:07 Never mind :P 02:08:11 Vorpal: Oh shut up. 02:08:22 elliott, only if I want to 02:08:31 Gregor: Seriously, tell him he's irritating. 02:08:50 elliott, is Gregor some sort of higher authority? 02:09:02 No, but if I can get pikhq on board too that's pretty solid. 02:09:39 pikhq: Ugh, I can't make /bin/env the interpreter, because it'll just see "/bin/env /path/to/foo". 02:09:50 indeed 02:10:01 E_INSUFFICIENTSODOMY 02:10:07 Gregor, :D 02:10:18 Vorpal loves the sodomy. 02:10:25 -!- sebbu2 has changed nick to sebbu. 02:10:25 Apparently *shrugs* 02:10:35 elliott, sure why not 02:10:45 `addquote Vorpal loves the sodomy. elliott, sure why not 02:10:47 (yes I know what the word means) 02:10:49 Vorpal: OPEN TO TRYING NEW THINGS. 02:10:52 *ALWAYS OPEN 02:10:57 267| Vorpal loves the sodomy. elliott, sure why not 02:11:02 elliott: You'd need to write a custom interpreter to parse the shebang line. 02:11:05 elliott, of course 02:11:20 This is Vorpal's really subtle way of coming out. 02:11:23 btw, wots all this you're doing with binfmt_misc anyway? 02:11:32 `addquote [...] ALWAYS OPEN TO TRYING NEW THINGS. 02:11:33 Gregor: "#!/usr/bin/env interp" is very common. 02:11:34 268| [...] ALWAYS OPEN TO TRYING NEW THINGS. 02:11:37 Gregor: I have no /usr. 02:11:43 Vorpal: My love of sodomy is no secret :P 02:11:47 Gregor: Thus, binfmt_misc 02:11:52 elliott: Soooo ... ln -s /usr /? 02:11:58 Err 02:11:59 ln -s / /usr 02:12:08 Gregor: I refuse to accept such clutter. (But symlinking / to /usr sounds like fun.) 02:12:21 elliott: The HURD does it :P 02:12:43 -!- Sasha has joined. 02:12:46 Also /X11R6, though that one may have gone away. 02:12:55 hah 02:12:56 Gregor: What, symlink / to /usr? :P 02:13:08 elliott, whaaat? 02:13:16 elliott, didn't you read that ln -s backwards 02:13:18 elliott: No, sodomy. 02:13:21 elliott: Soooo ... ln -s /usr /? 02:13:23 Vorpal: No, no I didn't. 02:13:29 elliott, oh wait 02:13:39 elliott, I just saw ln -s / /usr 02:14:29 elliott, make it point to a custom wrapper file that just munges argv and passes the right thing to env 02:14:38 elliott, however it needs to read the file 02:14:41 Vorpal: I have to parse the shebang, duh. 02:14:53 elliott, linux just passes #! along 02:14:57 not anything more than that 02:15:19 Vorpal: His problem is he wants #!/usr/whatever to work with no /usr 02:15:25 No, he understands. 02:15:41 Ohoho, make it point to. 02:15:42 I should read. 02:15:47 But prefer not to. 02:15:50 Vorpal: Sure, but I still have to open the file, read sizeof("#!/usr/bin/env")-1 bytes (or maybe one extra due to the space in some cases), read a space, read a space-terminated name, read a space-terminated argument, and make the call. 02:15:51 elliott, you need the same for #!/usr/bin/python and #!/usr/bin/perl and so on 02:15:55 So it's not exactly trivial. 02:15:58 Vorpal: Nothing should do that :P 02:16:00 And not much does. 02:16:07 fairly common 02:16:10 Not really. 02:16:12 Only among bad programs. 02:16:18 elliott: Are you unwilling to use stdio? 02:16:23 And the distro solution to that is to s!/usr/bin/!/usr/bin/env !, usually. 02:16:25 Gregor: What, in my coreutils? 02:16:36 So it's not exactly trivial. <-- uh the pseudo code fitted into one line of IRC 02:16:38 ;P 02:16:40 elliott: In your binfmt_misc /usr-shebang wrappermajig. 02:16:46 Vorpal: It's not as trivial as one echo line :P 02:16:56 Gregor: Even if I was willing, why would it affect anything? 02:16:57 elliott, it is not as trivial as a nop yeah 02:16:58 Gregor: scanf? :P 02:17:05 elliott: Then it's just fgets and strchr 02:17:18 Gregor: ...you do realise that fgets ~= read? 02:17:23 For this purpose. 02:17:30 elliott: fgets always reads lines, and you want one line. 02:17:38 Gregor: Stop when you encounter a \n, problem solved. 02:17:44 fgets can read only part of a line if the buffer is too small, anyway. 02:17:54 elliott, getline 02:17:57 Gregor: stdio does not make this significantly easier at all :P 02:17:58 elliott: Finefine; in that case, strchr is sufficient 02:17:59 Vorpal: Die in a fire. 02:18:08 Gregor: Good thing I have no objection to strchr, then. 02:18:08 strchr being in string, not stdio, but eh :P 02:18:09 elliott, it is in poisix 2008 iirc 02:18:14 posix* 02:18:26 Gregor: But note that I'll have to handle the argument being terminated by space OR \n. 02:18:28 Or, in fact, EOF. 02:18:31 SO COMPLICATED 02:18:34 Vorpal: It shouldn't be. 02:18:38 elliott, it is 02:18:40 lawl 02:18:42 Vorpal: It shouldn't be. 02:18:51 Gregor: Maybe I could do it as a perl script. :P 02:18:52 MWAHAHA 02:19:20 elliott, strtok? 02:19:28 Vorpal: Why even bother... 02:19:31 It's a trivial C program :P 02:19:32 elliott, :P 02:19:36 elliott, uh 02:19:57 Vorpal: Okay, if you can wait like 15 minutes I can give you a better version of that Youtube video. Just so you can see how much of a difference simple things like "deinterlacing" can make. 02:20:13 pikhq: Your tormenting Vorpal has little effect on him :P 02:20:18 `addquote So it's not exactly trivial. [Later about same thing] It's a trivial C program :P 02:20:23 -!- p_q has joined. 02:20:28 269| So it's not exactly trivial. [Later about same thing] It's a trivial C program :P 02:20:36 pikhq, nah I'm going to sleep 02:21:02 pikhq, I'm sure it is better but I'm not very bothered by it 02:21:31 -!- poiuy_qwert has quit (Ping timeout: 245 seconds). 02:21:35 Vorpal: So, you're not bothered by the random horizontal lines EVERYWHERE there is motion? 02:21:50 pikhq, not in that case, wasn't very noticable 02:21:59 noticeable* 02:22:03 now, night → 02:23:02 Vorpal must be blind. 02:25:05 pikhq: OK, so let's say I have /libexec/runenv and /libexec/runenvspace. 02:25:11 And they're identical except one reads one byte more at the start. 02:25:19 And then I just register them as the interpreters for the two magics you'd expect. 02:25:26 Job done. 02:25:57 Yeah, that should keep the /usr/bin/env trick "just working" nice and easy. 02:26:23 May have to do more formats for, say, #!/usr/bin/perl or something. 02:26:31 But that should be much easier to handle. 02:27:56 pikhq: the solution for that is to edit the file to use /usr/bin/env :P 02:28:15 elliott: Okay, true, that functions just as well. 02:31:59 pikhq: So what command should I do next batman :P 02:35:14 rm 02:35:29 -!- Sasha has quit (Remote host closed the connection). 02:35:50 -!- Sasha has joined. 02:36:30 pikhq: http://www.opengroup.org/onlinepubs/9699919799/utilities/rm.html LOOK AT THE COMPLEXITY 02:36:52 Okay, so it's actually pretty simple. 02:37:28 elliott: Do you have shar yet? :P 02:37:41 Gregor: Why do you ask? 02:38:06 elliott: Because I'll bet it's obscenely complicated and harassing you is fun? 02:38:19 Gregor: shar is not actually posix :P 02:38:34 Gregor: Anyway, as far as "obscenely complicated" goes, dude, I've written most of a dd/shar creator in dd/sh. 02:38:56 That is: Using only the Bourne shell and dd, I've written a program which takes a bunch of file names and outputs a program using only dd and sh to unpack them again. 02:39:01 SO I THINK I'M HARDCORE ENOUGH 02:39:35 elliott: How 'bout script(1)? 02:39:54 Gregor: Yes, yes, totally. Believe it. 02:41:04 Okay, I've got a highly-improved version of that Ytterby video, and nowhere to upload it. Poo. 02:41:18 pikhq: filebin.ca if it's <50mb 02:41:37 It is 54mb. 02:43:19 pikhq: gzip it :P 02:43:21 Or lzma it. 02:43:22 Or anything. 02:43:28 Even if it's already-compressed. 02:43:56 Come on, small amounts of redundancy! 02:44:26 Okay, xz doesn't reduce the size. 02:44:43 xz -9, though? 02:44:58 pikhq: Compile an asm program that just prints it out, and UPX --ultra-brute it. 02:48:22 Eh, whatever. The point is, Vorpal is blinder than a bat, and I shall never trust his opinions on video quality. 02:49:19 I think he acknowledges the complaint but just doesn't care :P 02:50:20 The point is, Vorpal is blinder than a bat, and I shall never trust his opinions on video quality. 02:50:26 * Sgeo almost considers just using VMware Server 02:50:38 Sgeo: You will regret it. 02:50:48 VMware Server has the worst UI I have seen. 02:50:56 VBox whatever doesn't like Windows 98 02:50:58 AJAX to localhost. 02:51:03 AJAX. To. Localhost. 02:51:24 Let 02:51:33 Let's see if I can get sound on here, maybe I'll make do with that 02:51:41 And just ignore lack of integration 02:51:48 pikhq: I am considering writing my own getopt. 02:51:57 dietlibc's seems to be more than, like, three bytes, which is unacceptable. 03:13:31 -!- Zuu has quit (Ping timeout: 272 seconds). 03:26:31 pikhq: Guess what the hardest part of writing rm is. 03:28:35 What? 03:28:52 pikhq: -i. 03:29:13 ... 03:29:20 Yeah, that would actually be annoying. 03:29:52 pikhq: I dare you to write a routine using only read and write that (1) reads a line from standard input; (2) saves whether the first character is y or not; (3) discards the rest of the input up to the newline but (4) keeps the rest to use on the next call. 03:29:57 It's possible but irritating. 03:30:10 Oh, and (5) returns the first-char-is-y flag. 03:34:34 pikhq: Well go on, I sure don't want to :P 03:39:27 Oo, flags 03:44:36 bin/rm.c, line 57: cannot recover from earlier errors: goodbye! 03:45:44 elliott: int yes() { char c, d; read(0, &c, 1); d = c; while (d != '\n') read(0, &d, 1); return (c == 'y' || c == 'Y'); } 03:46:16 Gregor: I was fucking around with a buffer X-D 03:46:18 You win. 03:46:23 (Although error-check that read call, man!) 03:46:31 :P 03:46:44 Admittedly it's pretty inefficient, but we're talking about rm -i here ;) 03:47:00 Yeah :P 03:48:02 Gregor: That seems to wait for a double newline sometimes for me... 03:48:06 * Sgeo attempts to fix Brazil despite having little knowledge of either Brazil or Win32 03:48:21 elliott: That's ... weird? 03:48:27 Gregor: Yeah... 03:48:31 Sgeo: brazil is beyond fixing. 03:49:46 Gregor: Something is up with this code :P 03:50:17 My code is given with NO WARRANTY 03:50:37 OHWAIT 03:50:39 Gregor: EXPRESS OR IMPLIED? 03:50:39 Nowait 03:50:40 Unohwait 03:50:48 Yeah I keep going OH and then wait no. 03:50:51 elliott: WHATSOEVER 03:50:54 static int ask() 03:50:54 { 03:50:54 char reply, c; 03:50:54 if (read(0, &reply, 1) <= 0) return 0; 03:50:54 c = reply; 03:50:55 while (c != '\n') 03:50:56 if (read(0, &c, 1) <= 0) return 0; 03:50:58 return (reply == 'y' || reply == 'Y'); 03:51:00 } 03:51:02 is my function fwiw 03:51:25 That's ... pretty obviously OK. 03:52:30 I can only speculate that you're calling it wrong somewhere :P 03:52:33 ...LOL 03:52:36 writes(2, "Remove "); 03:52:36 write(2, path, strlen(path)); 03:52:36 write(2, "? ", 2); 03:52:36 read(0, buf, 2); 03:52:36 if (!ask()) return 1; 03:52:52 ... yeah. 03:52:55 Like that, for example. 03:53:07 $ yes | bin/rm -i x y z 03:53:07 Remove x? Remove y? Remove z? elliott@dinky:~/code/tools$ 03:53:09 Ouch. 03:53:26 But ... that's correct though. 03:53:27 Heh, /bin/rm does the same, so let's ignore that. 03:53:33 Gregor: Yes, but ugly :P 03:53:37 Ah :P 03:53:47 Now to do -r and it'll be done. 03:54:03 Have you written sh yet? :P 03:54:28 Gregor: No. sh, if I do write it, will be in the "more commands!" set, and will do scripts only, designed for init scripts and the like. Interactive users should use a ksh. 03:55:09 Gregor: There'll be three sets: the core utilities, i.e. what I'm writing now; the additional utilities, like awk and sh; and the extra utilities, like wget and ping and all that stuff. 03:55:15 *three sets of utilities: 03:55:41 At which level does the user become tainGNUted? 03:56:00 Gregor: All code is original. By wget I mean "a reimplementation of wget". 03:56:06 Ahhhhh 03:56:07 Oh, things like cpio will also be in the last set. 03:56:20 Gregor: Of course I'm just as likely to write "wget: the curl wrapper!", but you get the idea. :P 03:56:27 And at what level do you get KDE4? 03:56:37 Gregor: The level accessed by "rm -rf /". 03:56:41 :P 03:56:45 And unlike some pussy competitor products, *my* rm won't refuse to do that. 03:57:23 elliott: To be fair, the diagnostic about rm -rf / isn't about not accidentally removing everything, it's about the fact that you cannot, in fact, remove the root directory. 03:57:48 Gregor: But the manual tells you it's For Your Own Good. :p 03:58:01 Suresure. 03:58:10 Gregor: And no, but you can remove everything on the system and then try, and fail to unlink the root directory, print out an appropriate diagnostic, and dump the user back to a now-completely-useless shell prompt. 03:58:16 Just like they asked you to. 03:58:24 Fair point :P 03:58:33 -!- augur has quit (Remote host closed the connection). 04:01:06 Gregor: Ha, POSIX requires me to not prompt the user on a file without write permissions if standard input isn't a terminal. 04:01:13 isatty! 04:01:17 Is a titty. 04:01:44 # 04:01:44 If file is not of type directory, the -f option is not specified, and either the permissions of file do not permit writing and the standard input is a terminal or the -i option is specified, rm shall write a prompt to the standard error and read a line from the standard input. If the response is not affirmative, rm shall do nothing more with the current file and go on to any remaining files. 04:01:56 Gregor: Pop quiz: What happens if this case happens but standard input isn't a terminal and -i is not specified? 04:02:02 Error? Silent acceptance? 04:02:08 Demons flying out of your nose, washing the Windows API? 04:02:29 (I say: print a diagnostic and exit(1).) 04:02:34 Well. 04:02:40 (I say: print a diagnostic, process other files, and exit(1).) 04:03:29 "process other files"? 04:03:30 Silent acceptance, almost assuredly. 04:04:08 I KILLED JIMBO! :( 04:04:49 } 04:04:49 if (((S_ISDIR(st) && recurse && rmdir(path) < 0) 04:04:50 || unlink(path) < 0) 04:04:50 && !force) { 04:04:50 barfx(path); 04:04:50 return 0; 04:04:52 } 04:04:54 what have i done. 04:05:15 recu... oh 04:05:27 bin/rm.c, line 24: no alignment 04:05:27 what 04:05:31 struct stat st; 04:05:44 Isn't there some language where you have to say recurse() instead of the function's name, or something? 04:05:47 Oh, it doesn't know what it is. 04:05:52 Sgeo: Sure? 04:05:54 I guess. 04:05:57 I vaguely recall that. 04:06:44 Since the name is not defined during the thing... Forth 04:06:45 ? 04:07:30 Gregor: 04:07:30 if (((S_ISDIR(st.st_mode) && recurse && rmdir(path) < 0) 04:07:31 || unlink(path) < 0) 04:07:31 && !force) { 04:07:43 Gregor: Spot the bug that makes "rm -r dir" manage to remove dir but then spew out: 04:07:48 dir: No such file or directory 04:08:45 7967 rm 04:08:48 Just need to add recursion and it's done. 04:09:37 Gregor: No GNU code is actually looking pretty likely at this junction :P 04:09:41 G'night folks. 04:09:43 -!- elliott has quit (Quit: Leaving). 04:14:12 -!- wareya has joined. 04:15:14 -!- wareya_ has quit (Read error: Operation timed out). 04:51:59 "Students Warned Not To Link To Or Even Read WikiLeaks If They Want A Federal Job" 04:52:58 I thought that was one school, and a school that focuses on diplomacy 04:53:10 (Or maybe just sent to students looking into diplomacy) 04:53:15 State department. 04:57:19 -!- augur has joined. 05:01:56 -!- hagb4rd has quit (Ping timeout: 245 seconds). 05:03:19 -!- zzo38 has joined. 05:04:24 I am making a variant of the Computer Modern fonts called Computer Hypermodern (I did change the filenames and the notice), which has three times as many parameters as Computer Modern. 05:05:51 Respond to WM_VSCROLL is insufficient, isn't it? 05:07:20 Do you mean for Windows? 05:07:48 Yes 05:08:25 I don't think it gets sent for scrolling via the mouse scroll thingy 05:26:55 -!- augur has quit (Remote host closed the connection). 05:28:26 -!- hagb4rd has joined. 05:30:25 -!- augur has joined. 05:34:52 EVERYONE: 05:34:56 What's your favorite libc function? 06:10:16 -!- hagb4rd has quit (Ping timeout: 245 seconds). 06:10:51 The one that turns the computer into SkyNet 06:13:03 Gregor: I don't know! 06:28:54 Will an old piece of music come to life if you tune your piano at random? 06:35:53 Yes, but it will almost invariably be angry and murderous. 06:39:46 What does "HAMBURGEFONSTIV" mean? 06:47:43 Is it a real word? 06:52:10 I'm gonna guess "fake word" :P 06:52:26 `translate hamburgefonstiv 06:52:27 hamburgefonstiv 06:52:34 Yeah, I'm gonna guess "fake word" 07:31:15 -!- Sasha has quit (Read error: Connection reset by peer). 07:31:51 -!- Sasha has joined. 07:33:47 Gregor: My "favorite" libc function is, of course, gets! 07:35:23 X-D 07:36:04 * Sgeo stuffs malicious garbage inside pikhq 07:38:56 -!- nopseudoidea has joined. 07:39:05 -!- nopseudoidea has quit (Client Quit). 07:39:37 -!- zzo38 has quit (Remote host closed the connection). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:12:25 -!- augur has quit (Remote host closed the connection). 08:22:22 -!- augur has joined. 08:45:43 -!- Sgeo has quit (Read error: Connection reset by peer). 08:52:44 -!- Goosey has quit (Ping timeout: 264 seconds). 08:54:51 -!- nopseudoidea has joined. 08:54:55 -!- nopseudoidea has quit (Client Quit). 09:24:40 I think he acknowledges the complaint but just doesn't care :P <-- correct, I do agree it would be better without the interlacing, but it doesn't bother me much 09:24:45 pikhq, ^ 09:29:33 -!- cheater99 has joined. 09:38:50 -!- kar8nga has joined. 09:52:39 -!- MigoMipo has joined. 10:21:35 -!- nopseudoidea has joined. 10:43:08 -!- Phantom_Hoover has joined. 10:49:38 -!- ais523 has quit (Remote host closed the connection). 11:04:04 -!- nopseudoidea has quit (Quit: Quitte). 11:39:43 -!- nopseudoidea has joined. 11:46:06 -!- nopseudoidea has quit (Quit: Quitte). 11:52:44 -!- nooga has joined. 11:52:47 :S 11:56:30 bbl 11:56:54 http://besty.pl/upload/file/1019.jpg 12:02:26 -!- nopseudoidea has joined. 12:14:32 nooga, who is that? 12:19:47 -!- FireFly has joined. 12:20:13 i don't know 12:21:54 -!- oerjan has joined. 12:42:37 -!- cheater99 has quit (Quit: Leaving). 12:51:15 -!- Zuu has joined. 12:59:03 You know, of all of the things wrong with modern Western culture, I think the worst is recursive fame. 12:59:39 People on Celebrity Big Brother who are famous for /being on a previous series of Plebian Big Brother/. 13:02:59 When the aliens invade I shall collaborate vehemently. 13:33:15 -!- Phantom_Hoover has quit (Remote host closed the connection). 13:34:38 -!- Phantom_Hoover has joined. 13:48:06 elliott (for log reading): did some tests with pypy, it clocks in between cython and and the traditional cpython 13:48:38 the difference between each of them is about one order of magnitude 13:49:46 So which was fastest? 13:52:00 -!- nopseudoidea has quit (Quit: Quitte). 14:08:48 -!- cheater99 has joined. 14:30:19 -!- nopseudoidea has joined. 14:31:07 Phantom_Hoover, as I said: cython 14:31:33 (since I talked about that yesterday and cython was so much faster than cpython) 14:32:08 * nooga wonder when they'll try to write cuby or cruby 14:32:32 -!- Slereah has quit (Ping timeout: 265 seconds). 14:34:04 nooga, isn't the current one cruby, cpython is the name of the normal traditional python implementation written in C 14:37:59 -!- Slereah has joined. 14:38:27 -!- nopseudoidea has quit (Remote host closed the connection). 14:43:28 -!- nopseudoidea has joined. 14:46:34 oh 14:46:55 so classic python is written in ... ? 14:47:01 C. 14:47:07 wait 14:47:14 sry, i didn;t pay attention 14:47:32 they why do you call it cpython instead of python? 14:48:01 Python is the language; CPython is the official implementation. 14:49:35 okay 14:49:39 then cython ? 14:51:34 Cython is some weird thing. 15:00:56 ok, then i'm waiting for cuby 15:01:33 -!- Sgeo has joined. 15:09:19 -!- elliott has joined. 15:12:33 21:34:52 EVERYONE: 15:12:34 21:34:56 What's your favorite libc function? 15:12:39 Gregor: Hey duuude I've asked that before. 15:14:23 Gregor: My answer is: mmap, without contest. 15:14:25 06:32:08 * nooga wonder when they'll try to write cuby or cruby 15:14:38 nooga: if you mean RubyRuby like PyPy, then it's called Rubinius. 15:18:15 i know about Rubinius 15:18:43 We are worms, we're the best, and we've come to win the war 15:19:30 isn't cython that awkward language that looks like python mixed with C ? 15:22:33 nooga: Doesn't seem that awkward to me. 15:23:30 -!- Goosey has joined. 15:28:57 [[In the United States, summer vacation lasts for almost 3 months.]] — WP 15:29:02 ...how? 15:29:26 Vorpal: http://i.imgur.com/uwFQS.jpg LOL, SWEDEN 15:29:29 Do they just not *have* Christmas and Easter holidays? 15:29:39 Phantom_Hoover: Summer starts in JANUARY! 15:30:10 Wait, elsewhere, summer doesn't last as long? 15:30:17 Erm, vacation 15:30:21 * Sgeo suddenly wants to move 15:30:45 Sgeo, it's around 2 months here, although it depends on the school. 15:32:27 "The United States does not have national holidays in the sense of days on which all employees in the U.S. receive a day free from work and all business is halted. The U.S. Federal government can only recognize national holidays that pertain to its own employees; it is at the discretion of each state or local jurisdiction to determine official holiday schedules. There are eleven such Federal holidays, ten annual and one quadrennial holiday. 15:33:05 which includes christmas day, but not anything easter. 15:33:43 Sgeo, there are 2-week-long Christmas and Easter holidays, though/ 15:33:55 Spring break == Easter, right? 15:34:48 I assume. 15:34:57 So yeah, we have off 15:35:05 There are also half terms of around a week. 15:36:01 Multiple ones, actually. 15:37:36 i see some individual states have good friday, though 15:38:20 oerjan, ask pikhq about US regulations about paid leave if you enjoy feeling smug. 15:38:43 heh 15:39:47 "Often, universities schedule spring break such that Saint Patrick's Day falls during the week in order to lessen the amount of partying and drinking on their campuses. Many K–12 institutions in the United States coincide their spring break with Easter and Passover. In New York and Connecticut, most students have spring break in April. 15:40:08 so it's not consistent 15:40:58 (quotes from http://en.wikipedia.org/wiki/Public_holidays_in_the_United_States and http://en.wikipedia.org/wiki/Spring_break) 15:47:20 -!- Sasha has quit (Read error: Connection reset by peer). 15:47:32 -!- Sasha has joined. 15:54:19 Gregor: Does util-linux count as GNU software? 15:58:01 I never cease to be amazed by the glurge people are taken in by. 15:58:33 Phantom_Hoover: wut 15:59:14 elliott, latest moronic Facebook campaign: "Put a cartoon character as your picture TO STOP CHILD ABUSE!!1111!!!" 15:59:28 Ah yes. 15:59:41 Of course, noöne bothers giving any /money/ or anything, it only matters that you show that you care. 15:59:43 I hated that so much that I beat up my three kids into a bloody pulp and they screamed. 16:00:04 And the fact that it seems to be for the NSPCC just paints another layer of revulsion on the thing. 16:00:17 BLOODY 16:00:19 PULP 16:00:22 Also Sgeo for good measure. 16:00:55 You turned kids into me? 16:00:56 -!- kar8nga has quit (Remote host closed the connection). 16:02:59 Sgeo: No, I beat you into a bloody pulp. 16:07:02 -!- nopseudoidea has quit (Quit: Quitte). 16:10:09 * Phantom_Hoover beats Zuu into a bloody pulp. 16:12:06 16:22 < elliott> nooga: Doesn't seem that awkward to me. 16:12:14 LOL HOLY CRAP OMG OMG OMG 16:12:21 while ((entry = readdir(dir))) 16:12:21 if (!rm(entry->d_name)) ok = 0; 16:12:23 SPOT THE MOTHERFUCKING BUG 16:12:43 -!- p_q has quit (Quit: This computer has gone to sleep). 16:13:04 when I propposed adding few higher level constructs to C You said that it'd be awkward without even bothering to listen what I came up with 16:13:22 -!- poiuy_qwert has joined. 16:13:25 nooga: c is awkward 16:13:39 and python is even more awkward and nazi 16:13:50 if you connect c with python 16:13:55 it must be awkward 16:16:12 nooga, adding high-level constructs to C is completely missing the point. 16:16:17 -!- poiuy_qwert has quit (Client Quit). 16:16:29 mmm 16:16:41 It's a high-level assembler for an abstract machine, not a general-purpose language. 16:16:54 it'd be rather like syntactic sugar to cover things we do all the time in C itself 16:18:03 besides 16:18:24 i don't think that guys at NeXT sompletely missed the point making Objective-C 16:19:25 Which is why Objective C isn't just "C with some extra crap papier-mâchéd on" like C++. 16:20:54 C++ is fugly 16:20:54 Although it is to a significant degree. 16:21:06 and thick 16:21:32 Objective C is thin and feels almost like another preprocessor level over C 16:21:33 Why on earth would you even include C as a subset of Objective-C anyway... 16:21:56 It's such a stupid mentality. 16:22:09 for porting, for example 16:23:22 Porting what? 16:23:43 * Phantom_Hoover U-turns on Objective-C. 16:23:50 Yes, it does miss the point entirely. 16:23:59 well uh 16:24:34 -!- yorick has joined. 16:24:37 imagine you're writing a car navigation system for iphone and you've got a library previously written in C that does almost everything 16:25:05 nooga: you'd port it to brainfuck, ofcourse 16:25:19 uh 16:25:34 okay, Phantom_Hoover, you're right 16:26:46 elliott: do you know some papers on lisp machine lisp and it's implementation? 16:26:56 or any hardware lisp implementation? 16:26:59 nooga: which type of lisp machine 16:27:49 i remember something on MIT ones 16:29:09 nooga: well i don't think too much was published about it 16:29:12 since they were usually quite commercial 16:29:14 but i think some stuff was 16:30:02 gah, a reason to dislike bruce perens 16:30:04 is nothing sacred any more? 16:30:25 nooga, basically, when you say "portability" you mean "copying and pasting some C code into your Objective-C project". 16:30:30 That is stupid. 16:30:52 If you have C code and you want to interface it with an HLL, you should use an FFI. 16:30:57 but works like a charm 16:32:53 so does PHP 16:35:16 nooga, OK, if you like poisoning your language's design and abstraction just so you can get a C library into it for slightly less effort, it's great. 16:36:18 no, I exploit the design and abstraction AND use C library without hassle 16:39:01 nooga: and you could get shit done in php, too 16:39:05 it's just that you shouldn't. 16:39:16 nooga, ...which is exactly what a good FFI does, without requiring you crowbar C into your language. 16:39:44 what's the point!? 16:40:10 Objective-C allows this and it's still pretty good C with 'cancer' 16:41:44 Phantom_Hoover: why are you even bothering to argue, it's the same line from both sides forever 16:41:50 neither of you are convincing the other 16:42:19 elliott, surely you take a side in this? But yes, I'll leave it. 16:42:31 Phantom_Hoover: When did I imply that I did not? 16:42:48 elliott, misinterpretation. 16:42:55 Okay. 16:43:01 uh 16:43:46 * nooga shuts up and gets back to playing with hedgehog lisp 16:44:30 Phantom_Hoover, that wasnt nice, to beat me into a bloody pulp :( 16:44:47 i did that, not him 16:44:51 Zuu, aww. It's also no fun if you *respond*. 16:44:58 oh, wait, maybe he did 16:45:02 how am i supposed to eat cookies now? 16:45:13 sshc turned out to be an actual moron, so I can't pick on him... 16:45:36 dbc, you are a disgusting little man and you should be ashamed of yourself. 16:45:44 Phantom_Hoover: Hey, that's Daniel B. Cristofani. 16:45:44 could someone please lay a cookie on top of my bloody pulplike body? 16:45:56 Phantom_Hoover: Of all the people to pick on, http://www.hevanet.com/cristofd/brainfuck/ is probably *not* the one :P 16:46:06 * Phantom_Hoover depulps Zuu. 16:46:20 elliott, gyaaaaaaaah! 16:46:30 Oh what the heck. 16:46:31 :D 16:46:44 Phantom_Hoover, did you have to shape me into an ashtray? 16:46:51 oerjan: You eat pig dung for breakfast and put spikes in your own cranium on a daily basis! And you are a fascist! 16:47:00 Leonidas, DON'T RESPOND TO THIS OR I WILL KILL YOU AND DON'T HAVE DONE ANYTHING COOL 16:47:00 I call it "IRC Russian Roulette". 16:47:56 uhm, sure 16:48:08 "DON'T RESPOND TO THIS OR I WILL KILL YOU" 16:48:09 "uhm, sure" 16:48:54 * Leonidas doesn't care that much ;) 16:50:13 * Phantom_Hoover beats Leonidas into a bloody pulp, then uses that to replace the bits of Zuu that got splattered. 16:50:43 mycroftiv, unlike your namesake, you are wantonly lacking in any analytical or intellectual capabilities. 16:52:01 Hey, Sgeo is still bloody pulp. 16:52:05 Ah, who cares. 16:52:24 IS THIS SPARTA? 16:52:30 I think Phantom_Hoover is immortal 16:53:08 Sgeo, there's no evidence to the contrary. 16:53:33 Phantom_Hoover: mycroftiv is awesome 16:53:47 elliott, you are sorely mistaken. 16:53:54 Phantom_Hoover: i am not, he's a plan9 guy 16:54:08 -!- larsrh has joined. 16:54:43 rodgort, what kind of a name is that? It sounds utterly stupid. 16:54:55 Actually, I rescind that remark; it suits you perfectly. 17:07:10 -!- nooga has quit (Ping timeout: 240 seconds). 17:08:31 I feel like implementing a simple Lua-esque language so I can do what PyPy did in it. 17:09:33 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds). 17:10:54 -!- Phantom_Hoover has joined. 17:10:55 -!- nopseudoidea has joined. 17:13:56 in C, is *x[0] *(x[0]) or (*x)[0]? i've forgotten 19:13:19 -!- clog has joined. 19:13:19 -!- clog has joined. 19:13:43 busybox will be precompiled and then the compiler suite inside the built system will be changed 19:13:57 nooga: BusyBox is not actually all that small. 19:14:01 i know 19:14:02 ;p 19:14:02 I'm packing stuff into much smaller space than it... 19:14:15 nooga: note that with busybox you CAN disable most stuff to get a small executable, but still, mine's smaller :P 19:14:24 :P 19:14:32 and what can it do so far? 19:15:11 nooga: false, true, yes, sleep, pwd, echo, dirname, basename, uname, signal, link, cat, date, chroot, env, vis, strings, cal, rm, kill, mkdir. 19:15:19 Pretty POSIX compliant. 19:15:45 2083 yes 19:15:46 6483 cat 19:15:46 6615 date 19:15:46 8775 kill 19:15:46 9299 mkdir 19:15:52 nooga: Those sizes are in bytes, for independent executables. 19:15:53 * oerjan looks at http://en.wikipedia.org/wiki/Tom_Duff and thinks elliott_ might like the first quote there 19:16:15 nooga: The whole thing compiled into one executable, like BusyBox, is 20K or so (and could be made smaller with some optimisations that I'm doing now). 19:16:24 nooga: When UPX'd, it goes down to 15K. 19:16:35 oerjan: :D 19:16:50 oerjan: well it /was/ on the plan 9 mailing list 19:17:30 > > AFAIK there are no shared libraries in plan9? 19:17:30 > > Any ideas will they be available? 19:17:30 > 19:17:31 > Shared libraries are the work of the devil, 19:17:31 > the one true sign that the apocalypse is 19:17:31 > at hand. Seriously, they're good for two 19:17:33 > things, 19:17:35 huh !?! 19:17:36 well, three things for me... 19:17:38 first being the ability to share code between the application 19:17:40 hate to see gnome ported and get 20meg staticaly linked 19:17:43 simple CD player 19:17:45 Wow. 19:17:46 He wants to port GNOME to Plan 9. 19:17:48 There are no words. 19:18:09 -!- cheater99 has joined. 19:18:14 Is that A Stupid Idea? 19:19:03 Phantom_Hoover: Considering that Plan 9 has its own, rather opinionated, very unique interface, and considering that GNOME is very ununixy -- big, bloated, no way to pass around simple text from program to program at all -- yes, yes it is. 19:19:33 Sgeo, incidentally, why did you say you wanted to move here because the summer holidays were shorter? 19:19:43 nooga: Do you want the instructions and patches for a pcc/dietlibc toolchain? It is not very hard to get one working, and it produces exceedingly small executables. 19:22:15 okay 19:22:49 elliott_, hm, dynamic linking is useful for plugins 19:22:51 i'd also need init :D 19:23:03 elliott_, and for runtimes that can load "native" extensions, such as python 19:23:06 that is about it 19:23:07 busybox delivers that 19:23:13 nooga: You don't need init. 19:23:20 nooga: init can be a shell script on embedded systems. 19:23:26 #!/bin/sh 19:23:27 do set up 19:23:30 a little more set up 19:23:34 (wait forever) 19:23:36 i'm too lazy to write one 19:23:42 i will try with init for now 19:23:57 nooga: It's a shell script! You do realise that with BusyBox init you have to write init scripts to get it to do anything? 19:23:59 Vorpal: He says that in the post itself. 19:24:01 my plan is to build something working and then strip it 19:24:06 Vorpal: But really, dynamic loading isn't dynamic linking. 19:24:16 nooga: Use sstrip. (BusyBox does that as part of the build process if you enable it.) 19:24:21 elliott_, true, they are however related 19:24:26 Phantom_Hoover, I hate summers 19:24:30 Vorpal: Dynamic linking is turning all linking into dynamic loading for no real reason. 19:24:31 Sgeo: why? 19:24:33 Sgeo, why? 19:24:35 I don't get out much during the summer 19:24:39 Why? 19:24:47 Climate? 19:24:56 elliott_, to avoid linking huge libraries like QT or boost into everything? 19:25:07 Phantom_Hoover, what would I do? 19:25:10 http://macournoyer.com/blog/2009/02/12/tinyrb/ i wan this :D! 19:25:12 want 19:25:16 Vorpal: That's a flaw in those libraries. 19:25:26 Sgeo, what do you do normally in your free time? 19:25:34 Go on the computer 19:26:04 Yeah yeah, that's very unspecific. My interests vary 19:26:07 nooga: http://sprunge.us/UeSF Instructions. Obviously set K to some reasonable directory, and you probably want to replace $K/stage2 with whatever you want your cross-compiler toolchain's install directory to be. 19:26:10 nooga: http://sprunge.us/HWUO dietlibc-for-pcc.patch 19:26:17 nooga: http://sprunge.us/LDHW pcc-zero-malloc.patch 19:26:28 nooga: http://sprunge.us/DfEc pcc-libs-quad-dietlibc.patch 19:26:30 elliott_, yes indeed. But we live in a world where they exist and are widely used 19:26:34 nooga: Get pcc and dietlibc from their respective CVS repositories. 19:26:45 elliott_, it is not realistic to hope to replace all that for your linux distro 19:26:47 Vorpal: And we also exist in a world where we have huge disks that can afford to waste space on crappy programs linking to huge libraries. 19:26:54 Vorpal: So it's no issue! 19:27:48 And Smalltalk's just fine in its own little world. Working with the outside world is completely unnecessary 19:27:56 elliott_, perhaps 19:28:16 Vorpal: Sure, the disk bloat is unfortunate, but static linking also gets rid of a lot of headaches. And the programs that don't link to such huge libraries get smaller, so it's offset a bit. :) 19:28:28 -!- wareya has quit (Read error: Connection reset by peer). 19:28:42 elliott_, how does it look for normal X programs? 19:28:55 when it comes to static vs. dynamic binary size 19:28:57 Vorpal: Normal -- just libX11? Or GTK? 19:28:58 Why not just do the dynamic thing, but manage the libraries properly? 19:29:03 Sgeo: HAHAAHAHHAHAHAHAHA 19:29:08 elliott_, both would be interesting to know 19:29:14 -!- wareya has joined. 19:29:15 Sgeo: (1) Doing so is either impossible or meaningless depending on your meaning. 19:29:28 Sgeo: (2) If Quake II's binary were statically linked, it would not run on anything today. 19:29:32 It was compiled in 1997. 19:29:35 Vorpal: With Boost in particular, "dynamic linking" is a myth. 19:29:39 Because it is statically linked to the libc, it still works. 19:29:46 And Quake II is a fucking awesome game. 19:29:47 Q.E.D. 19:29:51 Vorpal: I haven't measured yet. 19:29:52 Vorpal: It uses templates heavily, making it effectively already statically linked. 19:29:56 pikhq, quite 19:29:59 elliott_, you must have meant "weren't" 19:30:05 Sgeo: Yes, yes. 19:30:06 weren't. 19:30:36 * elliott_ wonders what directory to install his recompiled pcc/dietlibc toolchain to. 19:30:41 /opt/toolchain? :p 19:30:45 pikhq: Wait, what's a triple again? 19:30:50 arch-kernel-libc? 19:31:28 elliott_, you still use binutils? 19:31:32 elliott_, if so: why on earth 19:32:01 Vorpal: I don't see how you can infer that from what I said. 19:32:12 Vorpal: But yes, I do; I have searched far and wide and cannot find a binutils alternative. 19:32:14 elliott_: architecture-evendor-os for a triple, architecture-evendor-kernel-userspace for a quad. 19:32:24 elliott_, "pcc/dietlibc/ toolchain" 19:32:27 The BSD binutils will undoubtedly be BSD-specific. 19:32:33 Vorpal: Got an alternative? 19:32:38 elliott_: So, "x86_64-pc-linux-dietlibc"... 19:32:50 elliott_, not really no. I presume gold is even worse? Plus iirc it is part of binutils 19:32:55 pikhq: Irritating. I want something that has the compiler in it :P 19:32:59 Vorpal: "Even worse" how? 19:33:01 It's certainly faster. 19:33:10 elliott_, I thought it was C++ 19:33:11 But it produced executables a few bytes bigger for me, so nyah. :P 19:33:14 elliott_: The build tuple is all about specifying an ABI. 19:33:16 But yeah, it is part of binutils. 19:33:21 elliott_: The compiler has nothing to do with the ABI. 19:33:29 pikhq: Then what should I use for my pcc/dietlibc name eh?! NOBODY TAKES THIS INTO CONSIDERATION 19:33:31 elliott_: Except when it does. 19:33:33 /opt/pcc-dietlibc MAYBE but that's just weird. 19:33:38 elliott_, gold produces binaries a few bytes bigger eh, what is the extra data? 19:33:50 elliott_: /opt/pcc-x86_64-pc-linux-dietlibc/ 19:33:55 Vorpal: No idea, I didn't check; I just tried gold, noticed an inflation, and put it back :P 19:33:58 pikhq: Waay too long. 19:34:23 elliott_: Sorry, but that's what you get if you want anything more than "lol I only support one ABI". 19:34:41 elliott_, but pcc is not related to the ABI? 19:34:48 Vorpal: No, it's not. 19:34:50 you could have other compilers installed along side 19:34:53 alongside* 19:34:53 But I still have to make an /opt directory :P 19:35:06 Vorpal: Yes, but I just want to denote "pcc and dietlibc" in a path name! STANDARDS SHOULD SUPPORT ME IN THIS ENDEAVOUR 19:35:11 elliott_, so why not /opt/x86_64-pc-linux-dietlibc ? 19:35:24 elliott_, but what difference does "pcc" there make 19:35:28 since it doesn't affect ABI 19:36:14 I wonder why I have WANT_SSP enabled in my guide. 19:36:18 I wonder if it fixed something. 19:36:38 Vorpal: I could also call it /opt/linux, 'cuz it's running on linux. 19:36:42 But I'm trying to give it a relevant name :P 19:37:04 * check for valgrind, and if detected, turn off optimized SIMD string 19:37:05 * routines that cause false positives in valgrind. This enlarges and 19:37:05 * slightly slows down your code! */ 19:37:12 HEY HEY I CAN TURN OFF VALGRIND SUPPORT AND GET SMALLER BINARIES 19:37:13 WOOOOOOOOOOOOOOOO 19:38:17 /* do you want smaller or faster string routines? */ 19:38:19 Oh, don't do that to me... 19:38:28 I should probably go for faster, since it likely actually pays off here. 19:40:26 elliott_, you know elliotOS, is it still "don't allow low level programming"? 19:40:41 (outside the kernel parts that need it) 19:40:44 Vorpal: It's never been that exactly. 19:40:52 It's just that giving the low-level permission to anything is STOOPID :P 19:40:56 Vorpal: But sure, yes. 19:40:57 hm looks like criticism of nasa's arsenic bacteria is starting to roll in http://rrresearch.blogspot.com/2010/12/arsenic-associated-bacteria-nasas.html 19:41:14 Vorpal: (Synthesis-style stuff + specialisation = code that does stuff mapping directly to low-level things ends up doing them directly :P) 19:41:15 Vorpal: But why? 19:41:31 elliott_, there are cases when it is useful (since I have yet to see a perfect compiler) 19:41:37 number crunching mostly 19:41:58 Vorpal: good thing i'm writing the perfect compiler then 19:41:59 or should i say 19:42:00 SPECIALISER 19:42:47 elliott_, yes sure, but will it automatically use GPGPU calculations when that is beneficial? ;P And when exactly *is* it beneficial? 19:43:07 same goes for SIMD of course 19:43:19 Vorpal: there's no reason i can't expose an interface to the GPGPU that is checked at compile-time 19:43:27 elliott_, ah good answer 19:43:52 Vorpal: same way I expose an interface to the CPU that is checked at compile-time :P 19:43:54 (with a compiler) 19:44:00 sensible 19:44:54 elliott_, and if an algorithm could make use of low level atomic operations with shared memory, would that be possible. That is of course somewhat tricky to check at compile time (shared memory I mean) 19:45:43 Vorpal: Perhaps not, but imagine an interface to shared memory with only safe optimisations, that is coded to manually use the low-level operations. 19:45:54 elliott_, hm 19:45:59 Then when it's used by user code, calls are just "inlined" down in the assembly so it uses them directly. 19:46:26 indeed, would probably work for many common situations 19:47:33 pikhq: #define WANT_FASTER_STRING_ROUTINES 19:47:36 pikhq: WHAT DO I DO WHAT DO I DO 19:47:40 pikhq: (they're BIGGER) 19:48:23 * lines from /etc/resolv.conf? Normally not used on boot floppies and 19:48:23 * embedded environments. */ 19:48:25 er 19:48:28 /* do you want the DNS routines to parse and use "domain" and "search" 19:48:28 * lines from /etc/resolv.conf? Normally not used on boot floppies and 19:48:29 * embedded environments. */ 19:48:30 elliott_, profile :P 19:48:31 I think I can disable that 19:48:34 no reason not to just use "nameserver" 19:48:44 Vorpal: I know that one will be smaller but slower and the other will be bigger but faster. 19:48:54 elliott_, so presumably bigger and faster 19:48:56 Vorpal: It's just that while I'm hideously devoted to small binary size, I don't want shit to go slowly :P 19:49:02 Yeah, I'll go bigger and faster for this one. 19:49:03 elliott_, string routines is after all hot code 19:49:35 Huh. dietlibc's localtime can read /etc/localtime. 19:49:43 But fuck that, because you can just set $TZ. 19:49:49 elliott_, um why not read that file 19:49:53 Vorpal: More koed. 19:50:01 elliott_, since it needs to look up when DST changes anyway 19:50:09 Vorpal: Yes. That is in $TZ. 19:50:13 elliott_, I mean, TZ=Europe/Stockholm 19:50:15 then what 19:50:16 Vorpal: Fail. 19:50:27 Vorpal: That value violates POSIX. 19:50:32 elliott_, I'm not going to change TZ two times / year :P 19:50:39 elliott_, and you agreed that POSIX is stupid 19:50:40 Vorpal: Good. 19:50:41 You don't have to. 19:50:44 http://www.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap08.html 19:50:49 Vorpal: Scroll down to the bottom. 19:50:50 elliott_, different countries change at different points 19:50:53 Note how $TZ handles DST. 19:51:01 Vorpal: IT GOES INTO THE $TZ VARIABLE YOU IDIOT 19:51:12 rule 19:51:13 Indicates when to change to and back from the alternative time. The rule has the form: 19:51:13 date[/time],date[/time] 19:51:13 where the first date describes when the change from standard to alternative time occurs and the second date describes when the change back happens. Each time field describes when, in current local time, the change to the other time is made. 19:51:13 The format of date is one of the following: 19:51:15 Jn 19:51:17 The Julian day n (1 <= n <= 365). Leap days shall not be counted. That is, in all years-including leap years-February 28 is day 59 and March 1 is day 60. It is impossible to refer explicitly to the occasional February 29. 19:51:21 n 19:51:23 The zero-based Julian day (0 <= n <= 365). Leap days shall be counted, and it is possible to refer to February 29. 19:51:26 Mm.n.d 19:51:29 The d'th day (0 <= d <= 6) of week n of month m of the year (1 <= n <= 5, 1 <= m <= 12, where week 5 means "the last d day in month m" which may occur in either the fourth or the fifth week). Week 1 is the first week in which the d'th day occurs. Day zero is Sunday. 19:51:30 elliott_, that varies between years 19:51:32 The time has the same format as offset except that no leading sign ( '-' or '+' ) is allowed. The default, if time is not given, shall be 02:00:00. 19:51:49 Vorpal: No it doesn't. 19:51:56 DST changes are rare, and call only for a new $TZ. 19:51:59 elliott_, in some countries it does 19:52:04 Vorpal: Not regularly. 19:52:23 elliott_, Isral iirc used to have it decided on a year by year basis 19:52:33 Used to. 19:52:33 Israel* 19:52:51 /opt/pcc-dietlibc it is. 19:52:59 elliott_, what about 32-bit then 19:53:02 elliott_, for multilib 19:53:54 Vorpal: What about it? 19:53:57 This is just for my Debian machine, duh. 19:54:02 On Kitten it'll be /bin/pcc and /lib/libc.a. 19:54:18 elliott_, and the -m32 one? does it do that in the same binary? 19:54:28 Vorpal: What are you trying to say? 19:55:14 elliott_, how will you support multilib on there. Since you need different libc and sometimes different compilers (depending on if the compiler supports -m32 or equiv) 19:55:36 Vorpal: multilib packages go into prefix /arch/archname. 19:55:41 I don't think pcc has -m32. 19:55:49 32-bit dietlibc would go into /arch/x86/lib/libc.a. 19:56:12 elliott_, shouldn't /bin symlink to /arch//bin ? 19:56:32 elliott_, it would be kind of neat 19:57:03 pikhq: -rw-r--r-- 1 root root 864K Dec 5 19:55 libc.a 19:57:13 Vorpal: No; I briefly considered that and rejected it on the grounds of cluttering up /. 19:57:25 Vorpal: (If I could symlink / to /arch/, that would be insane enough for me to consider it.) 19:57:27 elliott_, also allow trivial change if you replace the CPU. Just update symlinks and the kernel. Change the disk to the new CPU (and possibly a new mobo), boot 19:57:41 Migrating CPU architecture NOT SUPPORTED :P 19:57:42 elliott_, alas I believe that would present some problems 19:57:52 elliott_, it SHOULD be because that would be COOL 19:57:57 There are non-x86 PCs, aren't there? 19:58:07 elliott_, yes 19:58:08 i.e. obeying the PC standard in every way except that they have a PPC there instead. 19:58:12 Which is just silly :P 19:58:13 hm 19:58:17 Vorpal: What's more fun is non-PC x86s. 19:58:23 elliott_, indeed 19:58:29 Modern Macs aaaalmost manage to be that. 19:58:34 elliott_, but this would work between 32/64 for the same arch at least 19:58:35 But since they can emulate a BIOS, not really. 19:58:43 Vorpal: Only if you recompiled everything first :P 19:58:47 and if you made it work between, say, x86-64 and PPC32 then it would be awesome 19:58:54 -!- Mathnerd314 has joined. 19:59:08 elliott_, nah, just install that other arch, change symlinks and kernel and reboot to new hardware 19:59:14 elliott_, minimises downtime 19:59:35 elliott_, also you can use a 64-bit kernel and a 32-bit userlamnd 19:59:36 land* 19:59:42 elliott_, even common on some arches iirc 19:59:52 such as sparc iirc 19:59:57 Anyone want a precompiled pcc/dietlibc toolchain? 20:00:11 For x86-64/Linux. 20:00:14 not really no 20:00:20 Anyone else? :P 20:00:26 elliott_, make one targeting h8300-coff 20:00:31 Has to be put in /opt/pcc-dietlibc because dietlibc's diet wrapper knows what prefix it was built with. 20:00:34 Vorpal: No :P 20:00:47 elliott_, but kitten for RCX sounds awesome 20:10:51 Fucking hell, more problems with false and true. 20:11:07 Oh! lol. 20:11:24 HA! dietlibc shrinkage. 20:11:27 1591 yes 20:11:27 1631 sleep 20:11:27 1791 pwd 20:11:27 1795 echo 20:11:27 1831 dirname 20:11:44 11,164 bytes saved in total. 20:11:48 11K saved just by configuring the libc. 20:15:09 LOL OR MAYBE NOT 20:15:11 Sun Dec 5 20:14:31 [unknown timezone] 2010 20:18:10 96809 total 20:18:12 Acceptable. 20:18:12 elliott_, also it breaks if you want to refer to a previous date. Which timezone is in effect then when the time for the switch changed 20:18:41 Vorpal: It's okay, dietlibc doesn't support locales anyway. Oh wait, yes it does. 20:18:44 extern enum __encoding { 20:18:45 CT_8BIT, 20:18:45 CT_UTF8, 20:18:45 } lc_ctype; 20:18:48 It supports a whole two of them. 20:19:20 elliott_, what about locale(1) next? 20:19:34 Or what about no! 20:19:44 what does no(1) do? 20:20:16 elliott_, have you done mount yet? 20:21:22 no(1) doesn't print out the string it's given, forever. 20:21:33 (Or, if you actually wanted to make a reasonable no, it'd be the same as "yes n" :P) 20:21:41 Vorpal: Haven't done mount yet, no. 20:21:51 Vorpal: I'm refactoring this to stop using .h for library functions and stuff. 20:22:05 elliott_, what would it use instead? 20:22:06 And to use bitmasks for flags when I can, and have a bool type aliased to char, and the like. 20:22:12 Vorpal: What would what use instead? 20:22:14 Oh. 20:22:17 Vorpal: .c files :P 20:22:21 Vorpal: Right now, I have functions in .h files. 20:22:23 Actual functions. 20:22:26 oh 20:22:26 Because it's convenient. 20:22:35 elliott_, you mean the definitions? 20:22:40 (Making them .c would make my build system think they're utensils.) 20:22:43 Vorpal: Yes. 20:22:55 elliott_, your build system needs work 20:23:08 Vorpal: It was a 2 minute hack :P 20:23:15 It also makes the box bigger than it should be, since the library stuff is duplicated. 20:23:42 Woo, my Makefile now isn't hideously specific to my setup and only my setup. 20:23:46 I have a config.make now. 20:23:55 (No, I will never use menuconfig.) 20:23:56 (Ever.) 20:24:18 I should move sstrip out of the root with the Makefile... 20:24:21 Maybe in tools/. 20:25:31 make: *** No rule to make target `bin/basename', needed by `individual'. Stop. 20:25:32 wut. 20:25:44 Ohh. 20:25:52 What it means is that my implicit rule has an unsatisfied dependency :P 20:26:16 Makefile:32: *** Recursive variable `CFLAGS' references itself (eventually). Stop. 20:26:18 Eventually :P 20:27:23 oerjan: you never answered my super-awesome question *sniff* 20:31:03 * nooga is patching tinyrb 20:32:48 elliott_, you need to use := somewhere 20:33:00 CFLAGS = $(CFLAGS) is what you have sooner or later currently 20:33:05 you probably intended := 20:33:05 I know 20:33:07 Vorpal: actually it's more like 20:33:10 CFLAGS = blah $(CFLAGS) blah 20:33:18 indeed you need := then 20:33:26 is := portable across makes? 20:33:31 (I fixed it another way, just curious) 20:33:34 elliott_, no clue 20:33:53 elliott_, btw are you sure there are no nicer alternatives to C here? 20:34:12 elliott_, isn't there that memory safe C 20:34:17 forgot the name of it 20:34:20 cyclone or somethong 20:34:22 something* 20:34:23 Vorpal: I doubt any of them have a toolchain that produce binaries of similar tininess. 20:35:08 elliott_, what about tcc 20:35:11 I think I should generate a Makefile with a script... since different utensils will have different dependencies from my library. 20:35:16 elliott_, does it give larger binaries? 20:35:16 Vorpal: Does that do Cyclone? 20:35:22 elliott_, no 20:35:27 Well then. 20:35:28 but how does it compare to pcc 20:35:28 I haven't bothered measuring tcc since it supports so little. 20:35:32 hm 20:36:02 Vorpal: Allow me to just say "Good luck compiling my sleep.c to less than 1791 bytes" :P 20:36:30 Vorpal: If a compiler somehow magically elided entries from the errno strings table that no syscall in the program could produce, that would make a few of my utilities a K or two smaller. 20:36:39 I could probably do it manually, but it's *way* more trouble than it's worth. 20:36:43 -!- p_q has joined. 20:37:09 -!- poiuy_qwert has quit (Ping timeout: 240 seconds). 20:38:47 elliott_, perfect minimal hash of errno! 20:38:54 (for only the entries you need) 20:39:08 No :P 20:39:12 elliott_: it is generally useless to try and force an opinion out of me if i don't actually have one 20:39:26 fine! i'll force one out of Vorpal 20:39:35 elliott_, with regards to what? 20:39:43 Vorpal: if the box executable is called cutlery, and the individual programs are utensils, should the project be called cutlery or utensils? 20:39:50 i.e. is it "utensils.h" or "cutlery.h" for the library header 20:39:54 elliott_, no idea. You decide 20:39:55 where the library is all the auxiliary functions some applets use 20:39:58 Vorpal: NOT HELPFUL :P 20:40:09 elliott_, I find the names rather confusing as it is. Would certainly fit into ick 20:40:29 Vorpal: I started out with utility... utensils, and it's kind of blossomed from there :P 20:40:40 elliott_, yes but I think it went too far 20:40:41 Previously the directory was ~/code/tools and the box was called "box", which was rather bland. :p 20:40:56 Vorpal: "busybox" -- the box isn't really BUSY! 20:41:01 elliott_, kitchen drawer? 20:41:06 (instead of box) 20:41:11 lawl 20:41:15 I think I'm calling the box cutlery. 20:41:27 elliott_, whatever, it is up to you 20:41:34 HEY Gregor :P 20:41:41 I'll use gets if you don't decide. 20:42:19 cutlerybox, not box cutlery 20:42:29 elliott_, also I'm kind of surprised that gcc or clang can't produce smaller code. Maybe they produce lots of useless stuff around? 20:42:34 such as .eh_frame or such 20:42:47 Vorpal: I haven't tried clang, I doubt it will work with dietlibc in any way, shape or form :P 20:42:47 it's sooo relaxing 20:42:49 https://github.com/nooga/tinyrb 20:43:02 impelemnting standard ruby classes in C 20:43:11 Gregor: If the box is cutlery and the individual programs are utensils, is the header file for all the auxiliary functions they use -- and thus the project -- named "utensils" or "cutlery"? 20:43:51 Gregor, please please give elliott_ a third option :P 20:44:02 elliott_, also what is with the _ ? 20:44:06 -!- elliott_ has changed nick to elliott. 20:44:09 I got disconnected at one point. 20:44:12 -!- elliott has quit (Changing host). 20:44:12 -!- elliott has joined. 20:44:22 elliott, ah, so you weren't going to justify it like ais 20:44:34 porknife.h 20:45:17 Gregor, what is a porknife? 20:47:09 Gregor: It's more what the project is named than what the header is named :P 20:47:11 and then i will write a kernel in ruby 20:47:22 nooga: Good luck with that, n00b :P 20:48:08 elliott: IWillCutYou.h 20:48:26 elliott: i was completely serious :P 20:48:38 Gregor: If you don't name the project either utensils or cutlery, I will use gets. 20:48:39 On babies. 20:49:17 babies = gets() 20:49:38 Phantom_Hoover: gets(babise) 20:49:39 *babies 20:49:58 elliott: cutlerybox 20:50:06 "The compiler is based on the original Portable C Compiler by S. C. Johnson" 20:50:08 A family company? 20:50:15 XD 20:50:43 * Phantom_Hoover realises noöne else except him got that. 20:52:14 Gregor: NOBODY SAYS "CUTLERY BOX" 20:52:35 elliott: Google gets 21K results 20:52:52 Gregor: Notice that none of them are people :P 20:53:04 elliott, "cutlery set". 20:53:12 elliott: They're all manufacturers of cutlery boxes! 20:53:17 Phantom_Hoover: But it has to end in "box" 20:53:17 elliott, indeed. "cuboid unit for storage of tools related to food" is way more common 20:53:36 Gregor: { #include "cutlery.h" } or { #include "utensils.h" }, pick ONE :P 20:53:50 elliott, cutensils.h 20:53:58 elliott, the first! 20:53:59 best of both words 20:54:03 and worlds 20:54:13 elliott, or utenlery.h 20:54:18 I said pick ONE. 20:54:21 Phantom_Hoover: I asked Gregor :P 20:54:26 For one thing, cutlery \subset utensils. 20:54:28 Mmmmmmmmmmmmmmmmmmmmmmmm 20:54:36 `run echo $(( RANDOM % 2 )) 20:54:37 Phantom_Hoover, why not interleave the two words 20:54:57 hm 20:54:58 Vorpal, because that is just stupid and ruins the joke. 20:55:06 Phantom_Hoover, exactly 20:55:07 0 20:55:12 -!- Sasha has joined. 20:55:13 elliott: cutlery it is 20:55:22 elliott: why n00b? 20:55:34 Gregor: Now pick one without the use of a random number generator! 20:55:40 :D 20:55:42 Phantom_Hoover: Nsils can't be cute, anyway. 20:55:43 elliott: cutlery 20:55:46 -!- Sasha2 has quit (Read error: Connection reset by peer). 20:55:49 Gregor: Now pick one without the use of a random number generator! 20:56:03 elliott: slutlery 20:56:04 I'm going to do this 1000 times and measure the # of each, and if they're equal, well 20:56:08 RNG :P 20:56:15 Gregor: TOTALLY. 20:56:18 I'll go with slutlery. 20:56:18 elliott, he did. He used a *pseudo-random* number generator 20:56:28 Vorpal: HITLER DID THAT. 20:56:40 elliott, what? Use PRNGs? 20:56:43 maybe 20:56:44 Yes. 20:57:25 Hmm, I should specify dependencies in the first line of the source. 20:57:29 Like, 20:57:40 /** parsemode.c foo.c blah.c **/ 20:57:42 To get those linked in. 20:57:58 And then I can generate a makefile based on those. 20:58:12 elliott, does pcc not support generating dependency info 20:58:14 like gcc does 20:58:28 Vorpal: You mean -M and the like? 20:58:31 To get header dependencies? 20:58:36 elliott, yeah that might be the switch 20:58:36 There's one header for all the library C files. 20:58:39 There's one header for all the library C files. 20:58:42 So I can't do that :P 20:58:45 hm okay 20:59:09 Vorpal: Since I'm "statically linking" (actually just passing the C file to the compiler as well as the program) these, I basically need one or two functions per file. 20:59:13 And I don't want 45895798347589345 headers :P 20:59:15 elliott, also if all go into the same binary surely you want to do LTO? 20:59:31 Vorpal: IIRC -O1 made stuff go lolbreak when I tried it. 20:59:34 Or just had no effect. 20:59:36 I forget which. 20:59:43 elliott, is that LTO? 20:59:54 What is LTO, then, for binutils ld? :P 20:59:57 elliott, or do you mean -Wl,-O1? which is completely different 21:00:00 Yes. 21:00:05 elliott, you need gold for it iirc 21:00:08 Vorpal: Not -Wl, I passed it directly to the linker. 21:00:17 elliott, anyway -O1 there is just optimising symbol tables or something iirc 21:00:22 for faster lookup 21:00:27 Well, I don't have any symbol tables :P 21:00:31 indeed 21:00:58 elliott, but you want LTO surely? 21:01:08 Vorpal: I doubt it could help me. 21:01:14 And I doubt there are any tools that will work with my toolchain that can do that. 21:01:22 elliott, might when you link all into the same box binary 21:01:30 or when you have larger ones 21:01:33 like mount or sed 21:01:41 Vorpal: Go on, then, name a tool. 21:01:49 * Phantom_Hoover laments the absence of any nice spaceflight simulators. 21:01:52 elliott, I'm no pcc-expert 21:01:55 Phantom_Hoover: EVE? :P 21:02:01 Sure, there are plenty of good space combat sims. 21:02:05 Vorpal: You can't be a pcc expert, it's just a cc :P 21:02:26 elliott, well, what about writing an llvm backend for pcc 21:02:30 But no (portable) ones that actually simulate a spaceship as one might work in real life. 21:02:34 (yes absurd) 21:02:40 Vorpal: Yeahno :P 21:02:46 I don't think LLVM has much in the way of size optimisation anyway. 21:02:48 Phantom_Hoover, xplane can do it iirc 21:02:56 Phantom_Hoover, for the space shuttle 21:03:01 Also, EVE is a mumorpeger and I refuse to play it on principle. 21:03:06 Vorpal: Anyway LLVM is C++. 21:03:10 And huge. 21:03:15 true 21:03:22 Vorpal: And I doubt it does static linking. :P 21:03:25 100000000000000000TB clang 21:03:29 elliott, not sure 21:03:39 elliott, and not more than a few hundred MB 21:04:25 Phantom_Hoover, of course xplane is... xplane. More of a flight sim than a space sim. But it can do the space shuttle from ground to landing again iirc 21:04:26 static void barfx(char *who) 21:04:26 barfu(who) 21:04:28 ^ barfx.c 21:04:30 Guess how that works :P 21:04:45 Phantom_Hoover, and there is xplane for linux. Still not free or such 21:04:53 "Or such". 21:05:10 Phantom_Hoover, aka, getting it through a bay or similar 21:05:32 elliott, there is a macro in there 21:05:45 Vorpal: Indeed. barfu is 21:05:46 #define barfu(who) \ 21:05:46 { \ 21:05:46 char *errstr = strerror(errno); \ 21:05:46 write(2, who, strlen(who)); \ 21:05:47 write(2, ": ", 2); \ 21:05:48 write(2, errstr, strlen(errstr)); \ 21:05:50 write(2, "\n", 1); \ 21:05:53 } 21:05:55 Look ma, I'm avoiding code duplication :P 21:05:59 Vorpal, a... bay...? 21:06:01 elliott, why the macro 21:06:18 Phantom_Hoover, such as a pirate one yes. Off the coast of Somalia iirc 21:06:23 Vorpal: Because if you only call it once it's smaller than a function according to my measurements. 21:07:01 elliott, wait what, doesn't pcc elide a static non-called function if it inlined it for all calls? 21:07:10 Vorpal, wait, a piece of commercial software that hasn't been pirated? 21:07:19 Phantom_Hoover, what. Where did I say that 21:07:23 Vorpal: I have no idea. The different was the matter of a few bytes. 21:07:25 -!- kar8nga has joined. 21:07:34 elliott, sounds like pcc fails at inlining :P 21:07:58 Vorpal: Perhaps, but it wins at turning carefully-written sources into smaller binaries than gcc. 21:08:10 int parsemode(char *str, mode_t old) 21:08:11 int?! What waste! 21:08:13 elliott, specialcased for pcc no doubt 21:08:16 Modes could fit into a short! 21:08:20 Vorpal: No, not really. 21:08:29 Vorpal: I don't have anything "silly" in here. 21:08:41 elliott, that will only slow you down. In general 16 bit wide registers are slower to access on modern x86-64 iirc 21:08:48 I seem to remember that in intel's docs 21:09:01 Vorpal: But it *will* make the binary smaller. 21:09:14 elliott, not if it isn't a variable that wide 21:09:21 Vorpal: Eh? 21:09:24 elliott, or you save on a shorter instruction 21:09:34 I'll meeaaaasuuuuure :P 21:09:38 (since x86 is mad and uses variable width instructions) 21:09:56 * elliott goes through and s/int/unsigned/ everywhere he can 21:10:05 (Quicker to divide on some CPUs!) 21:11:11 elliott, slower on other ones 21:11:34 elliott, iirc AMD and Intel gave contradictory recommendations for that when it came to the core2/k8 generations 21:11:43 I don't know about current suggestions 21:12:20 On x86-64 the 16-bit instructions have longer encodings 21:12:38 ah yes 21:12:54 Deewiant, you need a prefix-byte right? 21:13:07 Yep, I think that's all 21:13:26 elliott, written sort(1) yet? 21:13:45 Vorpal: No, I'm busy making my build system not suck. 21:13:57 elliott, if it uses int where it should use size_t it would possibly crash on data files larger than 4 GB. But the binary would be smaller 21:14:13 elliott, which do you think is most important: size or correctness? 21:14:17 Vorpal: I don't use size_t :P 21:14:22 elliott, which do you think is most important: size or correctness? 21:14:27 Vorpal: It depends. 21:14:36 elliott, can you elaborate on that? 21:14:42 elliott, what about the example I gave 21:14:54 Correctness if a plausible scenario exists in which incorrectness would break something. So for files that could be quite big reasonably, yes, use a bigger type. 21:15:05 If it's, say, /etc/localtime, no, that is not going to be 4 gigs. 21:15:10 indeed 21:15:24 elliott, will you do that for stuff like sort(1)? 21:16:02 Vorpal: I'll have to see. 21:16:09 If I was REALLY size-obsessed, I would write in asm. :P 21:16:20 elliott, also: which sorting algorithm. heapsort? 21:16:32 Vorpal: Probably qsort, because it's in libc. 21:16:46 elliott, but is that quicksort or something else? 21:16:58 It's MEANT to be qsort, I believe :P 21:17:00 *quicksort 21:17:18 elliott, but that has worst case O(n²) complexity 21:17:31 Indeed. Nobody cares unless it's a network service. 21:17:51 elliott, but what about my shell CGI script!? 21:18:05 Vorpal: Why do you let people input 4 gigs? 21:18:13 (Or any size big enough that n^2 matters :P) 21:18:28 elliott, because 21:18:33 Because? 21:18:36 yes 21:18:40 Okay. :P 21:18:59 elliott, next you will say you will use backtracking regexps instead of a DFA 21:19:06 Vorpal: Now that I won't do. 21:19:33 elliott, but nobody cares unless it is a network service ;P 21:19:50 Vorpal: Backtracking regexps are also more code. :P 21:20:06 elliott, true 21:22:48 elliott, will you use the standard fsck or write your own? 21:23:31 Vorpal: Standard, probably; after all, they're usually in separate filesystem packages. 21:23:54 elliott, but fsck is just a thin wrapper that calls fsck.foo 21:24:06 Vorpal: Yes, but it figures out what filesystem type it is, doesn't it? 21:24:09 elliott, same as mount calls mount. for many 21:24:09 indeed, n00b 21:24:17 (not for all foo) 21:24:25 Vorpal: True enough. 21:24:36 Vorpal: Although I might unify all mounts if I can get away with it. 21:24:40 elliott, but there is mount.fuse, mount.nfs, mount.nfs4, mount.ecryptfs an a few more here 21:24:47 (here = thinkpad) 21:25:05 Hmm, the /*@ prefix is splint, isn't it? 21:25:11 So I should probably use /*$ instead for my metadata lines. 21:25:17 elliott, it is a lot of things. Could be doxygen too 21:25:21 elliott, or frama-c 21:25:46 elliott, /*$Id$*/ 21:25:59 elliott, probably not an issue for you 21:26:00 Vorpal: If it's a lot of things, then no issue adding another! 21:26:02 $ is kinda ugly. :P 21:26:27 elliott, mot of those tools will throw errors when encountering those kind of strings for the other tools 21:26:36 elliott, why not /*% ? 21:26:53 elliott, or /*# 21:27:15 wait, doxygen is /*@{*/ for blocks. But otherwise it is /** */ 21:27:17 -!- zzo38 has joined. 21:27:30 splint is @, frama-c is @ 21:27:36 -!- Wamanuz3 has joined. 21:27:36 elliott, thus, yeah avoid those two 21:27:37 Vorpal: I'm just going to use @ :P 21:27:44 I don't intend to use splint since it sucks. 21:27:49 I don't intend to use frama-c since... I just don't. 21:27:49 elliott, but frama-c? 21:27:56 elliott, why not. It is awesome 21:28:01 Vorpal: Formally verified coreutils! Awesome! And useless. :P 21:28:21 elliott, not useless. NUCLEAR REACTORS 21:29:01 Vorpal: Dear god, 21:29:05 elliott, also remember formally verified standard card game, in case they get bored 21:29:13 please do not let any nuclear reactors be built whose software runs on Unix. 21:29:15 Thanks, 21:29:17 -a unix developer 21:29:25 Hmm, can you say "all but first and last fields" in cut? 21:29:29 All but first is easy. 21:29:44 elliott, not sure. I use awk 21:29:52 (not really) 21:29:52 Vorpal: awk doesn't make that easy either :p 21:29:54 You need a for loop. 21:29:57 elliott, I know 21:30:00 elliott, it was a joke 21:30:04 Yeah. 21:30:15 elliott, first AND last is easy 21:30:18 $1,$NF 21:30:23 I just do not like the input format of Frama-C. I think it should instead involve some automatic and some commands inserted inline in the C code, such as assert() and assume() and so on. 21:30:40 zzo38, that would mess up compiling it 21:30:42 And then be able to convert a data flow diagram into a new chapter for the program. 21:30:45 -!- Wamanuz2 has quit (Ping timeout: 240 seconds). 21:30:47 which is *why* it goes into comments 21:30:53 ...... 21:31:04 (this discussion is pointless probably) 21:31:18 Vorpal: /msg 21:31:35 For "short foo1(short a) { return a + 1; }" and "int foo2(int a) { return a + 1; }", gcc -Os generates absolutely identical code ("leal 1(%rdi), %eax; ret"); in any case switching from int to short in general doesn't sound like it's likely to save in binary size (except maybe for initialized constants); run-time memory use, maybe. 21:31:47 Vorpal: It will not mess up compiling it if you do something like this: #ifndef __FRAMA_C__ #define assert(x) #define assume(x) #endif 21:32:02 s!/\*@needs: !g 21:32:05 Why the heck is this invalid sed... 21:32:11 It says that the s command is unterminated. 21:32:20 It's s///, not s//. 21:32:22 You need three ! 21:32:53 Probably (I think) 21:32:58 elliott, also perhaps you need to hide the ! from the shell 21:33:08 Weird dream just now 21:33:13 fizzie: Oh, yes. 21:33:19 Sgeo: You just slept? 21:33:22 Was in a fire, mamahed to put it out and survive 21:33:25 elliott, napped 21:33:37 "mamhed"? 21:33:38 what 21:33:44 managed 21:33:49 ah probably 21:33:50 Fire burned my foot, leaving a ... window like injury 21:33:58 As though my foot was hollow 21:34:01 Sgeo: take your computer and run, maybe your home is on fire 21:34:45 Maybe his ActiveWorlds house is on fire! 21:34:52 22:28 < elliott> please do not let any nuclear reactors be built whose software runs on Unix. 21:34:56 22:28 < elliott> Thanks, 21:34:56 then on what? 21:34:59 22:28 < elliott> -a unix developer 21:34:59 Phantom_Hoover, I doubt activeworlds does anything that interesting 21:35:03 nooga, QNX maybe 21:35:05 or similar 21:35:15 or even custom from the bottom 21:35:17 ah right, one of those RTOSes 21:35:18 No, it needs to be a specially designed operating system 21:35:26 nooga, formally verified probably 21:35:33 zzo38, you think all problems should be solved with that! 21:35:55 uhm 21:35:57 Phantom_Hoover, what 21:36:02 Phantom_Hoover, that makes sense in this case 21:36:14 Vorpal, it's a general statement! 21:36:18 automatics usually run on special controllers 21:36:25 without advanced OSes 21:36:47 yeah 21:36:49 Except for centrifuges in Iran 21:36:54 :D 21:36:59 SIEMENS FTW 21:37:12 what, I missed that? what did they do? 21:37:18 i've studied automatics and robotics but it was extremely boring 21:37:22 Phantom_Hoover: What do you mean, I think all problems need to be solved, with what? 21:37:24 so i switched to computer science 21:37:47 zzo38, writing a new OS! 21:38:11 Vorpal, got hit with a nation-state piece of malware designed specifically to hit those centrifuges. It used Windows exploits 21:38:16 huh 21:38:17 i wonder who programs NASA's spaceships 21:38:21 nation-state authored 21:38:22 Sgeo, wtf 21:38:26 Vorpal, look up Stuxnet 21:38:28 this must be the coolest job ever 21:38:41 nooga, you mean, the core memory 21:38:59 nooga, the space shuttle flight computers uses core memory 21:39:16 then on what? 21:39:17 nooga: RTOS. 21:39:21 primitive and failsafe 21:39:28 nooga, no, just old 21:39:33 Nuclear reactor == you do NOT ever have your monitor software NOT active. 21:39:35 but failsafe 21:40:07 well explored and not that vulnerable 21:40:29 The "nation-state authored" bit of Stuxnet is pure speculation, basically based on Kaspersky Labs saying "oh, it's so clever, it must've been built by a country". 21:40:52 nuclear reactor is not very special from automatics point of view 21:40:57 While Symantec on the other hand "estimates that the group developing Stuxnet would have been well-funded, consisting of five to ten people, and would have taken six months to prepare". 21:41:11 it may be dangerous if ill-treated 21:42:01 fizzie, also they must have known exactly what hardware was used there 21:42:04 echo "$needs" | sed 's!^/\*@needs: !!g; s! \*/$!!g; s!^\| !\0lib/!g' 21:42:07 Fuck yeah, shell script! 21:42:23 elliott: i like how esoteric it looks at first glance 21:42:29 Vorpal: Well, it's basically a heuristic. 21:42:35 sed is esoteric :P 21:42:38 fizzie, indeed 21:43:00 TECO is 21:43:00 fizzie, but they had to know it was Siemens not some other manufacture 21:43:23 sed, esoteric? 21:43:26 Also only two models of frequency converters it attacks, so yes. 21:43:32 not the s/// comand 21:43:34 command* 21:44:08 And I'm not sure it'd be a good idea to put NASA programmers to build nuclear reactor automation; we'll get another Ariane 5. 21:45:29 only if we use nasa managers I suspect 21:46:01 avionics is harder to handle than a stupid tank of water with radioactive poles inside and few steam turbines 21:46:19 bunch of pumps and sensors, nothing special imho :D 21:48:16 What's wrong with Ariane 5? 21:48:34 it explodes? 21:49:12 well, one did 21:51:27 But explosions are COOL! 21:51:50 it was as self-destruct sequence 21:51:53 a* 21:52:28 http://en.wikipedia.org/wiki/Ariane_5#Notable_launches <--- lots and lots of issues 21:52:49 it ran on beta 21:53:02 because they f^&^& up the deadline 21:53:09 bin/cal: lib/ultostr.c 21:53:10 bin/%: bin/%.c | lib/cutlery.h tools/sstrip 21:53:10 @echo ' CC $@' 21:53:11 @$(CC) $(CFLAGS) $^ -o $@ 21:53:11 @if [ "$(strip)" = 1 ]; then tools/sstrip $@; fi 21:53:14 annoyingly this doesn't work 21:53:19 because it treats bin/cal as a separate rule to bin/% 21:53:26 pikhq: fix it :P 21:53:57 elliott, :: ? 21:54:01 elliott, I seem to remember that 21:54:04 for the first one 21:54:13 I'll try it :P 21:54:21 elliott, might be GNU ONLY 21:54:22 not sure 21:54:26 Vorpal: So is everything else I'm doing. 21:54:39 elliott, also not sure it does what I think 21:54:47 What I'm doing here proves that you can use make for a configurable, portable, clean build system without any Makefile generators -- just as long as you're willing to go insane. 21:55:05 Vorpal: No, deosn't work. What :: is for is adding new commands to existing rules. 21:55:15 elliott, ah, not new deps 21:55:16 hm 21:55:24 The problem is just that bin/% != bin/cal, even though the former matches :P 21:55:53 elliott, maybe make bin/% depend on obj/%.o then add it in there? 21:56:15 Vorpal: I'd rather not call the compiler twice. 21:56:21 elliott, okay 21:56:21 Slows down the build. 21:56:37 Vorpal: Anyway, it still wouldn't help because obj/%.o still isn't the same as obj/foo.o for any foo :P 21:57:04 elliott, what is the | for in that line? 21:57:22 I don't remember what that does 21:57:25 Vorpal: Dependency-only dependencies. :P 21:57:29 Vorpal: It doesn't appear in $^. 21:57:31 ah 21:57:38 Obviously I don't want to send sstrip and the header to cc. 21:57:50 Vorpal: Btw. 21:57:51 ifeq ($(shell [ -e deps.make ]; echo $?),0) 21:57:51 include deps.make 21:57:52 endif 21:57:52 >:D 21:58:02 hah 21:58:12 Otherwise I get a nasty error when including deps.make when it doesn't exist. 21:58:17 Makefile: deps.make 21:58:17 deps.make: $(sources) 21:58:17 @tools/gendeps >$@ 21:58:19 makes sure it's generated. 21:58:20 elliott, but isn't there some other way to do it? 21:58:26 I seem to remember there is 21:58:27 Vorpal: Probably, but I don't know what it is :P 21:58:50 Hmm, I could add dependency-tracking to the actual CC line. 21:58:55 i.e. instead of 21:58:57 @$(CC) $(CFLAGS) $^ -o $@ 21:58:58 I could do 21:59:00 elliott, that would break make -j2 21:59:09 no? 21:59:14 $(CC) $(CFLAGS) $< `tools/depsfor $<` -o $@ 21:59:21 elliott, would break make -j2 21:59:21 Vorpal: No, because I never build the lib/foo.c files. 21:59:26 Only as part of the programs. 21:59:28 No it wouldn't. 21:59:30 See above. 21:59:33 elliott, what about if you change those files 21:59:40 elliott, would it rebuild properly 21:59:43 without make clean all 21:59:55 Vorpal: bin/%: bin/%.c $(shell tools/depsfor $<)? 21:59:57 elliott, if not you might just as well use ant 22:00:04 See above. 22:00:06 elliott, I have no clue if that would work 22:00:09 try it? 22:00:11 I'll try it. 22:00:16 Wait, it wouldn't. 22:00:32 Because $< isn't in scope at that point and I can't say "tools/depfor bin/%.c" obviously. 22:00:52 elliott, hm. so what does other build systems do? 22:01:22 elliott, why not a makefile generator? 22:01:26 Vorpal: Not encode dependencies inside the source file? (BusyBox actually does this, and encodes Kconfig options (!) in there too, but then it uses Kconfig. It is a rather big build system.) 22:01:30 Vorpal: I DO have a Makefile generator! 22:01:34 It just generates deps.make. 22:01:38 Vorpal: Or do you mean I should have 22:01:41 bin/foo: bin/foo.c 22:01:43 for EVERY single foo/ 22:01:45 *foo? 22:01:46 With all the actions? 22:01:48 elliott, I mean it might be time to consider one 22:01:54 If so: dude, that Makefile would be massively redundant and huge. 22:01:58 Vorpal: I. am. using. one. 22:01:59 tools/gendeps. 22:02:02 It generates deps.make. 22:02:15 elliott, okay so go read the manual then 22:02:21 to find out if it is possible 22:02:22 Vorpal: The Make manual? I have. 22:02:29 elliott, the info page yes 22:02:58 Vorpal: Um, the make manual is not maintained as an info page. 22:03:03 It is a texinfo manual. http://www.gnu.org/software/make/manual/make.html 22:03:07 elliott, well indeed 22:03:13 but the info page is one form of it 22:03:16 Anyway, that really doesn't help me. 22:03:49 -!- TLUL has joined. 22:03:57 elliott, http://www.gnu.org/software/make/manual/make.html#Multiple-Rules ? 22:04:28 Vorpal: Doesn't help when one rule is implicit. 22:04:56 "If none of the explicit rules for a target has a recipe, then make searches for an applicable implicit rule to find one see Using Implicit Rules)." 22:04:58 GNU quality English 22:05:22 elliott, that made more sense when you saw the hyperlink :P 22:05:26 lol 22:05:43 Yes, but ")". 22:05:47 And no ; after "find one". 22:05:58 elliott, you mean missing ( before see 22:06:05 that seems more likely 22:06:27 elliott, is this any use? http://www.gnu.org/software/make/manual/make.html#Static-Pattern 22:06:55 Maaaybe. 22:07:19 Nope, just tried it :P 22:07:33 Maybe I'll watch some DS9 22:08:34 Sgeo, please stop liveblogging! 22:09:00 Phantom_Hoover, I have no intentions to start deadblogging, if it's all right with you 22:09:07 whaaat 22:09:21 Sgeo, irc is not twitter 22:09:31 (" Maybe I'll watch some DS9" seemed to fit that) 22:10:09 sexps are boring 22:10:15 * oerjan drinks some orange juice 22:10:20 Learn mexps! 22:10:31 Or um 22:10:38 Whatever it was that it was supposed to be 22:13:41 Sgeo, MEXPs? 22:14:07 The things SEXPs were meant to implement but ended up replacing? 22:14:47 Dear make: if a file does not exist, it is *NOT* up to date. 22:15:02 Especially if the target is not phony. 22:15:09 You are not Holden Caulfield. 22:15:13 You do not consider every target phony. 22:17:22 -!- kar8nga has quit (Remote host closed the connection). 22:18:40 Phantom_Hoover, yes 22:19:56 WHAT THE FUCK ARE YOU DOING MAKE 22:20:05 Considering target file `bin/basename'. 22:20:05 File `bin/basename' does not exist. 22:20:05 Pruning file `bin/basename.c'. 22:20:05 Finished prerequisites of target file `bin/basename'. 22:20:05 Must remake target `bin/basename'. 22:20:05 Successfully remade target file `bin/basename'. 22:20:07 Okay. 22:20:09 That makes no sense. 22:22:45 elliott, I like how rsync --stats writes stuff like: "123M bytes" 22:23:16 heh 22:23:18 M bytes. 22:23:56 elliott, Mi bytes would be even funnier. 22:24:11 so you have Do bytes, Re bytes and Mi bytes 22:24:15 obviously 22:25:39 Do, a deer, a female deer. 22:25:41 *Doe, 22:26:01 elliott, must be male. First name is John after all 22:26:17 * oerjan swats Vorpal -----### 22:26:58 oerjan, oh did I steal your joke? 22:26:59 Vorpal: Ray, a drop of golden sun. So cubic time, then, is solar. 22:27:05 oerjan, oh did I steal your joke? 22:27:07 THE OFFENCE! 22:27:14 elliott, :D 22:27:19 (wrt cubic time) 22:27:19 Vorpal: btw, I got it working. 22:27:22 bin/basename: bin/basename.c ; $(utensil) 22:27:25 Bunch of lines like that now. 22:27:31 elliott, meaning... ? 22:27:34 Vorpal: Did you get the Ray -> Gene Ray reference that makes that make any sense at all? :P 22:27:37 elliott, the ; $() stuff I mean 22:27:45 elliott, yes it was obvious 22:27:49 Vorpal: ; lets you start the commands for a rule. It's like \n\t. 22:27:53 Except without the newline or tab. 22:27:59 elliott, once I hit "cubic time" it was obvious 22:28:02 define utensil 22:28:02 @echo ' CC $@' 22:28:02 @$(CC) $(CFLAGS) $^ -o $@ 22:28:02 @if [ "$(strip)" = 1 ]; then tools/sstrip $@; fi 22:28:02 endef 22:28:04 Vorpal: well i'm apparently supposed to punish _other_ people's bad puns. i have no idea why... 22:28:08 That should answer the $() bit. 22:28:12 oerjan, huh 22:28:19 elliott, define.... 22:28:21 oerjan: state-sanctioned monopoly, duh 22:28:22 make has that? 22:28:28 elliott: ah. 22:28:29 Vorpal: It's like = except multi-line. 22:28:35 Vorpal: Did I mention you can make macros that take parameters? 22:28:39 $(call func,arg1,arg2,arg3). 22:28:43 Make is insane. 22:28:45 Well, GNU make. 22:29:01 what. this OCR-ed selection and copy text fails 22:29:07 "¥qC :4roär̆L W ̆4r;x̆rVC̆̈ C qKCr;̈C : ̆4r ̆r» r ¤r" 22:29:28 really: "Using, for example, the Sierpinski trangle" 22:29:29 the sun is actually a cube. it just looks round because the light is bent by gravity. 22:29:35 Vorpal: :D 22:29:51 elliott, this is annoying, I wanted to copy this stuff here 22:29:52 Vorpal: btw 22:29:54 _print_%: 22:29:55 @echo $($*) 22:29:55 useful rule. 22:29:56 elliott, it was from SIGBOVIK 22:30:00 and rather funny 22:30:03 for src in $(make --no-print-directory _print_sources); do 22:30:06 -- tools/genrules 22:30:29 elliott, RECURSIVE MAKE? 22:30:30 sinner 22:30:52 Vorpal: No... 22:30:57 ah phew 22:31:09 Vorpal: Well. Yes. Make calls tools/genrules, which calls make again to do _print_sources. 22:31:14 However, that is the only way it is recursive :P 22:31:25 _print_sources just... prints $(sources), as you can see in the rule definition above. 22:31:35 elliott, this paper discusses fractal footnotes 22:31:43 :D 22:31:52 elliott, well, what did you expect with SIGBOVIK 22:32:03 Oh yeah, Vorpal is a SIGBOVIK expert. 22:32:06 So is everyone in here. 22:32:09 elliott, indeed :P 22:32:16 It totally isn't oerjan's linking yesterday that gives him this expertise, no no :P 22:32:29 _absolutely_ not. 22:32:32 elliott, oh I wondered why the tab was open in my browser 22:32:38 CC bin/cal 22:32:39 bin/cal.c: 22:32:39 lib/ultostr.c: 22:32:39 CC bin/cat 22:32:42 What... what kind of error is that. 22:32:44 (seriously, I had no clue) 22:32:49 (and read it and found it interesting) 22:32:54 "Hey you! Something went wrong in this file! What went wrong is ." 22:32:57 "Any questions?" 22:33:15 Vorpal: the 2007 conference was apparently where wikiplia was announced 22:33:21 oerjan, indeed 22:33:27 $ /opt/pcc-dietlibc/bin/diet -Os /opt/pcc-dietlibc/bin/pcc -Wall -Ilib -Wl --gc-sections bin/cal.c lib/ultostr.c -o bin/cal 22:33:28 bin/cal.c: 22:33:28 lib/ultostr.c: 22:33:28 NOT 22:33:29 HELPFUL 22:33:43 oerjan, this is "Level-of-Detail Typesetting of Academic Publications" 22:34:57 Vorpal: so tell me vorpal 22:35:07 how do i have an array declared in a header file that is statically initialised in a .c file including that header 22:35:11 i've never been able to figure that one out 22:35:24 Do you like to join help with 'Charities for poor people and monsters with names starting with "A"'? 22:35:34 elliott, also wonderful idea to fit infinite amount of text into a page based on halving the typeface (same way as one of Zeno's paradoxes iirc) 22:35:45 Vorpal: that rings a bell, i think that was one of tom7's other contributions the same year? 22:35:47 elliott, you mean: 22:35:51 extern foo[]; 22:35:52 in the header 22:35:55 oerjan is secretly tom7 22:35:55 well 22:35:58 Vorpal: oh, just doing extern makes it work? 22:35:59 extern int foo[]; 22:36:05 elliott, then int foo[] whatever 22:36:07 in the file 22:36:10 97521 total 22:36:11 *cry* 22:36:12 elliott, extern in the header yes 22:36:22 Somehow doing "cc foo.c bar.c" is bigger than "cc foo.c" where foo.c includes bar.c. 22:36:27 Of course I did have to remove a lot of "static"s... 22:36:31 elliott: no but i read that blog post i also linked yesterday (i haven't actually read the SIGBOVIK site) 22:36:37 elliott, well obviously due to poor compiler 22:36:42 elliott, you want gcc --combine 22:36:45 then it can do that 22:36:51 elliott, pcc probably can't do it 22:38:55 Vorpal: Or I could compile stdin, and use cat. 22:38:55 :D 22:39:26 Actually, I can probably have a LIBRARY define that's done like 22:39:30 #ifdef INDIVIDUAL 22:39:33 #define LIBRARY static 22:39:35 #else 22:39:36 #define LIBRARY 22:39:37 #endif 22:39:46 and in each source file 22:39:48 #ifdef INDIVIDUAL 22:39:54 #include "lib/foo.c" 22:39:55 #endif 22:40:05 that way, I can still get stuff combined in box builds 22:40:10 but use static in individual builds 22:40:47 -!- MigoMipo has quit (Read error: Connection reset by peer). 22:41:01 hah the sigbovik proceedings pdf has a disclaimed about LaTeX allergies 22:41:10 mixing up latex and LaTeX 22:41:10 bin/cal.c: 22:41:11 lib/ultostr.c: 22:41:11 lib/cutlery.h, line 22: syntax error 22:41:14 I hate you, pcc. 22:41:17 God, I love pretentious YouTube commenters. 22:41:21 I'm going to add a DEBUG=1 that uses gcc :P 22:41:26 [[This is what our species is capable of at our highest form of endeavor. Even if all of us can’t create and compose like this, thank God our humanity links every human being to it.]] 22:41:30 Guess the video! 22:41:30 elliott, clang gives better errors 22:41:41 Phantom_Hoover: LazyTown: The Ukulele Cover 22:41:46 Vorpal: gcc gives acceptable errors. 22:41:47 elliott, no, but close. 22:41:51 Phantom_Hoover: What then? 22:41:54 Never Gonna Give You Up 22:41:59 It's the theme from Cinema Paradiso. 22:42:22 elliott, "gcc: line 22: expected } " "clang: line 12: you maybe forgot a ; here. Look here is the line and an arrow to where I think it should be" 22:42:22 Sgeo, then it would be evidently tongue-in-cheek. 22:42:41 In this context, it's clear they're entirely serious. 22:42:44 elliott, the different line numbers were intentional 22:42:46 Vorpal: I'm used to gcc. 22:42:52 Vorpal: I can sling it. 22:42:54 :p 22:42:55 elliott, yes but it sucks when it comes to syntax errors 22:42:57 -!- Phantom_Hoover has quit (Remote host closed the connection). 22:42:58 seriously sucks 22:43:01 Gah 22:43:15 This assignment is not worth the two seconds needed to type it 22:43:16 Vorpal: Better than "syntax error". 22:43:24 Maybe the two seconds Googling for the main idea 22:43:36 I don't think you're meant to google 22:43:38 :P 22:43:38 But still, I really, really don't want to open a text editor, type some code, etc. 22:43:42 elliott, okay that is true 22:43:56 She only taught us the existence of XOR swapping, not how to do it 22:44:02 Good. 22:44:03 Although now that I saw it, it seems obvious 22:44:04 XOR swapping is evil. 22:44:15 what is the sound of one XOR swapping 22:44:15 The assignment is to do XOR swapping 22:44:26 Sgeo: Any specification on what to do if x==y? ;) 22:44:34 Also, congrats for not being able to figure out xor swapping yourself X_X 22:45:32 -!- poiuy_qwert has joined. 22:45:36 Vorpal: Quick! What do you do if a header mentions mode_t, but not every including source file will have included a header that defines mode_t? 22:45:50 -!- p_q has quit (Read error: Connection reset by peer). 22:46:04 elliott, include the relevant header in the header using it 22:46:16 elliott, that should always be done 22:46:21 Vorpal: BZZT! You never include headers from inside headers. 22:46:22 Ever. 22:46:24 There are no exceptions. 22:46:36 elliott, so stddef.h might not be included if you need NULL? 22:46:37 Including headers inside headers is the sole reason include guards exist. 22:46:40 And include guards are evil. 22:46:42 they why does stdio do it 22:46:45 -!- poiuy_qwert has quit (Client Quit). 22:46:53 Vorpal: "Gee, how can this be bad? Modern Unix does it!" 22:47:14 elliott, guards are good because the alternative: having to figure out what headers you need, is worse. Especially if that header is updated and now needs more stuff 22:47:23 then everything you wrote is broken 22:47:26 Vorpal: The correct thing (as done in Plan 9, which just so happens to have the inventors of C on board) is to make people including the header also include its dependencies. 22:47:27 elliott, sure guards are suboptimal 22:47:30 By documenting them. 22:47:38 elliott, and what if you want to add more 22:47:51 elliott, actually you should just do #use module stdio 22:47:52 or such 22:47:55 Vorpal: Then you break compatibility, duh. Adding dependencies always breaks compatibility. 22:48:20 Anyway it's not so clear in my case because not every program wants to include . 22:48:41 elliott, not necessarily for headers. And just recompiling it is better than having to change code and then recompile it 22:49:03 elliott, you could always split it in 10 different header files 22:49:09 Why don't you do it in the way that Enhanced CWEB does it? It does differently including header file and other things. 22:49:11 like: "foo_that_needs_sys_stat.h 22:49:13 " 22:49:15 and so on 22:49:17 Vorpal: Did I mention that Plan 9 source code compiles much faster, not just because of the better-designed C compiler, but because there are no include guards? 22:49:42 elliott, I'm not sure I see that benefit as that much more important 22:49:44 And in Enhanced CWEB, you can use change files to make system dependent changes. 22:49:51 elliott, also include guards is a tiny bit of it 22:50:04 elliott, seriously check the clang stats on what is cpp and what is cc 22:50:05 Vorpal: Actually, no, it was a significant amount of time. 22:50:16 elliott, then your cpp is weird 22:50:16 Vorpal: OK, so clang have a super-optimised cpp :P 22:50:19 "Good for them!" 22:50:30 Vorpal: Can the inventors of C really be said to implement C in a weird way? 22:50:34 Word of god and all that. 22:50:36 elliott, point is, with C you should use include guards. A module system would be better 22:50:49 elliott, yes. No one is perfect. 22:50:54 You are wrong. Enjoy being wrong! 22:50:59 It is possible to do the C preprocessor and C compiler all together in one pass. 22:51:15 Ugh, busybox just includes every header ever in libbb.h. 22:51:17 elliott, but then why did you ask me 22:51:25 Vorpal: Perverse curiosity? 22:51:51 elliott, include guards are suboptimal. But yes I suggest they should be used. Actually I will force you to use #pragma once 22:52:06 Vorpal: #import 22:52:10 Vorpal: In Enhanced CWEB, you should use a metamacro or PicoC code to tell it not to require adding include guards. 22:52:11 elliott, or that 22:52:17 elliott, XOR swapping seems to work just fine when the values are the asme 22:52:18 same 22:52:39 zzo38, I do. not. care. about enhanced cweb 22:52:42 Sgeo: By the same I mean X has-same-storage-location-as Y. 22:52:46 Oh 22:53:07 also why xor swap. That is kind of pointless on modern systems. 22:53:17 Vorpal: Why? Surely it will do these things you are trying to do. 22:53:24 a more traditional swap will probably be compiled into xchg 22:53:42 zzo38, it is not a plain C compiler. Also it is C. 22:53:45 I don't like C 22:54:13 Vorpal: Some day I will pull out everything you have ever said about Linux being awesome and C being awesome and garbage collectors being for people who can't manage their own memory from the logs. 22:54:16 And I will paste them all. 22:54:19 And you will suffer :P 22:54:27 elliott, there is this thing called "change opinion over time" 22:54:34 elliott, you surely done that yourself 22:54:37 Hmm, maybe one day I'll talk only in old AnMaster log quotes and see if I can get Vorpal arguing with his past self >:) 22:54:42 Vorpal: NO MY OPINIONS ARE IMMUTABLE BECAUSE I AM HASKELL 22:54:45 Vorpal: Enhanced CWEB is not a C compiler at all, actually. You still need a C compiler. And it can work with C++ as well, in case you prefer to use C++. 22:54:57 elliott, I'm the State monad :P 22:55:08 or even St 22:55:11 I have no gonads. I mean monads. 22:55:12 *ST. 22:55:15 Also more like IO. 22:55:16 elliott, or why not STT 22:55:18 that sounds awesome 22:55:23 Vorpal: No no no no no no. 22:55:25 Am I an opinion slut? 22:55:28 elliott, yes yes yes! 22:55:28 Vorpal: There is a very good reason that does not exist :P 22:55:33 Vorpal: Specifically, time travel. 22:55:37 elliott, yes! 22:55:42 elliott, we invented a time machine! 22:55:45 (as I suspected) 22:56:06 elliott, hm is there a StateT? 22:56:08 Not as fun as IOT! 22:56:14 * Sgeo decides he'd rather do the assignment right before class begins 22:56:24 Am I an opinion slut? 22:56:25 wait 22:56:37 do c <- savePoint; takeOverGovernmentComputers; readLine; restorePoint c 22:56:39 elliott, I think Sgeo got self-uh... self-something 22:56:45 SWAT team outside your door? 22:56:46 elliott, awesome 22:56:47 Just press enter! 22:57:13 Yes Vorpal, there is a StateT 22:57:21 oerjan, right, that works of course 22:57:23 oerjan: :D 22:57:25 Vorpal: whoosh 22:57:56 elliott, hm? doesn't it? I though StateT would not involve time travel 22:57:59 * Vorpal checks 22:58:03 whoooooosh 22:59:02 elliott, you confuse me 22:59:18 elliott, it does exist. Just because it can exist doesn't mean someone coded it. 22:59:18 oerjan: the man confuses himself 22:59:32 Vorpal: whoooooooooooooooooooooooooooooooooooooooosh 22:59:40 gale force whoosh 22:59:49 elliott, you make no sense 23:00:15 elliott: He has been affected by the skepticism of a skeptical age. 23:00:24 oerjan: i blame science 23:00:29 night → 23:00:39 Vorpal: well to be fair 23:00:52 Vorpal: TO be FAIR 23:00:55 it is midnight. I will have to wake up in 6 hours. 23:00:58 now night → 23:01:01 Vorpal: you are a mere insect, an ant, in his intellect. 23:01:07 ok that didn't work :D 23:02:23 Looking at amount of of allocations at or above /14 from APNIC in last 30 days: 4x/14s, 2x/13s, 3x/12s and 1x/11... 23:03:31 That's equivalent to 7Mi addresses (~44% of block). 23:04:32 -!- Sasha2 has joined. 23:05:18 Ilari: i saw something on reddit about ICANN projecting to run out in january 23:05:43 If they burn half of a block per month and they have 3.52 blocks unallocated, the present allocation would suffice only for 7 months, which would allow immediate allocation. 23:05:47 -!- Sasha has quit (Read error: Connection reset by peer). 23:06:03 oerjan, linky? 23:06:19 Oh, and I saw some RIPE executive predicting exhaustion this month. 23:06:35 Sgeo: it was actually a horribly translated blogspam link, i'd try to find something better 23:07:44 Even at 0.44 blocks / month, it would be 8 months (immediate request would be within policy). 23:10:47 Some say that regardless that APNIC could request blocks (triggering X day) immediately, they won't do it before year is over. 23:29:01 -!- zzo38 has quit (Remote host closed the connection). 23:36:46 -!- TLUL has changed nick to TLUL|afk. 23:37:31 every computer is a theorem proving machine and every program output is a proved theorem; do godel's theorems place any practical limits on the functionality application writers can deliver? 23:37:54 (outside of the specific domain of mathematicians who want computers to prove their theorems for them, of course) 23:39:40 speculation triggered by this: http://richardelwes.co.uk/2010/10/21/concrete-incompleteness-1/ 23:40:34 you might want to look at the halting problem, which is very similar to godel's theorem but more directly for computation. 23:40:51 of course im aware of the halting problem :| 23:41:34 they're both diagonalization proofs. you can probably also prove each in terms of the other. 23:42:17 hi mycroftiv 23:42:21 are you talking because we mentioned you 23:42:43 sure, nowadays godel's proofs are often presented mostly in programming terms because they can be stated more easily and intuitively that way 23:42:53 they are? 23:42:54 theres actually been a long standing conflict on wikipedia over that issue 23:43:24 hmph basename() is broken 23:44:05 elliott: the fact that my nick was used in this channel reminded me that I ought to be participating because this channel is pretty great 23:44:07 oh wait nm :D 23:44:19 mycroftiv: it is the best of channels. also the blurst 23:44:32 mycroftiv: in case you are blind to the exceedingly obvious i'm ehird 23:44:41 mycroftiv: well in any case there are lots of undecidable programming problems which reduce to the halting problem 23:44:44 and i'm very disappointed that my box has reached 30K 23:44:56 elliott: i actually figured that out 'awhile ago' when just passively reading the log 23:45:11 mycroftiv: creepy :P 23:45:24 eurgh, i feel so ill 23:46:03 mycroftiv: so with my troll hat firmly on, how big is plan 9's dirname executable, on x86-64? (i forget, they have x86-64 support, right? :P) 23:46:09 wait, they don't do they 23:46:39 oerjan: the thing that has me interested in this is the claim that incompleteness-related issues are becoming more relevant to 'practical questions', loosely defined 23:46:57 elliott: the amd64 port i believe is still unreleased, much to many people's irritation 23:47:51 mycroftiv: as for practical questions you'd also want to look at complexity. there are many problems which are "decidable" yet infeasible to solve in practice 23:48:06 mycroftiv: 'cuz you see i'm on linux... and my dirname is 1831 bytes 23:48:18 what about false and true, i bet they're more than... say... 248 bytes even on i386 right? 23:48:18 P vs. NP and stuff 23:48:24 i may have gone slightly crazy space-optimising these utilities 23:48:38 slightly. 23:48:58 elliott: well plan 9 executables arent usually very small because everything is statically linked, not dynamically 23:49:27 and EXPTIME and other higher that are _known_ to be infeasible, not just conjectured to be so 23:49:32 *higher ones 23:50:24 mycroftiv: this is static 23:50:34 the sizes i'm quoting 23:52:15 *higher complexity classes 23:53:24 elliott: well the plan 9 basename is 37919 but that is pretty close to the minimal size for a plan 9 binary built with just the libc 2010-12-06: 00:03:08 -!- TLUL|afk has changed nick to TLUL. 00:08:26 -!- FireFly has quit (Quit: swatted to death). 00:15:42 mycroftiv: hmm, does plan 9 not link only the parts of libc that the program uses? 00:20:51 mycroftiv: or is the startup code just that huge? :) 00:29:54 mycroftiv: it's ok, i won't mock your OS if you tell me the truth. 00:30:03 you don't have to worry. 00:31:14 IT'S A TRAP! 00:31:44 mycroftiv: if you're crying, i'm sorry. 00:32:25 [[> One can obviously easily construct a Turing machine, which for every formula F in first order predicate logic and every natural number n, allows one to decide if there is a proof of F of length n (length = number of symbols). Let ψ(F,n) be the number of steps the machine requires for this and let φ(n) = maxF ψ(F,n). 00:32:28 Obviously?]] --reddit 00:32:30 *sigh* 00:32:41 it was obvious to me, it certainly would have been obvious to von neumann... 00:33:06 [["Obviously'' if you're one of the greatest logicians or mathematicians ever, maybe.]] 00:33:13 hey oerjan i'm one of the greatest logicians or mathematicians ever 00:33:17 reddit proves it 00:33:20 yay 00:33:34 oerjan: was it obvious to you? 00:33:37 "One can obviously easily construct a Turing machine, which for every formula F in first order predicate logic and every natural number n, allows one to decide if there is a proof of F of length n (length = number of symbols). Let ψ(F,n) be the number of steps the machine requires for this and let φ(n) = maxF ψ(F,n)." 00:33:39 if so: YOU ARE TOO! 00:33:47 of course 00:34:00 but then i've seen the result before 00:34:02 dude we're like, all the greatest logicians or mathematicians ever 00:34:30 oerjan: my brain has a wonderful rule that goes something like "decide if ... [in finite set] -> enumerate & check all elements" 00:34:35 it gets applied all the time 00:34:40 although not when in Program Vaguely Efficiently mode :p 00:35:12 sometimes no better algorithm is known 00:35:22 oerjan: yes, well :) 00:36:15 heh 00:36:19 [[In January 2010, Grothendieck wrote a letter to Luc Illusie. In this "Declaration d’intention de non-publication", he states that essentially all materials that have been published in his absence have been done without his permission. He asks that none of his work should be reproduced in whole or in part, and even further that libraries containing such copies of his work remove them.]] 00:36:27 that's totally going to happen! 00:36:56 wait, that means the publication of the letter itself was against the request expressed in the letters :D 00:37:43 Even if it does, some dude probably has done the article about it again on that subject 00:37:46 oh, it seems he may have requested its publication 00:37:53 Slereah: eh? 00:37:55 erm 00:37:59 not its publication, just publication of the request 00:38:12 wait no the letter is online :D 00:38:50 oerjan: apparently grothendieck considers publication of his *past* works unlawful 00:39:12 methinks he may be slightly shifted from his rightful place on his rocker 00:40:18 well it is possible that he has retained all rights and so can deny republication 00:40:56 oerjan: oh, that may be entirely correct; even so, no sane recluse would go out of their way to do that, seeing as it doesn't affect them at all 00:41:11 and making the request involves contacting the outside world >:) 00:43:08 poor mycroftiv, living in fear of revealing the truth about his OS 00:46:11 Windows 1.0? 00:49:50 mycroftiv: you have betrayed me 00:54:42 -!- Mathnerd314 has quit (Ping timeout: 250 seconds). 00:56:18 mycroftiv: i feel an overwhelming sadness in my hear. 00:56:20 heart. 01:07:03 -!- Mathnerd314 has joined. 01:15:50 elliott: The worst part about being very smart is that you don't perceive yourself as being very smart. 01:15:58 elliott: You instead perceive everyone else as really stupid. 01:16:09 pikhq: wrong, i have an excellent ego 01:16:16 i just pretend to be humble to please people >:) 01:16:17 ...sometimes 01:17:12 But surely you tend to assume that other people are going to see things that are obvious to you, only to have that horribly crushed by their ability to stop thinking entirely? 01:17:49 -!- Sasha2 has quit (Remote host closed the connection). 01:18:04 -!- Sasha has joined. 01:18:07 pikhq: Not really. 01:19:30 Funny, I get horribly depressed by things like people finding math impossibly difficult, because I start by going "Well, I'm not *that* smart, and holy fuck these people are fucking stupid. GAAAAH." 01:19:53 It takes me a while to recall that yes, I actually am more intelligent than average. 01:21:12 Some part of me likes to think that I'm normal. Go figure. 01:23:39 pikhq: You could try not giving a shit. 01:23:42 I do that. It's great. 01:23:50 I hardly give a shit about anything. 01:24:26 WHY DOES EUGENICS SEEM LIKE SUCH A GOOD IDEA SOMETIMES. 01:24:47 pikhq: The editor of the HTML5 specification agrees! 01:25:34 Sadly, it's a bit unethical and it doesn't work. But still, it's damned tempting sometimes. 01:25:41 pikhq: blame the parents for telling them to hate math 01:26:23 Mathnerd314: And the school system, which holds calculus as the highest form of mathematics anyone could ever aspire to. 01:26:25 Mathnerd314: you're full of shit. 01:26:43 you really think that the vast majority of parents tell their kids, "Kid... hate math, kay?" 01:26:56 Seriously, just by taking calc I in my junior year of high school people acted like I was fucking Newton or something. 01:27:03 the educational system, sure, blame that. but saying that parents tell kids to hate mathematics? 01:27:19 (and I do not mean that in the sense of copulating with Newton) 01:27:40 elliott: no, the kids ask their parents for help with their math HW, and the parents say "I don't like math; find someone else to ask" 01:28:05 Mathnerd314: i think you are rather confused... 01:28:48 pikhq: quick, what command should I do next 01:28:58 elliott: rm -rf / 01:29:09 oerjan: rm already gone, and it readily accepts / 01:29:14 although it also accepts . and .., which it shouldn't 01:29:23 Mathnerd314: The worst part is, what passes for mathematics education is only tangentially *related* to mathematics! 01:29:25 elliott: yes, me has doubleplusungood communication skillz 01:29:31 Mathnerd314: It's education in calculation! 01:29:36 rm -rf .. being the ouroboros variant of rm -rf / :) 01:29:42 pikhq: yo yo answer my questions more 01:29:48 (and, with the increasing use of calculators, education in the *operation of calculators*) 01:30:02 elliott: tac 01:30:39 pikhq: Interestingly, not in POSIX! 01:30:48 pikhq: And I think I should get mv before tac. :P 01:30:57 elliott: I say, why I say, that was a joke, son! 01:31:08 pikhq: but they don't teach calculators well; just the other day I had to show someone how to multiply matrices 01:31:21 Mathnerd314: Try "show someone what a matrix is". 01:32:10 pikhq: easy; it's just "a square full of numbers" 01:32:14 Mathnerd314: Remember: the typical person's extent of mathematical knowledge is elementary algebra and elementary arithmetic. 01:32:39 Oh, and some Euclidean geometry. 01:32:49 pikhq: How was that a joke? :P 01:33:05 elliott: Why would you ever want tac as a coreutils? 01:33:11 elliott: coreutil 01:33:17 elliott: ... So that was a bad joke. 01:33:20 elliott: Anyways. mv 01:33:24 pikhq: But tac is useful :P 01:33:49 Mathnerd314: We are literally talking people who do not know what a proof *is*. 01:33:51 It's weird how some util-linux commands' man pages are filed under "BSD General Commands Manual" 01:33:58 Mathnerd314: Y'know, one of the most basic things in mathematics. 01:34:41 pikhq: pcc has a wonderful bug in it that causes it to seemingly not print any warnings in some files 01:34:45 just the filename :D 01:34:56 "x.c is a bad program! I won't tell you why!" 01:36:01 pikhq: not really; Euclid's "proofs" are different from today's notions 01:36:25 -!- sftp has quit (Remote host closed the connection). 01:36:44 Mathnerd314: They literally have no concept of logic, formal or informal. 01:37:58 pikhq: that's a vast exaggeration at least with "informal" 01:38:08 Mathnerd314: not really 01:38:17 Mathnerd314: they left as much to the reader as modern advanced mathematics :) 01:38:38 elliott: You haven't heard people fall to common, basic logical fallacies all the freaking time, have you? 01:38:45 pikhq: yes, yes i have. 01:39:01 ok let's stop talking about this, #esoteric should be a place away from all this crap :P 01:39:19 pikhq: you know what's evil about rename()? 01:39:33 pikhq: Wrong! The answer is: it's in 01:39:34 What? 01:39:38 pikhq: My mv will be implemented with 01:39:41 link(old, new); 01:39:43 unlink(old); 01:39:46 >:D 01:39:52 although that isn't atomic 01:40:02 * elliott looks up how rename is implemented 01:40:57 System call. 01:41:11 oh, indeed, rename is a system call 01:41:17 pikhq: wait what; what is a system call doing in stdio.h 01:41:33 elliott: It being a system call is an implementation detail. 01:41:40 elliott: ISO C mandates rename. 01:41:53 pikhq: yes, but it doesn't use the stdio machinery 01:41:59 i guess otherwise it would go in unistd.h... 01:42:15 But it's part of ISO C's IO library. 01:42:29 right 01:42:54 pikhq: I love my library requirement system. 01:42:59 /*@needs: barfx.c parsemode.c */ 01:43:01 First line of mkdir. 01:43:02 Tada. 01:45:46 pikhq: Remind me to replace getopt sometime. :p 01:46:15 -!- oerjan has quit (Quit: Good night). 01:58:13 Note to self: refactor out rm's confirm logic into a library; mv needs it too. 01:58:23 -!- TLUL has changed nick to TGAY. 01:58:53 TGAY: Totally Gay? 01:59:24 Trolling someone who hates gay people 01:59:34 Everyone in the channel did something like this 01:59:53 -!- TGAY has changed nick to TLUL. 02:00:56 -!- looler has joined. 02:01:16 -!- looler has quit (Client Quit). 02:03:55 TLUL: what channel? and who? 02:04:08 #wikia-runescape, and the guy who's now nicked to Heterosexual 02:05:09 TLUL: Man, you've made me join a channel about (1) Wikia and (2) RuneScape. 02:05:12 I hate you to death. 02:05:16 LOL 02:09:34 TLUL: googling this guy, he calls himself a conservative republican 02:09:39 holy shit 02:09:42 http://runescape.wikia.com/wiki/User:Liquidhelium 02:09:49 republican logo as picture 02:09:52 american flag background with eagle 02:09:52 Ikr 02:09:54 "GOP" 02:09:57 jesus. 02:09:58 Look on his talk page 02:10:03 We were trolling him at the bottom 02:10:22 And I recently linked him to some lesbian porn asking him to "help me identify the song in the background of this video" 02:10:23 Christian, homophobic "I dislike liberals because of their tendency to treat people as idiots" what. 02:10:43 I know, he's a traditional bible-thumping homophobic moron 02:10:53 # Anyone that calls me Liquidhelm, or a variant thereof, can expect to make me extremely mad. 02:10:54 # Anyone that wants me to use the British spellings or date format can leave my page and not come back. 02:10:55 oh man 02:10:58 if he hadn't just left 02:11:01 SO MUCH FUN 02:11:22 I wrote a module for TLULbot that auto-corrects any american english to british english in all of his edits 02:11:30 And notifies him on his talk 02:11:48 Using the name Liquidhelm 02:12:52 TLUL: i would say you're cool but you evidently play runescape 02:12:57 so sorry, i withhold the compliment 02:14:22 Actually, I haven't played in a long time 02:19:47 TODO: mv; stuff. 02:20:47 Also: See if I can fix pcc. 02:20:49 (Maybe try tcc.) 02:20:50 -!- elliott has quit (Quit: Leaving). 02:49:07 -!- kmc has joined. 03:05:50 -!- augur has quit (Remote host closed the connection). 03:06:27 -!- augur has joined. 03:10:41 -!- augur has quit (Ping timeout: 245 seconds). 03:50:41 -!- olsner has joined. 03:53:29 -!- Goosey has quit (Read error: Connection reset by peer). 03:54:42 -!- augur has joined. 05:33:31 -!- sftp has joined. 05:55:59 -!- augur has quit (Remote host closed the connection). 06:06:12 -!- augur has joined. 06:06:59 -!- sftp has quit (Read error: Connection reset by peer). 06:16:07 -!- Mathnerd314 has quit (Remote host closed the connection). 06:17:39 -!- Quadrescence has quit (Ping timeout: 240 seconds). 06:20:58 -!- nooga has quit (Quit: Lost terminal). 06:33:33 -!- Quadrescence has joined. 06:45:33 -!- myndzi has joined. 06:57:18 -!- kar8nga has joined. 07:06:54 -!- MigoMipo has joined. 07:18:23 -!- MigoMipo has quit (Read error: Connection reset by peer). 07:25:15 -!- kar8nga has quit (Remote host closed the connection). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:02:59 -!- Sgeo has quit (Read error: Connection reset by peer). 08:14:46 -!- wareya_ has joined. 08:17:33 -!- wareya has quit (Ping timeout: 240 seconds). 09:12:50 -!- sebbu has quit (Read error: Connection reset by peer). 09:13:19 -!- sebbu has joined. 10:31:41 -!- TLUL has quit (Quit: *disappears in a puff of orange smoke*). 10:33:38 -!- Sasha has quit (Ping timeout: 240 seconds). 11:00:00 -!- ais523 has joined. 11:52:31 -!- ais523 has quit (Remote host closed the connection). 11:52:51 -!- ais523 has joined. 12:28:29 -!- yorick has quit (Remote host closed the connection). 12:45:23 -!- nooga has joined. 12:45:39 the topic 12:47:41 Reference to that arsenic-using bacteria discovered in Mono lake? 12:48:52 ha 12:48:59 i just took the #tinyrb channel 12:49:28 http://macournoyer.com/blog/2009/02/12/tinyrb/ 13:15:27 -!- wareya_ has quit (Ping timeout: 276 seconds). 13:32:17 -!- ais523 has quit (Read error: Operation timed out). 13:39:24 -!- wareya has joined. 13:48:17 http://createyourproglang.com/ oh, yeah! 13:48:30 we should write our own book and sell it for $ 13:59:06 -!- Sasha has joined. 14:07:32 -!- Phantom_Hoover has joined. 14:08:42 -!- sftp has joined. 14:09:06 Phantom_Hoover, hi. Spent a few minutes on MC this evening. You should check out my awesome throne room 14:09:38 Phantom_Hoover, 25x25x7 (dug out most yesterday) 14:09:47 Where? 14:10:03 -!- nooga has quit (Ping timeout: 276 seconds). 14:10:09 Phantom_Hoover, you know the ladder in my mountain? 14:10:15 Phantom_Hoover, from near skyway to mines? 14:10:23 there is now a platform along the lower half 14:10:24 there 14:11:24 Phantom_Hoover, gold throne on obsidian podium. sad you can't sit on a block edge in MC (or sit at all) 14:14:42 -!- FireFly has joined. 14:14:45 -!- FireFly has quit (Changing host). 14:14:45 -!- FireFly has joined. 14:20:06 Phantom_Hoover, ehird quit in there btw. While I was digging. He will fall quite a few tiles heh 14:20:13 err blocks* 14:28:55 -!- oerjan has joined. 14:31:50 -!- ais523 has joined. 14:37:04 -!- Wamanuz3 has quit (Remote host closed the connection). 14:38:39 -!- Wamanuz has joined. 14:40:52 -!- ais523 has quit (Read error: Connection reset by peer). 14:42:11 -!- ais523 has joined. 14:42:21 -!- kmc has quit (Ping timeout: 240 seconds). 14:43:25 -!- augur has quit (Remote host closed the connection). 14:52:25 -!- goyo has joined. 14:52:59 hoola chatos 14:53:15 holaaa ? 14:53:24 hay alguien ? 14:53:27 cucuuu 14:54:16 -!- goyo has left (?). 14:54:28 de nada 14:58:43 -!- elliott has joined. 15:00:27 elliott, weird? 15:01:21 ? 15:01:34 YES HE IS 15:07:43 elliott, you spawned and hung in midair on MC 15:07:51 then left 15:08:05 Vorpal: minecraft nullpointerexception'd 15:08:25 elliott, oh weird 15:08:51 -!- nopseudoidea has joined. 15:14:04 -!- augur has joined. 15:16:38 -!- Sgeo has joined. 15:17:05 * Sgeo decides to refuse to do the assignment as given 15:17:25 I will show, in Perl, two ways to do it without XOR swapping, then a XOR swap in a different language 15:19:49 What's the assignment? 15:20:34 "Write a Perl script that will use assign interger values to each of two variables. 15:20:35 The program should swap the values in the variables without using any additional variables to temporarily hold either of the values. 15:20:35 HINT: Use the bitwise exclusive or operator to complete this assignment" 15:20:53 Sgeo: You're so eddgggggggggy. 15:23:13 Vorpal: You're a postgres fan right? 15:30:26 Vorpal: btw, about ElliottOS 15:30:39 There's a third one now?! 15:30:55 Sgeo: what? 15:31:05 @, Kitten, and ElliottOS 15:31:08 no 15:31:13 @ is just shorthand for the latter 15:31:21 Ah 15:34:04 Gah, why would someone do a xor-swap in *Perl* when you can do the oh-so-intuitive (a,b)=(b,a) variant instead. 15:34:40 fizzie, to teach about its existence 15:34:47 And I can never spell that word 15:36:31 Yeees, but in Perl? Or is your whole course about it? 15:39:13 Sgeo is doing Computers For Stupid People. 15:39:28 My whole course is about Perl 15:39:50 Sgeo, why *are* you doing Computers For Stupid People? 15:39:57 -!- yorick has joined. 15:40:01 Because I don't have a spine 15:40:51 Sounds like you could make quite an article in some medical journal somewhere, then. 15:41:17 (*(*(argv++))) 15:41:25 How does one parenthesise this correctly? >___________________> 15:41:56 elliott, that seems.. weird to do unless you're doing it in a loop, which would make sense, so nevermind 15:42:58 Also, um, wouldn't that only be useful for the first argument, or am I mistaken? 15:43:07 *argv++ == *(argv++), at least. And I don't think the one more star does anything special. 15:44:14 fizzie: I should probably stop being a three-star programmer instead. :) 15:44:33 (argv, here, is a ***.) 15:45:51 Then *(*argv)++ sounds a more likely operation, but anyway. (That's be like *argv++ for the usual **-argv if you pass &that there.) 15:46:10 s/'s/'d/ 15:50:11 elliott: i vaguely recall postfix operators have precedence over prefix ones 15:50:14 Sgeo, I'm assuming it's to work out the first character of each argument. 15:50:25 fizzie: Oh, indeed. 15:50:26 Phantom_Hoover: No. 15:50:52 elliott, **argv is surely the first character of the first item of argv? 15:51:06 Phantom_Hoover: This is a three-star argv. 15:51:16 fizzie, zuh? 15:51:18 -!- kmc has joined. 15:51:23 Surely that segfaults? 15:51:37 Phantom_Hoover: He's given &argv to some function, I think. 15:51:45 Ah. 15:51:53 ... 15:51:55 Why would you want to modify argv itself? 15:52:13 Isn't that pretty common? 15:52:30 fizzie, why? 15:52:33 gtk_init(&argv, &argv) for example. 15:52:55 So that the function can steal its own args and leave the app's args there. 15:53:15 s/argv/argc/ there, of course. 15:54:45 Hmm. 15:55:00 I think there was some iffiness about manipulating the real argv's contents. And at least you can't add more arguments in there. 15:57:13 * Sgeo embarrasses himself in front of Gilad Bracha :( 16:00:05 -!- MigoMipo has joined. 16:00:10 Phantom_Hoover, working on implementing your suggestion (fenceposts) 16:00:16 but going to make some food (in RL) now 16:07:33 Sgeo: literally? :D 16:08:50 Gilad Bracha is watching you. 16:11:11 * oerjan gets the reference 16:12:02 Is there anyone here who doesn't? 16:12:19 I think there was some iffiness about manipulating the real argv's contents. And at least you can't add more arguments in there. 16:12:19 Gilad Bracha will only answer those supplicants that perform the traditional ritual of embarrassment in front of him. 16:12:21 I do that. 16:13:42 Which one; modify argv contents or add new args? 16:14:13 That's it, I'm at war with this professor 16:14:51 I mentioned it 16:14:52 fizzie: The former. Or, well, I think I actually do both, but only ever add one, to replace the terminating NULL. 16:15:24 "This is the way the authors of the book did it. It might not be the most secure, but we're only doing this for class, to show how to connect to the [MySQL] server" 16:15:32 http://pastie.org/1352473 16:15:54 Quite a lot of people do modify argv, I just remember vaguely that there might've been some extreme-portability concerns. It might well be completely okay though. 16:17:11 -!- elliott has quit (Quit: Leaving). 16:17:21 -!- elliott has joined. 16:17:25 #include 16:17:26 void _start(void) 16:17:28 { 16:17:30 _exit(0); 16:17:32 } 16:17:34 fizzie: ha ha, fuck you portability 16:17:36 (--true.c) 16:20:08 Well, at least it doesn't take 52 lines like GNU true. 16:20:30 But it doesn't check your mail. :/ 16:24:30 -!- Sgeo has quit (Read error: Connection reset by peer). 16:24:57 -!- Sgeo has joined. 16:30:00 -!- nooga has joined. 16:32:17 "Mine says that mybooks already exists" "Did you execute it twice?" "Yes" "That's why" 16:37:45 fizzie, there? 16:38:24 fizzie, you should check that throne room I made in MC out. 25x25x10 with obsidian podium and gold throne 16:38:35 also chandeliers 16:39:12 * Phantom_Hoover realises he still types absurd queries into Google. 16:39:27 Like "C++, suckishness thereof". 16:40:46 hm it needs lava lighting in the floor 16:41:17 * Sgeo misread that as Java 16:41:30 Wait, isn't MC client written in Java? :/ 16:47:21 hmm, a random reddit comment said that Eric Schmidt coauthored lex 16:47:25 which is somewhat unexpected 16:47:46 elliott: hmm, is _start in user or impl namespace? 16:48:13 ais523: dunno; it's ELF-specific, though 16:48:26 What happens if a script has x set but not r? 16:48:26 I know C has weird rules for underscore-lowercase 16:48:27 ais523: Eric Schmidt authored lex to be precise IIRC 16:48:29 he was the original author 16:48:33 you didn't know that? :) 16:48:36 elliott: I didn't 16:49:02 ais523: relatedly, see the last line in the BUGS section of http://plan9.bell-labs.com/magic/man2html/1/lex :) 16:49:41 hmm, that lex does the same thing as UNIX lex 16:49:57 I've got used to Plan9 by now doing something completely different with the same name 16:50:23 also, that -t think looks very unUNIXy, I'd have made it output to stdout and people can redirect to lex.yy.c by hand if they like 16:50:55 ais523: it's historic 16:51:03 but this is plan9 16:51:07 ais523: and not really; after all, "cc" used to have no -o option 16:51:11 and just spat out to a.out 16:51:12 why does it have to match what history UNIX options do 16:51:15 elliott: in UNIX, fine 16:51:17 on plan 9 it's e.g. 8.out where 8 is the architecture character 16:51:37 but when you're trying to make a better UNIX, that seems like an obvious thing to change to get closer to the philosophy 16:51:45 ais523: Plan 9 is Version 11 Unix, and even V10 Unix was quite pure 16:51:48 Tenth Edition, that is 16:51:53 why would you use -o if > exists? 16:52:02 ais523: I mean, it's not as if they went "zomg! This is so crufty, let's replace it." 16:52:14 ais523: because it was SysV and BSD that were cluttering it up, not Bell Labs Unix 16:52:45 well, yes 16:53:05 I'm the sort of person who sees any command-line options as too crufty if they change metadata, rather than add parameters needed to do what the program does 16:53:10 e.g. I'm fine with most of the options of tr 16:53:22 ais523: and I think there was this thought in Unixy days that compilers weren't really filters, because you didn't immediately process the output file in another pipeline or something 16:53:25 but not with, say, -o 16:53:33 elliott: compilers are pipelines nowadays 16:53:39 ais523: indeed 16:53:41 you really ought to be able to do something like cc | ld 16:53:54 to compile and link 16:54:01 meanwhile, I'm trying to make Flinix again 16:54:08 perhaps even cpp | cc | ld, and you could write a script around that as your actual compiler 16:54:14 (latest Linux kernel, X windowing system and networking on a 1.44 meg floppy) 16:54:32 System is 604 kB 16:54:33 latest stable kernel? or latest development kernel? 16:54:35 Waaay too big! 16:54:36 ais523: stable 16:54:46 or recent stable kernel hacked to expose an API for writing keyloggers? 16:54:51 :D 16:55:01 stupid stupid exercise... 16:55:07 ais523: I'm going to ridiculous lengths like, "disable the block layer; to get the actual floppy read, use the embedded initramfs support with ramfs" 16:55:47 heh 16:55:49 and i'm going to use http://asm.sourceforge.net/asmutils.html for the coreutils, most likely 16:55:52 busybox is too big 16:56:04 even if you strip cruft out of it? 16:56:23 ais523: it's written in C! 16:56:27 also, are you going to stay within 1.44 MiB? you can fit more than that much data on a 1.44 MiB floppy by formatting it weirdly 16:56:40 ais523: yes, I am going to stay within that 16:56:50 up to around 1.7, IIRC 16:56:54 ais523: for the X server I'm going to try and get http://www.superant.com/smalllinux/tinyX01.html working; it's *very* small... libc5-based :) 17:01:19 ais523: can you explain POSIX to me? "date MMDDhhmm[[YY]YY][.ss]" 17:01:23 WHY IS YEAR IN BETWEEN MINUTE AND SECOND 17:01:26 *MINUTES AND SECONDS 17:02:00 elliott: I almost choked 17:02:04 don't shock me like that 17:02:11 ais523: :D 17:02:24 my guess is that it's mandatory stuff first, optional stuff later 17:02:29 also, [[YY]YY] has me suspicious 17:02:37 clearly "99" means 99 AD 17:02:48 does that mean that for 2010, you have to write 1020 to distinguish it from 1910 which would be just 10 or 1019? 17:04:01 ais523: presumably it means you can either say 1999 or 99 17:04:04 and 2010 for >1999 17:04:32 oh, it is the right way round 17:04:43 I interpreted it as [YY[YY]] somehow 17:05:03 ais523: brilliant 17:05:32 ais523: although, clearly the second YY should be interpreted as /addition/ 17:05:40 2010 is 9911 or 1199 17:05:51 the maximum year is 2098 -> 9999 17:06:04 it's Y2K38-compliant... 17:07:16 * Sgeo has no desire to touch a script that has a blatant SQL Injection vulnerability 17:07:45 Sgeo: not even to fix the vulnerability? 17:09:14 WARNING: your nasm version 2.08.01 may miscompile asmutils, please use nasm 0.98.39! 17:13:20 ais523: hmm, do you know how to force gcc not to omit an unused static function from an object file? 17:13:36 Make it non-static? 17:14:18 Deewiant: perhaps :) 17:19:02 -!- Sgeo has quit (Ping timeout: 255 seconds). 17:19:51 Anyone happen to have a nasm 0.98.39 binary lying around? 17:21:27 -!- Zuu_ has joined. 17:25:18 -!- Zuu has quit (Ping timeout: 265 seconds). 17:26:51 -!- nopseudoidea has quit (Quit: Quitte). 17:27:27 $ wc -c src/cat src/mkfs.minix 17:27:28 684 src/cat 17:27:28 1013 src/mkfs.minix 17:27:29 But... how. 17:28:14 97852 total 17:28:22 Lesson learned: asm + Brain Raiter + other people = holy shit, man. 17:28:32 It even has a fucking init. 17:28:47 522 bytes. 17:31:22 -!- Sasha has quit (Ping timeout: 250 seconds). 17:31:51 Are you talking about asmutils? 17:32:54 Yes. 17:33:00 What the fuck. Their shell has command-line editing. 17:33:07 It's 5.3K. 17:33:15 Also pipes, redirection. 17:33:19 Job control. 17:33:29 AND TAB COMPLETION 17:33:34 WTFF 17:34:02 elliott: busybox has tabcomplete, but it's optional 17:34:08 to be fair, a basic tabcomplete is pretty easy 17:34:14 as you have to be able to handle filename* 17:34:42 so you can just do the same thing but substitute on the command-line 17:34:48 ais523: yes, but this thing has command-line editing (i.e. readline-esque), pipes, overwrite and append redirection, job control, *and* tab completion that shows the possible matches on double-tab like bash... and it's 5.3K. 17:34:49 perhaps even reuse the code 17:35:00 elliott: 5.3K seems about right for that 17:35:09 most modern software is bloated 17:35:12 ais523: err, have you looked at the size of a typical C binary sometime? :) 17:35:23 -!- Sasha has joined. 17:35:36 normally around 50-60 KB due to everything linked into it, headers, etc 17:35:48 ais523: well let's put it this way, I'm writing my own coreutils in C, linking with pcc/dietlibc -- which produces tiny binaries -- and then using Brian Raiter's insane sstrip utility; even then, my cat is 5K and my mkdir is 8K 17:35:51 at least, that's where it was when I was younger, I'm not sure if it's changed since 17:35:57 admittedly mine has graceful error recovery and messages 17:36:10 I don't see why cat needs to be larger than a few tens of bytes 17:36:24 (well, a few hundred if you're using a format whose headers require it) 17:36:32 ais523: well, maybe it shouldn't be; I'm just saying that getting binaries that small is impossible using C 17:36:45 my true/false are 248 bytes, and I've abandoned portability for that (ELF-only) 17:37:15 ais523: and my cat is ridiculously simple; it accepts no options, and doesn't use standard IO at all 17:37:20 elliott: I don't think it is 17:37:25 impossible, that is 17:37:26 ais523: it's probably only over 1000, 2000 bytes because I have the errno texts in there 17:37:32 ais523: oh really? on Linux, you mean? 17:37:40 no, I was talking about in general 17:37:43 ais523: I mean on Linux 17:37:50 I've used embedded C compilers for devices that only have 4 KiB of ROM altogether to write the program into 17:37:52 the only reason these asmutils sizes are surprising is that they're on Linux 17:37:55 and only a few tens of bytes of RAM 17:39:32 ais523: just checked; my cat makes only one call to something that isn't libc, and it's strerror 17:39:44 ais523: probably it would be 1K without the error strings table 17:39:56 how many libc functions does it call exactly once? you could inline them to save space 17:40:04 ais523: no libc functions 17:40:13 apart from strerror. 17:40:14 ais523: the functions it calls are: open, read, write, strerror. 17:40:19 ais523: the first three are system calls. 17:40:32 oh, wait 17:40:35 strlen too 17:40:40 so it knows how long strerror's result is 17:40:44 elliott: you can inline syscalls too 17:41:04 ais523: that reminds me of something I'm going to do in elliottOS 17:41:08 if you want it small, why don't you make a custom strerror that just handles the errors possible from open, write, and read? 17:41:13 actually, i was going to tell Vorpal about this too, so Vorpal Vorpal Vorpal 17:41:49 ais523: I was considering having some sort of automated thing where I can just list error names and it'd include only them, but then I looked at the size of my local /bin/true -- 21K -- and realised that *that* was dynamically linked and, dammit, I'm way ahead of the competition already. 17:41:55 pesky asm coders giving me legitimate competition :) 17:42:25 right now i've got basename, cal, cat, date, dirname, echo, env, false, kill, link, mkdir, mv, pwd, rm, signal, sleep, strings, true, uname, vis and yes and they all fit into about 97K 17:42:31 ais523: (on amd64, that is) 17:42:37 so in fact it'd be more like 50K? on i386 17:42:40 and the asmutils are i386 17:43:01 ais523: oh, and if you link them all into one binary it's more like 23K. which, when UPX'd, turns into 15K. (on amd64) 17:43:02 still... 17:43:46 EACCES, EAGAIN (and EWOULDBLOCK if it has a different value), EBADF, EEXIST, EFAULT, EFBIG, EINTR, EINVAL, EIO, EISDIR, ENOSPC, ELOOP, EMFILE, ENAMETOOLONG, ENFILE, ENODEV, ENOENT, ENOMEM, ENOSPC, ENOTDIR, ENXIO, EPERM, EPIPE, EROFS, ETXTBSY 17:44:08 some of those can't happen with the usage used in cat, e.g. EPIPE wouldn't happen as you use the default SIGPIPE handler, EINVAL wouldn't happen if you made sure you used valid arguments 17:44:10 "* There is no scientifically-justifiable reason to exclude pornography, which is a vital part of the web ecosystem. However, bear in mind that we're tracing JavaScript, not MPEG and JPEG decoding." 17:44:22 ^^^ This bullet-point is my crowning achievement as as a scientist. 17:44:42 Gregor: did you write that? 17:44:44 Gregor: What. X-D 17:44:47 or cause someone else to write it? 17:44:52 ais523: I wrote it :P 17:45:10 `addquote "* There is no scientifically-justifiable reason to exclude pornography, which is a vital part of the web ecosystem. However, bear in mind that we're tracing JavaScript, not MPEG and JPEG decoding." ^^^ This bullet-point is my crowning achievement as as a scientist. 17:45:20 come on, HackEgo, you can do it! 17:45:26 Eh, I'll get to it eventually. 17:45:37 Gregor: why the hell do the quote scripts use sqlite? Can I make them use a plain text file instead? 17:45:41 It'd be much faster :P 17:45:44 `help 17:45:45 Runs arbitrary code in GNU/Linux. Type "`", or "`run " for full shell commands. "`fetch " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ 17:45:46 270| "* There is no scientifically-justifiable reason to exclude pornography, which is a vital part of the web ecosystem. However, bear in mind that we're tracing JavaScript, not MPEG and JPEG decoding." ^^^ This bullet-point is my crowning achievement as as a scientist. 17:45:46 elliott: Feel free. 17:46:23 ais523: ok, this is ridiculous; the 97K asmutils has "cda2raw". and telnetd. and fingerd. and eject. 17:46:25 and fdisk. 17:46:28 and ftpd. and httpd. 17:46:32 and ifconfig. 17:46:36 and rc6crypt. 17:46:55 and more. 17:46:58 (as in, more(1)) 17:47:12 Vorpal Vorpal Vorpal 17:48:25 `run cp bin/addquote addquote.bak; cp bin/quote quote.bak 17:48:26 No output. 17:49:23 `run echo '#!/bin/sh' >bin/addquote; echo "[ \"\$1\" ] || { echo 'Add what quote?'; exit 1}" >>bin/addquote 17:49:24 No output. 17:49:25 `addquote 17:49:28 Add what quote? 17:49:29 `addquote x 17:49:30 elliott: any respecting *utils clone needs to have a decent pager 17:49:33 No output. 17:49:46 elliott, yes? 17:49:49 elliott: why are you screwing up addquote? 17:49:59 ais523: can you please read? I'm rewriting it to use a plain text file 17:50:07 Vorpal: sec :P 17:50:31 presumably you're going to use shuf | head or something to pick random quotes? 17:50:44 ais523: something like that, yes 17:50:52 even though it's O(n log n) and thus inefficient? 17:51:02 (or is shuf designed to run in O(n) when piping into head? that's theoretically possible) 17:51:14 ais523: Well, actually I was going to use a sed script and wc -l. 17:51:17 And probably $RANDOM or whatever. 17:51:22 ais523: or head and tail, actually 17:51:35 tail -n +$randomlinenumber | head -n 1 17:52:03 `run mv quotes/quote.db quote.db.bak; rmdir quotes; echo 'echo "$1" >>quotes' >>bin/addquote; echo 'echo "$(wc -l quotes)) $1"' >>bin/addquote 17:52:05 No output. 17:52:09 using shuf is so much simpler 17:52:14 `addquote My hovercraft is full of eels. 17:52:15 No output. 17:52:19 ugh 17:52:22 `paste bin/addquote 17:52:24 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.26893 17:52:31 this is what using unix before vi must have felt like :) 17:52:43 elliott: it's more like using unix before ed 17:52:47 no editors allowed but cat 17:52:51 ais523: well, my commands here are basically like ed commands 17:52:52 just longer 17:53:05 and scheduling cron to call emacs --retroactive 17:53:07 `run sed -i 's/1}1 }/' bin/addquote 17:53:09 No output. 17:53:11 `paste bin/addquote 17:53:12 Failed to clone the environment! 17:53:15 ais523: what @ emacs --retroactive 17:53:17 ... 17:53:18 Gregor: 17:53:21 `paste bin/addquote 17:53:22 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.22659 17:53:30 what, it didn't fix my typo 17:53:46 elliott: the idea is that Emacs does everything, thus in order to edit a file before Emacs is implemented, you just schedule a cronjob to call Emacs in the future when it is implemented 17:53:50 `run sed -i 's/\{ /{/' bin/addquote 17:53:52 No output. 17:53:53 `paste bin/addquote 17:53:56 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.29387 17:53:57 using an option to Emacs to get it to edit the file back when you added it to the crontab in the first place 17:53:58 ais523: brilliant 17:54:06 ok, what am I getting wrong about sed? 17:54:11 Please mess with HackBot in PM :P 17:54:17 Gregor: I'm not messing, I'm developing! 17:54:21 and 17:54:22 `paste bin/addquote 17:54:22 Failed to clone the environment! 17:54:35 Please develop with HackBot in PM :P 17:54:42 Yesyes, it does that when you spam it too much :P 17:55:09 sed -i 's/\{ /{/g' bin/addquote 17:55:12 ok, there is no reason that doesn't work 17:55:14 why does that not work. 17:57:18 Ohh, I need a chmod to get it actually working... wait, do I? 17:57:35 `run hexdump -C bin/addquote 17:57:38 00000000 23 21 2f 62 69 6e 2f 62 61 73 68 0a 5b 20 22 24 |#!/bin/bash.[ "$| \ 00000010 31 22 20 5d 20 7c 7c 20 7b 65 63 68 6f 20 27 41 |1" ] || {echo 'A| \ 00000020 64 64 20 77 68 61 74 20 71 75 6f 74 65 3f 27 3b |dd what quote?';| \ 00000030 20 65 78 69 74 20 31 7d 0a 65 63 68 6f 20 22 24 | exit 1}.echo "$| 17:57:41 /tmp/hackenv.18166/bin/addquote: line 2: exit: 1}: numeric argument required 17:57:46 Gregor: What. 17:57:51 Why did you do that X-D 17:58:01 elliott: what's to stop him catting a file in hexadecimal 17:58:01 Just making sure it wasn't a different issue :P 17:58:08 also, isn't the command in question od -t x1? 17:58:14 Gregor: ...what issue, exactly? 17:58:31 elliott: I didn't see how you got the file there in the first place, and fetch from pastebins usually has Windows line endings :P 17:58:34 `run ls -l bin/addquote 17:58:38 Gregor: he put it there via cat 17:58:42 Gregor: Mega echo, man. Also, I'm already fixing it. 17:58:43 -rwxr-xr-x 1 5000 0 103 Dec 6 17:58 bin/addquote 17:58:43 ais523: echo 17:58:44 not cat 17:58:46 oh, right 17:58:53 I'm fixin' it 17:58:55 that's effectively a cat 18:00:49 Vorpal: sec :P <-- well? 18:00:58 Vorpal: okay, now 18:01:13 Vorpal: you know how ElliottOS does everything in ring 0? 18:01:23 yeah sure 18:01:34 also, if you have cat in an infinite loop (as in cat /dev/zero > /dev/null), IMO it shouldn't exit on any signal but SIGKILL 18:01:41 or if you send some other signal 9 times 18:01:53 kill -9, we can assume kills it 9 times over 18:01:57 elliott, go on 18:02:01 Vorpal: yes, yes, 18:02:11 Vorpal: well, a huge advantage of this 18:02:13 elliott: I demand you use rings 1 and 2 for their intended purposes! 18:02:19 Vorpal: is that syscalls no longer need to go through the kernel 18:02:22 Vorpal: you can *inline a syscall* 18:02:24 as in, literally 18:02:32 ais523 saying "inline a syscall" to mean something else made me remember this 18:02:37 how do you deal with paging? 18:02:39 so, e.g., if some syscall talks to some hardware 18:02:45 and some user program calls it 18:02:48 elliott, yes obviously. Many syscalls are probably a bit too large though for that to be profitable 18:02:56 well, the program's resulting machine code would actually talk to the hardware directly 18:03:02 Vorpal: well this is where the synthesis-style stuff comes in 18:03:09 the syscall code gets smaller when you remove the arguments 18:03:16 or, some of them 18:03:20 some yes 18:03:24 anyway, this is great because kernel calls now cost exactly 0 18:03:31 ais523: what do you mean, how do you deal with paging? 18:03:44 elliott: pointers are different from usermode and kernelmode point of view 18:04:05 e.g. two different programs can each use 0x110000 for their own variables 18:04:22 if you aren't context-switching into a different ring, you'd need to avoid reverse segfaults somehow 18:04:22 ais523: that's not how elliottos works 18:04:34 ah, each application shares the same memory pool? 18:04:38 ais523: ElliottOS has a single global address space, which maps to both disk and RAM 18:04:45 RAM is essentially a disk cache 18:05:03 ais523: security is implemented by not letting any random machine code run; everything has to go through the Friendly Compiler (unless the user explicitly overrides this) 18:05:31 that sounds rather like using a JITting VM for everything 18:05:39 and cacheing the output 18:05:44 ais523: well, yes, basically 18:05:49 in fact, it might actually be the same thing viewed from a different point of view 18:05:50 ais523: the compiler is always present in the system, and runs all the time 18:06:09 ais523: (although it's actually a specialiser, that's not too relevant in this case -- although it does mean that even /while a program runs/, compilation could be happening as part of it) 18:06:11 due to specialisation 18:06:13 also, how long are your pointers? 64 bits? 18:06:15 i.e. runtime code generation 18:06:19 ais523: it's x86-64 only, so yes 18:06:28 normally it's a minor detail, but for that I feel it's somehow important 18:06:45 ais523: I'm planning to actually have even the addresses that map to disk and RAM not be the "top level" of addressing, 18:06:52 ais523: and have a global distributed namespace of object hashes as the top level 18:07:05 e.g., an object is uniquely identified by its 512-bit identifier/(hash?) 18:07:10 universally 18:07:13 no matter what computer it's on 18:07:16 also, objects are immutable 18:07:24 so it ends up GCing your disk :) 18:07:33 elliott: that can be a pain if you want to make backups 18:07:42 to guard against bad sectors and the like 18:07:52 ais523: how would it be a pain? 18:07:53 and it's hard to see what, if anything, shred would do 18:08:02 ais523: you mean, two copies of one file on one computer? 18:08:09 yep 18:08:34 ais523: that's relatively simple, you'd just construct the same object, basically 18:08:48 ais523: anyway, do you mean shred as in the concept, or shred as in the unix command? 18:08:49 it would let you use cp -rp for backups, though 18:08:49 which is great 18:08:52 if the latter: there are no unix commands 18:08:54 and there is no cp. 18:09:17 elliott: I mean, as in what the UNIX command's intended to do 18:09:21 not as in its specific implementation 18:09:24 ais523: anyway same-disk backups are pretty near worthless considering that bad sectors basically *don't exist* now, and my main target disk medium is solid state drives 18:09:28 -!- Sgeo has joined. 18:09:30 because they have fast random access 18:09:31 like RAM does 18:09:38 elliott: they have a lot more bad sectors than magnetic hard drives or floppies 18:09:41 which is important, obviously 18:09:43 ais523: what, SSDs? 18:09:52 yep, but their failure mode is for the sector to become readonly 18:09:53 ais523: you do realise that with SSDs, the failure mode is "you can't write any more", not "you lose data", right? 18:09:55 yeah 18:10:06 so same-disk backups are quite irrelevant in my case 18:10:09 so most SSDs just transparently copy the data somewhere else as soon as it's changed 18:10:46 ais523: Pop quiz: How do you insert a ' in the middle of a '-quoted string in sh? 18:10:48 Answer: '"'"' 18:10:59 '\'' is one character shorter 18:11:06 And invalid. 18:11:06 ais523: aww, but that's boring! 18:11:09 Phantom_Hoover: no it's not 18:11:12 Phantom_Hoover: really? I seem to remember using it 18:11:30 Oh? I thought backslashes were ignored in ' strings. 18:11:40 Phantom_Hoover: the backslash is outside the string there 18:11:46 the ' is part of ais523's example 18:11:50 {{{ '\'' }}} 18:11:50 Ah. 18:12:00 as in, 'I don'\''t know why I single-quoted this string in the first place' 18:14:38 Does newspeaklanguage.org have an uptime .. percentage of 50% or something? 18:14:55 Gregor: um, I can't seem to "touch quotes" in the home directory 18:15:00 Did my proof of epic failness manage to crash something?/ 18:15:04 Gregor: was the quotes/ directory specially preserved somehow? 18:15:45 elliott: I see an empty file named quotes in $PWD. 18:15:59 Gregor: ...you do now, it wasn't there a second ago. 18:16:03 `touch quotes 18:16:03 No output. 18:16:04 `ls 18:16:04 addquote.bak \ babies \ bin \ foo \ paste \ quine \ quote.bak \ quote.db.bak \ tmpdir.20107 18:16:04 `ls 18:16:04 addquote.bak \ babies \ bin \ foo \ paste \ quine \ quote.bak \ quote.db.bak \ quotes \ tmpdir.20384 18:16:51 ais523: btw, you know that shuf|head thing? 18:16:58 yes? 18:17:06 since head closes its stdin after reading the N lines, most programs will exit at that point 18:17:09 so it probably is efficient 18:17:21 but shuf has its own lovelily un-unixy solution, it has its own -n argument, so let's go with that :P 18:17:22 it depends on how shuf is implemented 18:17:50 hmm, although, I want to look up quotes by # too, so i won't do that 18:18:02 to look up by number, just use tail|head with appropriate arguments 18:20:31 Gregor: OK, WTF is it with the race conditions in HackEgo? 18:21:21 Seeing as how C's most common application is writing C compilers, it logically follows that JavaScript's most common application is writing JavaScript compilers. 18:21:27 I like this line of reasoning 18:21:31 elliott: There are no race conditions, however consecutive runs are not guaranteed to run in the environments generated by previous runs. After running and giving you the results, it commits and merges (if necessary) them back into the mainline. 18:21:49 Gregor: So I can't even flock(1) to make sure stuff doesn't overwrite other stuff? 18:22:08 elliott: No, it has real merging. 18:22:16 Gregor: ...wow, I didn't think it would work like that 18:22:20 what happens if the merge fails 18:22:26 ais523: Then the output is lost. 18:22:31 Gregor: 'cuz, you see, I addquote'd two quotes and it decided to only use one. 18:22:32 (At least the FS part of the output) 18:22:34 WHICH WAS LAME YOU UNDERSTAND 18:22:35 both outputs? or the older, or the newer? 18:22:49 ais523: OK, admittedly that is a race condition :P 18:23:00 ais523: "Whichever one gets there first" 18:23:13 I don't consider it to be a problem because serializing everything would be a suckfest, and not the good kind. 18:23:41 now this is giving me an esolang idea 18:23:48 an esolang which records the state of the program at every command run 18:23:56 and applies each command to a random previous state of the program 18:24:03 and then merges the results somehow 18:24:42 Gregor: So is there anything I can do? 18:26:52 elliott: The same "problem" exists right now. Either make your quotes mergeable, or don't add quotes in parallel sessions. I will not serialize its behavior. 18:28:50 elliott: use something simple like a DB, rather than a complicated text file 18:28:54 `addquote "* There is no scientifically-justifiable reason to exclude pornography, which is a vital part of the web ecosystem. However, bear in mind that we're tracing JavaScript, not MPEG and JPEG decoding." ^^^ This bullet-point is my crowning achievement as as a scientist. 18:28:55 270) "* There is no scientifically-justifiable reason to exclude pornography, which is a vital part of the web ecosystem. However, bear in mind that we're tracing JavaScript, not MPEG and JPEG decoding." ^^^ This bullet-point is my crowning achievement as as a scientist. 18:29:04 That was fast :P 18:29:06 `quote 18:29:07 4) i read paths as penis :( 18:29:11 `quote 270 18:29:13 270) "* There is no scientifically-justifiable reason to exclude pornography, which is a vital part of the web ecosystem. However, bear in mind that we're tracing JavaScript, not MPEG and JPEG decoding." ^^^ This bullet-point is my crowning achievement as as a scientist. 18:29:16 waitw ait 18:29:18 it has new features 18:29:20 LET ME TELL YOU THEM 18:29:20 :P 18:29:23 `pastequotes 18:29:24 OMG 18:29:26 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.5886 18:29:31 ...lawl 18:29:33 That happens sometimes :P 18:29:34 `pastequotes 18:29:36 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.17215 18:29:42 With one command, I have obsoleted Sgeo's site! 18:29:48 AND 18:29:55 `quote now accepts a regular expression!!! 18:29:56 elliott: Sgeo's site works over HTTP 18:29:56 No output. 18:30:11 ais523: well, you can look at the quotes with HTTP here, too, it's just a plain text file 18:30:16 just you don't get the quote numbers 18:30:21 `quote /(?{print "Hello, world!";})/ 18:30:22 No output. 18:30:25 IN FACT, I'm going to make quote use egrep now, now grep. 18:30:27 ais523: No. :P 18:30:30 elliott: your regex parser is broken 18:30:41 `quote (DA) 18:30:42 257) DAMN YOU, I'm leaving olsner, FINALLY NOTHING BETWEEN ME AND WORLD DOMINATION! 18:30:52 Another major difference: elliott's thing is currently active 18:30:53 why the parens? 18:30:59 ais523: because that would be literally (DA) in grep 18:31:06 and I wanted to see if my s/grep/egrep/ worked 18:31:10 but grep matches parens literally 18:31:15 ais523: egrep doesn't 18:31:18 oh, you're checking to see if you used a different grep impl 18:31:19 thus the test 18:31:22 what's egrep's syntax? 18:31:23 same impl 18:31:25 just a different option 18:31:27 ais523: egrep == grep -E 18:31:35 it's basically PCRE, without all the super-advanced stuff 18:31:37 but if it doesn't do embedded Perl, it fails 18:31:40 `quote oklopol 18:31:41 48) i can get an erection out of a plank, you can quote me on that. \ 50) i'm not a porn star, no \ 53) anyway, torture would be fun to experience, true should put that on my todo list \ 56) i'm my dad's unborn sister \ 74) GregorR: are you talking about ehird's 18:31:53 IOW, it's basically not PCRE 18:32:15 Deewiant: PCRE doesn't do embedded Perl anyway 18:32:17 `quote AnMaster 18:32:18 7) that's where I got it rocket launch facility gift shop \ 68) thanks AnMaster \ 73) ehird, well yes probably \ 104) I'm 100% of what sort of magic was involved in it \ 152) fungot!*@* added to ignore list. AnMaster: i'd find that a bit annoying to wait 18:32:27 I think it has some sort of callback to let you do embedded any language you want 18:32:32 `pastequotes AnMaster|Vorpal 18:32:33 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.4940 18:32:37 `pastequotes AnMaster|Vorpal 18:32:38 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.26746 18:32:44 hmm, looks like I just introduced a bug 18:32:46 elliott, you said "Thanks, foo" without saying "Thoo"? 18:32:55 (now I'm wondering if I should add a PCRE library as a C expansion library to C-INTERCAL, that allows embedded INTERCAL in regular expressions) 18:32:56 Thoo :D 18:33:17 #!/bin/sh 18:33:18 if [ "$1" ]; then quotes "$1"; else allquotes; fi | paste 18:33:19 Thue 18:33:21 hmm, now where's the bug there? 18:33:30 `run quotes "AnMaster|Vorpal" 18:33:31 No output. 18:33:34 test takes more than one argument? 18:33:36 `quotes AnMaster 18:33:37 `quote 18:33:37 No output. 18:33:38 98) ehird: every set can be well-ordered. corollary: every set s has the same diagram used from famous program talisman with fnord windows to cascade, someone i would never capitalize " i" 18:33:41 `quotes Vorpal 18:33:42 No output. 18:33:42 `quote 18:33:44 89) What else is there to vim besides editing commands? 18:33:45 er 18:33:46 "quotes" :D 18:33:47 Phantom_Hoover: plz stop 18:33:49 race conditions 18:34:11 `quotes is now an alias for quote 18:34:12 No output. 18:34:14 `pastequotes AnMaster|Vorpal 18:34:17 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.27675 18:34:21 `pastequotes AnMaster|Vorpal 18:34:24 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.19439 18:34:29 wtf? 18:34:33 Gregor: what *causes* that anyway 18:34:34 `pastequotes AnMaster|Vorpal 18:34:35 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.17564 18:34:50 `pastequotes AnMaster|Vorpal 18:34:51 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.5211 18:34:51 elliott: What causes what? 18:34:59 Gregor: see every paste apart from the last one 18:35:04 e.g. http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.17564 18:35:15 Okay, http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.5211 is the Compleat Vorpal Kwote Kollection. 18:35:22 `quote (((((a*)*)*)*)*)*b 18:35:23 3) EgoBot just opened a chat session with me to say "bork bork bork" \ 5) Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have definitely weakened... More practice is in order. \ 8) GKennethR: he should be told that you should always ask someone before killing 18:35:39 hmm, we need more strings of consecutive as in the quotedb 18:35:48 `quote ((((([^a]*)*)*)*)*)*b 18:35:49 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaas if! 18:35:49 3) EgoBot just opened a chat session with me to say "bork bork bork" \ 5) Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have definitely weakened... More practice is in order. \ 8) GKennethR: he should be told that you should always ask someone before killing 18:35:55 `addquote hmm, we need more strings of consecutive as in the quotedb aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaas if! 18:36:01 271) hmm, we need more strings of consecutive as in the quotedb aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaas if! 18:36:04 ais523: there you go 18:36:08 `quote (((((a*)*)*)*)*)*b 18:36:10 3) EgoBot just opened a chat session with me to say "bork bork bork" \ 5) Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have definitely weakened... More practice is in order. \ 8) GKennethR: he should be told that you should always ask someone before killing 18:36:21 `quote (((((a*)*)*)*)*)*s 18:36:22 1) I've always wanted to kill someone. >.> \ 2) I used computational linguistics to kill her. \ 3) EgoBot just opened a chat session with me to say "bork bork bork" \ 4) i read paths as penis :( \ 5) Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have 18:36:27 ais523: egrep doesn't do backreferences AFAIK 18:36:33 so good luck with that 18:36:33 those aren't backrefs 18:36:39 ais523: no, but that's only slow if you do backrefs 18:36:42 `quote (((((a+)+)+)+)+)+s 18:36:43 4) i read paths as penis :( \ 5) Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have definitely weakened... More practice is in order. \ 6) I think the freemasons are actually a cover for homosexual men. \ 7) that's where I got it rocket 18:36:47 (or are really stupid and implement it like that anyway, I guess) 18:36:50 or if you use a backtracking impl, which most regex engines do 18:36:55 ais523: grep, famously, doesn't 18:37:01 presumably GNU weren't stupid enough to fuck even that up 18:37:01 and egrep? 18:37:04 ais523: EGREP IS GREP 18:37:08 IT'S LITERALLY A SYMLINK 18:37:12 `run ls -l $(which egrep) 18:37:13 Wait, did Aftran really say "I've always wanted to kill someone. >.>"? 18:37:13 -rwxr-xr-x 2 0 0 115928 Apr 22 2010 /bin/egrep 18:37:14 elliott: yes, but is it using the same impl? 18:37:19 ais523: yes! 18:37:30 In GNU grep, there is no difference in 18:37:30 available functionality between basic and extended syntaxes. 18:37:33 ais523: ^ grep(1) 18:37:38 it's just a nicer syntax 18:37:41 () instead of \(\) and the like 18:37:45 `quote (...).*\1 18:37:47 3) EgoBot just opened a chat session with me to say "bork bork bork" \ 5) Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have definitely weakened... More practice is in order. \ 6) I think the freemasons are actually a cover for homosexual men. \ 7) 18:37:59 -!- nopseudoidea has joined. 18:38:09 `quote arm 18:38:10 189) ais523: killer bunnies can be harmed by domesticated canines only. 18:38:11 hmm, is that doing backrefs or not, now? it returned a subset of the results 18:38:24 `quote (.....).*\1 18:38:28 3) EgoBot just opened a chat session with me to say "bork bork bork" \ 5) Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have definitely weakened... More practice is in order. \ 7) that's where I got it rocket launch facility gift shop \ 8) 18:38:36 Back References and Subexpressions 18:38:36 The back-reference \n, where n is a single digit, matches the substring 18:38:36 previously matched by the nth parenthesized subexpression of the 18:38:36 regular expression. 18:38:38 oh, fuck you GNU 18:38:39 Remind me, is fungot bot or human? 18:38:43 tswett: Bot :P 18:38:45 `quote (....,.).*\1 18:38:46 31) IN AN ALTERNATE UNIVERSE: In an alternate universe, I would say "In an alternate universe, ehird has taste" \ 86) Evolution is awful, awful, awful 18:38:51 fungot: ko zvati 18:38:51 `quote (.......).*\1 18:38:53 5) Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have definitely weakened... More practice is in order. \ 7) that's where I got it rocket launch facility gift shop \ 8) GKennethR: he should be told that you should always ask someone before killing 18:39:01 Known Bugs 18:39:01 Large repetition counts in the {n,m} construct may cause grep to use 18:39:01 lots of memory. In addition, certain other obscure regular expressions 18:39:01 require exponential time and space, and may cause grep to run out of 18:39:01 memory. 18:39:02 Back-references are very slow, and may require exponential time. 18:39:02 I wonder how far I can go wit hthis 18:39:05 oh, whatever 18:39:06 `quote (..........).*\1 18:39:07 5) Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have definitely weakened... More practice is in order. \ 7) that's where I got it rocket launch facility gift shop \ 12) Lil`Cube: you had cavity searches? not yet trying to thou, 18:39:11 who cares, the quote db is way too small anyway :P 18:39:15 for it to be a huge deal 18:39:17 `quote (.............).*\1 18:39:18 5) Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have definitely weakened... More practice is in order. \ 31) IN AN ALTERNATE UNIVERSE: In an alternate universe, I would say "In an alternate universe, ehird has taste" \ 71) If I ever made a game where you 18:39:19 and HackEgo kills stuff that runs too long 18:39:25 it's just repeating nicks now, mostly 18:39:30 `quote (.{20}).*\1 18:39:32 31) IN AN ALTERNATE UNIVERSE: In an alternate universe, I would say "In an alternate universe, ehird has taste" \ 78) ??? Are the cocks actually just implanted dildos? Or are there monster dildos and cocks? Or are both the dildos and cocks monster? \ 138) so 18:39:44 `quote (.{30}).*\1 18:39:45 254) I think I'll write that COBOL program a bit later I think I'll write that COBOL program a bit later I think I'll write that COBOL program a bit later I think I'll write that COBOL program a bit later I think I'll write that COBOL program a bit later I think I'll write that COBOL program 18:39:50 oh come /on/ 18:39:56 Whelp, that's the last quote. 18:40:01 ais523: blame me for that, I was intending to remove it 18:40:08 ais523: umm, I'll add a deletequote 18:40:11 shouldn't be hard 18:40:12 `quote (.{25}).*\1 18:40:13 31) IN AN ALTERNATE UNIVERSE: In an alternate universe, I would say "In an alternate universe, ehird has taste" \ 138) so a.b.c.d.e.f.g.h.i.j.k.com might be self-relative, but a.b.c.d.e.f.g.h.i.j.k.l.com always means a.b.c.d.e.f.g.h.i.j.k.l.com.? \ 254) I think I'll write that COBOL program a bit 18:40:42 Say, it would be annoyingly easy to make a Lua bot. 18:40:55 hmm, is "a.b.c.d.e.f.g.h.i.j.k.l.com" or "In an alternate universe, " longer? 18:41:03 I want to know who has second place 18:42:20 `delquote 254 18:42:21 No output. 18:42:24 `quote 254 18:42:25 254) elliott: My university has two Poultry Science buildings. Two! 18:42:27 `quote 253 18:42:28 253) How much do mainframes cost these days? I mean, they're obsoleteish, right? My notebook's much more powerful? So surely, they're cheap? 18:42:47 `quote (.{25}).*\1 18:42:49 31) IN AN ALTERNATE UNIVERSE: In an alternate universe, I would say "In an alternate universe, ehird has taste" \ 138) so a.b.c.d.e.f.g.h.i.j.k.com might be self-relative, but a.b.c.d.e.f.g.h.i.j.k.l.com always means a.b.c.d.e.f.g.h.i.j.k.l.com.? 18:42:54 `quote (.{27}).*\1 18:42:55 138) so a.b.c.d.e.f.g.h.i.j.k.com might be self-relative, but a.b.c.d.e.f.g.h.i.j.k.l.com always means a.b.c.d.e.f.g.h.i.j.k.l.com.? 18:42:59 yay, I win 18:43:21 `addquote This quote is here so I can test delquote. 18:43:22 271) This quote is here so I can test delquote. 18:43:25 `delquote 271 18:43:26 *poof* 18:43:29 `quote 271 18:43:31 No output. 18:43:32 `quote 270 18:43:34 270) hmm, we need more strings of consecutive as in the quotedb aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaas if! 18:43:36 yay 18:43:43 `help 18:43:43 Runs arbitrary code in GNU/Linux. Type "`", or "`run " for full shell commands. "`fetch " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ 18:43:53 270 is not a particularly good quote either 18:43:59 `delquote 270 18:44:00 indeed 18:44:04 *poof* 18:44:21 `quote (.{5})(.*\1){3} 18:44:27 77) no Deewiant No?! I've been living a lie yep. Excuse me while I jump out of the window -> \ 78) ??? Are the cocks actually just implanted dildos? Or are there monster dildos and cocks? Or are both the dildos and cocks monster? \ 93) 18:44:45 `quote (.{5})(.*\1){4} 18:44:46 93) oohhh ha heh and what are your other characteristics? oh, many, madbrain but it's hardly worth it to go on with listing that list here 18:44:50 oh dear, I have a bug 18:44:55 meh, just repeated nicks 18:45:13 `quote ()* 18:45:18 1) I've always wanted to kill someone. >.> \ 2) I used computational linguistics to kill her. \ 3) EgoBot just opened a chat session with me to say "bork bork bork" \ 4) i read paths as penis :( \ 5) Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have 18:45:19 ais523: Disallow the <>? 18:45:32 Deewiant: perhaps, but you'd need to use zero-width assertions for that 18:45:39 wait, how does one do echo safely? 18:45:41 ais523: No, just [^<] 18:45:44 to distinguish from abcdeabcdeabcde 18:45:45 as in, avoid any arguments? 18:45:47 echo doesn't allow -- 18:45:52 Deewiant: bu the <> aren't part of what's matched 18:45:53 ais523: Of course it's not general but it could help 18:46:02 ? anyone know? 18:46:31 elliott: echo - 18:46:37 there isn't one 18:46:38 $ echo - x 18:46:39 - x 18:46:40 Deewiant: you are incorrect 18:46:47 elliott: Works on SOLARIS 18:46:54 I just checked the manpage 18:46:56 oh, I'll just use printf 18:47:08 % echo - x 18:47:08 x 18:47:12 in fact, I'm not sure if it's possible to print -n, followed by a newline, with GNU echo 18:47:18 without printing other stuff on the same line 18:47:21 % echo - -n 18:47:22 -n 18:47:27 ais523: echo -n '-n 18:47:28 ' 18:47:34 elliott: haha 18:47:42 you're right, that does work 18:47:51 without the newline, is it impossible? 18:47:55 echo -n -n prints the null string 18:48:04 ais523: echo -ne '-n\n' 18:48:15 elliott: how old are you now, mate? Are you still younger than my little brother or have you outgrown him by now? 18:48:34 elliott: /without the newline/ 18:48:36 that prints a newline 18:48:40 ais523: ah 18:48:51 tswett: I have indeed been getting older at an exponential rate. 18:49:23 So now you're, what, 24 years old? 18:49:33 tswett: he said /exponential/ not quadratic 18:49:40 you tell him ais523! 18:49:44 s/\/ /\/, / 18:50:06 that'd have been clearer if I matched on the not... 18:50:24 Oh, right. 18:50:26 `addquote this is just a test 18:50:27 270) this is just a test 18:50:28 `delquote 270 18:50:29 483 years old? 18:50:33 *poof* 18:50:34 ok, here is the current source code: 18:50:39 addquote http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/80866b6af8af/bin/addquote 18:50:42 allquotes http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/56862be707f3/bin/allquotes 18:50:44 That is the mark of Gregor right there. 18:50:45 quote http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/56862be707f3/bin/quote 18:50:49 -!- Sgeo has quit (Ping timeout: 255 seconds). 18:50:51 pastequotes http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/56862be707f3/bin/pastequotes 18:50:53 tswett: except that Gregor didn't write that 18:51:00 It's still the mark of Gregor. 18:51:00 elliott decided to rewrite our quotedb 18:51:08 quotes is an alias of quote 18:51:28 `addquote That is the mark of Gregor right there. tswett: except that Gregor didn't write that It's still the mark of Gregor. 18:51:29 ais523: my religion prohibits me from allowing a program to maintain what is just a list of \n-terminated strings with sqlite 18:51:29 270) That is the mark of Gregor right there. tswett: except that Gregor didn't write that It's still the mark of Gregor. 18:51:35 *a Unix program 18:51:41 especially if the system is slow 18:51:48 elliott: use Oracle instead? 18:51:48 -!- kar8nga has joined. 18:51:51 ais523: hmm, can I redo that quote with two spaces between messages? 18:51:54 it looks weird without it :P 18:52:04 I have access to an Oracle database! 18:52:05 elliott: but I don't mentally put two spaces between messages 18:52:07 otherwise 18:52:11 if you split a sentence up like this 18:52:20 it would become grammatically incorrect 18:52:23 due to the incorrect spacing 18:52:29 ais523: not grammatically, orthographically 18:52:38 punctuation normally counts as grammar, doesn't it/ 18:52:56 i think double-spacing is a good stand-in for newlines when they can't exist 18:53:06 also, pressing shift immediately after / should make it into a ? even if you already sent the message to IRC 18:53:15 quintopia: I normally use {{{ \ }}} 18:53:31 Links to sources that will always be the latest version: 18:53:32 addquote http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/addquote 18:53:32 allquotes http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/allquotes 18:53:32 quote http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/quote 18:53:32 pastequotes http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/pastequotes 18:53:32 And the latest quote database is always available at http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/quotes. 18:53:36 ais523: that is also acceptable 18:53:36 ais523: no, punctuation is orthography 18:53:46 ais523: this is why augur speaks with perfect grammar but terrible orthography :) 18:53:54 `addquote test1 18:53:55 271) test1 18:53:59 `addquote test2 18:54:00 hmm, I'd write an editquote except, really, you could just use ed for that 18:54:00 272) test2 18:54:04 `delquote 271 18:54:05 *poof* 18:54:06 `delquote 272 18:54:08 *poof* 18:54:20 oerjan: mwahaha 18:54:22 * oerjan swats elliott -----### 18:54:29 I WAS NOT FINISHED TESTING 18:54:42 `quote 271 18:54:43 271) test2 18:54:48 pastequotes dumps all quotes to pastebin? 18:54:51 `quote 272 18:54:52 No output. 18:54:58 elliott: what would you use for something that was basically a serialised hash 18:55:04 ais523: eh? 18:55:05 like a typical editable learndb? 18:55:10 ais523: ah 18:55:12 instead of enter number, get quote 18:55:17 enter topic, get quote 18:55:22 elliott: it seems you accidentally completed my test 18:55:29 `delquote 271 18:55:30 *poof* 18:55:34 `quote 271 18:55:35 No output. 18:55:36 -!- Sgeo has joined. 18:55:44 quintopia: HackEgo's pastebin, yes; you can also search 18:55:48 and get all the resulting quotes as a paste 18:55:48 elliott: that second delquote should say "there is no quote with that number" instead of *poof* 18:55:54 by giving pastequotes an argument 18:55:57 quintopia: ok, i'll implement that 18:56:01 ais523: depends! I can think of a few possibilities off the top of my head 18:56:09 ais523: the "accepted" solution is berkeley db 18:56:15 ooh, now I've thought of doing it as a filesystem 18:56:16 ais523: the ultra-Unixy solution is one file per info 18:56:20 yep 18:56:32 hmm, directories are basically just associative arrays, aren't they/ 18:56:33 ais523: and the sanest way is probably a file of the form "topic:...blah blah blah..." 18:56:35 quintopia: actually it said No output. 18:56:47 wrong 18:56:50 it said poof twice 18:57:00 oh wait 18:57:08 * oerjan read the wrong line 18:57:15 -!- nooga has quit (Ping timeout: 265 seconds). 18:57:27 OK, new esolang idea: everything is an associative array 18:57:32 including the keys of associative arrays 18:57:42 you'd have to start with {}, then {{} => {}}, etc 18:57:47 * Sgeo was about to shout "Lua" 18:58:05 Sgeo: JS works the same way as Lua on that 18:58:10 which is to say, not like /this/ 18:58:11 -!- nooga has joined. 18:58:12 I mean /everything/ 18:58:33 testing one new feature before fixing delquote 18:58:35 `pastenquotes 18:58:36 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.21067 18:58:41 yay 18:58:43 `pastenquotes 20 18:58:44 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.28761 18:58:51 N random quotes, good for your health 18:58:58 you can get a lot more possibilities at the next level 18:59:08 Instead of going 0, 1, 2 18:59:10 as you have two possible keys, either of which might or might not have an associated value 18:59:13 It's more like 0, 1a, 1b 18:59:19 and two possible values for each of them 18:59:25 then there's a combinatorial explosion from there 18:59:37 quintopia: hmm, actually, fixing delquotes like that would be a pain and not really worth it 18:59:41 ais523: could you at least have syntactic sugar for strings and identifiers, like, "elliott" automatigically expands to {"e" => {"l" => {"l" => {"i" => {"o" => {"t" => {"t" => {}}}}}}}}? 18:59:44 it'd be much like basing everything on sets, or on lists, just more annoying 18:59:55 quintopia: hmm, I wonder if that's an obvious way to do identifiers, I suppose it is 19:00:00 actually, wait, I could do it 19:00:29 this is more general than lists, I suppose, as you can always construct cons cells as {head => tail}, but you can also have more than one pair as long as the keys are distinct 19:01:31 `delquote 9999999999 19:01:32 No output. 19:01:36 it's equivalent to lists in my mind...at least in how you'd use it. 19:01:37 done 19:01:39 `addquote blarghl 19:01:42 271) blarghl 19:01:44 `delquote 271 19:01:45 *poof* 19:01:53 the power of diff 19:02:00 :D 19:02:17 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/delquote 19:02:18 literally 19:02:19 the power of diff 19:03:13 I think the development time of this new quotes system reflects well on Unix, even when you don't have a visual editor :P 19:04:02 -!- cheater99 has quit (Ping timeout: 245 seconds). 19:04:47 -!- Sgeo has quit (Ping timeout: 255 seconds). 19:04:58 `delquote `echo Hello World 1>&2` 19:04:59 No output. 19:05:03 boring 19:05:04 ais523: that wouldn't work anyway 19:05:08 you have to use `run for that 19:05:13 ais523: but it only takes a number 19:05:16 `addquote example 19:05:17 271) example 19:05:20 `run delquote $(echo 271) 19:05:21 *poof* 19:05:22 yep, I wanted to give it a string to see how it reacted 19:05:31 and I picked a string which would be noticeable if it got shell-unescaped 19:05:32 ais523: well, I think that $(... 1>&2) = "" 19:05:42 same with ``, ofc 19:05:47 where "" denotes empty string 19:05:47 `run echo test `echo Hello World 1>&2` 19:05:48 test 19:05:56 `run echo test 1>&2 19:05:57 No output. 19:06:01 oh, HackEgo doesn't output stderr 19:06:10 `run (echo test `echo Hello World 1>&2`) 2>&1 19:06:11 Hello World \ test 19:06:15 `run (echo test `echo Hello World 1>&2`) 2>&1 19:06:17 Hello World \ test 19:06:22 elliott: it does work 19:06:39 ais523: heh, okay 19:06:55 `` (or $()) only redirects stdout, stderr stays unchanged 19:06:56 No output. 19:06:56 `run ls bin | grep quote 19:06:58 addquote \ allquotes \ delquote \ pastenquotes \ pastequotes \ quote \ quotes 19:07:17 -!- Zuu_ has changed nick to Zuu. 19:07:27 -!- Zuu has quit (Changing host). 19:07:27 -!- Zuu has joined. 19:08:14 http://www.superant.com/smalllinux/files/ 19:09:31 oh this is bril http://d-e-f-i-n-i-t-e-l-y.com/ 19:09:37 ooooold 19:09:57 ais523: guess who's running a Linux 1.0.9 system in qemu?? 19:09:59 OOPS THAT'S RIGHT 19:10:00 IT'S ME 19:10:17 wow, this GNU ls doesn't have -h 19:14:10 grr, I can't find smallX 19:17:39 -!- nopseudoidea has quit (Quit: Quitte). 19:18:17 -!- cheater99 has joined. 19:19:40 System is 557 kB 19:19:44 it has ethernet support. well, sort of 19:19:49 I don't think I've actually included any ethernet drivers :P 19:20:17 things I didn't even realise it was possible to do by accident: I just pasted the entire front page of a forum into an email I was composing by mistake 19:20:36 it was a plaintext email, but it was still laid out neatly with nested tables 19:21:28 ais523: ha 19:21:39 ais523: so, do you think 557 KiB is way too big for a kernel? 19:22:47 "If unsure, say N." --Kconfig, about Ethernet support 19:22:54 they be smokin' the crack 19:22:56 Nsure 19:23:28 elliott: well, it is a kernel 19:23:36 Vorpal: question! If I only enable 10/100Mbit ethernet, and don't include any 1Gbit ethernet drivers, will 1Gbit ethernet cards work with it? 19:23:38 just at a slower speed? 19:23:39 say yes 19:23:50 ais523: yes, but it doesn't support swap. 19:23:51 as long as it comes with all the applications you ever need compiled in as kernel modules, you don't actually need a userspace 19:23:55 ais523: or any filesystems. 19:24:01 ais523: or large swathes of useful APIs. 19:24:02 elliott, I doubt it 19:24:06 ais523: or just about any hardware at all 19:24:08 "any filesystems"? 19:24:18 ais523: I've disabled them all 19:24:20 how does it access files, then? 19:24:21 elliott, those are just grouping drivers 19:24:22 I'll probably enable FAT or something 19:24:28 ais523: it doesn't; you bundle it with an initramfs 19:24:34 elliott, based on speed of unit they are for 19:24:39 oh, ramfs is a filesystem 19:24:42 ais523: the bootloader handles loading the kernel from the floppy, which contains the initramfs, which contains everything you need 19:24:43 ais523: no it isn't 19:24:47 it's internal kernel code 19:24:53 semantics 19:24:57 it isn't exposed to userspace the way i have it 19:25:14 oh, there's something beautiful about having a filesystem but not exposing it to userspace 19:25:23 Vorpal: gah, but these drivers will take up space! I need to fit the kernel AND programs into 1.44 megs! 19:26:48 ;hackers' libc 19:26:48 ; 19:26:48 ;Yes, this is the most advanced libc ever seen. 19:26:48 ;It uses advanced technologies which are possible only with assembly. 19:26:48 ;Two main features that make this libc outstanding: 19:26:48 ;1) calling convention can be configured AT RUNTIME (cdecl is default) 19:26:50 ;2) THE smallest size 19:26:52 --asmutils 19:27:21 -rwxr-xr-x 1 elliott elliott 19246 Dec 6 17:38 libc.so.0 19:27:32 -rw-r--r-- 1 elliott elliott 20566 Dec 6 17:38 libc.a 19:28:47 1) sounds like it takes up space 19:31:06 ais523: I think when your libc is 20.5 decimal kilobytes, you can afford to spend bytes on lavish features :P 19:32:17 (vmware cpu wtf--disable) 19:32:29 hey ho, ELF support is smaller than a.out support 19:35:17 hmm, did I forget to disable most of ipv4? 19:36:29 I like the way you're doing IPv6 but not IPv4 19:36:35 or are you doing neither? 19:38:17 ais523: IPv4 but not IPv6 19:38:21 why did you think i was doing ipv6? 19:38:46 because you said you were disabling ipv4 19:39:09 given that ipv4 is going to run out soon, and that ipv6 is a bit simpler anyway, I was wondering if ipv6 was the better choice if you were only going to have one networking protocol 19:39:17 ais523: disabling *most of* :) 19:39:37 ais523: i don't have an ipv6 link so i'm not getting rid of ipv4 :) 19:39:52 grr, what more can I turn off.. 19:40:24 CONFIG_DEFAULT_SECURITY_DAC=y 19:40:24 CONFIG_DEFAULT_SECURITY="" 19:40:24 CONFIG_HAVE_KVM=y 19:40:25 hmm 19:40:41 │ Symbol: HAVE_KVM [=y] │ 19:40:41 │ Type : boolean │ 19:40:41 │ Selected by: X86 [=y] │ 19:40:42 heh 19:41:28 I wonder if a nommu build is smaller :) 19:41:38 That's just the "can do KVM" symbol, I think; it's what actual CONFIG_KVM depends on. 19:42:24 yeah 19:43:06 elliott, well my kernel is 1.5 MB and it supports only my system 19:43:28 Vorpal: How? I've disabled basically EVERYTHING EVER and mine is still 500K or so. 19:43:49 Did you compress it with some secret EvenBetterThanLZMA? Seriously, I have no idea how to get this any smaller. 19:44:11 maybe he's found one of the few files in existence azip actually beats LZMA on 19:44:19 elliott, 500 K < 1.5 MB? 19:44:20 ais523: does he have azip? 19:44:22 uh 19:44:32 Vorpal: Yes, but I don't see how you can pack a useful desktop system into 3x that size. 19:44:35 elliott, I use zlib compression btw 19:44:36 I managed to construct one, but lzma >> azip > bzip2 >>> gzip for most largish files 19:44:37 Considering my kernel supports basically NOTHING. 19:44:40 because I haven't bothered changing 19:44:54 azip loses to bzip2 on smaller files 19:44:54 ais523: Is azip fast? 19:44:58 not massively 19:45:02 ais523: faster than bzip2? 19:45:05 bzip2 is pretty slow 19:45:12 hmm, I haven't timed them against each other 19:45:13 I'll do that now 19:45:37 ais523: If it's faster to decompress than bzip2, I think it occupies a very useful niche. 19:45:44 LZMA is way overkill and very slow and memory intensive for most purposes. 19:46:20 I haven't really tried to optimise it, except by speeding up inner loops when they were getting in my way, and by using O(n log n) sorts over O(n^2) sorts 19:47:05 1648198 -> 851342 51.65% linux/386 vmlinux 19:47:07 UP motherfuckin' X. 19:47:17 Useless, unfortunately :P 19:47:21 nah, it's much slower than bzip2 it seems 19:47:22 It's bigger than my bzImage. 19:47:38 I wonder how far it could be optimized 19:48:06 ais523: you should try, I'd love to distribute stuff as azip and be able to claim to be doing it for reasons other than pissing everyone off 19:48:13 ais523: btw, what's azip's native extension? .az? 19:48:16 don't say .azip, that's boring 19:48:19 yep, .az 19:48:41 I abandoned azip mostly because I couldn't find a niche for it, it seems inferior to some other compression protocol in every respect 19:48:56 hmm, do tickless systems have smaller kernels? :P 19:49:18 System is 585 kB 19:49:19 * elliott make 19:49:44 I refuse to stop until I have the kernel, asmutils, an X server and xterm on a single floppy. 19:49:52 Ideally a super-stupid IRC client too. Say RawIRC :P 19:50:23 decompression was about 4 times slower than bunzip2 on my test file 19:50:34 and that can potentially be improved by memoizing it 19:50:54 (it took around 2 minutes the first time because I forgot an < character and it was trying to read stdin; that run doesn't count) 19:51:03 just 1.739s the second time 19:51:15 ais523: aha! 19:51:22 bunzip2 took 0.420s 19:51:22 ais523: try getting rid of all your IO code and using mmap instead 19:51:37 as I said, I haven't really tried to optimise it 19:51:58 ais523: hmm, I don't have the code any more; could you pastebin it again? I'd like to have a go at optimising it 19:52:04 System is 587 kB 19:52:08 aww, tickless *adds* bytes 19:53:05 * elliott i686s it in the hopes of getting a smaller kernel 19:54:24 http://pastebin.ca/2012252 19:54:35 also, pastebin's syntax highlighting fails on ' inside shell comments 19:55:06 also, why the hell does GNU shar try to use gettext? 19:55:55 ais523: you missed an excellent opportunity there to give me a .tar.az 19:56:12 ais523: also, what kind of name for a computer is desert? :) 19:56:35 elliott: well, I like it 19:56:42 also, you've had loads of chances to spot my hostname before 19:56:50 ais523: I have? 19:57:00 ais523: grrrrrrrr, pastebin.ca does DOS line endings 19:57:02 when I set it, I actually conciously wondered how long it would be before a #esoteric denizen commented on it 19:57:09 elliott: so does the Internet generally 19:57:17 ais523: also -- sharbomb! :) 19:57:19 you can just dtou it or something, though, can't you? 19:57:23 yeah, I fromdos'd it 19:57:40 and are shars supposed to bomb? IIRC, zips are 19:57:44 ais523: do you use any particular flags when compiling this? 19:57:46 and who knows 19:57:52 I think they're meant to be like tars, and not 19:58:07 elliott: not really, let me find my makefile 19:58:22 seems I use gcc -O2 -ggdb -g3 -Wall -Wextra 19:58:43 that's a rather higher debug option than I normally use, which says something about the code 19:59:17 ais523: got the test file you were using? 19:59:29 Anyone have a way to work out the pixelised image of an ellipse? 19:59:34 amazon.de -> "Mein Kampf" -> 2 results in the category "Gay & Lesbian?" -> "The Ideal Gay Man: The Story of Der Kreis" 19:59:36 Huh? 19:59:37 (That isn't GIMP.) 20:00:34 elliott: it's the released public beta of C-INTERCAL, as an uncompressed tarball 20:00:47 azip works kind-of badly on files that have already been compressed, in fact much worse than many other algos 20:00:50 ais523: the one with the - in the version number? 20:00:53 yep 20:01:06 I also use the GPL version 3 as a smaller test file 20:01:13 when I want to be able to actually check the whole thing by hand 20:01:14 ais523: have you got a link? my browser is being slow right now 20:01:21 I can't remember where it is offhand 20:02:16 System is 478 kB 20:02:18 block layer = bloat 20:02:18 here, if you want to see how the algo works, run "./azip -t GPL > /dev/null" (where GPL is any GPL-like document) 20:02:39 that won't give the low-level summary, but it will give a high-level summary of how it works 20:02:40 ais523: oh, I'm more interested in optimising it than understanding whatever crazy scheme you've come up with :) 20:02:44 from there, it's pretty much just Shannon coding 20:02:53 as far as I'm concerned, if it's faster than bzip2, it occupies a useful niche 20:03:08 and it's a surprisingly simple scheme, resembling gzip's but with a much better ratio 20:03:20 hmm, where's the GPL on a typical Debian system? 20:03:22 Phantom_Hoover: Can't you just use just about any language for that, iterate through points (-N, -M) .. (N, M) and for each point (x,y) set it if x^2/a^2 + y^2/b^2 <= 1 for suitable values of a, b? (I'm assuming an axis-oriented ellipse is just fine for you.) 20:03:44 fizzie, too much work! 20:03:49 /usr/share/common-licenses 20:03:49 It's for ROU construction! 20:03:53 that's where I got my copy from 20:04:16 elliot: i dont speak with perfect grammar 20:04:29 elliott: but thats because performance is not competence 20:04:33 augur: SURE IS 20:04:35 * ais523 wonders if a flamewar will start about using the GPLv2 vs. the GPLv3 as a test file for compression algorithms 20:05:04 also, it's worth pointing out that azip writes to stdout, and reads from stdin if no file is given; unazip was written in a rush so it ignores command-line arguments and only acts as a filter, zcat style 20:05:15 Both are godawful test files. 20:05:15 this is a superior interface to gzip's 20:05:21 Gregor: in what way? 20:05:33 ais523: Well, part of a decent test /suite/, sure. But not as an individual test. 20:05:41 It's just ... ASCII test. Repetitive, ASCII text. 20:05:46 s/test/text/ 20:05:49 Gregor: it's not massively repetitive 20:05:50 ais523: did you measure compression or decompression speed? 20:05:53 and it has things like the section in allcaps 20:06:02 Gregor: repetitive, ascii text -- you mean like source code? 20:06:02 elliott: decompression's around 4x slower than bzip2 20:06:33 compression is, atm, around 27 times slower; that obviously needs improvement 20:06:54 ais523: hmm, why do you use unsigned long long? 20:06:58 that's == unsigned long on 64-bit 20:06:58 I suspect this is partly because bzip2 splits the input stream into chunks, and azip always compresses the entire file 20:07:01 oh, for 32-bit 20:07:13 in places I actually do absolutely need 64-bit precision 20:07:19 like the fixed-point cube route routine 20:07:21 *cube root 20:07:33 which is memoized because it's far too slow otherwise 20:07:41 long long is == int64_t on 64-bit, right? 20:07:58 Phantom_Hoover: perl -e 'use GD; ($X, $Y) = (110, 15); ($a, $b) = (100, 12.5); $i = new GD::Image(2*$X+1, 2*$Y+1); $i->colorAllocate(255,255,255); $c = $i->colorAllocate(0,0,0); foreach $y (-$Y .. $Y) { foreach $x (-$X .. $X) { $i->setPixel($x+$X, $y+$Y, $c) if ($x*$x)/($a*$a) + ($y*$y)/($b*$b) <= 1; } } open F, ">:raw", "e.png"; print F $i->png();' 20:08:08 ais523: hmm, do assert()s get compiled out with -DNDEBUG? 20:08:11 using glibc 20:08:30 Phantom_Hoover: That gives you a black-on-white ellipse in e.png, with a canvas of 221x31 and axes of 100 and 12.5. 20:08:46 ugh, you've tied the parsing to the IO 20:09:03 bad ais523! 20:09:26 elliott: they do 20:09:31 also, I don't think I did 20:09:39 I interleaved the parsing with the IO, but they aren't tied to each other 20:09:44 size_t innumber_bounded_flat(FILE* f, size_t bound) { 20:09:49 outnumber_bounded_inner. */ 20:09:49 size_t innumber_bounded_inner(FILE* f, size_t minbound, size_t bound, 20:09:49 int countup_000, size_t origbound) { 20:09:49 and I don't think the IO is a noticeable overhead 20:09:50 etc. 20:10:03 ah 20:10:12 ais523: well, azip certainly has one major advantage; unazip.c is frickin' small :P 20:10:19 elliott: that was deliberate 20:10:23 I think it can be made smaller, too 20:10:45 anyway, all the I/O of compressed data is centralised in inbit/outbit 20:10:49 because the system reads a bit at a time 20:11:18 fizzie... how... 20:11:46 ais523: well, if it's mmap, then inbit will just be return *s++ :P 20:11:47 or whatever 20:11:53 the file's padded to a whole byte at the end, because I had no other option 20:11:57 ais523: but seriously, reading a bit at a time *is* going to be a noticeable overhead! 20:12:32 elliott: the funny thing about azip is that it still beats gzip even if it doesn't bother encoding numbers at all and just writes them as (number of bytes in number)(number) 20:12:38 although it's way behind bzip2 if you do that 20:13:20 ais523: heh, really? 20:13:23 gzip must be terrible 20:13:29 indeed 20:13:55 actually, I think I specialcased the number that was usually 2 in that encoding scheme 20:14:06 Phantom_Hoover: It might have some rounding-off problems when the border hits exactly the center of a pixel, and the center of the ellipse is (I think) in the middle of a pixel, and so on, so it might not be exactly what you want. (I mean, for a 200-pixel-wide ellipse that has the border tangential to the edge of a pixel, you'd need the center on the border between two pixels, or some-such.) 20:14:25 (You get what you pay for.) 20:14:27 (azip encodes a 2 in the value that's usually 2 in a single bit, using longer codes for other numbers) 20:14:36 fizzie, how did you code that in what... 5 minutes? 20:14:47 Phantom_Hoover: ...it's trivial 20:14:54 just a for loop setting some pixels 20:14:58 see azip.c line 455 for a discussion of the probabilities 20:15:05 I do not actually have GD. 20:15:07 which seem relatively constant amongst source code tarballs 20:15:09 ais523: how much memory overhead does azip have? 20:15:09 Whatever that is. 20:15:12 unazip 20:15:21 elliott: ah, that's the brilliant part 20:15:25 Phantom_Hoover: just install the package 20:15:26 it's O(size of the compressed file), IIRC 20:15:35 elliott, what's the name? 20:15:48 ais523: I'm not impressed; LZO is O(0) 20:15:57 ais523: well, O(1); you need a source and destination buffer 20:16:00 is LZO actually a compressor? 20:16:07 ais523: err, yes 20:16:09 ais523: http://en.wikipedia.org/wiki/Lempel%E2%80%93Ziv%E2%80%93Oberhumer 20:16:14 ais523: it gets almost-as-good results as gzip 20:16:15 Phantom_Hoover: libgd-gd2-perl. 20:16:17 ais523: and can decompress in realtime (IO-bound) 20:16:21 on even weak hardware 20:16:21 I mean, the memory used by the entire unazip.c is O(size of compressed file) plus a constant 20:16:26 although it can't stream 20:16:32 ais523: same for LZO, it operates on blocks at a time 20:16:34 why did I add the constant there? 20:16:37 now I have two constatns 20:16:42 I'm not surprised you don't have it; it's quite horrible. 20:16:43 *two constants 20:16:43 so if you have a 4096 block size, it'll use 8K for the entire run 20:17:07 hmm, ingenious 20:17:17 but as we've already established, "almost as good as gzip" isn't actually very good 20:17:31 ais523: lzo isn't designed to be well-compressing 20:17:32 (azip the compressor eats a huge amount of memory, incidentally) 20:17:53 ais523: it's designed to be better than not compressing, to use a tiny amount of constant memory, and to decompress so fast that it's IO-bound 20:17:59 it fits all three, and is widely used as a result 20:18:59 elliott: the encoding in that link is screwed up 20:19:14 ais523: no it's not 20:19:16 those aren't hyphens 20:19:25 they're encoded as %E203 here 20:19:26 Phantom_Hoover: Anyway, you get more "elliptical-looking" endpoints out of it if you use something like 99.5 for $a (because then the parallel-to-y-axis edges of the ellipse are tangential to the edge of a pixel) but that way you'll get just a 199-wide ellipse. 20:19:28 which makes no sense 20:19:52 also, Wikipedia is being very slow for me for some reason 20:20:11 to the extent that the CSS hasn't loaded at all 20:20:24 ais523: is there a development repository in ubuntu? like, something even less stable than natty 20:20:46 ais523: wait, memoised_fibonacci is totally pointless, you can just inline every single value,t here's only 92 20:20:48 *there's only 92 20:22:40 elliott: indeed; I thought about that 20:22:50 modifying it now to inline them all 20:22:55 but decided a function to generate them was more self-documenting than a list of constants in which errors wouldn't be obvious 20:22:56 hmm, what's the unsigned long long suffix? ULL? 20:23:02 I was thinking of using LZO in rfk86 -- based on the fact that I have a "tmp.txt.lzo" file here -- but in the end I went with a rather simplistic LZ77/Huffman decompressor, basically a simplified deflate. 20:23:03 yep 20:23:13 elliott, what's this about Fibonacci? 20:23:21 btw, can you think of something that acts more or less like a fixed-point cube root but is less expensive to calculate? 20:23:47 the maths indicated a ^0.3 would work best there, but I changed it to ^1/3 to make it easier and faster to implement, and it hardly makes any difference 20:24:05 also, fixed-point cubes should not be that complex to write, 20:25:16 ais523: wow, look at the whitespace pattern I get when word-wrapping the table: http://sprunge.us/bENR 20:25:38 ais523: also, hmm, a logarithm of some sort maaaybe? 20:25:40 perhaps not 20:25:45 !echo hi 20:26:03 elliott: you expect log to be easier to implement than cube root? 20:26:12 and act vaguely the same way? 20:26:17 Log2 certainly is rather easy. 20:26:24 ais523: well, log2 is trivial :P 20:26:25 At least an approximation of. 20:26:32 It's not very similar, though. 20:26:37 it isn't, no 20:26:43 elliott: approximating to the nearest integer, OK, but getting the other decimal places, rather harder 20:26:54 " Find integer log base 2 of the pow(2, r)-root of a 32-bit IEEE float (for unsigned integer r)" 20:26:57 !echo hi 20:26:59 ais523: good enough for you? :P 20:26:59 hi 20:27:00 and I can't just use floating-point because it needs to be deterministic across systems, and I'm not good enough at floating-point to manage that 20:27:20 Gregor: what's with the frequent swallowing of the first command? 20:28:02 !haskell let fib = 0:1:zipWith(+)fib(tail fib) in fib!!92 20:28:14 ais523: 20:28:14 $ time ./unazip /dev/null 20:28:14 real0m0.688s 20:28:25 how does that compare to bunzip2? 20:28:28 ais523: either that paid off, or my system is significantly faster than yours, which I doubt since IIRC the CPU is the same on our two computers 20:28:30 also, what did you change? 20:28:30 !echo hi 20:28:33 dunno, lemme try bzip2 20:28:35 ais523: just made fibs a table 20:28:46 Unabomber, unazip. 20:28:49 but they're memoized, so that should hardly make a difference 20:29:04 $ time bzcat test.bz2 >/dev/null 20:29:04 real0m0.280s 20:29:11 !echo hi 20:29:12 hi 20:29:21 test is ick-0.-2.0.29.pax 20:29:26 !haskell let fib = 0:1:zipWith(+)fib(tail fib) in fib!!92 20:29:28 7540113804746346429 20:29:55 all you're doing is calculating them at writecodetime rather than runtime 20:29:55 and calculating the fibonacci numbers once is not going to take very long 20:29:57 !haskell 7540113804746346429 :: Double 20:29:59 7.540113804746346e18 20:30:09 why stop at 92? 20:30:17 oerjan: 64-bit int 20:30:27 hm 20:30:38 ais523: you use malloc?! 20:30:53 well, how else am I going to allocate memory? 20:30:56 ais523: I think you need indoctrinating into the cult of mmap. 20:31:03 !haskell maxBound :: Data.Int.Int64 20:31:06 9223372036854775807 20:31:11 Malloc is slow. Realloc too. 20:31:21 the whole thing has to be read before it can start decompressing 20:31:31 ais523: I mean use mmap instead of malloc... 20:31:49 well, I suppose you can figure out how much needs to be allocated in advance 20:31:52 ais523: using MAP_ANONYMOUS 20:31:53 ais523: no 20:31:55 ais523: you can rely on overcommitting 20:32:00 just mmap 2, 4 gigs, whatever 20:32:08 elliott, is malloc slower than proper GC? 20:32:17 Phantom_Hoover: Umm, that question is meaningless. 20:32:27 Is there a six-words-or-so description of this whole azip business? 20:32:32 ...It is. 20:32:40 well, I mean that after the first non-declaration line of main, you know right now how much memory you'll need for the rest of the program 20:32:46 fizzie: my attempt to make a compression algorithm 20:32:50 that's seven, but close enough 20:32:58 fizzie: ais523's compressor. Slow, big... fix! 20:33:03 Yes, I was hoping for something that's sort of describe what's the novelty of it. 20:33:08 I mostly abandoned it after I realised it wasn't as good as existing algos, elliott is trying to make something useful of it 20:33:10 I grokked that much from the context. 20:33:12 fizzie: there isn't a novelty of it 20:33:17 well, I mean that after the first non-declaration line of main, you know right now how much memory you'll need for the rest of the program 20:33:18 which is why I abandoned it 20:33:19 Oh. :/ 20:33:20 ais523: then why do you have realloc? 20:33:29 if (n == 0) return 0; 20:33:29 if (n >= memorylen) { 20:33:29 memory = realloc(memory, sizeof (unsigned long long) * (n+1)); 20:33:29 if (!memory) { 20:33:31 cuberoot_leftshift_40 20:33:34 I was expecting some sort of a radical New Kind Of Compression. 20:33:35 elliott: that's in the memoization for cube roots 20:33:42 fizzie: it is a radical New Kind of Compression 20:33:47 just one that happens to be not as good as lzma 20:33:48 ais523: why not just allocate a big static table? 20:33:59 Yes, well, that's the sort of novelty I was looking for. 20:34:27 elliott: hmm 20:34:46 I doubt it would make a massive difference 20:34:51 especially as n there is theoretically unbounded 20:35:02 ais523: you don't have to bother memoising every value 20:35:04 only reasonable values 20:35:12 │ Symbol: ANON_INODES [=y] │ 20:35:12 │ Type : boolean │ 20:35:13 │ Selected by: X86 [=y] || EPOLL [=n] || SIGNALFD [=n] || TIMERFD [=n] || EVENTFD [=n] || PERF_EVENTS [=y] && HAVE_PERF_EVENTS [=y] || INFINIBAND_USER_ACCESS │ 20:35:14 what's this then 20:35:55 elliott: I think n there can range from 0 up to the number of tnodes in the file, plus some small constant 20:36:09 if you run azip with -v, it'll tell you how many tnodes there are, plus lots of other irrelevant data 20:36:27 ais523: when do you find out how many tnodes are in the file? 20:36:47 it changes as the compression algo proceeds 20:37:02 so not until the end do you find out how many it ended up with 20:37:26 it spends most of its time eliminating tnodes by doing things like inlining them, or just putting them into different orders 20:37:28 Vorpal: if you compile an initramfs into the kernel, does it receive the kernel's compression? 20:37:37 and, accordingly, can I disable the "Load whatever-compressed initramfs" support? 20:38:14 elliott, no clue 20:38:49 I think there are a few tens of thousands, eventually, in the paxball test 20:39:09 not as many as I'd like, really 20:39:22 System is 480 kB 20:40:20 things I can omit from asmutils: ccd (?), cda2raw, chvt(?), cpuinfo(?), cpuspeed, deallocvt(? I think so, I have no VTs), chvt(?), deflate(?), eject, fingerd, ftpd, httpd, m_inetd, ksyms(?), ...? 20:40:49 chvt is also to do with VTs, I think 20:40:56 and deflate's a compression algo IIRC 20:41:00 I know that :P 20:41:42 wonder if STARTUP=y shrinks it 20:42:07 Note: Several utils (cpuinfo, eject, httpd, kill, etc) have their own additional configuration in the source code. 20:42:13 Yes, chvt does alt-fN style console-switching except programmatically. 20:42:57 cda2raw is an awfully specific utility, if it does what one'd expect from the name. 20:43:09 It does, I believe. 20:43:09 -!- Sasha has quit (Ping timeout: 240 seconds). 20:43:17 aren't CDAs raw PCM anyway? 20:43:17 fizzie: extracts audio from a CD? 20:43:26 well, maybe it takes a block device 20:43:34 TODO: Figure out whether setting CPU to Pentium Pro actually made it smaller. 20:43:35 elliott: at least on Windows, CDAs are just little files that specify which track on the CD to seek to 20:43:43 -!- Sasha has joined. 20:43:47 ais523: that's CDDA 20:43:50 CDA presumably stands for CD Audio 20:44:01 (isn't it CDDA? oh, whatever. maybe not) 20:44:11 elliott: the files have the extension .cda on Windows, and appear as files in the directory represented by an audio CD 20:44:17 heh, gzip uses deflate 20:44:18 PNG, too 20:44:22 ais523: right, okay 20:44:23 And "really raw" CD audio isn't just raw PCM; there's also error-correction/subcode data. 20:44:26 thought it was .cdda 20:44:29 I'm not sure how often you actually see those, though. 20:44:35 fizzie: does the block device expose those? :P 20:44:41 fizzie: really really /really/ raw CD audio has an extra layer of encoding 20:44:48 because the physics of CDs prevent them from having two 1s in a row 20:45:03 Well, yes. But the "logical" format has frames of K samples and the error-correction. 20:45:08 (luckily, you can have two 0s in a row, or CDs would be stuck doing 1010101010101010 forever) 20:46:08 ais523: is it 0 -> 0; 1 -> 10? 20:46:10 or 1 -> 01 20:46:14 elliott: no, it's more complicated than that 20:46:18 ais523: hmm, why? 20:46:24 ais523: to allow seeking? 20:46:28 so that each constant-length string of bits becomes a constant-length string in the encoding 20:46:44 otherwise, a CD full of 0s would hold more data than a CD full of 1s 20:46:47 0 -> 101; 1 -> 010? 20:46:54 otherwise, a CD full of 0s would hold more data than a CD full of 1s 20:46:56 that would be brilliant 20:47:02 that doesn't quite work; 100; 010 would but is wasteful 20:47:03 wait, 0 -> 101; 1 -> 010 doesn't get seeking right either 20:47:09 oh, indeed 20:47:16 ais523: what is it, then? 20:47:24 the encoding itself uses a similar principle, but on blocks of quite a lot of bits on the LHS 20:47:29 right 20:47:34 I don't know what it is offhand, it's not the sort of thing you can memorise 20:47:49 0 -> 00, 1 -> 10, 11 -> 010 20:47:58 then 111 -> 01010 20:48:00 that doesn't work either 20:48:03 but is a fun encoding anyway 20:48:49 brb 20:52:40 -!- elliott has quit (Read error: Operation timed out). 20:58:37 It seems to do 8-bit blocks (i.e. bytes) that are encoded with 14-bit codewords from just a simple look-up table, and the words are chosen so that each 1 is separated by 2..10 zeroes. 20:59:41 And DVDs have a similar scheme except there it's a four-state FSM that translates 8-bit inputs to 16-bit codewords; but it has the same "ones separated by 2..10 zeros" property. 21:01:11 Oh, and the CD encoding also puts three "merging" bits between each 14-bit codeword, set so that the number-of-zeroes property holds, so it's actually a 8-to-17 bit encoding scheme. 21:01:17 -!- ais523 has quit (Read error: Connection reset by peer). 21:02:22 * Phantom_Hoover finally finished compiling Flight Gear. 21:02:57 Aaaaaand, it segfaults. 21:03:27 a plane crash, then 21:05:57 The plane accidentally flew over NULL. 21:08:58 -!- ais523 has joined. 21:10:04 -!- kar8nga has quit (Remote host closed the connection). 21:10:32 So, anyway, I think the whole Wikiplia concept would be greatly improved by a) self-implementing it and b) allowing a program to alter that interpreter globally (given passwords and all that jazz). 21:16:46 Wikiplia? 21:17:53 -!- ais523 has quit (Read error: Connection reset by peer). 21:18:59 Wikiplia? 21:19:06 -!- ais523 has joined. 21:31:41 coppro, nooga, an (unfortunately dead) attempt at making a wiki-based programming language. 21:33:49 hmm, so what should be my reaction when someone emails me a WAV file of Rick Astley's "Never gonna give you up"? 21:34:05 at least, I assume it is from the filename, I haven't actually tried to listen to it, especially as it's likely a copyright infringement 21:34:34 and given that it's uncompressed, it's quite large 21:35:10 "That is _so_ 2008"? 21:35:38 pity there's no way to delete some attachments from an email while retaining others 21:35:52 so I'll have to delete the whole thing once I've looked through the attachments that I actually wanted them to send 21:36:19 ais523, so I'm assuming you take pride in never violating copyright? 21:37:50 Phantom_Hoover: that's something to be proud about? 21:37:58 I just dislike violating the law without a really good reason 21:38:23 also, it's definitely not illegal to be emailed a rickroll, unless the laws have gone completely insane; I think it's your reaction to it that matters 21:41:34 The laws _have_ gone completely insane, but I actually want to talk about Wikiplia rather than a debate that is extremely old and conversions in which are extremely rare. 21:41:43 How goes Feather? 21:42:37 go away 21:42:58 -!- Mathnerd314 has joined. 21:50:51 Mathnerd314! 21:51:14 yes...? 21:52:03 * Mathnerd314 bows 21:55:50 Bow MORE! 21:58:29 no, it was merely for politeness's sake. you should return my bow, and more deeply 21:58:51 And tell me what the next prime is! 21:59:24 no. no primes for you. 22:00:18 -!- ais523_ has joined. 22:00:31 -!- ais523 has quit (Ping timeout: 264 seconds). 22:00:35 -!- ais523_ has changed nick to ais523. 22:01:00 where is elliott when you need him 22:01:08 -!- madbr has joined. 22:01:15 hey 22:02:16 -!- nooga has quit (Read error: Operation timed out). 22:02:21 Vorpal: what do you need him for? 22:02:23 hi madbr 22:02:43 Do you guys think it's possible to design a language+CPU suitable for deep parallelism? (aside that there's map/reduce) 22:04:13 ais523, he has nothing against dying in minecraft. I need someone to test a deadly trap :P 22:04:22 -!- nooga has joined. 22:04:34 madbr: look at OpenCL and GPGPUs 22:04:46 they're built pretty much entirely around parallelism 22:05:13 to the extent that something as simple as an if is inefficient because it can't work the same way in every one of your thousands of threads at once 22:05:44 yeah but that's a... really specialised architecture 22:05:56 basically you're the one doing all the work :D 22:06:32 I was thinking something more like a super-out-of-order cpu 22:07:00 Phantom_Hoover: 317 22:07:17 Itanium? 22:07:29 oerjan, you're hired. 22:07:48 yay 22:08:06 where it loads in a huge block of instructions at once and then each instruction just waits after its data dependencies in parallel 22:08:17 Turn up to work tomorrow with a spatula and 3 8GB flash drives. 22:09:04 I QUIT 22:10:21 -!- ais523 has quit (Ping timeout: 240 seconds). 22:10:42 for instance if it was stack based, you could have something like "6 4 +" in the middle of an instruction string at it could already turn that into "10" for the next cycle 22:11:03 even though there's a bunch of instructions before 22:11:31 madbr: http://en.wikipedia.org/wiki/Register_renaming 22:11:32 -!- ais523 has joined. 22:13:49 deewiant: yes, take that to the power of 11 22:14:20 -!- Sasha has quit (Read error: Connection reset by peer). 22:14:30 oerjan, YOU CANNOT QUIT PHANTOM INDUSTRIES 22:14:45 Just saying that such things as you describe do exist, though maybe not "to the power of 11" in the way you'd want 22:16:26 Polynomials of the 11th degree are the BEST kind of polynomials! 22:16:48 Vorpal, incidentally, remember that Minecraft diary elliott linked to? 22:16:51 yeah I was thinking of something like... 22:16:53 The guy died. 22:16:55 Phantom_Hoover, which one? 22:17:05 Phantom_Hoover, towards a new dawn? 22:17:08 Vorpal, the one you had a sarcasm failure with. 22:17:14 oh that one 22:17:20 Phantom_Hoover, do you want to try a lethal trap? 22:17:30 every new loaded instruction is allocated to a new register/execution unit 22:17:30 Vorpal, depends. 22:17:47 If all of the stuff in my inventory will be salvageable, then yes. 22:17:48 Phantom_Hoover, I will provide a chest to put your items in 22:18:04 No, that's too inconvenient. 22:18:12 Phantom_Hoover, hm there is lava involved so... 22:18:13 My inventory is nearly full of cobbles. 22:18:20 Phantom_Hoover, two big chests? 22:18:29 Phantom_Hoover, also I can donate more cobble if you want 22:18:34 that unit reads the "ready" bit from its input dependencies. when all the dependencies are "ready" then it computes the result and in turn turns on its ready bit 22:18:45 Phantom_Hoover, I have two big chests full plus a lot more spread out 22:18:48 Vorpal, I'll pass. 22:19:13 Phantom_Hoover, I don't know if you will die from falling or from the lava btw 22:19:26 Is this your trapdoor? 22:19:26 Phantom_Hoover, I could replace it with water I guess 22:19:45 Phantom_Hoover, indeed. 22:22:03 Phantom_Hoover, I replaced lava with water. But you will still get extra torches and extra gravel 22:22:09 -!- Sasha has joined. 22:31:13 aha jak tak to mi sie nie chce < that's completely common and normal Polish sentence and I just realised that it looks weird to me 22:31:28 like, uh, Chinese 22:34:38 fang en hai 22:36:39 yeah that's the "wtf is that word" effect 22:37:14 read a normal word over and over, eventually it will look like a weird alien word and you'll wonder where it came from 22:41:03 ;D 22:42:53 nooga: 中国語っぽい? 22:44:01 -!- elliott has joined. 22:45:04 -!- Sasha has quit (Remote host closed the connection). 22:46:00 . 22:46:01 -!- Sasha has joined. 22:46:59 Phantom_Hoover, how much fall damage did you take? 22:48:19 ? 22:48:39 Vorpal, around 50%. 22:49:23 ? 22:49:38 Phantom_Hoover, hm not more 22:49:58 ? 22:50:11 Phantom_Hoover, and lava destroys item. Yeah this would be annoying if made twice as deep due to having to do the obsidian trapping chamber 22:50:12 what fall 22:50:48 elliott, Vorpal's trapdoor in the throne room. 22:52:28 elliott, if you want to see how deep it is come on now. I'm not going to operate it again for a while. it is too painful to set up 22:52:33 so see it while it is open 22:52:44 elliott, and now means "within one minute" 22:54:04 -!- MigoMipo has quit (Read error: Connection reset by peer). 22:54:20 okay, closing it 22:54:28 SPECIAL OFFER TO KILL YOU, ONLY TODAY 22:54:35 elliott, it's not very deep. 22:54:38 * Phantom_Hoover → sleep 22:54:49 -!- Phantom_Hoover has quit (Remote host closed the connection). 22:58:01 oerjan, no "special offer to see death trap depth 22:59:16 i am of course assuming that the only way to see the depth properly is to fall through it 23:00:16 * Vorpal prods elliott. At least see where the trap is :P 23:03:49 elliott, fizzie suggested to use gravel in front of the throne so you could grovel 23:03:53 -!- ais523 has quit (Remote host closed the connection). 23:11:13 -!- augur has quit (Remote host closed the connection). 23:11:13 SPARC 23:11:21 is the best architecture EVER 23:11:35 with this http://en.wikipedia.org/wiki/Open_Firmware 23:12:06 an it's got Forth shell 23:20:33 -!- yorick has quit (Remote host closed the connection). 23:33:10 So did New World PPC Macs. 23:34:34 -!- sftp has quit (Remote host closed the connection). 23:35:52 ... doesn't EFI have a Forth shell to this day? 23:36:17 no 23:36:36 Hm 23:37:28 night 23:40:04 EFI is basically Open Firmware made worse. 23:40:17 Why? NIH 23:43:36 -!- Sasha has quit (Ping timeout: 250 seconds). 23:45:10 -!- Sasha has joined. 23:49:35 -!- Mathnerd314 has quit (Quit: ChatZilla 0.9.86-rdmsoft [XULRunner 1.9.2.12/20101026210630]). 23:51:57 Forth is cool 23:53:22 -!- Sgeo has joined. 2010-12-07: 00:03:08 loadlin can't load initramfses, right? :p 00:03:17 Actually, does the bootloader have to be able to, if you embed it into the kernel? 00:04:05 -!- augur has joined. 00:05:50 -!- nooga has quit (Ping timeout: 255 seconds). 00:07:37 -!- nooga has joined. 00:12:21 -!- FireFly has quit (Quit: swatted to death). 00:17:56 The initramfs loading is identical to initrd loading from a bootloader point of view. 00:18:16 pikhq: Right. But you can embed a .cpio directly into the kernel. 00:18:17 Also, if it's embedded in the kernel, the bootloader can be completely ignorant of it. 00:18:20 Right. 00:18:43 The .cpio gets transformed into a .o with a symbol pointing to the .cpio. 00:19:01 pikhq: How small can you get an ancient DOS floppy if you don't care whether it's usable at the command-line, just to run a program in autoexec? 00:19:09 Because I'm thinking that http://busybox.net/~vda/linld/README.txt + DOS might be smaller than lilo. 00:20:07 [ ] LINLD.COM 13-Sep-2004 13:11 5.7K 00:20:17 So depending on how small I can get DOS... 00:20:19 Uh, IO.SYS + MSDOS.SYS + CONFIG.SYS (can be empty) + COMMAND.COM + AUTOEXEC.BAT (can be empty) is the minimal MS-DOS system. 00:20:43 pikhq: AUTOEXEC.BAT would be "linld cl=blah" :P 00:21:00 IO.SYS is the DOS BIOS, MSDOS.SYS is the DOS kernel, and CONFIG.SYS is, of course, a config file. 00:21:01 How big are IO.SYS + MSDOS.SYS + COMMAND.COM, roughly? Assume an old, smaller DOS. 00:21:07 Uh, *tiny*. 00:21:19 pikhq: <100K? 00:21:58 pikhq: Or, more concretely: Minimal DOS + 5.7K <=> minimal lilo installation? 00:22:24 LILO appears to require a /boot partition. 00:22:32 Whereas linld could just run from a DOS floppy. 00:23:01 pikhq: (BTW, this is for a single-floppy Linux like you were trying to do.) 00:23:03 That might be true of modern DOS, even. 00:23:18 "System is 480 kB" --Linux make 00:23:22 It lacks some things though. 00:23:24 Like VTs. 00:23:27 Or block device support. 00:25:28 pikhq: Another question: If I have kernel compression enabled, disable "Support initial ramdisks compressed using [blah]", and embed an initramfs... Will that initramfs get compressed? 00:25:33 Uh, FreeDOS, done minimally, is 112K... 00:25:53 You could probably get that down way smaller by removing some useless features. 00:25:59 (FAT32, LFN, tab completion) 00:26:01 FreeDOS is pretty big :P 00:26:10 pikhq: Another question: If I have kernel compression enabled, disable "Support initial ramdisks compressed using [blah]", and embed an initramfs... Will that initramfs get compressed? 00:26:19 elliott: Yes. 00:26:30 pikhq: Awesome. 00:26:34 elliott: The initramfs is just another object file in the kernel if it's embedded. 00:28:05 ^?ELF^A^A^A^C^@^@^@^@^@^@^@^@^B^@^C^@^A^@^@^@L<80>^D^H,^@^@^@^@^@^@^@^@^@^@^@4^@ ^@^A^@^@^@^@^@^@^@^@<80>^D^H^@<80>^D^H/^A^@^@3^A^@^@^G^@^@^@^@^P^@^@ZY»^M<81>^D^H<89>Ï1À<8d>Hÿò®<89>Ð<8b>Oü¿/<81>^D^H<81>ùccd^@^O<95>^G<89>Þ<8d>K^D<8d>S^OHt#[<81>;-ccdt^Eö^Gÿt Æ^G^@H<89>ót^M[Ht YHt^EZHt^A_QSö^Gÿu^Ej^VXÍ<80>1ɵ^Hj^EXÍ<80>P<85>Àx9¹ S^@^@<89>Ãj6XÍ<80>ö^Gÿu8SR1Ò²^K¹$<81>^D^Hj^A[j^DXÍ<80>²^A1Ûj^CXÍ<80>Z[¹ 00:28:06 ^YS^@^@j6XÍ<80>Y[<87>^L$¾^A^@íÀj^UXÍ<80>X<85>Àx^B1À<89>Ãj^AXÍ<80>/dev/cdrom^@^@^@^@^@iso9660^@ ..^@ 00:28:09 THAT DOES NOT COUNT AS A PROGRAM 00:28:13 WHERE IS ALL THE CODE 00:28:26 (a minimal FreeDOS, BTW, is: command.com, kernel.sys) 00:29:33 AHAHAH. Easy way to get that FreeDOS system down in size. 00:29:44 upx supports DOS executables. 00:30:02 Oh, BTW: you may want to leave that kernel uncompressed, and upx the kernel. 00:30:41 * Sgeo ogles the Nexus S 00:30:59 pikhq: I tried UPX'ing the vmlinux and it was bigger than the LZMA'd bzImage. 00:31:15 elliott: Weird. 00:31:17 pikhq: I would just like to say that I've just selectively installed pieces of asmutils... 00:31:18 arch basename cat chmod chown chroot cmp cp cut date dc dd deflate df dirname dmesg du echo env extname factor false fdisk finger free fromdos gi grep halt head hexdump host hostname id idea ifconfig inflate init kill killall killall5 less ln ls md5 md5sum mount mv nc netstat nice nm nohup od paste pidof ping poweroff ps pwd readelf readlink reboot renice rm rmdir rot13 route scan sh sha1sum size sleep sln strings tail tar tee telnet test todos t 00:31:18 ouch tr true tty umount uname update uptime users usleep uuencode watch wc wget which whoami write yes 00:31:25 pikhq: Notice how this includes WGET and shit. 00:31:28 pikhq: Guess how big all these are? 00:31:30 67012 total 00:31:37 67 fucking Ks. 00:31:39 elliott: Yeah, asmutils is awesome. 00:32:08 No, *motherfucking awesome*. 00:32:13 wget doesn't seem to work here :P But whatever! 00:32:31 pikhq: Wait... if I have an initramfs, you won't be able to see the kernel, will you? X-D 00:33:01 elliott: ? 00:33:38 pikhq: Because the kernel will be on the floppy. 00:33:41 And there's no block device support. 00:33:46 XD 00:34:27 -rw-r--r-- 1 elliott elliott 70K Dec 7 00:33 ../root.cpio 00:34:32 Welp, might as well compile it in. 00:35:00 pikhq: If I can find a damn smallX tarball, this could actually work. 00:35:02 System is 511 kB 00:35:08 With asmutils and /etc/rc. 00:35:31 Totally awesome. 00:36:06 Oops, I forgot to put init in /sbin. Ehh... I can just say init=/bin/init. 00:36:30 pikhq: I have all kernel printing disabled, so time to wait for a minute and hope I get a shell :P 00:37:09 DIN'T WORK LOL... or I'm too impatient. 00:37:13 I'll rebuild with printk so I can see shit. 00:38:19 pikhq: Hmm... does init= actually affect the initramfs? 00:38:30 Isn't that for the real root's init path? 00:40:47 With initramfs, init= gets passed to /init. 00:41:43 Ah. 00:41:53 pikhq: ...Maybe I should omit /bin, and just put everything in /. :D 00:42:21 * pikhq sees watercooled cases with fans; cries 00:42:50 -!- nooga has quit (Ping timeout: 260 seconds). 00:43:12 pikhq: you do realise just about every watercooled setup uses at least one fan? 00:43:50 elliott: "Fans". As in many. As in several. Tiny. Noisy. Fans. 00:44:01 pikhq: "qemu -kernel path/to/bzImage" should be enough to test this, right? 00:44:03 * Sgeo holds his breath and opens IE 00:44:15 I'm not sure it's actually doing its initramfs thang. 00:44:27 elliott: Yes. 00:44:35 -!- nooga has joined. 00:44:44 pikhq: If it doesn't move in 30 seconds, I'm enabling all this printy stuff. :P 00:45:37 elliott: Also: watercooled computers should have ginormous radiators. 00:46:03 Actually, screw the water. 00:46:11 Computers should have ginormous radiators. 00:46:14 With blinkenlights. 00:46:59 │ │ [ ] Use 4Kb for kernel stacks instead of 8Kb │ │ 00:47:00 TODO: that 00:49:18 pikhq: Hmm... uClinux can be configured to be super-small, right? 00:50:29 -!- madbr has left (?). 00:50:54 pikhq: http://www.openinventionnetwork.com/ Hacking the patent system. "Join us, we'll patent everything, and then license it to everyone who agrees not to use their patents against Linux". 00:51:41 I should not have to manually allow Windows Firewall to make changes to my computer 00:52:02 pikhq: Hmm. If a kernel manages to decompress, print out "Booting the kernel.", but then hang... what's up? 00:53:12 I have printk and everything. 00:54:37 elliott: Uh, fuck that's not good? 00:54:47 pikhq: Having PCI access set to "direct": smart idea? 00:55:50 pikhq: Come to think of it, it probably means that it's failing during very early bootup, right? 00:56:04 Exceptionally early. 00:56:21 I cannot be sure it had paging working yet. 00:56:38 If I knew more about the kernel's structure, I'd suggest you kgdb that. 00:57:20 pikhq: With qemu? Sounds like a whole new world of fun :P 00:58:40 -!- Mathnerd314 has joined. 00:59:10 pikhq: Hypothesis: Plan 9 is the most elegant OS ever designed, in both design and implementation. (Genera is *nicer*, but the code is... heh.) 00:59:26 elliott: Likely. 01:00:51 pikhq: Okay, it's STILL not printing anything... 01:01:01 Are you sure using -kernel isn't to blame here? 01:01:08 Quite sure. 01:01:17 All that does is make the qemu BIOS act as a bootloader. 01:02:22 pikhq: Even without namespaces support, IPC, the block layer, anything, I should still get printk right? 01:02:29 Even with no drivers enabled? 01:02:45 │ │ [ ] Display panel/monitor support │ │ 01:02:49 I shouldn't need that, surely? 01:02:57 Speaking as someone who has actually had this come up, you should still get printk. 01:03:10 If you have VGA console support and printk, you're golden. 01:03:24 pikhq: Not sure I have VGA console support! 01:03:30 Is that actually configurable? 01:03:36 Yes. 01:03:42 │ ymbol: VGA_CONSOLE [=n] │ 01:03:42 │ ype : boolean │ 01:03:42 │ rompt: VGA text console │ 01:03:47 HURF DURF IM TARDED CUZ THAT'S NOT ENABLED 01:03:50 *sYMBOL *tYPE *pROMPT 01:03:52 There's your problem! 01:04:29 │ -> Device Drivers │ 01:04:29 │ -> Graphics support │ 01:04:29 │ -> Console display driver support │ 01:04:34 I don't *have* that last submenu. 01:05:03 pikhq: Wait, what? VGA_CONSOLE depends on "VT [=n]". Or is that [=n] just what I have? 01:05:05 Aha, I think it is. 01:05:08 So I need to enable VT. 01:05:10 Right? 01:05:29 Apparently. 01:05:54 pikhq: Weird that the console would depend on VTs. 01:06:01 No kidding. 01:06:53 "Kernel panic - not syncing: junk in compressed archive" 01:06:56 It does not like my cpio! 01:06:59 Do I have to construct it specially? 01:07:50 "compressed archive" 01:07:57 pikhq: Yes, that one puzzles me. 01:07:58 *facepalm* 01:08:01 I just fed it a .cpio. 01:08:02 pikhq: wut 01:08:10 elliott: At the kernel. 01:08:18 right 01:08:18 elliott: It should just take a straight cpio. 01:08:27 │ │ [*] Initial RAM filesystem and RAM disk (initramfs/initrd) support │ │ 01:08:27 │ │ (/home/elliott/flinix/root.cpio) Initramfs source file(s) │ │ 01:08:27 │ │ (0) User ID to map to 0 (user root) │ │ 01:08:27 │ │ (0) Group ID to map to 0 (group root) │ │ 01:08:30 │ │ [ ] Support initial ramdisks compressed using gzip │ │ 01:08:33 │ │ [ ] Support initial ramdisks compressed using bzip2 │ │ 01:08:36 │ │ [ ] Support initial ramdisks compressed using LZMA │ │ 01:08:39 │ │ [ ] Support initial ramdisks compressed using LZO │ │ 01:08:42 │ │ Built-in initramfs compression mode (None) ---> │ │ 01:08:45 pikhq: It *does*. 01:08:47 │ CONFIG_INITRAMFS_COMPRESSION_NONE: │ 01:08:50 │ │ 01:08:53 │ Do not compress the built-in initramfs at all. 01:08:55 I have that enabled. 01:09:14 pikhq: I figure I'm doin' it wrong as far as cpio goes. 01:10:04 pikhq: Ah. Is "-H newc" default? 01:10:45 pikhq: Wait. You can just feed the kernel a directory and it'll make a cpio for you. 01:11:29 pikhq: "Warning: unable to open an initial console." 01:11:33 Now what the fuck does THAT mean? 01:12:15 pikhq: Aha. 01:12:26 pikhq: You need /dev/{console,null,tty1,tty2,...} 01:13:02 pikhq: Er. How does one cp without making it copy the contents? 01:13:07 You know, just to cp /dev/console . 01:15:44 pikhq: It fucking boots. 01:15:45 rsync --devices /dev/console . 01:16:10 pikhq: I have a Linux kernel that boots to a system with 100 programs (99 if you don't count init) in 567K. 01:16:16 It has a shell. With tab completion. And line editing. 01:16:26 And four devices :P (console, null, tty1, tty2) 01:17:02 pikhq: Aaaand ctrl+alt+fN works. 01:17:07 \o/ 01:17:18 TODO: Put chvt and friends into the image, since I have VTs now. Create more ttys. And then, X11! 01:17:38 Also: Disable all that nasty kernel printing, and other bloated stuff I enabled, if it helps. (.config.good has all of that removed, so I can just selectively try and migrate back.) 01:18:21 Ah, and keep ~/flinix/root owned by root:root... 01:18:37 pikhq: This thing boots in about 1 second. 0.2-0.4s if you ignore decompression. 01:18:47 Literally. It says "Decompressing Linux...", pauses for a second, floods output and instantly drops you at a shell. 01:18:48 Glee. 01:19:10 Oh, I should probably enable a framebuffer at some point... although smallX doesn't need it, so maybe not. 01:19:18 Wait, I have init in bin. 01:19:25 aaaargh 01:19:28 R-r-r-removed! 01:19:31 who pastes so much 01:19:48 nooga: what? 01:20:19 Hmm, poweroff doesn't work, neither does reboot; TODO: remove them,. 01:20:23 Halt doesn't do much either. 01:20:47 TODO: Add some Ethernet drivers. 01:21:52 hmm, whoami segfaults with a simple /etc/passwd 01:22:40 * elliott cp .config .config.works 01:25:44 pikhq: Can I just say that modern software is stupidly bloated? 01:25:53 This qemu window feels so *refreshing*. 01:27:39 whoa 01:27:43 pikhq: So all I have to do is cram an X server into 700K or so and get slightly over 200K left to put whatever I want in. :P 01:27:45 nooga: ? 01:28:11 something works 01:29:07 pikhq: The awesome thing is: This has like 99% of what's needed to do networking. Not sure it'll do DHCP. 01:29:28 pikhq: But you can *totally* put this on a 386 (well, a 386 working enough to not need any of the machine-specific hacks Linux does which I disabled...) and IRC from it. 01:29:46 System is 536 kB 01:29:50 Stripped printk out of it. 01:29:56 It still works and boots instantly. 01:30:32 pikhq: Ha, remind me to add /proc sometime so I can use ps. 01:30:42 TODO: Add /proc for ps. See if it's worth it. 01:31:20 Also: Find out why wc is printing totals twice, second time on the second EOF. 01:31:29 Also: Find out why "foo&" isn't working; job control issues? 01:31:52 Oh, it's Ctrl+Z. 01:32:02 what 01:32:11 nooga: I'm assembling a tiny Linux with X11 into one floppy disk. 01:32:22 how much kernel weights? 01:32:36 nooga: Currently it's 536K, kernel with embedded filesystem (it's 480K or so without the filesystem) with 99 programs. 01:32:39 (but a bitch ain't one) 01:32:46 nooga: From the asmutils project, which has craaaazy tiny utilities. 01:32:46 -!- oerjan has quit (Quit: Good night). 01:33:29 nooga: It even has a very-tiny wget. :P 01:33:35 (But no networking support yet; almost.) 01:33:41 I'll continue this insanity tomorrow. Toodles. 01:33:42 -!- elliott has quit (Quit: Leaving). 01:39:36 -!- wareya_ has joined. 01:41:33 -!- wareya has quit (Ping timeout: 240 seconds). 02:21:13 -!- GreaseMonkey has joined. 02:31:24 -!- Wamanuz2 has joined. 02:35:09 -!- Wamanuz has quit (Ping timeout: 240 seconds). 03:02:22 -!- TLUL has joined. 03:56:09 http://www.youtube.com/watch?v=heKK95DAKms 03:57:24 -!- Wamanuz2 has quit (Remote host closed the connection). 03:58:19 -!- whoami has joined. 04:00:24 -!- Wamanuz has joined. 04:05:07 -!- Wamanuz has quit (Remote host closed the connection). 04:05:27 -!- Wamanuz has joined. 04:31:07 -!- kmc has quit (Ping timeout: 245 seconds). 04:42:10 -!- Sgeo has quit (Read error: Connection reset by peer). 04:44:43 -!- Sgeo has joined. 07:04:59 -!- clog has joined. 07:04:59 -!- clog has joined. 07:18:32 -!- whoami has quit (Quit: Nettalk6 - www.ntalk.de). 07:49:05 -!- Sgeo has quit (Read error: Connection reset by peer). 07:55:04 -!- evincar has joined. 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:02:22 -!- evincar has quit (Quit: ChatZilla 0.9.86 [Firefox 3.6.12/20101026210630]). 08:15:24 -!- MigoMipo has joined. 09:09:38 -!- GreaseMonkey has quit (Quit: ilua). 09:10:16 "Error: session already open. Cause: No login cookie found." <-- wtf, seriously? 09:10:30 I got that from a university web system just now 09:10:48 due to opening link to a page on it without being logged in 09:29:30 -!- choochter has joined. 09:58:50 -!- TLUL has quit (Quit: *disappears in a puff of orange smoke*). 10:15:58 -!- FireFly has joined. 10:21:21 elliott (for log reading): I saw this very very bad pun in the yellow text in MC: "sqrt(-1) love you" XD 10:21:29 that is just so awful 10:24:07 -!- choochter has quit (Ping timeout: 255 seconds). 10:26:25 -!- choochter has joined. 10:28:39 -!- MigoMipo has quit (Read error: Connection reset by peer). 10:29:13 -!- MigoMipo has joined. 10:55:20 -!- Wamanuz has quit (Read error: Connection reset by peer). 10:55:44 -!- Wamanuz has joined. 11:16:41 -!- oerjan has joined. 11:17:58 02:21:21 elliott (for log reading): I saw this very very bad pun in the yellow text in MC: "sqrt(-1) love you" XD 11:18:02 02:21:29 that is just so awful 11:18:06 at least it's imaginary 11:21:19 -!- ais523 has joined. 11:47:25 -!- sebbu has quit (Ping timeout: 265 seconds). 12:11:54 -!- sebbu has joined. 12:17:39 -!- Sasha has quit (Ping timeout: 260 seconds). 12:18:15 -!- Sasha has joined. 12:21:35 -!- teuchter has joined. 12:24:17 -!- choochter has quit (Ping timeout: 255 seconds). 12:40:02 -!- tswett has quit (Remote host closed the connection). 13:27:28 -!- nooga has quit (Ping timeout: 240 seconds). 13:29:29 -!- nooga has joined. 13:30:58 -!- sftp has joined. 13:35:45 -!- ais523 has quit (Remote host closed the connection). 13:36:01 -!- ais523 has joined. 13:36:40 oh, oerjan ಠ_ಠ 13:38:21 http://www.reddit.com/r/AskReddit/comments/ehf49/can_we_please_have_another_antijoke_thread/ 13:38:48 -!- choochter has joined. 13:39:52 -!- teuchter has quit (Ping timeout: 245 seconds). 13:57:36 -!- choochter has quit (Quit: lang may yer lum reek..). 15:31:33 -!- elliott has joined. 15:31:44 `run allquotes | tail -3 15:32:02 HackEgoooo. 15:32:06 `run echo im here 15:32:21 optimist. 15:32:46 `run echo i'm not here 15:33:19 No output. 15:33:20 No output. 15:33:20 im here 15:33:35 `run allquotes | tail -n 3 15:33:36 268) So it's not exactly trivial. [Later about same thing] It's a trivial C program :P \ 269) "* There is no scientifically-justifiable reason to exclude pornography, which is a vital part of the web ecosystem. However, bear in mind that we're tracing JavaScript, not MPEG and JPEG decoding." 15:33:46 `run allquotes | tail -n 2 15:33:47 269) "* There is no scientifically-justifiable reason to exclude pornography, which is a vital part of the web ecosystem. However, bear in mind that we're tracing JavaScript, not MPEG and JPEG decoding." ^^^ This bullet-point is my crowning achievement as as a scientist. \ 270) That is the mark of 15:33:47 `run allquotes | tail -n 1 15:33:49 270) That is the mark of Gregor right there. tswett: except that Gregor didn't write that It's still the mark of Gregor. 15:35:36 1 15:35:38 `run allquotes | tail -n 1 15:35:40 270) That is the mark of Gregor right there. tswett: except that Gregor didn't write that It's still the mark of Gregor. 15:35:47 oh, fuck it 15:35:49 `pastequotes 15:35:50 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.27030 15:35:58 `pastequotes 15:35:59 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.2865 15:36:09 `help 15:36:11 Runs arbitrary code in GNU/Linux. Type "`", or "`run " for full shell commands. "`fetch " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ 15:37:10 ais523: I think you're right about the qdb, it's terrible 15:37:18 ais523: I'm going to go and delete all the shitty quotes. 15:37:30 If anyone likes them, just look at an older revision :P 15:37:40 `delquote 4 15:37:41 *poof* 15:37:45 `delquote 6 15:37:46 *poof* 15:37:53 `delquote 13 15:37:54 *poof* 15:38:05 `delquote 20 15:38:06 *poof* 15:38:10 `delquote 25 15:38:11 *poof* 15:38:23 `delquote 38 15:38:24 *poof* 15:38:26 `delquote 39 15:38:26 *poof* 15:38:29 `delquote 40 15:38:30 *poof* 15:38:32 `delquote 41 15:38:33 *poof* 15:38:42 `delquote 45 15:38:43 *poof* 15:38:51 `delquote 51 15:38:52 *poof* 15:38:54 `delquote 52 15:38:55 *poof* 15:39:08 `delquote 59 15:39:10 *poof* 15:39:12 `delquote 60 15:39:15 *poof* 15:39:16 I should do this in /msg. 15:39:19 i hope you took into consideration that the numbers change after a deletion 15:39:34 oerjan: whoops :) 15:39:36 `help 15:39:38 Runs arbitrary code in GNU/Linux. Type "`", or "`run " for full shell commands. "`fetch " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ 15:39:38 time to `revert 15:39:56 `revert 157 15:39:57 Done. 15:40:04 ok, i'll do it properly this time 15:50:40 124) Note that quote number 124 is not actually true. 15:50:45 something went wrong there :D 15:50:50 oh, everything got renumbered when i removed one quote 15:50:51 ha 15:51:51 * elliott removes the literal tab from quote 128 16:02:10 -!- nopseudoidea has joined. 16:05:18 -!- ais523 has quit (Remote host closed the connection). 16:06:12 Okay, I hereby declare that the average quality of quotes in the database is Pretty Good. 16:06:30 Wait, never mind, I just made a MISTAKE. 16:07:01 Never mind, it resolved itself. 16:07:02 `quote 16:07:03 99) Ah, vulva. What is that, anyway? 16:07:12 `quote 16:07:13 `quote 16:07:13 `quote 16:07:14 `quote 16:07:26 76) Warrigal: what do you mean by 21? 16:07:29 154) but yeah i'm not exactly comfortable with this stuff, to me it seems like if you can unscrew lightbulbs, why couldn't you see into the future, or through walls as well 16:07:29 230) Thanks to nooga for constructive criticism, his ideas and being a constant annoyance. --http://theendisnear.no-ip.info/ 16:07:29 80) I'm 100% of what sort of magic was involved in it 16:10:44 -!- Sasha has quit (Read error: Connection reset by peer). 16:12:45 -!- Phantom_Hoover has joined. 16:38:17 -!- oerjan has quit (Remote host closed the connection). 16:38:25 -!- oerjan has joined. 16:42:47 AKSFJKER 16:42:55 WHY ARE THERE NO TINY VI CLONES 16:43:05 elliott: how is your very damn small linux? 16:43:16 nooga: in need of a vi clone :) 16:43:31 elliott, is this Kitten? 16:43:31 elliott: you will have to install TECO instead *MWAHAHAHA* 16:43:37 isn't cat and sed enough? :D 16:43:40 Phantom_Hoover: No way! This is The Insane Flinix. 16:43:59 oerjan: TECO! 16:44:07 -!- Phantom_Hoover_ has joined. 16:44:08 Phantom_Hoover: A compleat (well, for some definition of compleat) Linux distribution, with networking, X11 and an IRC client, in one 1.44 meg floppy. 16:44:15 oerjan: I love TECO, man! 16:44:17 I've edited with it. 16:44:24 Maybe I'll try Emacs; that's gotta be smaller, right? 16:44:30 Or write my ow- *GAK!* 16:44:38 The anti-NIH gods have cast me away from my own life. 16:44:40 elliott: http://texteditors.org/cgi-bin/wiki.pl?ViFamily 16:44:57 http://scientopia.org/blogs/goodmath/2010/11/30/the-glorious-horror-of-teco/ 16:44:59 http://xvi.sourceforge.net/ seems to be the smallest, from their little table there. 16:45:02 use ed 16:45:10 oerjan: "scientopia"? they renamed it again? 16:45:12 or em 16:45:16 oerjan: what fucking kind of name is scientopia :) 16:45:29 no wait scienceblogs is still there 16:45:41 ah, he moved 16:46:08 lol, scienceblogs gave pepsico a blog 16:46:26 anyway the problem with xvi is that I need termcap and termcap is ancient vintage software :) 16:46:29 and uh 16:46:34 it's still like 16:46:38 gonna be 13K for it and all the supported files 16:46:41 but i guess it'll compress well 16:46:57 -!- ais523 has joined. 16:46:57 -!- nopseudoidea has quit (Quit: Quitte). 16:47:07 hi ais523 16:47:28 elliott: wait you are _anti-NIH_ now? 16:47:32 oerjan: no 16:47:36 oerjan: but the gods are 16:47:47 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds). 16:48:05 maybe it's time for my topic idea 16:48:32 -!- oerjan has set topic: The knights who say NIH | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 16:48:35 hmph libtermcap.a is 40K that's huge. 16:48:40 oerjan: WTF I THOUGHT OF THAT YESTERDAY 16:48:46 fuck you, synchronicitician 16:48:51 *MWAHAHAHA* 16:49:12 oh it had -g 16:49:14 -!- nooga has quit (Read error: Operation timed out). 16:49:15 and i've been thinking of it for a while too :D 16:49:19 10K now, and I'll sstrip the resulting xvi 16:49:27 hi elliott 16:49:46 also, do you really need support for more than one terminal? 16:49:53 ais523: no, but xvi uses termcap 16:49:56 so I have to have the library 16:50:00 patch it so it doesn't 16:50:02 and I figure the real termcap is smaller than terminfo's emulation of it 16:50:12 ais523: i'm allergic to vt100 codes 16:50:18 they really aren't too difficult 16:50:21 ais523: by the way, I cleaned out most of the crap from the quotes file 16:50:30 I know they aren't difficult, I just don't wannaaaa :) 16:50:34 `pastequotes 16:50:48 HackEgo is a bit slow. 16:50:54 note: most of, I make no guarantees as to the quality of the quotes file :) 16:50:56 and I refuse to remove any fungot quote 16:51:00 -!- nooga has joined. 16:51:12 he deserves a lower threshold for what constitutes a good quote, since he did it without a brain 16:51:16 s/he/it/g 16:51:21 (sorry fungot) 16:51:26 oh, RIP fungot :P 16:51:30 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.30285 16:52:02 -rwxr-xr-x 1 elliott elliott 127K Dec 7 16:51 xvi 16:52:08 I can /not/ afford to spend 127K on an editor. 16:52:18 hmm, levee looks the smallest then 16:52:23 even so, it's 37K on Mastodon 16:52:24 -!- bsmntbombdood has quit (Remote host closed the connection). 16:52:24 elliott: http://texteditors.org/cgi-bin/wiki.pl?TinyEditors 16:52:37 elliott: i just wanted to say that you should try levee 16:53:05 nooga: I'd already thought of levee, being the official David Parsons Stalker. 16:53:06 elliott: most of the old DOS editors were smaller than 64KiB 16:53:11 so they fit in a .COM file 16:53:16 ais523: they ran on DOS, though 16:53:18 not quite the same thing as linux :) 16:53:25 sheesh, if I can't get a really tiny editor I'll write my own... in asm! 16:53:30 maybe asmutils will accept it 16:53:50 what features would you want? 16:54:17 for me, the minimum for a usable editor is inserting letters, cursor movement, deleting letters via delete and backspace, and preserving indentation from one line to the next 16:54:26 (I don't consider Notepad a usable editor as it lacks the last feature there) 16:55:01 elliott: e3 ? 16:55:11 ais523: the latter is useless bloat as far as flinix as concerned; you'll be editing, what, config files at the most 16:55:20 ais523: I am not sure Flinix actually has a *use* :) 16:55:30 ais523: but, uh, features I'd want: 16:55:38 the basic : commands like w, o, q 16:55:48 insert mode 16:55:49 oh, I forgot about saving and quitting 16:55:50 http://freshmeat.net/projects/virus/ 16:55:57 you could quit via SIGINT, but there should be a way to save 16:56:07 and I said "inserting letters", overwriting them would be bloat 16:56:07 the commands "x", "d", "^", "$", "a", "i" 16:56:15 the latter two entering insert mode 16:56:19 and finally, the command "c" for overwrite 16:56:25 plus the vi-style numerical prefixes of those 16:56:34 well, numerical and direction 16:56:40 ad y and p 16:56:45 elliott: I was trying to stay general, not assuming vi-like 16:56:47 nooga: sure, sure, if you wanna be bloaty 16:56:51 ais523: well, I want a vi-like editor :) 16:56:53 ais523: posix specifies it! 16:56:57 nooga: aha 16:57:14 I'll try that after levee 16:57:31 elliott: what about this for an idea: you can move the movement commands to arrow keys and home/end/etc 16:57:38 that way, you wouldn't have the overhead of entering and leaving insert mode 16:57:48 ais523: congratulations, you just invented emacs 16:57:56 ais523: (and how do you do :? oh wait, I know, Alt+X!) 16:58:02 genius! and we can put Lisp in it, too 16:58:07 (fun fact: original ex had lisp) 16:58:21 elliott: I'm aware of the irony :) 16:58:43 ais523: I actually think insert mode is less code overhead 16:58:50 ais523: because arrow keys etc. come as multiple characters 16:58:53 so you have to maintain state /anyway/ 16:59:19 to be fair, Emacs and vim aren't that different; in vim you press esc and i to switch between modes, in Emacs you hold and release control 16:59:55 ugh, you stupid configure script 17:00:26 but I'm not a configure script! 17:00:40 ais523: i'm referring to levee's 17:01:00 which only takes $CC as a path, so I can't say "diet -Os pcc", and first tries CC without CFLAGS, so I can't say CC="diet" CFLAGS="-Os pcc" 17:01:07 solution: wrapper script! dietpcc! 17:01:16 just like pcc, but with fewer calories! 17:02:47 Why can't you say CC="diet -Os pcc"? 17:03:11 Oh 17:03:14 Only takes CC as a path. 17:03:17 elliott: bundle hedgehog lisp in flinix 17:03:21 That's pretty bizarre. 17:03:50 Gregor: It calls some C program that uses exec* of some kind. 17:03:51 So yeah. 17:03:54 (I think.) 17:03:58 (Who knows, this is just a guess.) 17:04:04 find.o: In function `omatch': 17:04:04 (.text+0x1ad): undefined reference to `toupper' 17:04:04 find.o: In function `omatch': 17:04:04 (.text+0x1bc): undefined reference to `toupper' 17:04:05 LAL WAT 17:04:05 LAL WAT 17:04:09 *no duplicate line 17:08:15 -rwxr-xr-x 1 elliott elliott 59531 Dec 7 17:07 lev 17:08:18 huge and requires termcap too 17:08:26 I'll try virus 17:10:49 -rwxr-xr-x 1 elliott elliott 54075 Dec 7 17:10 virus 17:10:59 bullshit. 17:12:10 -rwxr-xr-x 1 elliott elliott 37691 Dec 7 17:11 virus 17:12:11 way too big 17:12:19 wtf 17:12:27 they've said it's tiny 17:12:35 nooga: yeah and that's with every feature disabled, sstrip'd, compiled with pcc, and linked with dietlibc 17:12:39 tiny my ass 17:12:49 quick, someone name my vi clone with a word involving "vi" 17:12:54 ais523! quick! bring out the puns! 17:14:07 elliott, vimsy? 17:14:16 (yes horrible pun) 17:14:18 Vorpal: that is not a word 17:14:24 elliott, it is almost whimsy 17:16:05 viscous, vicious, vixen, villain, vicissitude, vigil, vine, violator, vitriolic 17:16:09 nooga: pick one 17:16:58 viaduct 17:17:04 Viscous. 17:17:47 ^run echo $(( RANDOM % 10 )) 17:17:53 no, it should be a thing-that-does i think 17:17:56 e.g. villain, violator 17:18:05 violator, i'll go with violator 17:18:08 ^help 17:18:12 Vorpal: fail 17:18:12 uh 17:18:16 you fail forever 17:18:18 elliott, did I mix up the bots? 17:18:19 oh yes 17:18:24 I did mix them up 17:18:31 `run echo $(( RANDOM % 10 )) 17:18:46 `help 17:18:55 speaking of which, where is fungot? 17:18:58 fizzie, ! 17:19:03 fizzie, bring back fungot 17:19:14 Runs arbitrary code in GNU/Linux. Type "`", or "`run " for full shell commands. "`fetch " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ 17:19:17 1 17:19:40 so what's the stupid set of ioctls you need to get a raw terminal 17:19:50 elliott, you mean to implement one or? 17:20:16 Vorpal: no, to put the terminal into one 17:20:41 elliott, uh what are you trying to do exactly. 17:20:46 (or approx) 17:20:59 elliott: vixen 17:21:01 sounds nice 17:21:03 Vorpal: it's very obvious what i mean to anyone who has done this before, if you haven't done any terminal programming you won't know 17:21:09 nooga: yes but all the furries will use it. 17:21:39 elliott, I have done some. Written a tool that emulated a terminal to be able to send a password to sudo 17:21:48 or was it su? Was like 3 years ago 17:22:18 http://www.ultravixens.net/ uh, the domain seems to be reserved 17:22:27 -!- nopseudoidea has joined. 17:22:39 elliott: oh come on, the SADOL interpreter is called BDSM 17:23:09 elliott, things that may be of use: console_ioctl(4) and termios(3) (the latter I doubt you mean but who knows) 17:23:23 Vorpal: yes, it's doing what termios does 17:23:27 but termios is ~big 17:23:34 so i'm going to do it with ioctls 17:23:38 ah look, some nice code I can rip off! 17:24:04 elliott, so wait, Kitten is minimalistic now? 17:24:14 elliott, hm. termios big? 17:24:24 Phantom_Hoover_: THIS IS FLINIX NOT KITTEN I TOLD YOU THAT 17:24:34 Ah. 17:24:40 elliott, but why? the code is only in one copy on the disk? 17:24:57 I did disconnect just after asking, so I didn't know... 17:25:00 Phantom_Hoover_: ah 17:25:04 Vorpal: because, like every abstraction, it uses more code than doing it directly 17:25:19 Phantom_Hoover: No way! This is The Insane Flinix. 17:25:20 Phantom_Hoover: A compleat (well, for some definition of compleat) Linux distribution, with networking, X11 and an IRC client, in one 1.44 meg floppy. 17:25:27 elliott, but since there is bound to be some app that needs it anyway it will still exist in exactly one copy on the system 17:25:54 elliott, after all, aren't you using a deduplicating filesystem? 17:26:16 elliott, but since there is bound to be some app that needs it anyway it will still exist in exactly one copy on the system 17:26:19 you realise this is flinix? 17:26:22 no, there will not be any other app that uses it 17:26:27 because there is not enough space on a floppy for that. 17:26:34 elliott, flinix? 17:26:36 what is that 17:26:44 Vorpal: 17:26:45 Phantom_Hoover: No way! This is The Insane Flinix. 17:26:45 Phantom_Hoover: A compleat (well, for some definition of compleat) Linux distribution, with networking, X11 and an IRC client, in one 1.44 meg floppy. 17:26:45 elliott, but since there is bound to be some app that needs it anyway it will still exist in exactly one copy on the system 17:26:51 BUY A CLIENT WITH SCROLLBACK ALREADY 17:26:54 >_< 17:27:03 why 17:27:10 (as in why make that distro) 17:27:11 why what 17:27:14 because i want to. 17:27:24 Vorpal: why did you make cfunge 17:27:56 elliott, because I wanted to code something and was bored, and it looked like an interesting thing to code. 17:28:25 Vorpal: so, in short: "because i wanted to." 17:28:31 elliott, indeed 17:28:41 elliott, but I though you were busy with kitten? 17:29:54 Vorpal: pending on coreutils 17:31:17 elliott, ah, you took a pause from writing that? 17:31:40 elliott, also which X will you fit on that floppy 17:31:48 not xorg I presume 17:32:59 Vorpal: smallX 17:33:09 and yes, this is my way of avoiding the infinite tedium of writing a coreutils 17:33:26 Vorpal: smallX is this server that ran on 386s with 4 megs of ram as part of Small Linux 17:33:28 libc5 based 17:33:35 I just need to find a tarball on an ftp server that still exists :) 17:33:51 it has two servers, mono (for Hercules mono cards and the like) and 16-colour VGA 17:33:55 and its own tiny Xlib 17:34:05 should suffice to run a very small terminal program at least 17:36:07 -!- Quadrescence has quit (Ping timeout: 245 seconds). 17:36:41 -rwxr-xr-x 1 elliott elliott 1639 Dec 7 17:36 vi 17:36:50 it goes into raw mode, reads one character, puts the mode back, and exits :) 17:36:55 in C for now 17:38:20 huh 17:38:42 good luck with writing that 17:39:04 elliott, can't you reuse code for some tools from heirloom? 17:39:17 Vorpal: i looked at heirloom code; it may be Olde Tymes but it sure isn't lean 17:39:27 Vorpal: in fact i'd say it's about as ugly as BSD core utils. maybe more 17:39:36 cat has like 5 flags :) 17:39:44 also i don't /think/ it has mount, not sure 17:39:52 elliott: http://hedgehog.oliotalo.fi/ bundle this 17:39:55 elliott, saves on binary size to merge tools ;P 17:40:03 nooga: what lang is it implemented in? C? 17:40:06 ie. your goals are somewhat conflicting 17:40:11 Vorpal: I do do that 17:40:22 Vorpal: anyway it's more interface bloat i care about, it's just for fun, the size thing 17:40:29 Vorpal: asmutils whoop me thoroughly in the ass as far as size goes 17:40:32 (and i'm using them in flinix) 17:40:46 elliott: who cares, it compiles to 20kB 17:41:13 elliott, why not use busybox or asmutils then? 17:41:30 elliott: and yes, it's in C 17:41:33 Vorpal: busybox is huge 17:41:39 nooga: 20K? pah, I can get it less 17:42:01 nooga: what is the shared secret for :p 17:42:43 but it's featureful 17:43:06 and proveides a damn small scripting language for flinix 17:44:06 nooga: unfortunately, flinix is too useless to need one 17:44:10 nooga: what executable is 20K for you? 17:45:45 oh, the interpreter 17:45:53 nooga: hhi, right 17:46:07 -rwxr-xr-x 1 elliott elliott 30067 Dec 7 17:45 hhi 17:46:11 nooga: ka-pow! 17:46:32 UNFORTUNATELY, I would rather spend the bytes on a C compiler. 17:46:39 (anyone know a reaaaaaaaaally tiny libc? :P) 17:48:26 http://www.fefe.de/dietlibc/ 17:49:13 elliott, yes the one I used on the rcx. That was libc in the "This isn't hosted so fuck you" meaning though 17:49:54 nooga: dude, i'm well aware of dietlibc 17:49:58 seeing as I've patched it 17:50:00 it's still pretty big 17:50:07 like one meg libc.a or so with stuff enabled 17:50:11 maybe a few hundred K with stuff disabled 17:50:20 I'm looking for 40K, 50K or so 17:50:23 the one in asmutils is 20K 17:50:25 or less, I forget 17:50:28 elliott, after all, the whole OS and any programs have to fit into a 16-bit address space. Together with a rather large ROM. 17:50:29 but i have a feeling it does not implement much :) 17:50:52 Vorpal: you think that's bad, my fucking kernel takes up 480K to do barely anything at all for me 17:51:16 * elliott considers not supporting command repeats >9 17:51:22 elliott, wrong OS :P 17:52:06 when will be the first release? 17:52:49 elliott, why not drop printf. It tends to take a lot of space. You can have snprintf that does %s and %x, that is enough for anyone 17:52:50 ;P 17:52:54 bbl an hour or so 17:53:11 Vorpal: i don't even use printf 17:53:16 nooga: as soon as I get X working 17:53:29 ...somehow, my loop supporting any int is smaller than a conditional just supporting one digit 17:53:37 Vorpal: (even in my real programs) 17:53:46 wait, no it isn't, it's quite a bit bigger like that 17:56:28 then what do you use instead of printf() ? 17:57:20 nooga: write 17:57:27 usually 17:58:23 then how to you print numbers? 17:59:42 nooga: i have an ltostr routine i carry around :p if I was less silly, I'd just use libowfat, which has formatted printing using write 17:59:47 http://www.fefe.de/libowfat/ 17:59:56 although it's gpl 18:00:03 so i'd probably use http://www.fefe.de/djb/ directly 18:05:06 nooga: ok e3 is tiny 18:05:10 but irritating interface 18:06:52 ok, it needs sed 18:07:23 ah, e3 can emulate vi 18:11:15 -!- nopseudoidea has quit (Quit: Quitte). 18:13:00 elliott, how are you calling the syscalls? 18:13:15 Phantom_Hoover_: err, me? in what? 18:13:33 In the code you're writing, presumably sans a libc. 18:13:39 what code? 18:13:50 For Flinix? 18:13:57 -!- nooga has quit (Ping timeout: 240 seconds). 18:14:01 What code? 18:14:12 So you've not written any code? 18:14:29 Not yet! 18:15:06 -!- nooga has joined. 18:15:53 How do you plan to call them? 18:15:57 damn 18:16:07 my internet connection is flaky 18:16:25 Phantom_Hoover_: I don't plan to write any code. 18:16:32 So, Julian Assange arrested in this piece of shit nation, denied bail. 18:16:40 On the rape "charges", lawl. 18:16:51 There are nations that aren't complying? 18:17:04 Ecuador has caved in, Sweden was helping all along... 18:17:16 e3 seems nice 18:17:25 nooga: yeah you can make it emulate vi by default 18:18:29 http://piumarta.com/software/peg/ how awesome 18:18:30 -rw-r--r-- 1 elliott elliott 615K Dec 7 18:15 dietlibc.a 18:18:32 with ~everything disabled 18:18:40 nooga: you didn't know about PEGs? 18:18:45 -!- MigoMipo_ has joined. 18:19:01 i learnt about it when playing with tinyrb 18:19:22 so does anyone know about a REALLY tiny libc :) 18:19:45 uclibc ? 18:21:21 -!- MigoMipo has quit (Ping timeout: 240 seconds). 18:28:15 Hah: "If two of the three co-authors on this draft cannot agree on the semantics, then it is maybe premature for them to expect the Internet community to do so." 18:29:06 nooga: uClibc is huge 18:29:08 compared to dietlibc 18:29:16 oh 18:29:24 then i don't have an idea 18:34:47 .suicide:db__n,"Suicide is painless...", EOL 18:34:47 .stop:db__n,"You say STOP and I say go...", EOL 18:34:47 .nosuchpiddb"Child is 0xDEAD. I'm sorry", __n, EOL 18:44:47 System is 670 kB 18:44:52 Dude, I bloated my system with ethernet drivers. 18:48:38 -!- Quadrescence has joined. 18:51:46 15:37:38 and it is imperative that I do not use facebook 18:51:51 Vorpal will literally explode if he uses facebook. 18:51:55 Literally. 18:53:18 15:46:26 Gregor-W, use your own colour matcher! 18:53:18 15:46:32 AnMaster: I do. Inverted. 18:53:26 Gregor: Didn't you write it to *avoid* doing that kind of stuff? :p 18:54:45 ais523: can you tell esr that the problem with open source is that the linux kernel doesn't let you disable some stuff? 18:54:48 ais523: i hear he's influential 18:56:29 -!- wareya_ has quit (Read error: Connection reset by peer). 18:56:49 -!- wareya has joined. 18:57:35 elliott, 1) when was that quote from? 18:57:43 2) Vorpal will literally explode if he uses facebook. <-- duh no. Implode 18:57:45 10.07.10 18:57:52 explode if I use facebook? How silly 18:57:58 After trying to comprehend: 18:58:01 everyone knows it is implosion 18:58:02 `quote MY PHONE 18:58:07 which was said on that day. 18:58:11 (C'mon, HackEgo! You can do it!) 18:58:14 XD 18:58:16 (I know running grep is hard. But c'mon!) 18:58:23 (I know, I know, I blame GNU bloat too.) 18:58:29 `uptime 18:58:35 (But you're on Debian; there's no escape. (Maybe I should port Plash to Flinix.)) 18:58:39 Vorpal: don't give it MORE things to think about! 18:58:50 elliott, uptime shouldn't be complex 18:58:51 162) anmaster gonna give him a birthday bj? IF ONLY I COULD FIND MY PHONE 18:58:51 18:58:27 up 4 days, 22:16, 0 users, load average: 1.55, 1.09, 0.74 18:59:10 elliott, that looks rather like "different contexts" 18:59:26 There were messages in-between :P 18:59:31 elliott, then it is cheating 18:59:39 Yes it is, but Gregor added it and it's his bot. 19:00:11 elliott, I mean, it is similar to finding hidden messages in the bible (or any other large book) 19:00:23 `quote 19:00:24 64) So... copyright doesn't really apply to God. 19:00:35 elliott, I'm sure I could create something amusing by picking lines you said over the years... 19:00:35 Vorpal: to be fair, you were also adding the relevant person's birthday to your phone at the time. 19:00:41 so I think any mocking is perfectly okay 19:00:46 elliott, oh? huh 19:01:23 TO THE LOGS 19:01:25 elliott, also: I use my phone calendar for everything that a calendar is useful for basically. 19:01:34 Vorpal: you never did give him his birthday bj though 19:02:11 elliott, I don't do that kind of stuff :P 19:02:12 `rm bin/d 19:02:13 No output. 19:02:18 elliott, bin/d ? 19:02:19 Vorpal: But you're fine with sodomy? 19:02:27 X-D 19:02:28 d was my script to remove a quote from my "q" file. 19:02:35 It just did grep -v "^$1)" 19:02:40 so I could use the same numbers without refreshing 19:02:46 (with the main quotes file numbers rejiggle if you remove quotes) 19:02:49 elliott, only if it enhances the joke :P 19:02:59 Which is, admittedly, not the best idea, but it's more elegant to implement :P 19:03:13 Vorpal: But you're fine with sodomy? Which is, admittedly, not the best idea, but it's more elegant to implement :P 19:03:15 I prefer Gomorrhing. 19:03:20 see what context (lack of) can do 19:03:26 Vorpal: Not much at all? :P 19:03:37 -!- cheater99 has quit (Ping timeout: 245 seconds). 19:03:38 elliott, indeed it is rather confusing 19:03:39 Sodomy: Definitely elegant. 19:03:57 v1.0/ 20-Mar-2003 22:58 - 19:04:03 That sounds like it could be smaller than 2.6.36! 19:04:08 .1! 19:04:19 It just did grep -v "^$1)" <-- you should use sed's d command 19:04:35 Vorpal: But what if the number had a / in it??? 19:04:40 linux-1.0.tar.bz2 13-Mar-1994 00:00 1.0M 19:04:42 LOL ANACHRONISM 19:04:50 elliott, doesn't it use N? 19:04:56 elliott, rather than R 19:05:01 err 19:05:02 Q 19:05:04 I meant 19:05:07 Vorpal: what 19:05:19 oh, i see what you mean but you're wrong 19:05:22 (Q because, "Rational numbers" starts with a Q) 19:05:24 Vorpal: the whole point is that "60" is always the same line 19:05:35 oh, wait 19:05:37 never mind 19:05:41 i misinterpreted your misinterpretation 19:05:45 elliott, XD 19:05:55 WHAT LINUX 1.0 DIDN'T USE MENUCONFIG HOW SILLY EH 19:06:11 Oh god it's going to prompt me about EVERY DAMN THING. 19:06:16 ifdef CONFIG_M486 19:06:16 CFLAGS := $(CFLAGS) -m486 19:06:16 else 19:06:16 CFLAGS := $(CFLAGS) -m386 19:06:16 endif 19:06:24 elliott, presumably it only started that some time after it became a PITA to not have it 19:06:58 ...Wow. I just measured Flinix's memory usage after a cold boot. 19:07:00 elliott, does it use plain make config? 19:07:06 Used: 1132 19:07:07 Shared: 0 19:07:09 Buffers: 0 19:07:11 (It's all a ramfs :P) 19:07:15 elliott, /proc/meminfo? 19:07:23 elliott, or what 19:07:27 free(1) 19:07:39 TODO: Figure out why /etc/rc isn't working. 19:07:42 * elliott mounts /proc manually 19:07:50 elliott, weird output format for free(1) 19:08:03 Oh, TODO: Use -t for mount in etc/rc... 19:08:06 Vorpal: That was my retyping. 19:08:08 ah 19:08:23 elliott, you could add /proc to fstab 19:08:28 but I guess that would waste space 19:08:32 Vorpal: I don't do mount -a at boot. 19:08:34 elliott, are you using a compressed fs? 19:08:49 Vorpal: Yes and no. It's an initramfs compiled into the kernel, and the kernel is LZMA'd. 19:08:54 ah 19:08:56 So yes on floppy, no in RAM. 19:09:01 It's like 70K anyway :P 19:09:03 elliott, how does it compare to squashfs? 19:09:11 or does squashfs has too much overhead? 19:09:15 Vorpal: How does LZMA compare to anything --> LZMA beats it. 19:09:18 Vorpal: Squashfs probably requires the block layer. 19:09:26 haha 19:09:36 Vorpal: And I would have to have floppy support since you can't embed normal filesystems into the kernel. 19:09:47 Vorpal: Remember, initramfs is literally just a .cpio that gets unpacked into a ramfs in memory :P 19:10:12 Guh, why isn't /proc mounting. 19:10:24 (Also TODO: Figure out how the fuck to use asmutils less :P) 19:10:26 elliott, I suspect squashfs does better at larger images since it is somewhat "smart" with how it represents the FS before it goes to the compression bit. 19:10:42 Vorpal: "smart"er than cpio? 19:10:53 elliott, does cpio do block deduplication? 19:11:05 Vorpal: LZMA does all the deduplication you need :P 19:11:07 sure it isn't useful at small sizes since then the compressing will take care of that 19:11:27 elliott, afaik lzma has a window like most other compression algorithms 19:11:48 Vorpal: Anyway, with squashfs I'd need it to be able to read the floppy to read it. 19:11:48 elliott, which means it won't help if those files end up far from each other in a large (few hundred MB or so) image 19:11:51 And the floppy would need formatting. 19:11:55 elliott, ah 19:11:57 At which point I could just use any filesystem on the floppy and mount it as /. 19:12:12 Vorpal: To have it actually useful, I'd have to have a bloated bootloader which can read filesystems :P 19:12:23 Vorpal: My bootloader = The very core of FreeDOS + LINLD in AUTOEXEC.BAT. 19:12:26 elliott, or why not place it inside the initramfs ;) 19:12:29 (Well, my bootloader will-be.) 19:12:34 Vorpal: Then I don't need an FS :P 19:12:47 elliott, what, that is a waste. Why not just a hand written boot sector 19:13:21 elliott, surely that will be less wasteful 19:13:28 Vorpal: You try loading Linux in 512 bytes :P 19:13:33 It'll be smaller than lilo, probably. 19:13:56 elliott, well you could use another sector or two. Still smaller than DOS + linld probably 19:14:25 elliott, just place the kernel starting in the sector after the bootloader 19:14:36 (and adjust offsets as needed) 19:14:40 Vorpal: Patches welcome. 19:14:55 elliott, well it would not need a patch against linux. Just a hand written boot loader 19:15:15 elliott, what does linux need to load? the kernel image at a specific memory address. Anything else? 19:15:19 Vorpal: Boot sectors welcome. 19:15:34 elliott, I'm not insane enough to write real mode code 19:15:42 Vorpal: i suspect Q is for "quotient" (or whatever the german equivalent is) 19:15:49 quiet_cmd_lzma = LZMA $@ 19:15:49 cmd_lzma = (cat $(filter-out FORCE,$^) | \ 19:15:49 lzma -9 && $(call size_append, $(filter-out FORCE,$^))) > $@ || \ 19:15:49 (rm -f $@ ; false) 19:15:52 I THINK I CAN DO BETTER THAN -9 19:15:57 I have never done so. IIRC you have. Thus you are more likely to succeed at that 19:16:05 hey didn't you write a boot sector some time ago? 19:16:11 WHY DOES LZMA NOT HAVE A --CRAZY 19:16:16 Vorpal: Yes, but it wouldn't load Linux ... 19:16:20 elliott, -9 isn't always best iirc 19:16:28 elliott, for small files especially 19:16:40 I'll bet elliott mounts a case-insensitive filesystem just so he can scream his commands. 19:16:42 try 1-9 both with and without -e 19:16:44 Vorpal: This is lzma not xz fwiw. 19:16:46 Gregor: I DO 19:16:49 elliott, see which one wins 19:16:55 elliott, oh, then that might make a difference 19:17:00 lzma: invalid option -- 'e' 19:17:13 elliott, yeah I don't remember if lzma had the same recommendation 19:17:23 I'll try "xz --format=lzma -9 -e". 19:17:32 System is 536 kB 19:17:34 to beat. 19:18:11 elliott, I wonder what the file system structure of an initramfs looks like in memory. Is it just the cpio loaded as is 19:18:12 System is 670 kB 19:18:16 xz: ultimate failure. 19:18:19 or does it translate it somehow? 19:18:19 -!- cheater99 has joined. 19:18:33 elliott, -9 isn't best with xz for small files iirc 19:18:52 Vorpal: It loads it into a shmfs or a ramfs if it doesn't have tha-- oh, look, my kernel grew anyway, it isn't xz's fault. 19:19:32 elliott, also when it comes to 1.0 I doubt it has initramfs, Maaaaaaybe initrd but I would be somewhat surprised at that too 19:20:08 Wow, old Linux config was hateful. It doesn't let you pipe yes to it. 19:20:18 HATEFUL 19:20:23 # This script is used to configure the linux kernel. 19:20:24 # 19:20:24 # It was inspired by the challenge in the original Configure script 19:20:24 # to ``do something better'', combined with the actual need to ``do 19:20:24 # something better'' because the old configure script wasn't flexible 19:20:24 # enough. 19:20:25 elliott, you might be better off with a 2.4 or 2.2 kernel 19:20:26 # 19:20:27 # Please send comments / questions / bug fixes to raymondc@microsoft.com. 19:20:30 # Please send comments / questions / bug fixes to raymondc@microsoft.com. 19:20:32 # Please send comments / questions / bug fixes to raymondc@microsoft.com. 19:20:34 # Please send comments / questions / bug fixes to raymondc@microsoft.com. 19:20:36 :-D 19:20:41 elliott, whaaaaaat 19:20:51 Microsoft: IN BED WITH LINUX, CIRCA 1994. 19:21:00 elliott, you mean it isn't a bad joke? 19:21:04 Nope! 19:21:06 function readln () { 19:21:06 echo -n "$1" 19:21:06 IFS='@' read ans [ -z "$ans" ] && ans=$2 19:21:06 } 19:21:11 OH NO YOU DI'INT 19:21:12 Wait. 19:21:13 Raymondc... 19:21:15 Raymond Chen? 19:21:32 Yes. 19:21:35 elliott, presumably they didn't care if employees worked on such small hobby projects back then. I mean, they weren't really any threat back then 19:21:38 elliott, who is that 19:21:40 It's someone called Raymond Chen and it MIGHT JUST BE THAT RAYMOND CHEN. 19:21:49 Vorpal: http://blogs.msdn.com/b/oldnewthing/ 19:22:03 Famous blogger on the awful reasons why Windows is so awful. 19:22:19 elliott, at msdn? 19:22:22 err 19:22:29 Vorpal: Well, he doesn't consider it awful :P 19:22:35 But it's all the gory details of the gory details. 19:23:10 Anyway 19:23:13 IFS='@' read ans Discuss the hateful. 19:23:31 " elliott, :D 19:24:43 elliott, anyway that thing won't have initrd 19:24:49 probably won't 19:24:53 Vorpal: No, but it'll probably be smaller even with floppy support :P 19:25:08 elliott, augh at the top post of http://notch.tumblr.com/ 19:26:18 Vorpal: Will the endless bugs in Minecraft ever be fixed instead of terrible puns being posted to the blog? Notch-ance! 19:26:22 Notch-ance at all. 19:27:52 as86 -0 -a -o boot/bootsect.o boot/bootsect.s 19:27:53 make: as86: Command not found 19:27:57 HATEFUL KERNEL 19:28:01 elliott, I believe the blog host was down for a few hours yesterday or so. It was down with a database error message when I tried at one point 19:28:07 Oh joy, it doesn't look like gas syntax. 19:28:26 elliott, does it look like intel? If so I'm sad. It should use an exotic third option 19:28:35 It looks like AT&T but different :P 19:28:41 elliott, oh yay 19:28:53 elliott, different how? 19:29:06 * Vorpal invents a screwy asm syntax 19:29:12 infix asm! 19:29:16 Description: 16-bit x86 assembler and loader 19:29:16 This is the as86 and ld86 distribution written by Bruce Evans. It's a complete 8086 assembler and loader which can make 32-bit code for the 386+ processors. 19:29:18 thar we go 19:29:23 Vorpal: Numbers start with # :P 19:29:27 elliott, "target mov source" or "source mov target" 19:29:30 which is best 19:29:38 Vorpal: target := source 19:29:39 or 19:29:41 source -> target 19:29:44 elliott, it should use mov 19:29:44 or 19:29:53 sou mov(target) rce 19:29:55 elliott, I want infix asm 19:30:00 consider 19:30:08 e mov(ebx) ax 19:30:14 see how the prefix is neatly separated from the base register 19:30:17 elliott, seriously this is intended to be screwy, obscure and confusing :P 19:30:22 it is not intended to be sane 19:30:23 THAT IS SCREWY, OBSCURE AND CONFUSING 19:30:25 true 19:30:28 hm 19:30:29 e mov(ebx) ax 19:30:30 that's the same as 19:30:32 mov eax, ebx 19:30:33 in intel 19:30:37 or 19:30:38 mov ebx, eax 19:30:40 pick whichever :P 19:30:41 hah 19:30:47 in 16-bit mode you'd do 19:30:51 a mov(bx) x 19:31:04 as -c -o boot/head.o boot/head.s 19:31:04 as: unrecognized option '-c' 19:31:05 elliott, it should use different register names 19:31:05 INFERNAL MACHINE 19:31:06 hm 19:31:25 boot/head.S: Assembler messages: 19:31:25 boot/head.S:64: Error: suffix or operands invalid for `push' 19:31:26 boot/head.S:65: Error: suffix or operands invalid for `popf' 19:31:26 boot/head.S:99: Error: suffix or operands invalid for `pushf' 19:31:27 DIE DIE DIE 19:31:49 Oh, fuck this shit, I'll try Linux 2.0. 19:32:12 (a,b) mov ex 19:32:15 elliott, what about that 19:32:24 for eax to ebx 19:32:37 Vorpal: Yes, except not ex; have an infix operand size modifier. 19:32:48 (a,b) [32] mov 19:32:50 hm 19:33:02 elliott, lets rename the registers 19:33:06 Vorpal: And also have blocks of commands, so that instead of "bits 32", you do: 19:33:10 [32] { ... } 19:33:26 (1,2) [5] mov 19:33:28 OK, Linux 2.0.1, if you're bloated I'll fuck your shit up. 19:33:34 elliott, since 2^5 = 32 19:33:39 Your shit... will be maximally fucked up. 19:33:54 Vorpal: But that's not what the operation does! Instead, that should be 19:33:54 elliott, you aren't persistent enoigh 19:33:57 (1,2) mov 19:33:57 enough* 19:34:02 Vorpal: But "mov ax, bx" would be 19:34:12 (1,2) mov &1111111111111111 19:34:19 Vorpal: Because it modifies only the lower 16 bits. 19:34:22 elliott, :D 19:34:28 elliott, why the &? 19:34:33 what does it signify 19:34:35 Vorpal: Because it's like bitwise and if you squint. 19:35:03 Vorpal: WAIT 19:35:05 ah hm 19:35:09 Vorpal: All numbers should be trinary. 19:35:34 Vorpal: (1,2) mov &10022220020 19:35:35 elliott, there is a fine line between "screwy" and "malbolge86" 19:35:39 I think you just crossed it 19:35:41 Vorpal: Yes. Let's cross it! 19:35:44 PLuggable ASsembler MAcros 19:35:59 elliott, so what about base pointer and indexing? 19:36:14 Vorpal: Those are done as virtual instructions. 19:36:18 elliott, also they should be balanced ternary gray code 19:36:22 for maximum screwiness 19:36:27 Vorpal: For instance, what is, in Intel, "mov [ebx], [eax+2]" 19:36:32 would be, in this, let me think... 19:36:33 Ah yes. 19:36:47 (1,2) incv 19:36:49 (2,1) mov 19:36:54 That is: 19:36:58 you can't have two memory operands in an instruction like that 19:37:07 olsner: Okay, okay, okay, fine. 19:37:10 Vorpal: Okay, this: 19:37:12 mov ebx, [eax+2] 19:37:14 would look like this: 19:37:23 (2,1) incv 19:37:27 (1) deaddrv 19:37:27 elliott, did you just increment eax by two first? 19:37:28 hm 19:37:29 (2,1) mov 19:37:32 Vorpal: VIRTUALLY. 19:37:41 elliott, deaddrv? 19:37:47 Vorpal: "Increment, virtually, register 1, by 2. Deaddress, virtually, register 1. Move register 1 to register 2." 19:37:54 ah 19:37:55 It's (2,1) incv because we do everything in the most illogical order. 19:37:59 elliott, what about: mov eax, [eax+2] 19:38:00 ("incv 2, eax") 19:38:03 (not sure that is valid even) 19:38:12 Vorpal: Easy! 19:38:14 elliott: which kernel version do you have now? 19:38:25 (-1,1) movv 19:38:28 (2,1) incv 19:38:36 wait wait 19:38:36 elliott, whaat? 19:38:42 Vorpal: Let me try that again, all on one line. 19:38:57 Vorpal: of course you can load into a register you use for the address 19:39:01 (-1,1) movv; (2,-1) incv; (-1) deaddrv; (1,-1) mov 19:39:15 olsner, oh damn intel 19:39:16 Vorpal: Registers not part of the architecture work in virtual instructions, since virtual instructions don't actually translate to instructions! 19:39:18 I meant the other way around 19:39:27 SOurce Language Independent Disassembler 19:39:31 Vorpal: So the virtual mapping ends up being: 19:39:32 move eax -> eax+2 19:39:35 is what I meant 19:39:40 Vorpal: Oh. 19:39:49 Vorpal: Well, no, you can't :P 19:39:51 (-1,1) movv; (2,-1) incv; (-1) deaddrv; (1,-1) mov 19:39:53 Dissecting this: 19:39:59 elliott, can you in normal asm? 19:40:00 The movv creates the map {-1 => 1}. 19:40:06 i.e., virtual register -1 is real register 1. 19:40:13 Then the invc turns it into {-1 => 1+2}. 19:40:19 Then the deaddrv turns it into {-1 => [1+2]}. 19:40:26 Then the mov substitutes [1+2] for -1. 19:40:29 heh 19:40:32 Vorpal: no, you can't 19:40:38 but I translated what your snippet means in Intel correctly :P 19:40:39 hmm 19:40:40 elliott, what a pity 19:40:42 "v" is so normal 19:40:46 I have a better idea 19:40:53 virtual instructions use [] instead of () 19:41:00 BUT! 19:41:04 Only on the side that's virtual. 19:41:16 elliott, what about rotating the bits of the register numbers one step for each instruction? 19:41:17 [-1,1) mov; (2,-1] inc; [-1] deaddr; (1,-1] mov 19:41:20 wtf does "virtual" mean? 19:41:28 olsner: simple: the calculation is done by the assembler 19:41:42 olsner: so in this case, it has this idea of an imaginary register, which is first the value of 1, and which it then imaginarily increments 19:41:47 wait 19:41:48 even better 19:41:49 olsner: and it then imaginarily deaddresses it 19:41:57 olsner: so when you use -1, it replaces it with [eax+2] 19:41:57 Language Independent QUerying and Interactive Debugger 19:41:58 rotate it by the hash for the instruction in big endian 19:42:01 or middle endian 19:42:01 Vorpal: no :P 19:42:14 elliott, hey malbolge86 19:42:18 elliott, it would be fitting 19:42:37 oerjan: Creatively Retarded & Addled Computing Kompiler 19:42:57 As opposed to a non-computed "k"ompiler. 19:43:03 Gregor: SHUT UP 19:43:03 *computing ... 19:43:24 YES! LINUX 2.0 HAS MENUCONFIG! 19:43:34 IT'S LIKE AN ORGASM EXCEPT FOR LINUX KERNEL CONFIGURATION AFTER SUFFERING THROUGH "MAKE CONFIG" 19:43:35 elliott: hey you're not keeping to the theme. 19:43:49 oerjan, what theme? 19:43:51 oerjan: crack is the fourth form of matta 19:43:56 elliott: O KAY 19:44:02 elliott: The best way to handle make config is yes '' | make config :P 19:44:04 elliott, I read that as "crack is the forth form of matta" 19:44:08 Gregor: It read from /dev/tty. 19:44:15 as in the programming language forth 19:44:34 *matter 19:44:36 elliott: Sweet! ... rm -f /dev/tty && mkfifo /dev/tty && yes '' > /dev/tty & 19:44:43 elliott: make /dev/tty a symlink to /dev/fd/0 or something :) 19:44:47 Gregor: I approve! (I just hacked the shell script.) 19:44:48 elliott, yes and I read "matta" in Swedish 19:44:52 elliott, since it is a valid Swedish word 19:44:58 oerjan: fine: Pleonasmtastic Lavish Assembler, Stricken Maliciously from Autonomy 19:45:01 at which point I did a retake of the whole thing 19:45:05 Vorpal: i thought it a bit unfair that only gas was a programming acronym 19:45:06 I hereby claim rights to the word "pleonasmtastic". 19:45:10 elliott: i did plasma abova 19:45:15 oerjan, err? 19:45:16 oerjan: SHUT UP, PLEONASMTASTIC 19:45:21 *above 19:45:21 Vorpal: från matta till crack i tre steg! 19:45:25 oerjan, XD 19:45:45 `translate Vorpal: frn matta till crack i tre steg! 19:45:47 Vorpal: Horor matta spricka! 19:45:59 elliott, err? 19:46:02 "Whores carpet crack" X-D 19:46:09 oh uh 19:46:11 Gregor: since when is `translate working again? 19:46:17 Vorpal: From carpet to crack in three steps! 19:46:19 oerjan: Apparently it isn't :P 19:46:21 elliott, "spricka" = "crack in the sense crack in the wall" 19:46:22 Oh, there we go. 19:46:29 elliott, not crack in the sense "drug" 19:46:30 Google wasn't happy with me or something :P 19:46:36 Vorpal: Blame Google 19:46:45 `translateto se If I said you had a beautiful body, would you hold it against me? 19:46:46 No output. 19:46:51 >_> 19:46:55 Well, I tried :P 19:46:59 elliott, also other errors in it 19:47:10 │ │ [*] Compile kernel as ELF - if your GCC is ELF-GCC │ │ 19:47:10 │ The gcc version 2.7.0 and newer produces the new ELF binary format │ 19:47:11 │ as default. If you have such a compiler (try "gcc -v"), say Y │ 19:47:11 │ here, otherwise N. │ 19:47:35 2.0 has initrd! yaaaay 19:47:35 elliott, that was wider than my IRC window and totally unreadable 19:47:49 Vorpal: You're totally unreadable. 19:47:50 elliott, isn't initrd just gzip-compressed ramfs? 19:47:51 elliott: maybe you should get a pre-2.7 gcc then :) 19:47:51 (Mine too!) 19:47:57 olsner: Maybe fuck you :P 19:47:59 elliott, that is what your mum said 19:48:04 * Gregor wonders why translateto-se didn't work ... 19:48:08 `translateto es If I said you had a beautiful body, would you hold it against me? 19:48:09 elliott, both of those lines 19:48:10 No output. 19:48:13 >_> 19:49:31 cc1: error: unrecognized command line option "-m386" 19:49:48 cc1: error: unrecognized command line option "-m486" 19:50:02 elliott, ah easy 19:50:10 elliott, -mcpu iirc 19:50:14 elliott, old name for that 19:50:18 elliott, or -march 19:50:20 not sure which 19:50:31 `translateto se rug 19:50:32 No output. 19:50:54 Oh boy, errors galore :P 19:51:06 oh wait 19:51:10 `translateto sv rug 19:51:11 tillbaka 19:51:26 Fuck this shit :P 19:51:27 what? 19:51:27 ...right language, but completely wrong translation :D 19:51:33 oerjan: matta 19:51:34 indeed 19:51:35 `translate to no rugged 19:51:38 to no rugged 19:51:40 olsner: i know that :D 19:51:44 `translateto no rugged 19:51:46 robuste 19:51:52 oerjan: no you don't you're a hopeless... nord? 19:51:54 swede 19:51:54 nord 19:51:58 nord...ic...er? 19:52:01 I CONFUSE 19:52:07 ... 19:52:11 elliott, "norwegian"? 19:52:22 Now. 19:52:23 *Norw. 19:52:25 so I guess "norw" 19:52:28 WTF, I'm using the web-services API now :P 19:52:29 olsner: i was just trying that because i knew the translation should have no special characters 19:52:30 which is just silly 19:52:32 IT CAN'T FAIL 19:52:39 `translateto sv love 19:52:40 No output. 19:52:51 ...while that does 19:52:56 `translateto sv rug 19:52:57 tillbaka 19:53:04 yeah wtf 19:53:05 `run curl -e http://codu.org/ http://ajax.googleapis.com/ajax/services/language/translate --data-urlencode v=1.0 --data-urlencode q="What the fuck?" --data-urlencode langpair=en|se 19:53:06 No output. 19:53:09 `translateto sv Swedish 19:53:11 `run curl -e http://codu.org/ http://ajax.googleapis.com/ajax/services/language/translate --data-urlencode v=1.0 --data-urlencode q="What the fuck?" --data-urlencode langpair='en|se' 19:53:12 Gregor: 2>&1 19:53:13 Swedish 19:53:13 {"responseData": null, "responseDetails": "invalid translation language pair", "responseStatus": 400} 19:53:17 `translateto sv one three four 19:53:19 en tre fyra 19:53:20 ...what? 19:53:24 Did Gregor change anything there? 19:53:26 oerjan, huh that worked 19:53:26 `translateto sv one two three four 19:53:27 No output. 19:53:30 Did Gregor change anything there? 19:53:36 `translateto sv unix eunuchs 19:53:37 unix eunuchs 19:53:43 Vorpal: yes, i carefully skipped two to avoid the å 19:53:58 One, three, four, seven, twenty-nine. 19:54:01 `translateto sv love 19:54:02 No output. 19:54:13 Gregor: the language is sv even though the country is se 19:54:13 oerjan, oh you mean it fails on åäö in either input or output? 19:54:14 Gregor: i believer `translateto sv still has problem with æøå output 19:54:22 *äöå 19:54:27 oerjan, äöå * 19:54:32 ...darn :D 19:54:39 `run curl -e http://codu.org/ http://ajax.googleapis.com/ajax/services/language/translate --data-urlencode v=1.0 --data-urlencode q="What the fuck?" --data-urlencode langpair='auto|sv' 19:54:40 {"responseData": null, "responseDetails": "invalid translation language pair", "responseStatus": 400} 19:54:54 *believe 19:54:56 `run curl -e http://codu.org/ http://ajax.googleapis.com/ajax/services/language/translate --data-urlencode v=1.0 --data-urlencode q="What the fuck?" --data-urlencode langpair='auto|es' 19:54:56 oerjan, also bachgfj... is the nautural order to write the letters of the alphabet in :P 19:54:57 {"responseData": null, "responseDetails": "invalid translation language pair", "responseStatus": 400} 19:55:01 >_< 19:55:07 698848 19:55:10 Vorpal: YOU DON'T SAY 19:55:24 bachgfj what :D 19:56:02 elliott, he wrote äöå. Listing a series of letters of the alphabet you normally do in alphabetic order. Out of habit and convenience I guess. 19:56:05 elliott, he didn't :P 19:56:29 elliott, so åäö would be much more natural 19:56:51 abcdefz and that's all the letters 19:57:13 elliott, no.... dzfecab 19:57:21 elliott, do try to get it right 19:57:26 you can't write "fecal" with those 19:57:35 elliott, same as you listed :P 19:57:43 What? 19:57:53 Vorpal: the order is æøå in norwegian 19:57:54 abcdefz and that's all the letters elliott, no.... dzfecab <-- that is just a different permutation 19:57:58 oerjan, oh, huh 19:58:13 Vorpal: no you did yours wrong 19:58:33 elliott, oh? 19:58:37 yes. 19:58:45 elliott, what letters differ 19:59:21 all letters 19:59:32 elliott, no... you have a-f+z So do I 19:59:45 elliott, you just wrote your list in a different (and very incorrect) order 19:59:48 Vorpal: you are a liar 19:59:51 stop lying 19:59:58 Gregor: in any case `translateto sv _is_ working sometimes 20:00:06 So weird 20:00:14 `translateto sv something 20:00:15 Gregor, it fails at unicode it seems? 20:00:18 No output. 20:00:33 `run curl -e http://codu.org/ http://ajax.googleapis.com/ajax/services/language/translate --data-urlencode v=1.0 --data-urlencode q="one three" --data-urlencode langpair='auto|es' 20:00:35 {"responseData": null, "responseDetails": "invalid translation language pair", "responseStatus": 400} 20:00:37 `run curl -e http://codu.org/ http://ajax.googleapis.com/ajax/services/language/translate --data-urlencode v=1.0 --data-urlencode q="What the fuck?" --data-urlencode langpair='en|es' 20:00:38 {"responseData": {"translatedText":"¿Qué carajo?"}, "responseDetails": null, "responseStatus": 200} 20:00:40 `run curl -e http://codu.org/ http://ajax.googleapis.com/ajax/services/language/translate --data-urlencode v=1.0 --data-urlencode q="one three" --data-urlencode langpair='auto|sv' 20:00:41 {"responseData": null, "responseDetails": "invalid translation language pair", "responseStatus": 400} 20:00:42 Gregor: and the times it didn't work afaict were precisely the times when the output would contain å ä or ö 20:00:47 SWAG ON FIRE 20:00:47 `run curl -e http://codu.org/ http://ajax.googleapis.com/ajax/services/language/translate --data-urlencode v=1.0 --data-urlencode q="one three" --data-urlencode langpair='en|sv' 20:00:48 {"responseData": {"translatedText":"en tre"}, "responseDetails": null, "responseStatus": 200} 20:00:54 `run curl -e http://codu.org/ http://ajax.googleapis.com/ajax/services/language/translate --data-urlencode v=1.0 --data-urlencode q="one two three" --data-urlencode langpair='en|sv' 20:00:55 {"responseData": {"translatedText":"en två tre"}, "responseDetails": null, "responseStatus": 200} 20:01:09 Gregor, so unicode failure 20:01:14 Phantom_Hoover_: something = något in swedish, so confirms the theory 20:01:25 `translateto sv en två tree 20:01:26 No output. 20:01:28 err 20:01:33 `translateto sv one two three 20:01:34 No output. 20:01:36 yeah 20:01:48 Gregor, what do you do to fail so badly on unicode? 20:02:00 `translateto no something 20:02:01 noe 20:02:07 Vorpal: Note how it worked fine in the above lines. 20:02:20 Gregor, only in those that I ran curl with 20:02:28 Gregor: hm indeed 20:02:29 │ │ [*] Support Intel processors │ │ 20:02:30 │ │ [*] Support AMD processors │ │ 20:02:30 Gregor, the script fails when it encounters unicode 20:02:33 do you actually need these? 20:02:42 elliott, I believe so? 20:02:51 are you suuuuuuuuure? 20:02:51 elliott, it probably checks cpuid 20:02:55 `translateto en Hello, world! 20:02:56 Hello, world! 20:02:57 elliott, check the code for what it does 20:03:02 Vorpal: no thanks :-P 20:03:09 `run cat bin/json | paste 20:03:10 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.178 20:03:17 Gregor, this just confirms the theory that it fails at anything containing unicode in the string 20:03:37 Vorpal: If it's failing for that reason, then it's Python's json module, which seems extraordinarily unlikely to me. 20:03:40 hmm qemu has ISA support right? 20:03:40 as in 20:03:43 `run python --version | tr $'\n' '|' 20:03:44 ISA VGA, ISA network card 20:03:46 No output. 20:03:46 with some options 20:03:47 right? 20:03:49 huh 20:03:56 Vorpal: If it's failing for that reason, then it's Python's json module, which seems extraordinarily unlikely to me. 20:03:59 `run /usr/bin/env python --version | tr $'\n' '-' 20:04:00 Gregor: Did you do .decode('utf8')? 20:04:02 No output. 20:04:07 `run /usr/bin/env python --version 2>&1 | tr $'\n' '-' 20:04:07 `run python --version 20:04:09 Python 2.7- 20:04:12 elliott: http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.178 20:04:12 No output. 20:04:15 You don't need to do that tr... 20:04:17 ah 2>&1 20:04:18 hm 20:04:24 elliott, well I thought it was multi-line 20:04:25 Gregor: FAIL LOLZ 20:04:32 elliott: I have no idea how to Python. 20:04:43 elliott: These are basically the only lines of Python I have ever written. 20:04:43 Gregor: What is the filename? 20:04:49 elliott: stdin 20:04:55 Oh :P 20:04:57 elliott: bin/json 20:05:07 `run grep json.loads bin/json 20:05:09 data = json.loads(sys.stdin.read()) 20:05:22 Gregor, what is argv[1] in print(eval(sys.argv[1])) 20:05:24 elliott: ... you realize that's the same thing I just pasted at you, right ... 20:05:42 Vorpal: data["responseData"]["translatedText"] 20:05:54 `run sed -i "s/sys.stdin.read()/sys.stdin.read().decode('utf-8')/g" bin/json 20:05:55 No output. 20:05:57 Gregor, so... what if it contains unicode? Could it be that it fails at that 20:06:01 Someone try it now. 20:06:08 Vorpal: No, that should be OK. 20:06:08 `translateto sv en två 20:06:09 No output. 20:06:13 `translateto sv If I said you had a beautiful body, would you hold it against me? 20:06:13 Although actually... 20:06:14 No output. 20:06:15 `translateto sv one two 20:06:17 Lemme fix. 20:06:17 Stop. 20:06:18 `cat bin/json 20:06:19 No output. 20:06:19 Stop. lemme fix. 20:06:20 #!/usr/bin/env python \ import json \ import sys \ data = json.loads(sys.stdin.read().decode('utf-8')) \ print(eval(sys.argv[1])) 20:06:32 `run sed -i "s/sys.argv[1]/sys.argv[1].decode('utf-8')/g" bin/json 20:06:33 No output. 20:06:35 `translateto sv en två 20:06:37 No output. 20:06:41 `translateto sv If I said you had a beautiful body, would you hold it against me? 20:06:42 No output. 20:06:42 elliott, wrong direction 20:06:45 `translateto sv one two 20:06:46 elliott: There is no Unicode in the arg. 20:06:48 Vorpal: I copied *your* line. 20:06:49 No output. 20:06:53 Gregor: Worth trying :P 20:06:53 elliott, yes I typoed :P 20:06:57 wait. 20:06:58 `translateto sv one three 20:07:03 hm 20:07:03 en tre 20:07:03 Gregor: You are total fail at thinking print is a function to start with :P 20:07:07 Gregor: OK: Could the result of eval be unicode? 20:07:15 elliott: I - do - not - know - Python 20:07:17 I say "yes, yes it could". 20:07:20 elliott: Quite easily. 20:07:23 I will now rewrite this. 20:07:32 `run echo '#!/usr/bin/env python' >bin/json 20:07:33 No output. 20:07:39 lawl 20:07:45 `run echo 'import sys' >>bin/json; echo 'import json' >>bin/json 20:07:46 No output. 20:07:52 Not a fan of echo -e eh :P 20:07:59 I'm old sk00l 20:08:02 *sk00l. 20:08:15 `run echo "data = json.loads(sys.stdin.read().decode('utf-8'))" >>bin/json 20:08:17 No output. 20:08:22 you could use $'' instead 20:08:26 `run echo "print eval(sys.argv[1]).encode('utf-8')" >>bin/json 20:08:28 No output. 20:08:28 Vorpal: But I don't want to. 20:08:30 $'foo\nbar' 20:08:33 `translateto sv one two 20:08:34 en två 20:08:42 There, now where's my birthday bj. 20:08:56 elliott, dj* 20:09:04 That is also acceptable. 20:09:07 `translateto sv If I said you had a beautiful body, would you hold it against me? 20:09:08 Om jag sa att du hade en vacker kropp, skulle du hålla det emot mig? 20:09:13 `translateto ch If I said you had a beautiful body, would you hold it against me? 20:09:16 No output. 20:09:18 >_> 20:09:21 Gregor: BTW, I hereby release the code I've written under the Give Elliott All Your Sperm Public License, version 1 or later. 20:09:21 `translateto zh If I said you had a beautiful body, would you hold it against me? 20:09:22 `translateto en en två tree 20:09:24 如果我说你有一个美丽的身体,你会嫌弃我吗? 20:09:24 `translateto en en två tre 20:09:25 one two tree 20:09:28 ah 20:09:28 one two three 20:09:35 Gregor: Did I mention it's viral? (Kinda like my sperm, but I digress.) 20:09:36 tree is not tree 20:09:44 it is just a non-existent word 20:09:46 `translateto zh If I said you had a beautiful body, would you hold it against me? I am no longer infected. 20:09:47 如果我说你有一个美丽的身体,你会嫌弃我吗?我不再感染。 20:09:52 `translateto sv If I said you had a beautiful body, would you hold it against me? 20:09:55 Om jag sa att du hade en vacker kropp, skulle du hålla det emot mig? 20:09:57 `translateto jp RAPE 20:09:59 `translateto en att vara eller inte vara, det är frågan 20:10:01 `translate 如果我说你有一个美丽的身体,你会嫌弃我吗?我不再感染。 20:10:01 No output. 20:10:06 Clearly, the Japanese have no word for rape. 20:10:06 to be or not be, that is the question 20:10:06 lawl :P 20:10:06 If I said you had a beautiful body would you hold anything against me? I am no longer infected. 20:10:08 Gregor: heh sadly the swedish translation fails to preserve the ambiguity solely because because of pronoun gender 20:10:12 `translateto jp RAPE 20:10:15 No output. 20:10:19 See? 20:10:21 Facts. 20:10:21 oerjan: :P 20:10:23 o 20:10:27 `translateto jp everyone is green 20:10:28 ais523: okokoko 20:10:28 No output. 20:10:36 Wait, the language code isn't jp, is it. 20:10:36 :p 20:10:38 elliott: o 20:10:44 see, randomly oing is spreading from channel to channel 20:10:44 ais523: okokokokokokokokokoko 20:10:49 Gregor: heh sadly the swedish translation fails to preserve the ambiguity solely because because of pronoun gender <-- which ambiguity? 20:11:06 Faillawls 20:11:15 Vorpal: of "If I said you had a beautiful body, would you hold it against me?" 20:11:17 Vorpal: you completely fail 20:11:24 i think Vorpal has actually missed the ambiguity 20:11:26 oh right 20:11:27 constantly :D 20:11:30 suuure 20:11:31 `translateto zh Nethack stole my gender. 20:11:32 偷走了我的性别的nethack。 20:11:34 I never realised you could read it *THAT* way 20:11:34 `translateto zh Nethack stole my gender in space. 20:11:36 在太空中的nethack偷走了我的性别。 20:11:40 `translateto zh Nethack stole my gender in space in space. 20:11:41 在太空中的nethack偷走了我的性别空间。 20:11:44 `translateto zh Nethack stole my gender in space in space in space in space in space in space. 20:11:46 在太空中的nethack偷走了我的性别空间在空间空间在空间的空间。 20:11:47 the two meanings turn the "it" into "den" or "det" in swedish respectively 20:11:51 `translateto zh Nethack stole my gender in space in space in space in space in space in space. in space. 20:11:52 在太空中的nethack偷走了我的性别空间在空间空间在空间的空间。在太空中。 20:12:00 `translateto zh This channel is now under the control of red China. Please continue your esoteric activities unperturbed. 20:12:01 该通道目前正在红色中国的控制权。请继续深奥的活动不受干扰。 20:12:11 elliott, I always thought it was the non-physical meaning. And found that line somewhat strange. 20:12:16 `translateto sv bork bork bork 20:12:19 -!- Gregor has set topic: 该通道目前正在红色中国的控制权。请继续深奥的活动不受干扰。 | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 20:12:20 No output. 20:12:28 LIES 20:12:30 heheheh 20:12:35 mwahaha 20:12:35 `translatefromto sv en bork bork bork 20:12:36 Bork Bork Bork 20:12:42 that's better 20:12:42 X-D 20:12:49 elliott, it means nothing in Swedish either :P 20:12:57 Vorpal: It means all your words! 20:12:59 `swedish The coyote is a living, breathing allegory of Want. He is always hungry. He is always poor, out of luck, and friendless. The meanest creatures despise him, and even the fleas would desert him for a velocipede. He is so spirtless and cowardly that even while his exposed teeth are pretending a threat, the rest of his face is apologizing for it. And he is so homely! -so scrawny, and 20:12:59 ribby, and coarse-haired, and pitiful. 20:13:00 Zee cuyute-a is a leefing, breetheeng ellegury ooff Vunt. He-a is elveys hoongry. He-a is elveys puur, oooot ooff loock, und freeundless. Zee meunest creetoores despeese-a heem, und ifee zee flees vuoold desert heem fur a feluceepede-a. He-a is su speertless und cooerdly thet ifee vheele-a hees ixpused teet ere-a pretundeeng 20:13:01 You have no other words. 20:13:12 `translate 该通道目前正在红色中国的控制权。请继续深奥的活动不受干扰。 elliott: HALP 20:13:13 The channel is currently being Red China's control. Please continue to esoteric activities without interference. elliott: HALP 20:13:26 Gregor: I will pay you $money if you make "`translateto sv ..." redirect to bin/swedish. 20:13:30 elliott, jaha, det få du väla tro då 20:13:40 (writing on dialect is always fun) 20:13:45 (it confuses google translate) 20:13:58 ... I just accidentally typed www.redchina.com while trying to type www.foxnews.com (<-- to test a crashbug) 20:14:08 Gregor: Why would you ever type www.foxnews.com. 20:14:10 But X-D 20:14:17 elliott: to test a crashbug 20:14:29 ais523: a crashbug on foxnews.com is known as a feature 20:14:30 Vorpal, how much lightstone do you have stockpiled? 20:14:46 elliott: *crashfeature 20:14:51 not really, no input should crash a browser, whether malicious /or/ incompetent 20:14:59 Phantom_Hoover_, one left. That is all unless I have some I somewhere I forgot. 20:15:01 I'm afraid I mistook the one in the throne room for dirt and broke it. 20:15:11 Phantom_Hoover_, you fix that. Somehow 20:15:19 I'd repay you, but you're much richer than me anyway. 20:15:29 How about preferential defence by the ROU? 20:15:31 Phantom_Hoover_, get one from the admin. And even if it was dirt why would you break it in my place 20:15:39 Phantom_Hoover_, should I go around breaking stuff at your place 20:15:58 Phantom_Hoover_, I accept nothing but a lightstone as repayment 20:16:08 I take it lightstones are rare? 20:16:10 Phantom_Hoover_, you have to get one from the admin 20:16:22 Vorpal, for now, I have replaced it with a block of dirt. 20:16:27 ais523, you can't get them in the normal way in multi-player 20:16:29 I hope the difference is not too apparent. 20:16:40 Phantom_Hoover_, it is very. I use painterly and they are hugely different 20:16:54 Phantom_Hoover_, so as soon as you see the server admin. Get him to give you one block and replace it 20:17:05 Wow, an ISA kernel is much smaller! 20:17:08 ais523, basically missing feature in multiplayer (no "nether" dimension) 20:17:16 Vorpal, I use painterly! 20:17:23 Phantom_Hoover_, custom painterly? 20:17:23 That's why I confused them! 20:17:27 Yes. 20:17:32 Phantom_Hoover_, not the same custom as me 20:17:36 obviously 20:17:43 Phantom_Hoover_, or maybe you use a monochrome monitor 20:17:55 Phantom_Hoover_, anyway, why did you break it at all. Seriously 20:18:06 Phantom_Hoover_, even if it HAD been dirt that would be rather rude 20:18:26 It's dirt! 20:18:33 Phantom_Hoover_, and? 20:18:38 It's what, the second most common block type! 20:18:44 Phantom_Hoover_, I'll go to your place and remove all dirt then? 20:18:47 Phantom_Hoover_, no? 20:18:48 Most common. imo. 20:18:55 1 dirt != 1,000,000,000,000 dirt 20:18:56 elliott, stone is far more common 20:18:56 elliott, cobble. 20:19:04 maaaybe 20:19:49 elliott, also what about removing one dirt placed in a clearly highly ornamental place. Like in the middle of a stone wall with 4 torches around in a pattern? Except it was lightstone 20:20:25 how does one list the types of NIC qemu will emulate? 20:20:29 i don't have all the ones in the manpage 20:20:30 Phantom_Hoover_, anyway I expect you fix this. The place is ruined without a lightstone there. 20:22:08 Phantom_Hoover_, also if you insist on go about digging in other people's places I guess I could either do that at your place too: "but in my texture pack the glass looked like dirt", eh? 20:22:23 Phantom_Hoover_, or I could just brick it all up and make a maze of tunnels 20:22:34 (that don't actually connect anywhere 20:22:35 ) 20:22:39 Jesus, I apologised. 20:22:57 Phantom_Hoover_, right, I realise you can't get a replacement right away. But as soon as you see the server I expect you to get one 20:23:31 What if serv says no. 20:23:38 Just throwin' that out there. 20:24:14 elliott, I'll decide if that happens 20:24:23 Decide... what? 20:24:47 probably going to request a gold block replacement instead or such then. Which will not look very good. Since it doesn't give off light it wouldn't really work 20:25:05 elliott, besides he said before he was willing to give lightstone if you asked and had an use for it 20:25:15 and making a sun-like symbol is definitely a use 20:25:38 (I would have made a bigger one if i had more lightstone) 20:28:19 Phantom_Hoover_, just logged in to check. 1) very different colour. 2) dirt isn't an acceptable replacement. A gold block would be until you can get a lightstone (you would get the gold block back) 20:29:26 Would diamond not do? 20:33:16 -!- augur has quit (Remote host closed the connection). 20:33:40 -!- augur has joined. 20:34:36 `translateto cy No one actually speaks Welsh. 20:34:38 Does neb yn siarad Cymraeg mewn gwirionedd. 20:34:53 Wow, that is some poor compression ratio. 20:35:01 Cymraeg 20:35:05 i know that word 20:35:17 sometimes i get a Welsh newsletter 20:35:21 I believe that's Welsh for Welsh :P 20:35:23 welsh, i think 20:35:27 :D 20:35:31 `translate Cymraeg 20:35:32 Cymraeg 20:35:36 and it's so amusing that i woudn't dare to sign off 20:35:37 >_< 20:35:39 `translatefromto cy en Cymraeg 20:35:42 Welsh 20:36:04 welsh is from outer space 20:36:05 seems like would have been inferrable... 20:36:10 like hungarian and finnish 20:36:42 `translateto fi The Moon people of Finland welcome our Human comrades. 20:36:43 Kuu Suomen kansa tervetulleiksi Human toverit. 20:37:17 sounds alien 20:37:21 "Moon Finnish people welcome 'Human' comrades." 20:38:01 Where "welcome" is nounified, not as a verb. 20:38:12 księżycowi ludzie z Polski witają ludzi - naszych przyjaciół 20:38:18 uh 20:38:24 that looks alien as well 20:38:30 like: jak tak to mi sie nie chce 20:38:45 -!- augur has quit (Ping timeout: 260 seconds). 20:39:59 /proc apparently costs 67K. Ouch... 20:40:55 Trying: PCI=mmconfig. 20:41:38 -!- goneriku has joined. 20:41:51 http://git-annex.branchable.com/ http://git-annex.branchable.com/walkthrough/ 20:41:52 this is awesome 20:43:45 elliott: get tinywm 20:43:52 it's only 50 LOC in C 20:44:03 nooga: I know what tinywm is. 20:44:54 will you use xterm or something else? 20:45:44 nooga: rxvt, or something else if that's too big. Maybe st. 20:45:49 mmconfig WINS in size!! Now to try BIOS. 20:47:18 BIOS loses :( 20:47:27 Now to try any for gits and shiggles. 20:48:16 run X, reelase 20:51:45 nooga: find me a smallX tarball and i will 20:51:47 tux.org seems to not have it any more 20:53:45 Gregor: It's Welsh for the Welsh language, yes. 20:54:16 And who did that Chinese in the topic? 20:54:20 pikhq: We already verified that. 20:54:23 pikhq: Google Translate X-P 20:54:31 I hates simplified! 20:54:35 It's so much harder to read! 20:54:51 pikhq: Red China uses simplified :P 20:55:07 elliott: Your point? It's hard! 20:55:15 `translate zh-TW The glorious Republic of China shall reclaim this topic some day! 20:55:17 zh-TW The glorious Republic of China shall reclaim this topic some day! 20:55:23 Wrong :P 20:55:25 `translateto zh-TW The glorious Republic of China shall reclaim this topic some day! 20:55:27 光榮 Republic of中國應收回這個主題的一些日子! 20:55:32 wtfbbq 20:55:56 You'd think that Google Translate would know what "Republic of China" is in traditional Chinese ... 20:56:17 Try "中華民國" instead of "中國". 20:56:45 The rest *looks* correct, but I can't say for sure, not being a speaker of a Chinese language. 20:56:56 `translateto zh-TW The glorious 中華民國 shall reclaim this topic some day! 20:57:00 The glorious 中華民國 shall reclaim this topic some day! 20:57:04 DAMN IT 20:57:09 `translatefromto en zh-TW The glorious 中華民國 shall reclaim this topic some day! 20:57:11 光榮的中華民國應收回這個主題的一些日子! 20:57:30 Oh, duh, it did omit the 的. 20:57:30 -!- Gregor has set topic: 该通道目前正在红色中国的控制权。请继续深奥的活动不受干扰。 | 光榮的中華民國應收回這個主題的一些日子! | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 20:58:03 * pikhq cannot speak Chinese, but *has* communicated in a Chinese/Japanese pidgin before! 20:58:33 Chinese Japanese pidgin 20:58:35 ? 20:59:13 -!- xvedejas has joined. 20:59:16 nooga: if you could find a mirror of tux.org ftp that's work 20:59:20 hey Slereah 20:59:25 goneriku: Yeah. 20:59:32 Explain? 20:59:37 * goneriku likes linguistics 20:59:37 and goneriku 20:59:57 I wish I could read the topic but my Mandarin isn't good enough yet :\ 21:00:23 also it seems to be a mix of traditional and simplified 21:00:49 apparently it's Google Translate shit 21:00:51 or at least just traditional 21:00:54 hmm 21:01:00 Slereah: you brought these people, didn't you 21:01:06 goneriku: He spoke Mandarin, I speak Japanese, he didn't speak English well at all. So I wrote using sentences using my very very minimal knowledge of Chinese grammar and words in Japanese that are from Chinese. 21:01:11 Slereah: YOU BROUGHT THESE PEOPLE HERE 21:01:17 goneriku: It certainly worked. 21:01:25 elliott, I came on my own accord 21:01:26 ah, cool 21:01:31 xvedejas: Oh. 21:01:34 Well I blame Slereah for goneriku. 21:01:35 I don't know really know any Chinese or Japanese. 21:01:37 X-D 21:01:43 Also racism. 21:01:48 All of these things are Slereah's fault. 21:01:49 elliott, I'm an actual programmer 21:01:50 `translate 该通道目前正在红色中国的控制权。请继续深奥的活动不受干扰。 21:01:51 The channel is currently being Red China's control. Please continue to esoteric activities without interference. 21:01:58 `translate 光榮的中華民國應收回這個主題的一些日子! 21:02:00 Glorious Republic of China should recover some of this theme day! 21:02:04 heh 21:02:07 Wow, bad translation X-D 21:02:12 Sler's pretty racist that's true 21:02:14 xvedejas: Sorry, this channel is about esoterica and magick! 21:02:18 (Note: Lies.) 21:02:19 you should hear his rants about jews 21:02:23 lol 21:02:25 He's secretly a jew. 21:02:30 my favorite programming language is Smalltalk, some consider it sorta esoteric... :P 21:02:32 aw man I was about to say I'd fit in just fine here! 21:02:37 (I know, that's the lolarious part!) 21:02:38 `translateto iw Happy Hanukkah, gentiles! 21:02:38 xvedejas: Protip: Ignore Sgeo. 21:02:39 חנוכה שמח, הגויים! 21:02:46 `translateto hw kike 21:02:48 No output. 21:02:50 smalltalk is about as esoteric as javascript, isn't it? 21:02:52 Google Censor 21:02:56 ignore who? 21:03:00 olsner: Substantially more so. 21:03:02 xvedejas: This guy. 21:03:02 I don't see any sgeo 21:03:07 You don't yet :P 21:03:09 -!- Gregor has set topic: 该通道目前正在红色中国的控制权。请继续深奥的活动不受干扰。 | 光榮的中華民國應收回這個主題的一些日子! | חנוכה שמח, הגויים! | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 21:03:16 olsner: Gregor does JS stuff for an academiliving. 21:03:21 (If you can call that living) 21:03:25 -!- goneriku has changed nick to gon|away. 21:03:30 -!- augur has joined. 21:03:31 So take his opinion with a grain of badly-scoped salt :P 21:03:37 olsner, I don't really know anything about javascript 21:03:38 elliott: Dude, I browse porn sites for SCIENCE. 21:03:47 * gon|away does too 21:03:51 `quote scientific reason 21:03:52 No output. 21:03:56 `quote scientific justifi 21:03:57 No output. 21:03:59 `quote porn 21:04:00 33) pikhq: A lunar nation is totally pointless. ehird: consider low-gravity porn fungebob: OK. Now I'm convinced. \ 77) SF.net porn :/ Oh yeah, baby, gimme that... bloated download page? \ 134) I am an inherently pornographic being. \ 156) reading playboy for 21:04:02 `quote scientifically-justifiable 21:04:03 elliott: I mean to imply that smalltalk is not the least bit esoteric 21:04:06 235) "* There is no scientifically-justifiable reason to exclude pornography, which is a vital part of the web ecosystem. However, bear in mind that we're tracing JavaScript, not MPEG and JPEG decoding." ^^^ This bullet-point is my crowning achievement as as a scientist. 21:04:06 `run quote porn | tail -1 21:04:09 235) "* There is no scientifically-justifiable reason to exclude pornography, which is a vital part of the web ecosystem. However, bear in mind that we're tracing JavaScript, not MPEG and JPEG decoding." ^^^ This bullet-point is my crowning achievement as as a scientist. 21:04:11 Gregor: But you EXCLUDED it! 21:04:11 Gregor: ゴジラが来てる!死にたくないよ! 21:04:17 Gregor: No?? 21:04:19 (If you can call that living) <-- still MS Research? 21:04:23 elliott: I did NOT exclude it. I EXPLICITLY did not exclude it. 21:04:24 Vorpal: ...XD 21:04:31 Vorpal: Yes. Gregor still works at MS Research. 21:04:34 Gregor: Don't you. 21:04:38 elliott: No. 21:04:47 Gregor: Wrong! The answer is: Yes. 21:05:02 I'm confused 21:05:08 xvedejas: We're all confused :P 21:05:27 and confusing 21:05:40 Yes. 21:05:43 xvedejas, only under confusing circumstances 21:05:58 nooga: If you find a tux.org mirror I will be happy forever. 21:05:59 (or in case of jelly) 21:06:06 I started writing some smalltalk tutorials on a friend's blog, if anyone is interested: http://hackeryblog.blogspot.com/2010/12/learn-programming-with-smalltalk-part-1.html 21:06:15 xvedejas: Also, ignore Vorpal, we just haven't figured out a justification for kicking him out yet. 21:06:24 elliott, hey you 21:06:25 But our crack team of crackheads is working on it as we speak. 21:06:30 `translate ゴジラが来てる!死にたくないよ! 21:06:31 I'm Godzilla coming! I want to die! 21:06:33 hm 21:06:37 Gregor: what X-D 21:06:45 I'm -- Godzilla! -- coming! I want to die! 21:06:47 elliott: pikhq told me that :P 21:06:52 pikhq: what. 21:07:06 Gregor: "Godzilla is coming! I don't want to die!" 21:07:18 pikhq: I prefer Google's version. 21:07:24 Oh! Godzilla! Don't stop! I'm coming! I want to die! 21:07:27 It... Reversed the negative somehow. 21:07:31 [[TINY Linux -- " 'Tis Independence 'N Yet "]] 21:07:33 WORST ACRONYM EVER 21:07:43 That's fairly impressive, actually. 21:07:45 YESSS I THINK I'VE FOUND SMALLX 21:08:26 pikhq: Suuure. 21:08:28 -!- olsner has set topic: 该通道目前正在红色中国的控制权。请继续深奥的活动不受干扰。 | 光榮的中華民國應收回這個主題的一些日子! | חנוכה שמח, הגויים! | sed อยู่เสมอดีกว่า Perl! | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 21:08:30 pikhq: Hey, XFree86 had small servers. 21:08:31 pikhq: You're not sexually attracted to Godzilla. 21:08:34 [ ]xvg16.zip05-Dec-1999 17:34 740K 21:08:41 pikhq: You're not sexually attracted to Godzilla at all. 21:08:43 Gregor: Only to Mothra. 21:08:44 pikhq: Whatever you say. 21:08:47 X-D 21:08:49 Gregor: That's like saying Vorpal's not attracted to children! 21:08:53 elliott: Y'know, kdrive ain't big :P 21:09:07 Gregor: How big is a 16-colour VGA KDrive? You know, approximately. 21:09:16 Roughly unsupported size? 21:09:25 elliott: Centibits. 21:09:25 Gregor: Fine, what's the smallest KDrive? 21:09:30 vesa, probably. 21:09:37 elliott, ... Only if they carry a magnet (I'm magnetic) 21:09:42 Gregor: If it doesn't fit, LZMA-compressed, on a floppy minus 614K, I can't use it. 21:09:58 Gregor: I could fit that VGA16 X server on. :P 21:10:02 LZMA-compressed ... the server itself would probably fit, not sure about all the client libraries. 21:10:21 Gregor: I need libX11 and that's all. (Advantage of smallX: it has its own, tiny Xlib.) 21:10:28 Mmm 21:10:32 Gregor: Also, I need *some* kind of room left to put rxvt or whatever in :P 21:11:21 elliott, couldn't you format the floppy as higher capacity than it really is? 21:11:32 I seem to remember this being possible (but really really stupid) 21:11:35 Vorpal: (1) Not reliably. (2) I refuse to. 21:12:02 elliott, I wonder where you could find a 2.whatever MB floppy 21:12:09 I formatted a floppy at a lower capacity once, unfortunately my special floppy-massage program didn't support the higher original capacity :/ 21:12:20 elliott: Heh, so kdrive has enough requirements that that'd probably not work :P 21:12:27 olsner, "floppy-massage"? 21:12:30 IBM used to ship their operating systems on 2.88MB disks 21:12:32 Gregor: Oh, and building KDrive has the distinct disadvantage that what the fuck modularised X's build system it is insane and horrible. 21:12:39 Vorpal: *formatting then 21:12:45 <3 modular X build system 21:12:48 olsner, ah 21:12:58 what window managers do you all use? 21:13:05 right now I'm on AwesomeWM 21:13:16 I use metacity because Kitten isn't done yet. :p 21:13:18 uh, metacity atm. 21:13:22 <3 modular X build system 21:13:25 Have you ever used it? 21:13:27 It is awful :P 21:13:30 elliott: Extensively. 21:13:31 it's autocrap, isn't it? 21:13:36 elliott: I've also used what came before. 21:13:36 olsner: No, worse. 21:13:38 Extensively. 21:13:43 Gregor, *imake*? 21:13:44 olsner: Yes, it's autotools, which is why it's so good. 21:13:45 oh the horror 21:13:51 Gregor: lol 21:14:00 Gregor, imake was one of the worst ones I ever seen 21:14:10 Gregor: autotools is great if you never want to CONFIGURE anything. 21:14:28 Vorpal: Yeah, imake was ... bad. I've built X11R6 (as in, the real X11R6) on HP-UX. Autotooled X = godsend. 21:14:51 elliott, autotools actually get the shit done. And works when you need to do something a bit unusual. What is your suggestion instead? cmake? scons? Plain makefile doesn 21:14:57 doesn't* cut it for more complex stuff 21:15:02 is imake the one that preprocesses makefiles using cpp? 21:15:19 Gregor, yes for such a platform I imagine it would be 21:15:20 Vorpal: No, seriously, autotools breaks down and fucks itself the minute you step out of a few rigidly-defined GNU-type systems. 21:15:28 It works for you because you use GNU/Linux/Typical. 21:15:45 elliott: ... no. 21:15:46 elliott, not my experience at all. Only thing it doesn't work well on seems to be cygwin 21:15:48 elliott: So much no. 21:16:01 elliott: You realize that for years I worked for Intel doing builds of F/OSS software on like six architectures? 21:16:13 elliott: With every new package, we PRAYED that it was autotools. Because autotools WORK. 21:16:15 elliott, it works fine on *BSD, it works fine on some more esoteric platforms such as opensolaris. I haven't tried HP-UX though so can't answer for that 21:16:29 it even worked fine on an old sunos box 21:16:43 Vorpal, OpenSolaris is not esoteric. 21:16:57 Phantom_Hoover_, did I claim it was? 21:17:03 Phantom_Hoover_: Whatever you want to believe :P 21:17:09 "it works fine on some more esoteric platforms such as opensolaris" 21:17:14 but yes it is in some aspects 21:17:25 Gregor, esoteric <-> interesting. 21:17:27 elliott, oh not in the "on topic sense" 21:18:06 Phantom_Hoover_: Esoteric == only known to a small, select group. An unsupported OS that barely managed to get off the ground and is now being squelched is the definition of esoteric. 21:18:55 It should also do something new, or at least defy common practices. 21:19:44 Gregor, indeed 21:20:31 Well, this is entirely my own definition. 21:20:53 Phantom_Hoover_, so why would you expect other people to use it? 21:21:39 Well, Gregor's definition makes things like the Seltzer & Friedberg Appreciation Society esoteric. 21:22:02 Phantom_Hoover_, I never heard of that so I don't know 21:22:12 it is however an indication that could be the case 21:22:56 elliott: I notice you haven't actually made any further comments about autotools, since autotools are a cross-platform build maintainer's dream, whereas cmake, scons, plain Makefiles and whatever else you're going to list have exactly the problems you mentioned as being problems of autotools. 21:23:21 Gregor: I'm not going to list any because every one sucks, I've just been bitten by autotols constantly. 21:23:23 *autotools. 21:23:24 -!- xiaoy has joined. 21:23:49 Gregor, why did you build them at intel btw? 21:23:59 Vorpal: ... because that was my job? 21:24:07 Gregor, yes but for what? their linux distro? 21:24:13 Vorpal: Internal use. 21:24:32 Vorpal: To maim the babies. 21:24:33 Gregor, oh heh. They had their own linux distro internally or what? 21:24:46 Gregor: ... 21:24:52 Gregor: Let's not bother trying to make Vorpal understand things! 21:25:09 No, they just had a distro of commonly-used F/OSS tools that were all at the same versions across some six arch/OS combinations. 21:25:15 Gregor, ah 21:25:30 Gregor: please tell me windows was one of them 21:25:41 elliott: Good LORD no. 21:25:46 Gregor: awww :D 21:25:56 " 21:25:56 If Linux doesn't have the solution, you have the wrong problem." -- stupid Linux forum signature 21:26:00 what does that even mean 21:26:07 medical equipment that needs hard real-time is WRONG! 21:26:18 Gregor, hm, intel would use x86, x86-64, IA-64 and ARM right 21:26:35 probably not ARM for this 21:26:38 elliott: Gregor: ... If eval() is the answer, chances are you're asking the wrong question 21:26:45 elliott: That makes me grind my teeth every time :P 21:26:58 Vorpal: And SPARC, PA-RISC :P 21:27:14 Gregor, they use SPARC and PA-RISC? So weird. 21:27:28 Gregor: This philosophy is exemplified in #python, where their motto is "You're here for help? Hahahaha. Tell us your entire application architecture and we will rip it apart without trying to understand it." 21:27:37 Gregor: (the "wrong question" philosophy) 21:28:42 elliott, it DOES happen that people ask the wrong question though. Like in #bash, trying to make echo do something weird when it is trivially straightforward with printf. 21:28:49 Seriously, I will PAY someone to find a smallX tarball to me. 21:28:59 Vorpal: Yes, but with Python it's not "do it this other way", it's "don't do that" at a very high level. 21:29:12 I want to hook up X to Y. Don't do that, use Z instead. But I can't use Z. Well fuck you then. 21:29:31 elliott, tried http://www.superant.com/smalllinux/tinyX01.html ? 21:29:37 What about when the thing they're trying is genuinely dumb? 21:29:46 Vorpal: Go on, try clicking one of those tarball links. 21:29:55 Phantom_Hoover_: if that was the case i wouldn't criticise as much. 21:30:00 elliott, ouch 21:30:03 -!- xiaoy has left (?). 21:30:11 elliott, try the email there? 21:30:18 Vorpal: I've found the HTTP interface to tux.org FTP and their smalllinux/smallX pages are 404'd. 21:30:21 "genuinely dumb"? you seem to be implying something not-dumb is even possible in python :) 21:30:30 Vorpal: I will if I can't find the .tgz. 21:30:34 But I'd like to find it rather than bug him... 21:31:01 elliott, well hopefully that will mean he will update the link to something that works 21:31:12 Vorpal: Who knows if he has it? 21:31:26 [["Here's some interesting news: KOffice, as a brand name, no longer exists. And with that change, I can't help but wonder if we are soon going to be looking at the end of the KDE name, as well. 21:31:26 "It seems that the KDE community has decided to rename the KOffice project to the Calligra Suite project, as well as all the names of the individual applications within KOffice. So, KWord becomes Words, KSpread becomes Tables, and so forth. There's a table on the Calligra suite announcement that lists all of the changes.]] 21:31:27 LOLKDE 21:31:35 elliott, who knows. Who knows if he died from a freak volcano? (Okay that is less probable, but still!) 21:31:38 Words, it's like Microsoft Word but there's more of 'em. 21:31:44 olsner, come now, using a particular language doesn't actually make a program stupid. 21:32:04 Phantom_Hoover_: PHP 21:32:14 But programming languages can themselves be stupid ideas, and they can be designed and pitched in such a way that only idiots use them. 21:32:24 To see the newest version of these wiki notes go to [[http://www.superant.com/sadrupal/]] ----> 404 21:33:01 elliott, I am sure that somewhere, at some time, someone will have written a sensible program in PHP. 21:33:08 Phantom_Hoover_: I'm saying Python is (also) one of those languages 21:33:18 elliott, "sadrupal"? I thought drupal was a CMS and not a wiki. So weird name 21:33:26 That are stupid ideas or attract stupid people? 21:33:29 Or both? 21:33:38 elliott: I don't think you realise how awful imake is. 21:33:52 olsner, you have to admit python is better than php at least? 21:33:54 elliott: It's C preprocessor on Makefiles. 21:34:16 Vorpal: definitely 21:34:36 pikhq: i never said it wasn't awful 21:34:39 pikhq, and since when did not knowing about something stop elliott having extremely strong opinions about it? 21:34:41 Vorpal: drupal is na everything 21:34:47 I NEVER SAID ANYTHING ABOUT IMAKE GODDAMMIT 21:34:49 I KNOW IT WAS HORRIBLE 21:34:50 elliott, oaky true 21:34:54 *an 21:34:55 okay* 21:34:58 wrt drupal that is 21:35:16 Can someone actually send me a précis of why PHP sucks? 21:35:18 elliott, autotools is an improvement. In fact autotools is the best option there is currently 21:35:33 I've never learnt it, and it's always just been implicitly true. 21:35:37 [Removed chvt, deallocvt because they didn't work.] 21:35:46 faeg 21:35:46 Phantom_Hoover_: Far too many reasons. 21:35:46 -!- xvedejas has quit (Quit: Leaving). 21:35:58 elliott, hence "précis". 21:36:24 norwegians say "precis" all the time 21:36:34 nooga, that is a different "precis" I think 21:36:34 swedes too 21:36:42 olsner, precis! 21:36:47 I had never seen "précis" before. 21:36:55 pikhq, I had to google it 21:37:04 pikhq, also I'm surprised. It is something you would use 21:37:08 Phantom_Hoover_: Man who admits he hates programming invents programming language that's like Perl except everything is in one big print statement and to get out of print and have code you need to write . Then he puts all functions, with inconsistent argument order and naming, into one gigantic namespace, make ?x=y in the URL set $x = y, and makes ' and \ in strings automatically get backslash-escaped so that you can put them into a M 21:37:09 ySQL DB directly (seriously). 21:37:10 but "a précis" is basically a summary, right? 21:37:22 Phantom_Hoover_: Follow natural evolution path towards amazingly crap. 21:37:25 *evolutionary 21:37:33 Vorpal: Yes, yes I would. 21:37:51 CC arch/x86/kernel/cpu/vmware.o 21:37:52 CC arch/x86/kernel/cpu/hypervisor.o 21:37:54 Can one disable these: 21:38:02 elliott, which kernel version 21:38:03 elliott, OK. 21:38:10 Vorpal: 2.6.36.1. 21:38:10 elliott, if it recent I think you should be able to 21:38:13 VMware options are *not* enabled. 21:38:31 elliott, wait, there. That you probably need to enable embedded to remove cpuid strings 21:38:31 And nor are any hypervisor options. 21:38:32 or such 21:38:42 Vorpal: I have enabled embedded. 21:38:46 elliott, hm 21:38:56 elliott, okay then check if they just contain #ifdef SOMETHINGTHATENABLESME 21:38:59 elliott, I seen that 21:39:07 elliott, basically empty object files is what I suspect 21:39:17 Nope, 21:39:19 EXPORT_SYMBOL(x86_hyper_vmware); 21:39:21 and no ifdef 21:39:27 I don't know if it's actually linked in, mind. 21:39:35 -rw-r--r-- 1 elliott elliott 1720 Dec 7 20:57 arch/x86/kernel/cpu/vmware.o 21:39:37 maybe it is empty, then 21:39:39 elliott, since I saw altivec.o compile on x86_64. I got so confused about that, that I opened the C file and found it just ifdefed out 21:39:46 hypervisor is slightly smaller 21:39:54 and isn't ifdeffed out either 21:40:05 elliott, just export symbol? Nothing else? 21:40:10 Vorpal: no, other things too 21:40:14 huh 21:40:15 static functions and the like 21:40:16 CC arch/x86/boot/video-vga.o 21:40:16 CC arch/x86/boot/video-vesa.o 21:40:21 ugh, i hope you can disable the latter 21:40:43 elliott, why aren't you using an older kernel (assuming it is the floppy one still) 21:40:58 Vorpal: cba 21:41:02 even 2.4 was a bitch 21:41:10 elliott, 2.4 didn't build? 21:41:18 elliott, if so: what, it is recent enough 21:41:18 i don't recall 21:41:32 elliott, make xconfig is the sanest option for 2.4 iirc 21:41:44 elliott, (have fun with Tk) 21:41:53 i tried it 21:41:55 with menuconfig 21:41:57 whatever, anyway 21:42:00 │ │ (0x1000000) Physical address where the kernel is loaded │ │ 21:42:03 │ │ (0x1000000) Alignment value to which kernel should be aligned │ │ 21:42:07 wonder if reducing them will shrink kernel :) 21:42:18 elliott, no it won't I think 21:42:30 elliott, also if you change that I *think* you need to change the bootloader too 21:42:41 prolly 21:43:03 * elliott disables mice for now 21:43:17 System is 608 kB 21:43:18 fuckin' a 21:43:35 what where did my ethernet go 21:43:53 elliott, so wait, where are you going to get software for this? 21:44:03 Are you going to install a libc? 21:44:09 Phantom_Hoover_: um there's barely enough space for software 21:44:16 libc is unlikely, they're big and i can statically-link stuff 21:44:21 elliott, I'm sure 2.4 will be smaller. 2.0 even smaller 21:44:26 i tried 2.0. 21:44:29 didn't build 21:44:39 all i really want at this point is... X, a tiny window manager, and a tiny terminal 21:44:46 maybe one day i can squeeze links2 in. 21:44:51 elliott, "I tried foo, didn't work, I gave up". Okay I won't hold that against you. 21:44:53 Ah, I get it. 21:45:02 Vorpal: good :P 21:45:12 ok let's see where my ethernet went 21:45:27 11690 e3 21:45:36 elliott, because it doesn't change anything. I already knew that you weren't very persistent in any endeavour 21:45:36 i wonder if i could disable all the non-vi modes of e3 21:45:49 Vorpal: sure i am, just not in pointless endeavours. 21:45:54 and this is definitely pointless. 21:46:11 elliott, so procrastinating? 21:46:20 nope, just messing around 21:46:20 so, 21:46:21 * 21:46:25 okay 21:46:28 and because pikhq wanted to do it 21:46:32 so i'd better do it better first! 21:46:34 hah 21:47:39 nooga, oh btw in case you didn't know. sv:precis = en:exactly. 21:47:53 (also en:exact, depends on context) 21:49:56 1622 finger 21:49:56 2151 tar 21:49:56 2320 netstat 21:49:56 5218 sh 21:49:56 6219 readelf 21:49:58 Biggest utilities :P 21:50:23 elliott, you don't need finger? 21:50:27 elliott, or? 21:50:43 Vorpal: sure I don't, but why not 21:51:05 elliott, well sure, if you have space left over 21:51:40 Vorpal: it's 1622 bytes :P 21:52:08 elliott, which makes the space you can spend on X 1622 bytes smaller 21:55:56 "And why should a [video game] character conform to and reinforce gender stereotypes? Birdo might have given some transgender kid hope." 21:56:21 :D 21:56:50 Gregor, I'm not sure how that connection works 21:56:50 "One day I can be just like Birdo." 21:57:08 Vorpal: Birdo is the only semi-major transgender videogame character :P 21:57:21 Gregor, oh, officially? 21:57:22 huh 21:57:30 Vorpal: Not REALLY officially, but pseudo-officially X-P 21:57:45 In that Birdo was officially a gender-confused male, but in later things was officially female. 21:58:20 Gregor, how did that happen to begin with 21:58:53 when talking about post-op transsexuals in past-tense, do you need to keep track of the time the transition was made to get the right pronoun? 21:58:59 Vorpal: In the SMB2 manual, Birdo was labeled as a "boy who thinks he's a girl". In later things I guess they just decided that she's female. But the implications of that are clear, since both are canonical :P 21:59:12 olsner: Pronouns suck :P 21:59:28 olsner, I'm not sure anybody has a good answer to that 22:00:04 -!- Mathnerd314 has joined. 22:01:50 Vorpal: probably not 22:02:16 olsner, spivak for everyone? 22:02:20 when talking about post-op transsexuals in past-tense, do you need to keep track of the time the transition was made to get the right pronoun? 22:02:20 "Yoshi is supposedly a male, but lays eggs like a female. Birdo is supposedly a female, but was originally called a male. And now the two of them are a romantic couple? They were both sexually chaotic as individuals -- this new pairing just made your head hurt thinking about it." 22:02:27 olsner: um you're always meant to use the post-transition pronoun... 22:02:29 olsner: even pre-op 22:02:31 Yoshi + Birdo = the single greatest video game couple in history :P 22:02:56 olsner: you don't think about whether someone has a penis or not before choosing a pronoun :P 22:02:58 Gregor, blame Japan 22:03:06 elliott: right, pre/post-*op* is definitely wrong since the operation is independent of changing gender identity 22:03:10 -!- gon|away has changed nick to goneriku. 22:03:18 olsner: "when talking about post-op transsexuals in past-tense" --you 22:03:34 elliott, "to" != "about" 22:03:45 Vorpal: um olsner knows what i mean, you don't 22:03:48 elliott: bah, I'll just change that sentence to something else then! 22:03:49 elliott, what about before they had any conception of their gender identity differing from the norm? 22:04:18 Phantom_Hoover_: it's very rare that people feel 100% comfortable with their identity and then decide to transition... 22:04:27 i've never heard of it 22:04:30 elliott, what about when they were 2 or something? 22:04:38 Before they even had any conception of gender? 22:05:13 spivak nouns until sexual maturity! 22:05:14 Phantom_Hoover_: I can guarantee you that no transperson wants to be referred to as what they used to think their gender was no matter what tense :P 22:05:17 (OK, I won't actually guarantee that.) 22:05:20 olsner: sex != gender 22:05:25 so that's a silly thing to say 22:05:48 TRANSSEXUALS ARE IMMORAL PEOPLE. GOD CHOSE YOUR SEX FOR A REASON. 22:05:50 * Gregor takes a bow. 22:05:50 Spivak nouns until they express a preference! 22:06:01 ... and shoots a tranny with it OH SEE HOW I MADE THAT AMBIGUOUS 22:06:02 Gregor: JESUS WAS A GIRL IN A GIRL'S BODY 22:06:14 elliott: make that what phantom hoover said instead 22:06:15 Gregor: Are you sure it was a bow you shot that tranny with? :| 22:06:21 Gregor, so what about those cases of ambiguous sex? 22:06:22 Gregor, but what's God's view of the LINGUISTICS of the matter? 22:06:34 elliott: Yes. I put a bow in another bow, and fired the first bow with the second. 22:06:35 olsner: Phantom_Hoover_: How about SPIVAK PRONOUNS FOREVER because gendered pronouns are moronic 22:06:41 Gregor: Nice [0010]. 22:06:44 elliott, good luck with that. 22:06:49 Gregor, or the rare condition of having XY but being insensitive to testosterone 22:06:50 Is that an [0010] in your pocket or are you just happy to see me? 22:06:58 hmm, spivak nouns are just ... ugly 22:07:00 Phantom_Hoover_: You think your solution is getting adopted either? :P 22:07:03 olsner: ENGLISH IS UGLY :P 22:07:05 Vorpal: GOD WORKS IN MYSTERIOUS WAYS. 22:07:23 For instance, Jesus' Y chromosome was clearly GOD'S. 22:07:24 elliott: ENGLISH WORKS IN MYSTERIOUS WAYS. 22:07:26 -!- Sasha has joined. 22:07:27 i agree with Gregor a magic man did it 22:07:42 Gregor: i shouldn't complain about english. good enough for jesus, good enough for me 22:07:45 `addquote For instance, Jesus' Y chromosome was clearly GOD'S. 22:07:49 * Phantom_Hoover_ wonders what genes are on God's Y chromosome. 22:07:53 237) For instance, Jesus' Y chromosome was clearly GOD'S. 22:08:01 this is also why I sleep on a cross every night 22:08:09 Gregor: That is not even remotely permanently quotable :P 22:08:20 elliott: YESH IT ISH 22:08:34 elliott, I agree with Gregor on this one. 22:08:54 Shut up! I'm pondering theogenetics! 22:08:55 it can be read in another way without the context 22:08:59 still funny 22:10:04 robots 22:10:15 elliott, any way to quickly get all permutations of a list in python? Quickly as in "easy to write" not "executes fast" 22:10:32 I feel it should be trivial in a high level language 22:10:59 like taking the list times itself or such. 22:11:38 Vorpal: there is a way but i forget :D 22:11:44 elliott, what's your opinion on singular "they"? 22:11:45 elliott, ouch :( 22:11:54 Phantom_Hoover_: Perfectly cromulent. 22:12:01 elliott, I agree. 22:12:06 Vorpal: itertools has permutations 22:12:08 ah 22:12:25 >>> from itertools import permutations 22:12:26 I also think that, logically, the first person pronoun should be made universally "we". 22:12:28 >>> list(permutations([1,2,3])) 22:12:31 [(1, 2, 3), (1, 3, 2), (2, 1, 3), (2, 3, 1), (3, 1, 2), (3, 2, 1)] 22:12:32 Too slow am I. 22:12:38 I blame the phone. 22:12:40 System is 827 kB 22:12:42 Wheew. 22:12:52 Thus removing all singular/plural distinction in the English pronoun system. 22:12:53 Phantom_Hoover_: We are amused. 22:13:04 fizzie: "Too slow am I. The phone I blame." 22:13:15 Phantom_Hoover_: Also, there IS singular/plural distinction. 22:13:19 you/y'all 22:13:50 WHY IS NETWORK BROKE 22:13:52 I'd go for "youse", personally. 22:14:08 it gave me a list of tuples. Why... 22:14:10 "Is it true that the plural of 'y'all' is 'all y'all'?", I saw asked somewhere. 22:14:24 (as in, why tuples) 22:14:28 Vorpal, BECAUSE YOU ARE HEADCRAB ZOMBIE! 22:14:41 Well, they're known-length sequences. 22:14:49 fizzie, ah right, makes sense 22:15:13 fizzie, I'll just process the result with sed anyway XD 22:15:17 Since it's from itertools, it probably also gives you a generator, not a list. 22:15:30 http://qntm.org/dna 22:15:33 * Phantom_Hoover_ ponders this. 22:15:33 fizzie, yes indeed I passed it to list 22:15:36 since I needed a list 22:15:43 [[# (50 - X)% of Yancy's genes are eternal genes with no origin, inherited from Fry, who originally inherited them from his mother.]] 22:16:04 But they're regular genes, not eternal ones. 22:16:19 Hmm, perhaps not... 22:16:32 Phantom_Hoover_: They're eternal in the sense that if you trace their history, it is an infinite loop. 22:16:40 Gregor, no, that's the thing. 22:16:54 They're from Fry's mother, whose genes are entirely normal. 22:17:29 I feel an infinite geometric series coming on... 22:17:33 Phantom_Hoover_: Isn't Fry's mother's side the side that Fry is on? 22:17:39 Gregor, no. 22:17:56 Fry is his own paternal grandfather. 22:17:57 What kernel module implements qemu's default network card? 22:18:14 Phantom_Hoover_: Oh, then that's a weird statement. 22:18:38 Gregor, but I can see a justification through the haze of my ape brain. 22:18:47 Phantom_Hoover_: Where did you get that quote from? 22:18:51 It's just proving hard to pin down. 22:18:55 I just linked to it. 22:19:02 http://qntm.org/dna 22:19:41 * Phantom_Hoover_ decides to reduce it to a toy model. 22:19:50 Phantom_Hoover_: Ohhh, I was thinking about Yancy JR 22:20:16 Phantom_Hoover_: Which made the whole thing kinda nonsense :P 22:20:32 OK, let's reduce the human genome to 4 chromosomes, in 2 homologous pairs. 22:20:49 `addquote OK, let's reduce the human genome to 4 chromosomes, in 2 homologous pairs. 22:20:49 238) OK, let's reduce the human genome to 4 chromosomes, in 2 homologous pairs. 22:21:17 (This ignores a few things, most interestingly that Fry's Y chromosome is completely eternal.) 22:22:04 Phantom_Hoover_: Hm, yeah, those are definitely not eternal, they just happen to go backwards and forwards in time before being discarded. 22:25:43 Okay, seriously, THERE IS NO WAY A TARBALL DISAPPEARED FROM THE INTERNET. 22:25:54 * Phantom_Hoover_ starts smearing dye on a piece of dead tree. 22:26:15 Phantom_Hoover_: I just call that "Saturday". 22:26:49 Phantom_Hoover_: don't forget chromosomal crossover 22:27:05 oerjan, LALALALALA I CAN'T HEAR YOU 22:27:12 :D 22:28:27 Phantom_Hoover_: "Depending on what X is (see above), this is either disgustingly incestuous (for X ≅ 5) or entirely inoffensive and legal (for X = 50)." This statement is kinda silly too since all humans have some 99.99% of their genes in common with each other :P 22:28:58 I JUST WANT A SMALLX TARBALL 22:29:10 Gregor, yes, but 45% is effectively identical to incest genetically. 22:29:15 Phantom_Hoover_: "Depending on what X is (see above), this is either disgustingly incestuous (for X ≅ 5) or entirely inoffensive and legal (for X = 50)." This statement is kinda silly too since all humans have some 99.99% of their genes in common with each other :P 22:29:19 There's a reason they call it wincest! 22:29:34 Sorry, *sibling incest. 22:29:41 [[In my on-going research for alternatives to the X.org full server, I ran across references to a “TinyX” which led me to SmallX, AKA Kdrive. Aside from one, very obsolete reference written for mere mortal users, the whole thing is buried in code-jockey talk.]] 22:29:43 Parental incest is... the same, actually. 22:29:44 If you're not a code-jockey 22:29:48 why are you trying to replace X.Org. 22:30:48 Seriously. Anyone. SmallX. Please. 22:30:59 I *think* this might come down to a fixed point... 22:31:23 elliott: ftp://ftp.mayn.de/pub/really_old_stuff/unix/x11/tinyx/XVGA16.tar.gz 22:31:42 Gregor: I love you. How did you find that? 22:31:52 elliott: I googled for the tarball name. It was REALLY difficult. 22:31:59 Gregor: That's what I did, so fuck you :P 22:32:06 elliott: I googled it harder. 22:32:13 ...OK, googling for XVGA16.tar.gz works WAY better than "smallX tinyX" 22:32:24 "tarball name" :P 22:32:38 Gregor: Oh for fuck's sake, it looks like it's just XFree86 TinyX. 22:32:55 OK, I think I have a vague grasp on the thing about the maternal eternal genes. 22:32:58 Xtinylib.tar.gz BETTER have some real code. 22:33:13 elliott: I'm betting ... no. 22:33:42 Gregor: lolso, teach me how to use the modular X build system. 22:33:56 All I want is a single KDrive and Xlib with EVERYTHING DISABLED :P 22:34:02 Probabilistically, 25% of Yancy's genes are inherited from his wife. 22:34:08 At least. 22:35:36 elliott: http://freedesktop.org/wiki/Software/Xserver/InstallGuide <-- although slightly out-of-date, this does show the list of modules you have to build before building xserver kdrive. You'll need to provide the --enable-kdrive option nowadays, and ignore the shitload of stuff it builds AFTER the xserver, but otherwise there ya go. 22:35:53 "ignore the shitload of stuff it builds AFTER the xserver" 22:35:55 how disable :| 22:36:08 elliott: That's a list of packages essentially, just don't do them. 22:36:26 Gregor: Anyway, last I checked the only way to build was (1) 10000000 tarballs or (2) git repository. 22:36:27 elliott: (And note that it shows CVS since that's hyper-old instructions, and everything is in git now, and you should just get the packages anyway, just follow the package names :P ) 22:36:43 elliott: For kdrive, I'd estimate 10 tarballs. 22:36:43 -!- MigoMipo_ has quit (Read error: Connection reset by peer). 22:36:51 Gregor: over-modular more like 22:37:03 elliott: Yes, it is over-modular, but I'll still take it over imake any day :P 22:37:12 (The main thing is that splitting the proto and lib packages was a weird decision :P 22:37:14 ) 22:38:16 http://www.x.org/releases/X11R7.5/src/xserver/ 22:38:20 Is this the right thing? :p 22:39:15 Gregor: And are you suuure it doesn't have 16-bit VGA? 22:44:26 checking for XSERVERCFLAGS... configure: error: Package requirements (randrproto >= 1.2.99.3 renderproto >= 0.11 fixesproto >= 4.1 damageproto >= 1.1 xcmiscproto >= 1.2.0 xextproto >= 7.0.99.3 xproto >= 7.0.13 xtrans >= 1.2.2 bigreqsproto >= 1.1.0 fontsproto inputproto >= 1.9.99.902 kbproto >= 1.0.3 xkbfile xfont xau pixman-1 >= 0.15.20 openssl) were not met: 22:44:28 Gregor: Dude. 22:48:38 hm sshfs has some delays that shouldn't be there I think 22:48:54 sure you don't see a remote file created straight away (on the client side) 22:49:05 but you should see the files you just wrote surely 22:51:06 Gregor: Sooo, is there a simpler way than fetching those manually? 22:51:18 Vorpal, I know this will sound suspicious, but where's the throne room gone? 22:52:01 Phantom_Hoover_, what throne room? 22:52:21 Vorpal, oh. You're playing this game. 22:52:26 Rather childish. 22:52:29 Vorpal: You know, the throne room. 22:52:37 It's the room with the throne. 22:52:43 Phantom_Hoover_, I'm not playing any game. I'm printing a report 22:53:03 Phantom_Hoover_: What do you mean where has it gone? 22:53:14 elliott, oh. That. It's in Buckingham Palace. 22:53:26 (or its or whatever) 22:53:28 There's just a bare room where the lobby used to be. 22:53:34 * Phantom_Hoover_ → sleep 22:53:39 -!- Phantom_Hoover_ has quit (Remote host closed the connection). 22:53:56 well I could tell you. If you were here 22:57:40 not sure I would. I seriously didn't have time for MC today, yet I had to clean up his mess 22:58:47 I should just make the pit deep enough to kill on falling. About twice the current depth iirc. Nothing below it. Should be doable. A pain with the obsidian though. 22:58:48 oh well 23:00:51 elliott, I realised while .xz is cool it isn't really usable yet if you want to make sure that everyone can open it. 23:01:02 (note, windows compat is not an issue in this case) 23:01:07 (if it was, it would mean zip) 23:01:20 so tar.bz2 still has it's uses 23:08:14 Vorpal: If you want to make sure everyone can open it, you should use compress. 23:08:31 If you actually want something that *sane distros* can open, use xz. 23:08:40 pikhq, no, because that would confuse people. Thus they couldn't open it. 23:08:58 Vorpal: Okay, y'know what? 23:09:01 Vorpal: Sharballs. 23:09:04 Vorpal: You may only use shar. 23:09:05 pikhq, in this case I want a teacher at university to be able to open a lab assignment. I know he use linux. I don't know if he has xz. 23:09:16 thus best bet: tar.bz2 23:09:20 or tar.gz 23:09:32 but the tar.gz is too large for the email system. 23:09:38 Vorpal: Is his distro more than 3 years old? If not, xz is fine. If it is, I suggest you root that box. 23:09:41 (lots of data files included) 23:09:44 pikhq, I have no idea 23:09:44 Ended up installing hMod. 23:09:56 ineiros, oh, interesting 23:10:11 ineiros, any user guide to it? 23:10:31 There's a wiki. 23:10:50 ah 23:11:02 fizzie, is it so complex that a single page isn't enough? 23:11:34 http://wiki.hey0.net/index.php/Main_Page 23:11:44 oh my... what a long commands page 23:12:01 It's got those, and lots of plugins. 23:12:14 " * Command: /help --- Shows a list of commands (7 per page). " 23:12:21 mhm 23:12:39 ineiros, any kits defined? 23:13:05 Pretty much default configuration, didn't yet check anything else. 23:13:24 fizzie, also inconsistent. It has /kit without parameters to list kits, but /listwrap instead of /wrap without parameters 23:13:32 err 23:13:34 warp* 23:13:37 (in both cases) 23:13:50 and why /lighter 23:13:56 I mean, shouldn't that be a kit :P 23:14:17 /getpos looks useful. I had a lot of issues trying to work out offsets when building that trap 23:14:41 xz sucks because of cpu usage 23:15:07 elliott, sometimes, such as when preparing a release tarball, that is not an issue 23:15:07 ineiros: disabled health? 23:15:10 I think /lighter is not a kit because t was ported from some other thing. 23:15:17 Vorpal: but unpacking it still uses cpu. 23:15:37 elliott, technically so does everything unless you have a separate accelerator chip for that algorithm 23:15:46 which uses DMA 23:15:58 Vorpal: more cpu than gzip though 23:16:00 or bzip 23:16:07 elliott, gzip is very cpu-friendly 23:16:08 or azip :) 23:16:17 and bzip2 uses a lot more cpu for unpacking 23:16:21 I'm pretty sure about that 23:16:25 not sure about bzip 23:16:30 prolly true 23:16:31 but no one uses that any more 23:16:45 i've never cared that much about ultra small compression in common usage 23:16:53 networks aren't so slow that wasting minutes compressing a tarball is worthwhile 23:17:22 elliott, depends on what you plan to do with it. Download it over 3G? EDGE? Pack it on an install cd? 23:17:23 elliott: xz decompression is actually more CPU friendly than bzip2. 23:17:42 Unless you're using xz -9 or something. 23:17:42 edge is not that bad. 23:17:44 But that's crazy. 23:17:48 pikhq: Vorpal prolly does 23:17:48 :p 23:18:06 elliott, I used it for testing if it was worthwhile. It wasn't. 23:18:17 It gets you, like, bytes of benefit. 23:18:18 but no I haven't used -9 beyond some basic testing of xz 23:18:24 And adds hours. 23:18:26 pikhq, -9 -e ! ;P 23:18:45 pikhq, note: I only did that as a test. And it saved like 1 MB on an ISO 23:18:53 took 10-15 minutes to compress 23:18:58 I wish lzma(1) had -10 --super-mega-brutish. For Flinix :) 23:19:13 Vorpal: Pah! ESO distributed the ICFP ISO COMPLETELY UNCOMPRESSED in... 2009? 2010? 23:19:23 And used up our entire bandwidth for the month I might add (100 gigs) 23:19:26 elliott, ICFP? 23:19:31 -!- Sasha2 has joined. 23:19:35 or was it 150 gig 23:19:43 -!- Sasha has quit (Ping timeout: 264 seconds). 23:19:47 Vorpal: international conference on functional programming. they run a popular programming contest each year 23:19:54 elliott, heh 23:19:58 they distributed an iso to provide a common testing environment for everyone 23:20:00 Vorpal: heh? 23:20:06 elliott, maybe uncompressed was a bad idea then 23:20:08 btw not only functional programmers participate 23:20:10 it's woooorld famous 23:20:13 if it used the entire bw for that month 23:20:19 Vorpal: http://www.boundvariable.org/ you have probably seen this 23:20:22 http://www.boundvariable.org/task.shtml 23:20:26 that's the 2006 contest 23:20:36 elliott, ah yes that URL I remember 23:21:37 linux is so bloated, what is it spending 480K on 23:22:05 elliott: Herring for penguins. 23:22:37 pikhq: *complete copy of Wikipedia to comply with the GFDL 23:22:46 `quote GFDL 23:22:59 * elliott makes quote search case-insensitively 23:24:02 -!- Sasha2_ has joined. 23:24:03 Gregor: lolbroke 23:24:08 153) * Phantom_Hoover wonders where the size of the compiled Linux kernel comes from. To comply with the GFDL, there's a copy of Wikipedia in there. 23:24:13 yay 23:24:14 pikhq: ^ 23:25:30 elliott: Also herring. 23:25:47 pikhq: HOW HARD IS X86 (ANSWER NOT AT ALL LINUX IS BLOAT) 23:26:41 -!- Sasha2 has quit (Ping timeout: 265 seconds). 23:28:11 pikhq: Did that kernel of yours ever do anything? 23:28:19 OMFG I JUST HAD THE BEST IDEA EVER GREGOR GREGOR GREGOR 23:28:21 Gregor 23:28:33 GREGOR GREGOR GREGOR Gregor IS the best idea ever. 23:28:42 Gregor: You know how much you love SysV? 23:28:56 I lurve it with a spatula. 23:28:59 Gregor: #ESOTERIC SHOULD PORT A IT OR A UNIX OF SIMILAR VINTAGE TO I386. 23:29:16 How hard can it be! SysV was like the most portable OS ever! And old Research Unixes had stupidly simple kernels! 23:29:19 System V ran on 386 :P 23:29:20 And it would be AWESOME. 23:29:25 Gregor: ...oh. 23:29:27 Gregor: well 23:29:29 Gregor: RESEARCH UNIX 23:29:29 System V ONLY ran on 386. 23:29:40 We should port it to x86_64 though :P 23:29:46 (Except the source to System V is of course not available) 23:29:46 System V ran on the DEC VAX and PDP-11 machines. It also added support for inter-process communication using messages, semaphores, and shared memory. 23:29:48 System V ran on the DEC VAX and PDP-11 machines. It also added support for inter-process communication using messages, semaphores, and shared memory. 23:29:51 Gregor: ha ha faggot 23:30:12 The primary platforms for SVR4 were Intel x86 and SPARC; the SPARC version, called Solaris 2 (or, internally, SunOS 5.x), was developed by Sun 23:30:19 what i'm saying is: fag 23:30:25 Oh yeah, R4 and later >_> 23:30:31 SysVR<=3 sucked anyway :P 23:30:32 R4 = ELF 23:30:48 Gregor: OK then. Unix Nth Edition (for low N. Like say fourth edition because previous versions were written in assembly.) 23:30:57 1st edition code is available at least :p 23:31:26 Gregor: "WAIT I KNOW LET'S WRITE OUR OWN UNIX-COMPATIBLE FROM SCRATCH AND DISTRIBUTE IT FREELY OVER THE INTERNET." 23:31:43 /nick Leenyos_Torovoltos 23:31:47 elliott: And let's write it in JavaScript! 23:31:48 elliott: And call it JSMIPS! 23:31:59 Gregor: Brilliant! 23:32:52 Gregor: Seriously though, research Unix on 386, how cool would that be (answer: mega cool) 23:33:58 I HAS KITTY 23:34:05 Gregor: AWESOME AWESOME AWESOME VERSION 1-7 UNIX IS UNDER FOUR-CLAUSE BSD 23:34:21 Gregor: (VERSION 7 CAME OUT IN 1979 :P) 23:34:34 [[V7 was the first readily portable version of Unix. As this was the era of minicomputers, with their many architectural variations, and also the dawning of the market for 16-bit microprocessors, many ports were completed within the first few years of its release. The first Sun workstations (then based on the Motorola 68010) ran a V7 port by UniSoft; the first version of Xenix for the Intel 8086 was derived from V7]] 23:34:37 WHY DO YOU RUIN OUR FUN 23:34:43 An x86 port is under active development by Nordier & Associates. The current version is 0.8a. The project has produced a bootable CD image with an installer script.[2] 23:34:44 what 23:34:49 how is anyone as crazy as us 23:34:59 Gregor: Dood http://www.nordier.com/v7x86/index.html :P 23:35:09 elliott: WE LOSE 23:35:12 elliott: How 'bout Unix 32v? 23:35:24 There are presently a few supplementary V7/x86-specific documents available: 23:35:25 v7x86asref.pdf V7/x86 Assembler Reference Manual 23:35:25 v7x86intro.pdf Using V7/x86: A Brief Introduction 23:35:43 Gregor: But Unix 32v is Seventh Edition ported to VAX :P 23:35:47 Gregor: So it's the same thing. 23:36:09 elliott: I was already typing that before you mentioned v7x86, I was just suggesting it because at least it's already 32-bit :P 23:36:20 Gregor: HOWEVER I bet 4th edition would be easy. 23:36:22 4th Edition Nov. 1973 First Unix written in C. It also introduced groups. Number of installations was listed as "above 20". The manual was formatted with troff for the first time. 23:36:29 V5 is listed as "Introduced the sticky bit", what a release :P 23:36:44 6th is when people started PORTING it and we want to be the fisrt people to do anything. 23:36:51 [[xv6 is a modern reimplementation of Sixth Edition Unix in ANSI C for multiprocessor x86 systems.]] 23:36:55 [[It is used for pedagogical purposes in MIT's Operating Systems Engineering (6.828) course.]] 23:37:07 Gregor: 4th Edition LET'S DO THIS OKAY 23:37:11 elliott: FAILZ 23:37:40 elliott: Instead let's set up a publicly-available free shell service on v7x86 23:37:40 [[The fourth edition of Unix was the first version to have a kernel written in a high level language, C, along with some of the commands. A full and complete copy of Fourth Edition no longer exists.]] 23:38:15 Gregor: Not xv6? :p 23:38:33 -!- ais523 has quit (Remote host closed the connection). 23:38:46 "V7 Unix introduced the first version of the modern "Standard I/O" library stdio as part of the system library." 23:39:01 [[For many years, MIT had no operating systems course. In the fall of 2002, Frans Kaashoek, Josh Cates, and Emil Sit created a new, experimental course (6.097) to teach operating systems engineering. In the course lectures, the class worked through Sixth Edition Unix (aka V6) using John Lions's famous commentary.]] 23:39:16 MIT: Making 2002 feel just like 1975. 23:39:25 "V7 Unix introduced the first version of the modern "Standard I/O" library stdio as part of the system library." <-- kinda important X-P 23:39:39 Gregor: Whoa, Russ Cox was involved in xv6 X-D 23:39:46 Gregor: Also, hey, I swear off stdio and you should too. :p 23:40:01 /win/win 48 23:40:09 I lurve stdio. 23:40:22 Gregor: But it's terrible! 23:40:51 olsner: hmm, you know my microkernel design? 23:42:42 I think I just managed to invent an attokernel :P 23:44:15 Gregor: OK, I've figured it out. 23:44:27 Gregor: We should port the System V kernel as a HURD server. 23:45:26 System V kernel source isn't available. 23:45:39 Except in some enormously derivative form in OpenSolaris. 23:46:34 [[ "The network software for Unix was developed on a PDP-11/50, with memory management, two RK05 disk packs, two nine track magtape drives, four dectape drives, 32k words of core, and three terminals. Presently this has been expanded to encompass a DH11 terminal multiplexor, an RP03 moving head disk, a twin platter RF11 fixed head disk, floating point, and 48k of core. User files are stored on the RP03. the RF11 is used as a swap disk and for 23:46:34 temporary file storage; one RK05 platter contains the system files, and the second contains login and accounting information. In the near future, the system will be expanded to 128k words of core memory with 10 dial in and 10 hard wired terminal lines" 23:46:34 "The base operating system occupies 24.5k words of memory. this system includes a large number of device drivers, and enjoys a generous amount of space for I/O buffers and system tables. A minimal system would require 40k words of hardware memory. It should be noted that Unix also requires the memory management"]] 23:47:01 OH DEAR GOD 23:47:03 http://tools.ietf.org/html/rfc681 23:47:04 IT' SALL IN CAPITALS 23:47:08 FILEDES = OPEN( "/DEV/NET/HARV",2 ); 23:47:08 IF( FILEDES < 0 ) 23:47:08 PRINTF(" HARVARD IS DEAD"); 23:47:08 ELSE 23:47:08 WHILE( (NBYTES=READ(FILEDES,BUF,80)) > 0 ) 23:47:09 WRITE( 0,BUF,NBYTES ); 4j1 23:47:14 HARVARD IS DEAD 23:47:36 WHY IS RFC 681 ALL IN CPITALS 23:47:38 CAPITALS 23:47:40 elliott: I can't make v7x86 boot after installing :( 23:48:11 Gregor: Probably it requires a bootloader? 23:48:15 http://www.nordier.com/v7x86/install.html 23:48:19 Note that the install program expects to install to an existing V7/x86 hard disk partition. This can be created with any fdisk compatible utility that allows the partition type to be specified. The V7/x86 partition type is 0x72 (114 decimal). 23:48:43 elliott: Yeah, I did that. I wonder how you think I installed without that. 23:48:51 Gregor: Sparkly magic? 23:49:03 Gregor: Try http://pdos.csail.mit.edu/6.828/xv6/ :P 23:49:23 "Understanding exec (exec.c) is left as an exercise." 23:49:37 "Xv6 does boot on real hardware" LAME 23:49:50 Gregor: JUST TRY IT MAN IT'S V6 UNIX 23:50:00 # Start the first CPU: switch to 32-bit protected mode, jump into C. 23:50:01 # The BIOS loads this code from the first sector of the hard disk into 23:50:01 # memory at physical address 0x7c00 and starts executing in real mode 23:50:01 # with %cs=0 %ip=7c00. 23:50:02 The first CPU? 23:50:04 Does it do SMP? 23:50:06 In an OS course? 23:50:13 An introductory OS course? 23:50:13 Fuck MIT is hardcore. 23:51:46 # for(;;) exit(); 23:51:46 exit: 23:51:46 movl $SYS_exit, %eax 23:51:46 int $T_SYSCALL 23:51:46 jmp exit 23:51:47 wat 23:53:50 Gregor: xv6 is kinda boring 23:54:25 :P 23:55:47 elliott: http://www.nordier.com/software/c3s.html <-- lawl 23:56:28 elliott: s/is/was/, I'm sure. 23:56:32 Gregor: Don't you mean "awesome"? 23:56:34 pikhq: wut? 23:56:35 At present, binaries are available for FreeBSD. Source code should be available at a future date. D'AWW BOO 23:56:42 pikhq: xv6 is V6 unix reimpl. for modern hardware 23:57:04 elliott: They no longer use SICP for the intro CS course; I'd imagine the rest of it has been dumbed down similarly. 23:57:11 pikhq: No, vx6 is a new thing. 23:57:13 2006. 23:57:15 Russ Cox was involved. 23:57:28 And no, all that was changed is 6.001 or whatever it's called :P 23:57:48 Gregor: What I would like to see is a ring 0-only OS implementing my syscall inlining idea but it pretty much requires a HLL-based OS... 23:58:00 BCPL Compiler 23:58:01 This is a port to V7/x86 of an old BCPL compiler from Martin Richards and the Tripos Research Group at Cambridge University. The port includes both an interpreter and an x86 native code generator. The original software dates from around 1979. 23:58:01 ACK 23:58:01 The Amsterdam Compiler Kit (ACK) was originally developed at the Vrije Universiteit, Amsterdam, and had its heyday during the 1980s. Several years ago, it was released under a Berkeley-style license. This port adds support for Solaris x86 and for V7/x86. 23:58:34 elliott: SMP in an intro OS course? Fuck MIT is hardcore. 23:58:50 pikhq: I TOLD YOU 23:58:55 I'm not sure it is though. 23:59:11 Gregor: What I would like to see is a ring 0-only OS implementing my syscall inlining idea but it pretty much requires a HLL-based OS... 23:59:15 anyone have any idea how to do this 23:59:18 without writing a new compiler? 23:59:18 :p 23:59:32 Or, well, without writing a *complicated* new compiler. 23:59:44 (for safety, that is; you can easily do this if you let processes do whatever they want) 2010-12-08: 00:00:20 Specifically you just need a language that doesn't let the process access anything you can't be sure it allocated :P 00:02:25 pikhq? Gregor? Nobody? C'mon, you guys are smart! Invent! 00:03:00 elliott: Here, let me wave my magic wand. 00:03:02 * pikhq waves 00:03:15 Voila, Gregor is now devoted to making it happen. 00:03:22 yay! 00:03:45 (I can make no guarantees about which universe possesses said Gregor. But somewhere out there, a Gregor is making it happen.) 00:04:03 Gregor: Gogogo 00:09:07 Gregor: GO 00:09:19 STOP 00:09:56 Gregor: HOW WOULD ONE CREATE SUCH A LANGUAGE SIMPLY 00:10:32 I don't understand how your request was language-related :P 00:10:34 Or compiler-related 00:11:03 -!- Mathnerd314 has quit (Ping timeout: 276 seconds). 00:11:52 Gregor: OK. I would like to see an OS that has "system call inlining" -- that is, every program runs in ring 0 (so "kernel space" in a way), and when it calls a system call, the compiler has the ability to take the source of the system call from the kernel and inline it into the program, hardware access and all, because there is no CPU-provided protection. 00:12:02 Gregor: This can be done safely by using a memory-safe language -- Python, Haskell, whatever. 00:12:16 Gregor: My question is: How can one write a simple compiler for such a language that would be suitable in this case? 00:12:32 (i.e., it doesn't allocate oodles of memory itself, implementing it is a job for two or three weekends, etc.) 00:12:53 Mmmmmmmmmmmmmmmmmmmmmmmmmmmmm 00:13:20 Gregor: Turn that mmmm into IDEAS! 00:13:30 Do you want that to be done statically or dynamically? If it's static, it would be difficult (at best) to verify the correctness of a binary before loading it. If dynamically, loading is slow in the best case, and inlining is less useful. 00:13:56 Gregor: You do realise that compilers like, say, GHC manage this perfectly well? :P 00:14:12 The question is basically "what's the simplest memory-safe language you can compile easily and semi-efficiently?". 00:14:29 elliott: The loader can't verify the correctness of a compiled GHC binary. 00:14:36 Gregor: It doesn't have to. 00:14:48 Gregor: Assume, for the sake of discussion, that the government shoots anyone who uses another compiler on sight. 00:14:56 So the asm code can be as dirty and perverted as it wants. 00:15:05 As well as a hex editor I suppose :P 00:15:11 Gregor: Indeed. 00:15:15 elliott: Well, it's a much simpler problem in that case. 00:15:23 Indeed! But still not EASY. :p 00:15:28 No :P 00:15:34 I'm still not doin' it ;P 00:15:43 Gregor: You just have to tell me HOW, y'see :P 00:15:49 Gregor: (In actual fact, the OS just doesn't let you run raw machine code, everything goes through the compiler. But let's go with the shot on sight thing.) 00:18:11 Doesn't seem that complicated, you just need any ol' compiler, with some notion of code provenance to allow some code to use special instructions or just raw ASM, and the ability to be integrated into your "kernel" 00:18:29 Err: It's an enormous TASK, but it's not COMPLICATED, just tedius :P 00:18:36 -!- Mathnerd314 has joined. 00:19:55 Gregor: "tedius" 00:20:36 I don't like using "ou" because it makes me feel British, but "tedios" doesn't read right. 00:22:56 Gregor: Being British isn't all that bad once you get past the sodomy. 00:24:05 Gregor: i find that a very dubius policy 00:25:25 -!- augur has quit (Remote host closed the connection). 00:28:19 -!- goneriku_ has joined. 00:29:40 -!- goneriku has quit (Ping timeout: 240 seconds). 00:29:43 -!- goneriku_ has changed nick to goneriku. 00:30:02 TODO: X11! Gunfights! Duel at dawn! Write a goddamn OS! YEAAAAAAAAAAAARGH 00:30:04 -!- elliott has quit (Quit: Leaving). 00:30:19 “The Defense Department forced all "war on terror" detainees at the Guantanamo Bay prison to take a high dosage of a controversial antimalarial drug, mefloquine, an act that an Army public health physician called "pharmacologic waterboarding."” 00:33:55 v7x86's lack of booting under qemu makes me highly unhappy :P 00:54:20 -!- Sgeo has joined. 00:58:52 -!- FireFly has quit (Quit: swatted to death). 01:03:34 -!- sftp has quit (Remote host closed the connection). 01:05:12 It is quite astounding how huge kdrive is :P 01:05:41 With every --disable option available specified, it's 1.4MB and has numerous library dependencies. 01:07:44 (624K UPX'd) 01:13:14 -!- whoami has joined. 01:14:17 `whoami 01:14:18 No output. 01:14:23 `run whoami 2>&1 01:14:24 /usr/bin/whoami: cannot find name for user ID 2029988 01:14:32 Yes, it is truly a mystery .. 01:14:45 on cmd.exe? :p 01:14:55 ... 01:14:59 Leave. 01:15:03 Windows references are not tolerated. 01:15:18 * oerjan swats Gregor -----### 01:15:21 :P 01:17:02 -!- Sasha2_ has quit (Read error: Connection reset by peer). 01:17:08 -!- Sasha has joined. 01:28:40 -!- Sasha has quit (Read error: Connection reset by peer). 01:28:51 -!- Sasha has joined. 01:35:23 -!- Sasha has quit (Ping timeout: 255 seconds). 01:36:09 -!- Sasha has joined. 01:39:34 -!- quintopia has quit (Remote host closed the connection). 01:40:04 -!- quintopia has joined. 01:40:31 -!- quintopia has changed nick to Guest95596. 01:45:04 -!- Guest95596 has changed nick to quintopia. 01:48:34 -!- whoami has left (?). 01:54:54 Gregor: Sure, dynamically linked. 01:56:00 pikhq: That's my point! It's friggin' enormous and we're only seeing half the size :P 01:57:05 Made me think about JSMIPS again for some reason ... 01:58:08 -!- augur has joined. 02:03:32 augur 02:03:34 -!- augur has quit (Remote host closed the connection). 02:03:37 >: 02:03:41 how rude! 02:04:09 -!- augur has joined. 02:04:23 hey augur 02:04:25 you're a zbber right 02:08:56 -!- augur has quit (Ping timeout: 264 seconds). 02:12:49 -!- nooga has quit (Ping timeout: 255 seconds). 02:13:17 -!- nooga has joined. 02:18:37 -!- Mathnerd314 has quit (Ping timeout: 245 seconds). 02:24:11 -!- Wamanuz has quit (Remote host closed the connection). 02:25:42 -!- Mathnerd314 has joined. 02:31:13 -!- oerjan has quit (Quit: Good night). 02:37:36 `translate the entire topic please 02:38:09 the entire topic please 02:42:41 wow 02:42:57 was that lag on HackEgo's end? 02:43:06 took like 30 seconds... 03:04:46 HackEgo tends to be slow the first time it's used after a while. 03:04:53 `translateto sv Should be faster now. 03:04:55 Bör vara snabbare nu. 03:05:37 `translate 该通道目前正在红色中国的控制权。请继续深奥的活动不受干扰。 03:05:38 The channel is currently being Red China's control. Please continue to esoteric activities without interference. 03:05:46 `translate 光榮的中華民國應收回這個主題的一些日子! 03:05:47 Glorious Republic of China should recover some of this theme day! 03:06:03 `translate חנוכה שמח, הגויים! 03:06:04 Happy Hanukkah, the Gentiles! 03:06:13 `translate sed อยู่เสมอดีกว่า Perl! 03:06:14 sed is always better than Perl! 03:09:42 -!- frontier has joined. 03:13:02 -!- augur has joined. 03:14:09 # ls --version 03:14:10 ls (GNU coreutils) 8.7 03:14:11 On JSMIPS 03:14:46 goneriku: hi 03:14:54 hey 03:15:10 hello? 03:15:12 I knew your nick was familiar 03:15:18 ok? 03:15:21 Zbber? 03:15:24 yes 03:15:32 ah so 03:15:34 who are you in isharia 03:15:40 I don't go to ish 03:15:46 only #erelae 03:15:47 I am gonorrhea there 03:15:48 who are you on the forum? 03:15:51 <- 03:15:53 horrible 03:16:08 Gonorrhea comes from goneriku though 03:23:23 -!- augur has quit (Remote host closed the connection). 04:12:24 -!- zzo38 has joined. 04:13:07 Here is a new idea please tell me how many things wrong with this: http://esoteric.voxelperfect.net/wiki/TNTNT 04:20:36 -!- Zuu has quit (Read error: Connection reset by peer). 04:21:44 I am sure there is something wrong with TNTNT.... 04:22:16 Anyone reading Machine of Death: ALMOND is hilarious 04:22:35 Please note I am not using my own computer today, but I am using my own IRC client PHIRC, because I installed it in my account on this computer. 04:23:26 Sgeo: What are you reading? 04:23:34 Machine of Death 04:24:32 What is that? 04:25:44 Collection of short stories about a machine that tells people how they're going to die 04:26:06 Very ambiguous though. "OLD AGE" could mean dying old or being shot by an elderly person, for example 04:27:15 -!- Zuu has joined. 04:27:32 OK. I suppose it is supposed to be ambiguous! 04:27:36 It has to be! 04:28:37 Today I made a big spider, it is one metre long. 04:28:48 "Oh, I almost forgot the best card: DISK 04:28:49 ERROR. I had to run that one three times before I was convinced 04:28:49 that the guy would die from DISK ERROR and there really was 04:28:49 nothing wrong with the machine. " 04:30:11 Sgeo: OK. So that is another thing. I do suppose it might be possible sometimes, for someone to die from DISK ERROR. 04:31:57 Please tell me how many things are wrong with [[TNTNT]] 04:42:28 http://machineofdeath.net/pod-almond 04:49:17 -!- Zuu has quit (Read error: Connection reset by peer). 04:55:46 -!- Zuu has joined. 04:58:24 -!- frontier has quit (Remote host closed the connection). 05:10:27 -!- augur has joined. 05:16:37 -!- wth has joined. 05:19:02 -!- wth has left (?). 05:21:06 -!- Zuu_ has joined. 05:24:52 -!- Zuu has quit (Ping timeout: 245 seconds). 05:48:55 -!- zzo38 has quit (Remote host closed the connection). 06:12:46 -!- Mathnerd314 has quit (Ping timeout: 240 seconds). 06:27:46 -!- nooga has quit (Ping timeout: 240 seconds). 07:14:04 -!- FireFly has joined. 07:15:26 -!- zzo38 has joined. 07:39:39 -!- MigoMipo has joined. 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:18:37 -!- MigoMipo has quit (Read error: Connection reset by peer). 08:29:32 -!- zzo38 has quit (Remote host closed the connection). 08:54:01 -!- goneriku has quit (Ping timeout: 245 seconds). 08:57:17 -!- FireFly has quit (Quit: swatted to death). 09:19:19 -!- Wamanuz has joined. 11:08:58 -!- nooga has joined. 11:23:33 -!- oerjan has joined. 11:46:10 -!- wareya_ has joined. 11:49:09 -!- wareya has quit (Ping timeout: 240 seconds). 11:51:00 -!- nopseudoidea has joined. 11:55:17 -!- nooga has quit (Ping timeout: 245 seconds). 11:56:52 -!- nopseudoidea has quit (Quit: Quitte). 12:11:43 -!- hagb4rd has joined. 12:12:45 hi 12:12:52 hi 12:13:06 nice topic 12:14:03 -!- wareya_ has changed nick to wareya. 12:18:55 -!- cheater99 has quit (Quit: Leaving). 12:23:27 -!- cheater99 has joined. 12:46:46 -!- Sgeo has quit (Read error: Connection reset by peer). 12:47:33 wat @ topic 13:23:10 -!- nooga has joined. 13:33:38 -!- sftp has joined. 13:45:41 -!- nopseudoidea has joined. 13:54:00 -!- nopseudoidea has quit (Quit: Quitte). 14:19:45 -!- hagb4rd has quit (Quit: hagb4rd). 14:32:31 -!- MigoMipo has joined. 14:34:36 -!- FireFly has joined. 15:19:21 -!- kar8nga has joined. 15:28:15 -!- kar8nga has quit (Remote host closed the connection). 15:30:14 -!- kar8nga has joined. 15:45:19 -!- alpha has joined. 15:46:43 -!- alpha has quit (Client Quit). 15:51:00 -!- elliott has joined. 15:52:14 17:05:12 It is quite astounding how huge kdrive is :P 15:52:14 17:05:41 With every --disable option available specified, it's 1.4MB and has numerous library dependencies. 15:52:14 17:07:44 (624K UPX'd) 15:52:19 Gregor: Link it with dietlibc. 15:52:27 CC="diet -Os gcc" CFLAGS="" 15:52:51 Gregor: (That'll auto-staticify.) 15:56:25 -!- geekthras has joined. 15:59:05 elliott: Doesn't compile :P 15:59:05 fucking internet echo chamber 15:59:08 -!- Phantom_Hoover has joined. 16:05:11 Gregor: How so? 16:05:14 Gregor: Tried uClibc? 16:06:10 Gregor: I would try, but I want a way not involving 70000000 tarballs. At least not unless you give me links :P 16:06:31 624K isn't bad, I have about 700 to 800K LZMA-compressed space to spend on X11. 16:16:50 -!- augur has quit (Remote host closed the connection). 16:17:26 -!- augur has joined. 16:17:34 Meh meh meh I want X11 but I'm unwilling to put any effort at all into it waaaaaaah 16:18:05 Gregor: Spending effort on Flinix is undoubtedly wasted time, and you've wasted most of it anyway :P 16:18:10 *wasted most of it for me 16:18:29 You need to get back to Kitten :P 16:18:57 Gregor: Sure; get me a coreutils! 16:19:21 Gregor: Or just rebuild KDrive for me :P 16:20:24 But OH NOSE 16:20:29 KDrive is under the X11 license! 16:20:42 And since that's not EXACTLY EQUAL TO GPL, compiling it with dietlibc is EVIL 16:21:32 -!- augur has quit (Ping timeout: 245 seconds). 16:21:37 elliott: Doesn't compile :P 16:21:43 Gregor: I THOUGHT YOU'D ALREADY TRIED HMMMM 16:22:15 What can I say, I'm evil *shrugs* 16:22:58 Gregor: OK, I'll never bother you ever again* if you link me to all the KDrive dependencies :P 16:23:00 *for at least five minutes 16:25:36 ineiros, you there? 16:28:47 -!- augur has joined. 16:29:18 -!- augur has quit (Remote host closed the connection). 16:29:50 -!- nooga has quit (Ping timeout: 260 seconds). 16:36:01 Phantom_Hoover, down? 16:36:23 It's fine for me. 16:36:33 up again 16:36:34 -!- nooga has joined. 16:37:01 Phantom_Hoover: Here now. 16:37:27 -!- MigoMipo has quit (Read error: Connection reset by peer). 16:38:52 ineiros, would you consider the MoveCraft mod for hmod? 16:39:03 s/mod/plugin/ 16:39:03 ineiros: Did you disable health w/ hMod? 16:39:06 What does it do? 16:39:26 ineiros, allows you to move ships clunkily. 16:39:43 Actually, I'll test it locally first, then report on the results. 16:40:35 ineiros: y/n/q? 16:40:46 (Q stands for Quooley, the third boolean.) 16:40:54 (Tell your friends.) 16:42:25 elliott: I think so. At least I didn't get any damage from lava. 16:42:30 Your mileage may vary. 16:42:36 W00t. 16:42:41 Phantom_Hoover: Maybe. 16:42:42 (I haven't said w00t since, like, 2004.) 16:42:44 Time to log in. 16:42:52 ineiros: Are there any warp points yet? :p 16:43:34 "Vote for net neutrality!" --yellow; this game is so totally neutral. 17:03:37 -!- geekthras has quit (Ping timeout: 245 seconds). 17:13:06 elliott, down? 17:13:38 Maybe so. 17:13:42 Vorpal: I swam down the waterslide. 17:13:49 elliott, which waterslide? 17:13:55 elliott, near the subtree? 17:13:55 Vorpal: The one where the stairs are. 17:14:09 elliott, the one that the cobble path goes around? 17:14:13 near the subtree? 17:14:16 Vorpal: No. 17:14:25 Vorpal: It's hidden in the beach's pool. 17:14:30 (The entrance.) 17:14:46 mhm 17:14:54 elliott, you mean that hole in the pool? 17:14:55 right 17:15:07 Yes. 17:15:23 I thought it was from the Flooding of the Way Up when I dug the underground part of the second staircase, but it doesn't seem to lead there. 17:15:24 -!- geekthras has joined. 17:15:41 elliott, quite a small place iirc 17:21:32 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds). 17:23:10 -!- goneriku has joined. 17:32:12 Vorpal: back up btw 17:34:18 -!- Phantom_Hoover has joined. 17:35:09 -!- augur has joined. 17:37:00 I should steal Tim Berners-Lee's heart and eat it and absorb his powers. 17:43:02 -!- sebbu2 has joined. 17:45:25 -!- sebbu has quit (Ping timeout: 265 seconds). 17:50:54 -!- nopseudoidea has joined. 17:57:44 -!- Zuu_ has changed nick to Zuu. 17:57:56 i should steal mark zuckerberg's heart and eat it to absorb *his* powers. the ability to make gobs of money seems imminently more practical. 17:58:19 "The affair that we have somehow managed to avoid calling 'Arsenicgate' ..." ...right 17:58:35 (http://www.guardian.co.uk/science/the-lay-scientist/2010/dec/08/2) 17:58:53 Vorpal: dwon? 17:59:57 -!- nopseudoidea has quit (Quit: Quitte). 18:04:26 -!- nooga has quit (Ping timeout: 240 seconds). 18:06:03 Phantom_Hoover: Hey, which blocks do I break in the ROU's cobble factory? 18:17:09 "Just spoken to a London-based spokesman for Anonymous. He wished to remain, er, anonymous." --The Guardian 18:26:59 -!- geekthras has quit (Ping timeout: 265 seconds). 18:27:27 heh 18:28:43 Slereah: I like how there's spokesmen now. 18:28:47 Like... everyone? 18:29:54 [[A 22-year-old spokesman, who wished to be known only as "Coldblood", told the Guardian that the group – which is about a thousand strong – is "quite a loose band of people who share the same kind of ideals" and wish to be a force for "chaotic good"."]] 18:30:04 Slereah: A THOUSAND 18:30:26 NEEEERD 18:31:40 "The spokesman said Anonymous plans to "move away" from DDoS attacks and instead focus on "methods to support" WikiLeaks, such as mirroring the site. "There's no doubt in [Anonymous members'] mind that they are breaking [the] law," he said of the latest attacks. "But they feel that there's safety in numbers."" 18:36:51 Vorpal: dwon? <-- no clue, just got back from eating 18:37:03 it's up 18:38:55 elliott, did you break the ROU factory? 18:39:02 Haven't even tried it. 18:39:12 ah, can show you in a bit which blocks 18:39:16 I need two bukkits, lava, and water right now :P 18:39:26 I have 40 cobbles. 18:39:29 elliott, fizzie is on and I told him what happened :P 18:40:29 elliott, also why not do like the rest of us: make buckets. 18:41:21 Vorpal: i am. i'm trying to find iron. 18:41:23 it is not easy. 18:41:23 -!- nooga has joined. 19:04:02 -!- cheater99 has quit (Ping timeout: 245 seconds). 19:10:55 -!- nooga has quit (Ping timeout: 260 seconds). 19:12:13 -!- nooga has joined. 19:12:57 Vorpal: down? 19:13:13 elliott, gah think so 19:14:14 up 19:18:26 -!- cheater99 has joined. 19:21:21 -!- sebbu2 has changed nick to sebbu. 19:27:47 -!- tswett has joined. 19:28:16 !bf +[.+] 19:28:26 19:28:36 * tswett nods solemnly. 19:33:16 Hey, where's fungot? 19:33:38 (It filters that sort of stuff.) 19:33:41 (I think.) 19:33:55 -!- fungot has joined. 19:34:13 ^bf +[.+] 19:34:13 .. !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ ... 19:34:21 (You thought wrong.) 19:34:27 Apparently so. 19:34:42 I thought it was <32, but maybe it was just cr/lf. 19:36:37 ^bf +++++++++[>+++++++++>++++++++<<-]+.>-.>+.<--.>--.<<. 19:36:54 Too bad all the replies are NOTICEs. 19:37:27 If they were PRIVMSGs, I could have put fungot's name in the echoable bit, and then it'd have babbled as a response to everyone. 19:37:27 fizzie: not it floors on odds too, it has lambdas! sort of :) 19:38:05 !bf-txtgen fungot 19:38:06 tswett: the future of oop: an abstract framework of abstract metaclasses. :p 19:38:18 73 +++++++++++++[>++++++++>+++++++++>+><<<<-]>--.>.-------.<+.>+.+++++.>---. [365] 19:38:18 fungot's words sound correct. 19:38:18 tswett: yes, but lisp. and it doesn't happen." 19:38:47 !bf +++++++++++++[>++++++++>+++++++++>+<<<-]>--.>.-------.<+.>+.+++++.>---. 19:38:47 fungot 19:39:08 fungot: I think you're forgetting something. 19:39:09 tswett: ( because file systems are first-class objects, which would go and track me down and deal me physical harm are hopefully rare here 19:39:13 ++++++++++[>++++++++>+++++++>+++>++++++++++<<<<-]+.>.>+++.<--.>--.>++.>++.+++++++++++++++.-------.-------.++++++++.+++++.<<<<. generates a CTCP "PING fungot" request, but it doesn't do anything special. 19:39:13 fizzie: might be fake nevertheless, he eventually obtained them, and the 19:39:18 fungot 19:39:18 tswett: fnord pasted " eval in a " fnord 19:39:39 It has all these different styles, in case you haven't seen 'em. 19:39:40 ^style 19:39:40 Available: agora alice c64 ct darwin discworld europarl ff7 fisher ic irc* jargon lovecraft nethack pa speeches ss wp youtube 19:40:01 -!- kar8nga has quit (Remote host closed the connection). 19:40:06 ^style youtube 19:40:06 Selected style: youtube (Some YouTube comments) 19:40:14 fungot: how stupid do you sound now? 19:40:14 tswett: i dont remember seeing any angels in tha game lol, and stop whineing... enjoy the video that literally everybody who sings high notes holy christ!! 19:40:28 That has a relatively small training corpus. 19:40:32 fungot: yup, you sound pretty stupid. 19:40:32 tswett: according to the fly-by-wire systems... :( 19:40:40 fungot: how long until you start repeating stuff? 19:40:40 tswett: final statement on this game in terms of scope there will be considered of the evening and a longer runway. 19:40:50 fungot: are you talking about airplanes? 19:40:56 fungot: hopefully rare indeed 19:40:56 oerjan: these were obtained, so you have quite a few facts about the hot-ness. but this is so much and i have ever seen!.....i myself am a hillary supporter,i'm not happy with the runway. 19:41:11 I think one of the videos included was some news clip about a plane crash. 19:41:16 fungot: what's wrong with the runway? 19:41:16 tswett: idk that just to say good job 19:41:33 "fisher" sounds pretty stupid occasionally too. 19:41:36 fungot: ah, yes, you're right; it would be ridiculous to expect everyone to know that. 19:41:36 tswett: pretty good. the plane 19:41:50 fungot: to be quite honest, though, I've seen better planes. 19:41:50 tswett: every time you're caught out, there wasn't anyone on the plane 19:42:01 He's very interested about planes. 19:42:17 fungot: yeah, I've noticed that, too. Where do you figure they all went? 19:42:17 tswett: you ridiculed yourself here. who taught you that? then maybe u kno- it is 19:42:23 You're going to hit the "amount of successive replies to any one person" limit soon, though. 19:42:30 * tswett nods. 19:44:30 ^style fisher 19:44:30 Selected style: fisher (Fisher corpus of transcribed telephone conversations) 19:44:42 fungot: How's it going? Isn't that what people say on the 'phone? 19:44:42 fizzie: very good actually it was something you know that that at least laughter 19:45:01 fungot: I think you're not supposed to say "laughter" out loud. 19:45:02 fizzie: ( ( noise)) affirmative action i don't know i 19:47:02 fungot: I liked that noise; can you make some more of the same? 19:47:03 tswett: hi where are you calling from 19:47:14 fungot: I'm calling from Allendale, MI. You? 19:47:14 tswett: by being too informed 19:47:40 fungot: oh, sorry. I didn't mean to give you too much information. 19:47:40 tswett: is it is 19:47:50 fungot: yes! 19:47:50 tswett: ( ( okay noise)) that have special human interest aspects that that appeal to me 19:48:43 fungot: I disagree; sometimes the best music is just really good noise. But yeah, actual music does have some pretty appealing special human interest aspects. 20:04:15 ehird: down? 20:05:07 Vorpal: seemingly. 20:05:30 Vorpal: I am fairly sure that my model works wherever you have a pool below, and is something like 3x3x2. 20:23:50 -!- FireFly has quit (Quit: swatted to death). 20:25:23 Vorpal: down? 20:25:47 -!- nooga has quit (Read error: Operation timed out). 20:25:55 -!- FireFly has joined. 20:30:39 elliott: seemingly. 20:30:57 tswett: seemingly. 20:31:54 mingle yes 20:32:27 oerjan: seemingly. 20:32:44 -!- nooga has joined. 20:32:52 Hi, everybody! 20:34:17 i don't know anyone by that name 20:35:59 ineiros, more annoying questions! 20:36:06 Can you turn the Nether on? 20:36:44 would anyone with an e2 account like to proofread my essay about how Facebook does not destroy real relationships? 20:37:19 Phantom_Hoover: You can make the world nether-only. 20:37:24 quintopia: Yes it does. 20:37:41 quintopia: (And lawl @ using e2, not being Sam Hughes, and it being 2010 all in conjunction with each other.) 20:37:45 elliott: so you want to critique my essay then? :P 20:37:56 I know of... two peo 20:37:58 elliott, but you can't make it accessible from the normal world? 20:38:00 ple in here that use Facebook. 20:38:03 Phantom_Hoover: Nope. 20:38:13 elliott: the essay i am rebutting is on e2 (written in 2008) so i created an account just to post it 20:38:24 elliott, curses! 20:38:42 elliott: if I am not one of them, then make that three. 20:39:00 tswett: Okay, three. 20:39:12 quintopia: You'll get mauled. 20:39:28 elliott: i welcome it 20:43:17 -!- Wamanuz has quit (Ping timeout: 240 seconds). 20:44:27 -!- goneriku_ has joined. 20:45:14 -!- Wamanuz has joined. 20:45:42 -!- goneriku has quit (Ping timeout: 245 seconds). 20:45:53 -!- goneriku_ has changed nick to goneriku. 20:50:14 `addquote Vorpal's pregnant. yes 20:50:40 `addquote (had real world issues) (to deal with) Vorpal's pregnant. yes 20:50:42 HackEgoooo. 20:51:26 239) Vorpal's pregnant. yes 20:51:27 239) (had real world issues) (to deal with) Vorpal's pregnant. yes 20:51:35 `quote 239 20:51:36 239) (had real world issues) (to deal with) Vorpal's pregnant. yes 20:51:38 yay 20:52:19 Vorpal: congrats! 20:52:41 Sounds like Minecraft! 20:55:49 fizzie, it was a timing issues 20:55:56 fizzie, I was answering a different question 20:56:00 elliott, it seems down 20:56:09 elliott, you will get bucket back as soon as I get on 20:56:22 Just as I joinened it goes down. Coincidence? I think not. 20:56:24 up 20:56:30 fizzie, yes I blame your viewing distance 20:56:41 My viewing distance, which is called "normal". 20:57:05 elliott: how does that work? does it detect if the latest quote is contained in the quote being added and replace it? 20:57:19 quintopia: No, it's just a clash with the VCS. 20:57:20 I got lucky. 20:57:42 hmmm 20:57:49 ik heb haar in je ogen :/ 20:57:53 quintopia: It did both separately and tried to merge the commits. 20:59:06 oh 21:00:00 seems like it might be a good feature to have though: if two very similar quotes are added close enough together, the less complete one vanishes 21:01:57 * Phantom_Hoover cannot get his own MC server running for some reason 21:02:09 [[ 21:00:09 /127.0.0.1 connected 21:02:09 21:00:14 Kicking /127.0.0.1: You need to log in! 21:02:09 21:00:14 /127.0.0.1 disconnected]] 21:02:24 (Client crashes.) 21:02:43 elliott: fllinix status? 21:05:34 Anyone know what I'm doing wrong? 21:05:40 elliott, you managed to get it working. 21:06:48 What is MC? 21:06:56 quintopia, Minecraft. 21:07:03 ah 21:07:46 elliott, was there anything you needed to mess with? 21:08:41 -!- Sasha2 has joined. 21:09:37 Phantom_Hoover: I have no idea what you did wrong. 21:09:40 Although... log in... hmm. 21:09:41 I forget. :/ 21:10:01 nooga: Flinix will go ahead as soon as I get KDrive small enough. You can help the effort by pestering Gregor to link me to all the dependency tarballs. 21:10:28 -!- Sasha has quit (Read error: Connection reset by peer). 21:10:30 nooga: Or, by convincing elliott that it's not magic, and the configure script will be quite happy to tell him of missing dependencies anyway. 21:11:02 Gregor: I'm lazy as FUCK. 21:11:46 elliott: If "FUCK" is an extreme form of "lazy" to you ... nah, I don't want to finish this sentence. 21:13:16 well 21:13:42 coudn't you just compress the whole thing and then decompress to ramdisk at boot ? 21:13:52 i mean the whole thing 21:13:58 that way you could cheat 21:15:56 nooga: duh, of course that's what i do 21:16:00 embedded initramfs LZMA-compressed 21:18:21 nooga: still small 21:19:54 Perhaps elliott gets all his sexual pleasure by lying on the couch and having erotic dreams. 21:20:24 Gregor: tswett presents a valid argument that, due to forgetting the context, I was utterly baffled by upon my first reading of. 21:21:21 * tswett gets a text: "Elliott and I will arrive on campus about 6:30. Don't hurry away from the meeting, tho. We can wait while you talk with the stats people." 21:21:31 tswett: IT'S ALL TRUE 21:21:48 elliott: just to bring you up to speed, you are now my baby nephew. 21:23:04 wtf, elliott is a nephew and his uncle is here? 21:23:42 what 21:23:46 Heck yes I'm elliott's uncle. 21:24:12 -!- goneriku_ has joined. 21:24:44 What the whatting what? 21:25:01 what-what in the what now? 21:25:33 -!- goneriku has quit (Ping timeout: 240 seconds). 21:25:37 -!- goneriku_ has changed nick to goneriku. 21:26:26 His mom is my sister. 21:26:53 you both like the letter t 21:27:06 It's not my fault my name has lots of Ts in it. 21:27:30 tswett: it's your fault you haven't chosen another one 21:27:43 Yeah. 21:29:21 `addquote elliott: just to bring you up to speed, you are now my baby nephew. wtf, elliott is a nephew and his uncle is here? what Heck yes I'm elliott's uncle. 21:29:29 240) elliott: just to bring you up to speed, you are now my baby nephew. wtf, elliott is a nephew and his uncle is here? what Heck yes I'm elliott's uncle. 21:32:54 `quote 21:32:56 112) think of all the starving kids in china who don't have rotting sea life to eat 21:33:01 `quote 21:33:02 165) you don't have an urethra, you're a girl. 21:33:08 ... 21:34:05 `quote urethra 21:34:07 165) you don't have an urethra, you're a girl. 21:34:22 There is a 100% likelihood that that is the only quote containing the word "urethra". 21:34:43 A naive statistician would interpret this to mean that there is a 100% probability of the same. 21:35:21 There is a 50% likelihood that there are two such quotes; 33% that there are three; 25% that there are four; and so on. 21:35:42 Since the total likelihood is infinite, it is obvious that all numbers are not equally likely. 21:36:46 Gregor: tswett: That was directed to me :P 21:36:59 Who are you talking to? 21:37:03 hmm, girls don't have urethra? 21:37:07 165) you don't have an urethra, you're a girl. 21:37:07 ... 21:37:07 `quote urethra 21:37:14 Girls have urethras. Short ones. 21:37:26 X_X 21:37:33 * Gregor kills you all :P 21:37:38 Gregor: I don't have a urethra, I'm a girl. 21:37:44 They go straight from the bladder to the outside world, unlike boys' stupid loopy urethras. 21:38:23 They remove their bladders and squeeze them out like a washrag. 21:38:37 detachable bladder! sweet 21:39:01 Blad, bladder, bladdest. 21:39:15 It's too bad that, all being male, we can't know the joy of detachable bladders. 21:39:26 Let's get sex changes! 21:39:28 ALL of us! 21:39:39 Oh, my mistake. The male urethra isn't loopy; it's S-shaped. 21:40:02 elliott: they probably don't make the bladder detachable as part of that 21:40:11 olsner: But then why would anyone do it? 21:40:18 dunno 21:40:42 Though, one of the curves is located entirely within the penis, and the penis doesn't have a constant shape. If your penis is straight, your urethra is sort of U-shaped. 21:41:15 Starting at the base of the penis, it goes down and back until it almost reaches the anus, and then it curves up and hits the bladder. 21:41:44 You can actually block the flow of--wait, is this TMI? 21:42:56 No. 21:42:59 Absolutely not! 21:43:10 Okay. 21:43:32 You can actually block the flow of urine by pressing in a certain spot between your legs. 21:45:07 heh 21:45:07 istr that's kind of a dangerous maneouver 21:45:27 how to log in to an existing X session using NX 21:45:45 afaik NX just doesn't do it like that 21:46:21 Pressing in that spot? 21:46:41 I seem to remember someone hearing that it's a dangerous maneuver and responding that no, it's not a dangerous maneuver. :P 21:46:55 I think someone said that there are nerves running through there, but pressing there won't cause any permanent damage. 21:47:08 Besides, whatever those nerves serve can't be very important. 21:47:38 elliott, Phantom_Hoover: down? 21:47:47 'twould appear so 21:48:02 tswett: it's pretty close to all the junk used for reproduction, urination and defecation... I think those count as pretty important functions :D 21:48:04 Vorpal: At least I got a bunch of impressive screenshots. 21:48:05 Phantom_Hoover, also ehird is official an insensitive douchebag, do you agree? 21:48:08 I think the burning killed the server. :p 21:48:12 elliott, on the fucking huge tree before? 21:48:21 officially* 21:48:33 Vorpal: (1) I did not intend to burn every tree. 21:48:39 (2) I did not think it would spread that far. 21:48:46 (3) I am actually sorry. 21:48:47 elliott, that's not really good enough. 21:48:48 elliott, (1) in fact you did (2) in fact it did 21:48:59 (1) That is not true at all. 21:49:01 elliott, and you know how far it spread. I told you before 21:49:04 (2) I had no idea, and couldn't stop it at that point. 21:49:09 "I didn't think" isn't a good enough excuse. 21:49:15 Phantom_Hoover, exactly 21:49:19 Did elliott cause a Minecraft forest fire? 21:49:27 tswett: Maybe. 21:49:29 tswett, yes 21:49:47 Phantom_Hoover: What am I meant to do, ritualistically swat myself? 21:49:59 Phantom_Hoover: (Maybe you can sympathise with Vorpal now ...) 21:50:00 elliott, THINK. 21:50:09 At least I didn't intend to do anything! 21:50:20 elliott, think and listen to what we tell you 21:50:23 elliott, we said no 21:50:25 you went ahead 21:50:31 elliott, you only have yourself to blame 21:51:03 so, you failed to make backups and that makes it elliott's fault that something broke? 21:51:32 I thought it was common practice for people to wreck the whole world once in a while :) 21:51:42 olsner, not on this server 21:52:07 Well, backups are taken, but we're not going to use them for a couple of trees. 21:52:12 brb 21:52:16 More like... 10. 21:52:17 -!- nooga has quit (Quit: Lost terminal). 21:52:48 girls don't have urethras 21:52:51 Phantom_Hoover: If it's any consolation, there are tons of eternal on-fire trees now and it looks sweet. 21:52:55 they don't pee or poo 21:52:59 Lovely crackly noise too. 21:53:13 So how huge was this tree? 21:53:22 Phantom_Hoover: Um, it's just the tree with a bunch of logs near the mine. 21:53:24 You've seen it. 21:53:57 Phantom_Hoover: You can come and see the damage if you want... 21:54:44 -!- Mathnerd314 has joined. 21:55:19 Phantom_Hoover, it was like 15 high 21:55:29 Phantom_Hoover, had had several grown together trunks 21:55:32 Phantom_Hoover, so huge 21:55:40 Phantom_Hoover, and now it is gone :'( 21:55:51 all due to that bastard ehir 21:55:53 ehird* 21:56:14 -!- nooga has joined. 21:56:20 -!- nooga has quit (Client Quit). 21:56:58 Vorpal: like Phantom_Hoover never destroys things. 21:57:14 Not that badly... 21:57:22 Phantom_Hoover: Vorpal might beg to differ. 21:57:24 I mean, I broke a lightstone and replaced it. 22:02:50 Phantom_Hoover: Oh well, I've gone back to spawn. 22:06:39 Whoa, TNT is much more powerful than I thought. 22:07:46 Phantom_Hoover: Oh? 22:07:52 Gregor: Wait, I can just install the proto packages locally, right? 22:07:58 (Toying with a local server. 22:09:28 Now, time to use hmod and an ion cannon. 22:09:40 Phantom_Hoover: Ion cannon? 22:10:06 Really really big explody thing. 22:11:28 Gregor: No? 22:11:31 Phantom_Hoover: wut. 22:11:51 elliott, fires a beam of pure explosion from the sky. 22:12:00 Phantom_Hoover: In... Minecraft? 22:12:08 With Hmod and a plugin. 22:12:24 What plugin? 22:12:42 Phantom_Hoover: Shush, you're going to get ineiros to shoot you with that thing if you talk about it. 22:12:54 OK. My lips are sealed. 22:13:13 fizzie: where is it. :p 22:13:16 http://wiki.hey0.net/index.php/Plugin:Low_Orbit_Ion_Cannon ? 22:14:00 Man, Vorpal would hate that :) 22:14:44 "This plugin will pretty much ruin wherever you click with it. Back up your maps first. Also, it has a habit of overloading the server and making it so that you have to kill it before any console commands work anymore." 22:14:47 Sounds very practical. 22:15:03 fizzie: Psht, it doesn't work as a user command. 22:15:07 LAYME 22:16:06 "18:36 ! Notch was kicked from #hey0 by chrisinajar [don't come back until minecraft is fixed]" 22:17:11 Heh, it shoots with diamonds? 22:17:13 #if HAVE_STDINT_H 22:17:13 #include 22:17:13 #elif !defined(UINT32_MAX) 22:17:13 #define UINT32_MAX 0xffffffffU 22:17:13 #endif 22:17:15 FFFFFFFFFFFUUUUUUUUUu 22:18:02 WaitFor.c:170: error: ‘fd_set’ has no member named ‘__fds_bits’ 22:18:30 haha, sucks to be you 22:19:57 " Ahh, I found out the hard way that this doesn't work if you have TNT nerfed. Now I have a huge diamond tower to remove because we're playing it survival like." 22:20:00 fizzie: ^ 22:20:08 elliott, you logged on, and then my trap broke again. Are you somehow involved? 22:20:17 Vorpal: Clearly. (No.) 22:20:25 elliott, I hope so 22:20:39 I don't have time to fix it again, Just going to close it off for now 22:21:48 Vorpal: Incidentally, snow at work, mobilephoneography, from the same window I've taken pictures from earlier once or twice: http://zem.fi/~fis/20101208_001-005.jpg 22:21:51 " 22:21:52 I received word from someone who was able to build Tiny-X from XFree86 22:21:52 4.2.0 with the diet libc! He attached a diff which I put on foobar." 22:21:53 *rgasm* 22:21:56 * oerjan swats elliott for arson -----### 22:22:23 oerjan: That's no Unicode-swatter yet. :/ 22:23:53 oerjan: ────▒▒▒ 22:24:08 oerjan: ═══▒▒▒ 22:24:12 oerjan: ════▒▒▒ 22:24:16 oerjan: ════▒▒ 22:24:19 Take your pick! 22:24:29 Gregor: http://web.archive.org/web/20071030182328/http://jusa.telco-tech.de/diet.html 22:24:31 Gregor: BITCHEN 22:24:40 ───⌨ <-- the keyboard-swatter. 22:25:20 ────☺ ────☻ 22:26:01 The Swatter is not to be manipulated for trifling charset reasons 22:26:03 * Phantom_Hoover fails at getting the ion cannon working. 22:26:56 elliott: XFree8FAIL 22:27:12 also i wish putty wouldn't show unknown chars as invisible space 22:27:18 Gregor: This is before the licensefuck. 22:27:33 Gregor: And don't deny that it'll be smaller :P 22:27:37 ───⌫ for a sparse-grid model, ───▩ or ───▦ for dense; I think those two ("square with orthogonal/diagonal crosshatch") are conceptually correct, but don't maybe render so well. 22:28:01 I think ────▦ is the best so far. 22:28:33 fizzie: those end chars all show as blanks for me 22:28:42 [ ] X420src-1.tgz 18-Jan-2002 15:43 25M 22:28:42 [ ] X420src-2.tgz 18-Jan-2002 15:43 22M 22:28:42 [ ] X420src-3.tgz 18-Jan-2002 15:43 8.9M 22:28:45 Gregor: Modular XFree86! 22:28:48 elliott: It'll be smaller ... AND LAMER. 22:28:58 Gregor: And, importantly, smaller :P 22:29:05 What's that? Lamesauce? 22:29:27 Gregor: If I can get tcc in, and maybe an old version of dietlibc, then I'll have a graphical, networked, latest-version Linux development environment on a single floppy :P 22:29:34 Actually it may not be smaller, since it's before KDrive but after XF dropped its simple servers I think, probably only has the monolithic server. 22:29:44 It IS KDrive. 22:29:53 At least the dietlibc mailing list circa 2002 suggests so. 22:29:56 When it was posted. 22:30:01 They used the letter K followed by the letters Drive. 22:30:04 Got the ion cannon working. 22:30:15 Phantom_Hoover: /ion_cannon 64 22:30:30 I think it literally just makes a 128-tall column of TNT with the given radius and detonates it at the top. 22:30:36 Phantom_Hoover: /ion_cannon 64 22:30:40 And it's diamond. 22:30:42 Well. 22:30:43 TNT-diamond. 22:30:46 elliott, you want the supercomputer for that? 22:30:50 Phantom_Hoover: YEP 22:31:05 elliott, you have it? 22:31:06 Gregor: (Xfbdev + kernel framebuffer support) or Xvesa: WHICH IS SMALLER IN TOTAL 22:31:09 Phantom_Hoover: NOPE 22:32:49 elliott: I would bet the former. 22:34:09 Gregor: Probably. But the framebuffer requires multiple drivers, no? :P 22:34:10 Maybe not. 22:34:26 Gregor: WAIT. Doesn't DirectFB have an X server emulator? 22:34:38 DirectFB can host XDirectFB, a rootless X server implementation that uses DirectFB windows for X11 top-level windows. XDirectFB is an interface that mimics the X11 interface through the DirectFB API to simplify running applications written for X11 on DirectFB. 22:34:41 JUST SAYIN' 22:35:08 elliott: Oh boy, now you're paying for DirectFB and X :P 22:35:19 Gregor: No, 'cuz XDirectFB will not be as big as X :P 22:35:37 elliott: It would be very nearly as big, especially when compared to Xfbdev. 22:35:48 Perhaps bigger than Xfbdev since it's rootless, which is an added complication. 22:36:07 elliott: However, all seven of DirectFB's users will thank you! 22:36:56 Gregor: Your words hurt me. 22:37:01 Gregor: WebOS uses it :P 22:37:03 So, all eight. 22:37:05 Just provide some sort of X protocol decoder/dumper, and have the user use hir imagination for the displaying. 22:37:06 And a half. 22:38:04 #define KDriveXServer YES 22:38:05 #define TinyXServer YES 22:38:05 #define XfbdevServer YES 22:38:05 #define XvesaServer YES 22:38:06 WebOS uses DirectFB?! 22:38:07 I get to MEASURE! 22:38:10 Gregor: Yes. 22:38:16 wtf 22:38:22 Gregor: And I use my soul to rape bears. 22:38:34 Well naturally. 22:38:58 elliott, down? 22:39:21 Vorpal: No idea. 22:39:25 elliott, heh up again and first message I saw was me leaving the game 22:41:11 Gregor: Ohboy, imake is my favourite thing ever :P 22:41:48 ~/flinix/bin/diet -Os gcc -O -I../../include -I../../exports/include/X11 -I../.. -I../../exports/include -I//include -DUSE_XWCHAR_STRING -DUSE_XMBTOWC -DX_LOCALE -Dlinux LinuxMachineDefines -D_POSIX_SOURCE -D_POSIX_C_SOURCE=2 -D_BSD_SOURCE -D_SVID_SOURCE -D_GNU_SOURCE -DX_LOCALE -DFUNCPROTO=15 -DNARROWPROTO -march=i386 -pipe -DCPP_PROGRAM="\"/lib/cpp\"" -DHAS_MERGE_CONSTANTS=`if ~/flinix/bin/diet -Os gcc -fmerge-constants -xc /de 22:41:48 v/null -S -o /dev/null 2> /dev/null 1> /dev/null; then echo 1; else echo 0; fi` -c -o imake.o imake.c 22:41:48 gcc: LinuxMachineDefines: No such file or directory 22:41:48 imake.c:1: error: -mpreferred-stack-boundary=2 is not between 4 and 12 22:42:41 -DHAS_MERGE_CONSTANTS=`if ~/flinix/bin/diet -Os gcc -fmerge-constants -xc /dev/null -S -o /dev/null 2> /dev/null 1> /dev/null; then echo 1; else echo 0; fi` 22:43:16 I'M SO GLAD THIS ISN'T AUTOTOOLS DURP 22:43:28 Gregor: I never said imake > autotools 22:43:29 EVER :P 22:43:39 True 22:45:12 -!- Sasha2 has quit (Ping timeout: 240 seconds). 22:49:04 Gregor: imake is in fact liquid pain :P 22:50:13 Gregor: Something just failed to build and it completely ignored it X-D 22:51:49 -!- Sgeo has joined. 22:53:56 /home/elliott/flinix/include/stdlib.h:114: error: conflicting types for ‘_Xmbtowc’ 22:53:57 ../../exports/include/X11/Xlib.h:4819: note: previous declaration of ‘_Xmbtowc’ was here 22:54:11 * Sgeo misread that as experts for a second 22:54:24 Experts in PAIN. 22:57:33 Gregor: This server is going to be gigantic, I bet :P 22:57:54 Gregor: Is the basic X protocol really that complicated? One would think there would be a trivial X-on-fb implementation. 23:03:06 ineiros, tried MoveCraft. 23:03:10 It is awesome. 23:06:07 * Phantom_Hoover → sleep 23:06:16 -!- Phantom_Hoover has quit (Remote host closed the connection). 23:06:41 -!- FireFly has quit (Quit: swatted to death). 23:09:08 -!- augur has quit (Ping timeout: 255 seconds). 23:13:54 elliott, there? 23:14:09 no 23:14:27 elliott, I looked at a mc map generator tool that allows you too zoom and such. Uses google maps for it. And I looked at their "example page". This was one: http://qt3minecraft.project357.com/map.htm 23:14:35 elliott, compared to that 128x128 is NOTHING 23:15:05 elliott, megascale engineering galore on that server 23:24:47 Vorpal: But none of it is 3D. 23:26:08 Vorpal: Well, OK, some of it is. 23:26:24 elliott, quite a lot of it is even. 23:26:29 Vorpal: Anyway: Fine then. I'll make it 1024x1024. 23:26:32 elliott, sure, most of the pixel art isn't 23:26:45 Vorpal: the 3D stuff doesn't look 128x128 to me :P 23:26:50 elliott, no. That server seems to allow free /give for everyone btw 23:26:59 elliott, no, but there is a LOT of it 23:27:00 No what? 23:27:11 elliott, (no, 128x128 is impressive enough) 23:27:45 elliott, just wow at the thing in http://maps.mcau.org/oldmain/ (linked from same site of examples) 23:27:52 huge car model 23:28:44 Wow. 23:28:53 Vorpal: The problem with >128x128 is that it can't be a cube :P 23:28:57 I think that car was edited in... 23:29:19 If not: As someone who hates hearing this all the time: whoever made that needs to get laid. 23:29:24 Possibly because of that :P 23:29:32 elliott, I can only presume it isn't solid 23:29:33 I like how there's random obsidians there. 23:29:43 -!- Goosey has joined. 23:30:35 Vorpal: I like the Arecibo message on that first link. 23:31:02 elliott, saw the 2D barcode thingy on it? 23:31:16 where? 23:31:43 elliott, uh, somewhere below the Arecibo message 23:31:45 oh 23:31:48 Vorpal: You mean a QR code. 23:31:59 elliott, yeah I said 2D barcode thus, I don't remember the name of it 23:33:49 elliott, anyway https://github.com/brownan/Minecraft-Overviewer 23:34:19 I've seen it before I think. 23:34:27 elliott, not sure what kind of load this puts on the server though 23:34:34 IIRC it's a cron job. 23:35:06 -!- myndzi\ has joined. 23:35:17 elliott, yes but I mean bw-wise 23:35:48 elliott, typical values on that page: "700mb worth of image files for map" 23:35:54 elliott, I mean, seriously... 23:36:02 elliott, I guess they need several different scales 23:36:09 That's not bad. :p 23:36:27 Vorpal: It would be cool if we could get the server to use an editing tool to edit something waaay away from civilisation into, like, a 2048x2048x128 block with bedrock all around it at level 0 and one door from the outside, then put one single door level with whatever land is nearby there, and a spiral staircase down. 23:36:31 Indoor city. 23:36:36 "Another example map, day: http://thedailyautist.com/map/day/ night: http://thedailyautist.com/map/night/ ~430K chunks (~1.8GB). Continuously runs incremental updates (using --chunklist) that take between 15m and 4h depending on player activity. Full map data (cache + tiles) for both uses ~64GB." 23:36:39 elliott, that looks bad ^ 23:37:00 thedailyautist.com -- best minecraft server domain name ever 23:37:02 elliott, barfstairs you mean 23:37:06 elliott, yes I noticed that too 23:37:10 elliott, but look at the size 23:37:16 Indeed. 23:37:18 Rather sprawling. 23:37:21 too 23:37:22 visually 23:37:41 Vorpal: Yes yes, barfstairs, but ... in fact, there's no reason they can't be straight stairs. 23:37:44 They wouldn't take up much of the total area. 23:37:52 hm 23:37:52 It'd be awesome. 23:37:56 -!- myndzi has quit (Ping timeout: 255 seconds). 23:38:11 elliott, sure, but do you realise what that size is like? 23:38:14 Vorpal: lol @ this griefing: http://thedailyautist.com/src/129149460290.png 23:38:17 elliott, it is several times * far 23:38:22 presumably the portal is griefing, dunno 23:38:41 Vorpal: I realise how big it is :P 23:38:48 elliott, the fire? 23:39:01 Vorpal: Oh, maybe. 23:39:06 Would be funny to fill someone's house with Nether portals. 23:39:29 elliott, luckily that is so much work that it wouldn't be done 23:39:34 (and no thanks, don't do it anyway 23:40:20 Vorpal: Are you on now? 23:40:36 elliott, no 23:40:50 elliott, and won't be going on until tomorrow evening probably 23:41:11 elliott, and if you do mess up something at my place then you will be the one to clean it up 23:41:58 fizzie: You on? :p 23:42:08 elliott, why do you ask btw? 23:42:25 Boring playing solo when I have no project. 23:42:46 -!- nooga has joined. 23:42:56 elliott, you have one. To map out the border of the 128x128 cube 23:43:07 elliott, using dirt or such to create markers so you can build within 23:43:23 Vorpal: no :P 23:43:24 elliott, you need to do that anyway at some point for the project 23:43:37 Yes, but not now 23:43:38 elliott, you don't want to mess up with glass :P 23:44:04 http://thedailyautist.com/src/129107585141.jpg lol, drama 23:44:11 elliott, going to build to the east? 23:44:12 cuz we have no drama on our server of course. 23:44:33 Vorpal: Maybe. 23:45:09 Vorpal: http://www.minecraftwiki.net/wiki/Minecart_Mania! i wonder if this works with hmod 23:46:00 elliott, I prefer vanilla minecarts. Well if they worked like for SP 23:46:07 the bugginess on MP annoys me 23:48:35 Vorpal: There's a new redstone thing. 23:48:39 I, uh, http://i.imgur.com/YuiKT.png 23:48:41 elliott, also I think it would work. Look at version history. Mentions hey0. Look at hmod forum hostname 23:48:59 elliott, what 23:48:59 Next update it seems. 23:49:30 Vorpal: It's somethin gto do with sound, apparently :P 23:49:31 elliott, some kind of music thing? 23:49:33 yeah 23:49:39 Organs it seems. 23:49:46 elliott, ouch that sound sucks 23:49:49 (organs I mean) 23:49:56 violins or pianos I would like 23:50:06 Oh shut up. 23:50:16 elliott, oh those are reeds right? 23:50:24 Dunno 23:50:47 elliott, can't think of any other with 4 things like that on a single block 23:51:07 and that is clearly glass and log down there 23:51:26 the last one ("unts") could be gravel or cobble I guess 23:51:48 elliott, where did you find that 23:51:57 twitter 23:53:17 elliott, issue with twitter: lack of context when reading one page 23:53:55 Vorpal: I know what I should call my Cube. 23:54:12 "There we go.. Got some sounds from @C418, implemented redstone and punch triggering, and it's all very silly now. :D" <-- sounds fun 23:54:18 elliott, companion cube? 23:54:20 -!- Sasha has joined. 23:54:24 Vorpal: The One State. 23:54:28 elliott, what 23:54:35 Vorpal: http://en.wikipedia.org/wiki/We_%28novel%29#Plot_introduction 23:55:09 -!- nooga has quit (Ping timeout: 240 seconds). 23:57:02 -!- myndzi has joined. 23:57:09 -!- nooga has joined. 23:57:21 night 23:59:38 -!- hagb4rd has joined. 23:59:51 hi 2010-12-09: 00:00:26 -!- myndzi\ has quit (Ping timeout: 255 seconds). 00:20:52 -!- Wamanuz has quit (Ping timeout: 240 seconds). 00:24:44 -!- hagb4rd has quit (Ping timeout: 255 seconds). 00:26:58 -!- nooga has quit (Read error: Operation timed out). 00:28:09 -!- nooga has joined. 00:28:11 -!- myndzi has quit (Ping timeout: 260 seconds). 00:49:46 -!- nooga has quit (Read error: Operation timed out). 00:51:35 -!- nooga has joined. 00:53:57 -!- zzo38 has joined. 00:59:30 -!- myndzi has joined. 01:03:46 -!- myndzi has quit (Ping timeout: 240 seconds). 01:06:01 Yay the A20 line turns on properly. 01:06:48 Good. 01:12:35 -!- myndzi has joined. 01:17:13 -!- myndzi\ has joined. 01:17:45 -!- myndzi has quit (Ping timeout: 260 seconds). 01:21:13 -!- elliott has quit (Quit: Leaving). 01:23:56 -!- myndzi has joined. 01:25:33 -!- myndzi\ has quit (Ping timeout: 265 seconds). 01:29:06 Do you like the idea http://esoteric.voxelperfect.net/wiki/TNTNT that you have to write a program in the form of a proof, and then run in the loop to figure if it is works that is the output? 01:29:30 What is its computational class? 01:31:05 -!- Goosey has quit (Remote host closed the connection). 01:31:29 Why is many things blocked from being typed in esolang wiki? These things should only be blocked for users that is not autoconfirmed accounts. 02:06:15 -!- zzo38 has quit (Remote host closed the connection). 02:28:13 -!- oerjan has quit (Quit: Good night). 02:32:38 -!- Gregor has set topic: This channel speaks not english. Please using other channel unless chinese! | 该通道目前正在红色中国的控制权。请继续深奥的活动不受干扰。 | 光榮的中華民國應收回這個主題的一些日子! | חנוכה שמח, הגויים! | sed อยู่เสมอดีกว่า Perl! | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 02:37:17 mi lojbo tavla 02:37:53 .i la lojban du lo bangrjonue 02:49:57 -!- goneriku_ has joined. 02:52:09 -!- goneriku has quit (Ping timeout: 272 seconds). 02:52:22 -!- goneriku_ has changed nick to goneriku. 03:00:26 -!- nooga has quit (Ping timeout: 255 seconds). 03:00:46 -!- nooga has joined. 03:13:14 -!- goneriku has left (?). 03:14:49 -!- augur has joined. 03:55:25 -!- augur has quit (Remote host closed the connection). 03:56:01 -!- augur has joined. 04:00:12 -!- augur has quit (Ping timeout: 240 seconds). 04:23:30 -!- augur has joined. 04:47:52 -!- zzo38 has joined. 04:48:37 This IRC client does not support sending non-ASCII (but it is capable to receive non-ASCII). I cannot type in Chinese. 04:48:46 Especially not simplified Chinese. 04:55:24 just think of everything as a "hanzi compound" 04:55:29 made up of multiple ascii characters 04:55:29 :P 04:56:25 It's a good thing nobody on this channel speaks Chinese then! 04:58:49 I am making the game with some ideas based on the ideas of Godel,Escher,Bach 04:59:08 And you also make the game with some ideas based on the ideas of Godel,Escher,Bach, too, please. 04:59:33 -!- Gregor has set topic: 這個通道是專門為追求深奧的話題在計算和編程語言。 | This is channel having esoteric programming computer language. We talking in chinese here, if english find other channel please! | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 05:03:22 -!- pingveno has joined. 05:09:37 Gregor: Indeed, we must make a point of using only languages nobody here speaks. 05:09:55 pikhq: Yes! 05:10:42 I want to find somebody Taiwanese to make the first part /perfect/ :P 05:10:44 -!- augur has quit (Ping timeout: 264 seconds). 05:11:12 Can you play Taiwanese mahjong? 05:11:36 I can play Japanese mahjong. 05:12:14 Oh, wow. There has been a message intentionally broadcast into space in Klingon. At the hypothetical coördinates of Qo'nos. 05:12:40 It invited Klingons to attend a performance of the opera 'u'. 05:12:48 zzo38: Although I'm sure that skill would bring me well on my way to understanding traditional Chinese, I cannot. 05:12:48 pikhq: ... must ... kill ... 05:12:51 pikhq: There is? 05:13:21 Gregor: Said opera was entirely in Klingon. 05:13:55 You do not need to understand much Chinese to play mahjong, except for the numbers 1-9 and the compass directions. They are the same in Japanese, also. 05:14:49 What does 'u' mean in Klingon? Does it mean anything? 05:15:20 zzo38: 一二三四五六七八九十北南東西? 05:15:40 zzo38: And it means "universe" or "universal". 05:17:15 The ' are significant. 05:17:29 pikhq: Yes those are the numbers and compass directions. However, ten is not used in most forms of mahjong. 05:17:41 Oh, right, you said "1-9" 05:17:43 And I do know the ' are significant, they do represent Klingon letter. 05:18:05 Wait, Star Trek used a ... system that corresponds with real space? 05:18:21 As opposed to just saying "Oh, we're x light-years away from Y"? 05:18:43 I do know that when writing Klingon texts using English alphabet, ' is a letter and uppercase/lowercase are used to represent different letters instead of grammar. 05:19:09 Sgeo: They used quadrants, isn't it? 05:19:47 ' is, like in most languages using it for a *phoneme*, the glottal stop. 05:21:14 zzo38, what about within a quadrant? 05:22:05 Sgeo: I don't know, actually. 05:22:52 Sgeo: Trek is one of those universes where everything that the fans can explain, has been. 05:23:01 The power of fanon! 05:23:39 What about "Threshold" ::trollface:: 05:24:17 Threshold has been retconned out of existence. 05:24:32 pikhq: Also, in mahjong, the directions are always go in the order East, South, West, North. The East player always plays first. In Japanese mahjong, East always pays and receives double (before other calculations). (If Wareme is used, Wareme also pays and receives double, but *after* other calculations.) 05:24:45 Do reruns of VOY show Threshold? 05:24:54 Sgeo: I hope not. 05:25:05 Sgeo: But anyways, the episode is officially not canon. 05:25:12 Sgeo: Because it sucked that much. 05:25:52 I should watch it! 05:26:02 But somehow it won an Emmy. 05:26:06 (for makeup) 05:26:27 Sgeo: Its *author* says it's shit. 05:27:04 Would it happen to be So Bad It's Good? 05:27:12 So Bad It's OHMYGODWHY 05:27:48 Much like the infamous Star Wars Christmas Special. 05:28:09 Sorry, *Holiday* Special. 05:30:43 Do you have any comments about TNTNT? 05:31:44 Is it Christian TNT? 05:32:07 Sgeo: No. 05:32:17 Look on the esolang wiki. 05:38:20 -!- myndzi\ has joined. 05:40:09 \o/ 05:40:16 :( 05:41:06 -!- myndzi has quit (Ping timeout: 240 seconds). 05:42:19 \o/ 05:42:19 | 05:42:20 /< 05:44:20 What is the computational class of RecurseMe? What is the computational class of SimulRecurseMe? 05:51:19 RecurseMe looks TC, but I'm tired 05:51:29 You have BF style test/loops 05:51:59 Although how is "subroutine" defined? 05:55:16 Sgeo: The only subroutine is the program itself. 05:55:25 But it can call itself recusively. 05:55:32 See the Talk page for more information. 05:56:00 So that's not a BF-style loop 05:58:13 -!- Goosey has joined. 05:58:59 Sgeo: Yes, correct, it is not a BF-style loop. The program is only allowed to call itself recursively. 06:08:59 -!- Goosey has quit (Ping timeout: 255 seconds). 06:18:06 -!- sftp has quit (Remote host closed the connection). 06:18:40 -!- augur has joined. 06:21:57 -!- Quadrescence has quit (Quit: omghaahhahaohwow). 06:30:26 -!- augur has quit (Ping timeout: 240 seconds). 06:38:24 I know the channel doesn't care, but I like to keep a log 06:38:46 n/m, I think I can do without 06:38:56 There is also the public log already available 06:40:40 I meant, I like to abuse that public log to keep a record of when I take certain medications (e.g. Tylenol) 06:43:40 Sgeo: O, that is what you mean. 06:45:24 What random number generating algorithm do you think is suitable for TeXnicard? Is the one in METAFONT acceptable? (If so, I can reference it in the bibliography of TeXnicard.) 06:46:54 I think the one where I go back in time to Tuesday and prevent ... it feels like I'm making a joke 06:46:58 I shouldn't joke 06:47:41 How can you go back in time to ... 06:47:51 -!- wareya has quit (Read error: Connection reset by peer). 06:48:31 I can't, obviously 06:48:33 -!- wareya has joined. 06:57:08 -!- Quadrescence has joined. 07:05:49 This is one of the old problems in anarchy golf: Emulate the printer-oriented 'banner' command in BSD. You are given input like: banner -w 48 ":-)" 07:06:34 This 'banner' program is installed in the system, but it is not in the path. In addition, it adds extra spaces to the end of the lines, which must be removed for this golf competition. 07:07:00 Without looking, do you know which programming language has the shortest solution, who the winner is, and/or how long the shortest solution is? 07:09:21 -!- augur has joined. 07:56:42 zzo38, it is probably shell 07:57:25 something along the lines of /path/to/banner $@|sed 's/ *$//' should work 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:01:50 I had to go look; but I like the "eval /*/*/`dd`" solution of building the banner command to invoke in the (not shortest) bash solution. 08:03:47 (It's given as input, not as a command line argument.) 08:04:32 (That is "not shortest" in the sense of "not shortest, globally"; it was the shortest shell one.) 08:08:58 Vorpal: That was someone's solution, to try that. But the shortest was vi 08:09:38 Actually, no, wait, that wasn't someone's solution. 08:09:44 (Except for the 'sed' part) 08:10:57 I do like the vi one too. 08:11:41 There are two in vi, both of them shortest than the shortest shell script solution, though. 08:21:06 There are a few strange things on anarchy golf, such as the "123" problem and the "Check for brainwave activity" problem. And others. 08:37:40 08:59:05 -!- hagb4rd has joined. 09:23:44 -!- ais523 has joined. 09:24:05 -!- augur has quit (Read error: Connection reset by peer). 09:24:09 -!- augur_ has joined. 09:25:01 -!- terry123 has joined. 09:38:07 -!- terry123 has quit (Ping timeout: 272 seconds). 09:42:52 -!- augur_ has changed nick to augur. 10:09:23 -!- augur has quit (Ping timeout: 255 seconds). 10:18:54 -!- augur has joined. 10:34:52 -!- hagb4rd has quit (Ping timeout: 245 seconds). 10:44:15 -!- oerjan has joined. 11:43:31 -!- ais523_ has joined. 11:44:01 -!- ais523 has quit (Disconnected by services). 11:44:04 -!- ais523_ has changed nick to ais532. 11:44:07 -!- ais532 has changed nick to ais523. 11:44:08 whoops 12:02:20 -!- nopseudoidea has joined. 12:16:50 -!- nopseudoidea has quit (Quit: Quitte). 12:30:05 -!- oerjan has quit (Quit: leaving). 12:38:11 hmm, I'm reading the Cocoa memory management conventions, because I was vaguely interesting 12:38:21 and it turns out they're exactly the same as the ones Perl uses internally 12:57:52 -!- atrapado has joined. 12:59:08 -!- augur has quit (Remote host closed the connection). 12:59:33 -!- augur has joined. 13:04:02 -!- augur has quit (Ping timeout: 245 seconds). 13:30:37 -!- nopseudoidea has joined. 13:31:29 -!- nopseudoidea has quit (Client Quit). 13:35:55 -!- Mathnerd314 has quit (Ping timeout: 255 seconds). 13:42:38 -!- ais523 has quit (Remote host closed the connection). 13:48:01 -!- fungot has quit (Ping timeout: 260 seconds). 13:56:58 -!- elliott has joined. 13:57:34 olsner: you've read the x86-64 manual, does it say anywhere "all x86-64 chips have to support the short method of turning A20 on (Fast A20)?" 13:57:37 say "yes" 13:59:21 -!- Phantom_Hoover has joined. 14:02:58 " Well, considering that I’m a computer science major, i figure that I know a great deal about programming and the such. However, I found this book to be simply incomprehensible. I’ve never wasted more time than I did trying to read this book. Worse than its failed attempts at instruction are its failed attempts at humor to “liven up” its instruction. After taking my class, i burnt this book." --Amazon reviewer, on SICP 14:03:13 s/" +W/"W/ 14:05:26 -!- sftp has joined. 14:11:57 elliott: ah, egositical CS majors. 14:12:15 Where would we be without them? 14:12:33 Answer: in a world with much better coding standards. 14:13:33 Have you read your SICP today? 14:13:51 I'd say they give CS a bad name, but it's known to be mathematically impossible to give CS a worse name than it already has. 14:14:01 Slereah: i'm actually going to buy the physical sicp :P 14:14:07 heh 14:14:32 Slereah: can you believe the price for the hardback is £60.75 from amazon, and that's a discount of £3.20! 14:14:39 elliott: "CS majors blamed for Holocaust, global warming." 14:14:41 although third-party sellers have it new from £49.99, ha ha, how cheap. 14:14:42 I can readily believe it 14:14:45 Phantom_Hoover: we already are 14:15:02 Because science books are shockingly expensive and used books sometimes criminally cheap :o 14:15:04 elliott: oh, congratulations on getting the CS major. 14:15:12 Once in a while, I buy one of those one cent book on Amazon 14:15:17 Phantom_Hoover: wut 14:15:21 I pay a thousand time more for the shipping 14:15:31 Slereah: criminally cheap? cheapest used hardback for SICP on amazon is £42.89. 14:15:36 Slereah: softback, £19.94. 14:15:47 elliott: "we". Implying you \in CS majors. 14:16:01 Hell 14:16:02 Phantom_Hoover: Oh. Well, it seems inevitable. 14:16:09 I once bought a $170 book :3 14:16:12 Well, not me 14:16:17 I asked for it for Christmas 14:16:36 Out of print hardback logic book 14:16:50 That's just asking for troubles 14:17:24 Slereah: bastard :P 14:17:37 Why meeee 14:18:09 elliott: what if you're murdered by a psychotic mental health worker? 14:18:29 didn't i tell you, they're all in my mind 14:18:36 Slereah: asking for an out-of-print hardback logic book 14:19:34 -!- Phantom_Hoover has quit (Quit: Page closed). 14:20:23 -!- nooga has quit (Ping timeout: 255 seconds). 14:20:49 Even worse 14:20:59 Somehow, I had to buy an out of print FEYNMAN book 14:21:08 How do you let a Feynman book go out of print? 14:21:17 elliott: The only thing the AMD64 manuals say about the A20 line is that the processor has it; it's an external line, even the short method (out to 0x92) involves external circuitry, so it's a system-level, not a chip-level property. (Okay, to be more literal there's also A20-related stuff in the virtualization bits, but anyhow.) 14:21:25 Plus, it was reedited a few months afterwards 14:21:53 fizzie: OK, rephrase: Has anyone ever made an x86-64 machine that does not support the fast a20 method; if yes, what is their address, and can I have a chainsaw? 14:22:02 -!- nooga has joined. 14:25:25 -!- augur has joined. 14:25:26 -!- augur has quit (Remote host closed the connection). 14:26:13 Not having it available sounds somewhat strange, but I can't seem to find any sort of standard mandating it. (Unless you're willing to limit yourself to EFI machines, where it of course is not an issue.) 14:27:54 -!- augur has joined. 14:32:26 The latest actual complaint about fast A20 not working I can find (with little searching) is someone's 500 MHz P3-mobile laptop, where the fast A20 method works at first, but breaks during hibernate, since only the keyboard-controller way is properly saved. 14:33:46 (And some random dude on the osdev forums claims "the BIOS function will use the best method, and will be supported on modern computers", but would you trust a random dude?) 14:37:16 fizzie: Does EFI specify that A20 is always on or something? Or does it just not have it at all? :) 14:37:42 And considering I get most of my info from the OSDev wiki, I'm sort of in the business of trusting random dudes, but not random dudes who haven't edited a wiki page, that's for sure! 14:37:59 And the full, safe keyboard controller method took up a whole 1/5th of my bootloader space. 14:38:10 EFI boot programs are ran in protected mode with a flat memory map, so I think it's safe to assume it's on at that point. 14:45:02 fizzie: OR IS IT 14:47:14 Hmn. 14:47:19 "The AMD64 Chipset Manuals guarantee I/O port 92, bit 1 to be available for use" says the talk page. 14:48:07 fizzie: Good enough for me. 14:48:29 fizzie: But now I really want a DS9K EFI machine that goes into protected mode with a flat memory map *without* turning the A20 line on. 14:49:26 Actually that Brendan guy from the forum's OS says it works even if turning the A20 line on fails, it just doesn't use those addresses... and his bootloaders all note all the faulty memory in the system so the OS can avoid using them... I think what we have here is someone absolutely devoted to the Right Thing and it's why he said his bootloaders (plural) took days each to write. :p 14:53:00 -!- ais523 has joined. 14:53:26 -!- augur has quit (Read error: Connection timed out). 14:54:26 -!- augur has joined. 14:56:45 that topic is /incredibly/ stereotypical 14:56:58 hmm, I don't know what the Chinese portion says, though 14:57:20 it'd be hilarious if it were a translated version of the English into similarly broken Chinese, except with the words "English" and "Chinese" swapped 14:57:44 This channel is dedicated to the pursuit of esoteric topics in computing and programming languages." 14:57:51 There *is* freely available machine translation nowadays. 14:58:31 indeed, but it's slightly broken 14:58:38 ais523: aww, I thought it was still the old one (saying the channel was in the control of Red China) 14:58:43 and thus, you can't distinguish intentionally slightly broken translations from perfect ones 14:58:51 It's often good enough for deciphering the meaning, anyhow. 14:59:48 -!- elliott has set topic: 這是通道有深奧的編程計算機語言。在這裡,我們用英語交談,如中文,請找其他渠道 | This is channel having esoteric programming computer language. We talking in chinese here, if english find other channel please! | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 14:59:58 in traditional chinese, just to make it more unhelpful than it already is 15:00:12 "This is the channel has profound programming computer language. Here, we talk in English, such as Chinese, please look for other channels" 15:00:38 "The channel is currently being Red China's control. Please continue to esoteric activities without interference." | "Glorious Republic of China should recover some of this theme day!" | "Happy Hanukkah, the Gentiles!" (last one in Hebrew) seems to have been mostly the previous topic. 15:01:05 ais523: i cleaned out the qdb, by the way; i forget if i told you 15:01:25 i had a dream today where there were only 4 quotes left in the qdb due to me removing all the crappy ones, but they were still numbered in the 200s 15:02:05 do you remember what the quotes were? 15:02:52 ais523: more than one line, I know that much 15:03:01 but no, I don't; I don't think I looked at the text in the dream 15:03:19 I had a truly hilarious dream last night, incidentally, but it made no sense on the meta-level 15:03:26 wat :D 15:03:43 normally, the dreams are inconsistent with reality, but you look back on it and think "that's the sort of dream it makes sense for me to have" 15:04:07 in this case, the dream was internally consistent, but it made no logical sense for me to be able to have them 15:04:20 21:24:45 Do reruns of VOY show Threshold? 15:04:22 Yes. 15:04:24 (90% sure) 15:04:50 ais523: i fear that even if you explained the dream this would make no sense to me :) 15:05:24 22:40:40 I meant, I like to abuse that public log to keep a record of when I take certain medications (e.g. Tylenol) 15:05:40 Sgeo: Please tell me you're worried you'll accidentally overdose on Tylenol even while being paranoid about it, so I can chuckle. 15:06:20 elliott: well, it contained a quiz show, and I didn't know the answer to some of the questions, yet I dreamed them anyway 15:06:29 as in, me in the dream didn't know the answers, but the person setting the questions did 15:06:45 ais523: name some questions and answers, and let's see if they're right IRL :P 15:06:48 now, that's an entirely plausible situation normally, yet; how could I know the answer to the question to be able to dream it, and yet not know the answer? 15:07:29 "You have some money. 15:07:30 [I'm korean so they will be won]" --http://golf.shinh.org/p.rb?kM4_ what is this i don't even 15:07:34 elliott: I can't remember all the details (in fact, I missed some of the questions within the dream, due to radio interference), but the nature of the quiz was such that even knowing the answer the questions were almost impossible to answer 15:07:40 "OMFG... There isn't any money... 15:07:40 I have to buy some pen..." 15:07:40 How sad... (What a stupid guy... And then.. You have to buy pen first!!!) 15:08:18 because as the quiz was being done over the radio, in order to avoid cheating, you couldn't answer in words, you instead had to come up with a piece of music that related to your answer and hum it 15:08:27 ais523: :D 15:08:42 ais523: i would listen to that 15:09:04 I remember one of the early questions had "pedantic" as its answer, and it was really easy except that neither I nor the other contestant could think of an appropriate piece of music 15:09:28 ais523: hmm, you know the anagolf challenge i made where you had to output one more each program run? what was it called? 15:09:37 1 2 3? 15:09:48 also, you made that? I noticed it, but there's no author information 15:10:12 It's just "123", if it's that one. 15:10:20 ais523: hmm, perhaps I did 15:10:21 I know I /solved/ it 15:10:35 no, i didn't make it 15:10:40 and my solution was the longest 15:10:43 silly egotistical mind :) 15:10:50 My solution was the only non-cheating one though, I think: 15:10:51 puts 1;x=File.read("test.rb").sub("puts","puts 1+");File.open("test.rb","w").write(x) 15:10:57 elliott: that's also cheating 15:11:10 ais523: it's not as cheating as $$%n 15:11:34 ais523: aha, I made this one: http://golf.shinh.org/p.rb?Calculator 15:11:40 it's much /more/ cheating for some of the large programs 15:11:54 which, nobody has solved without cheating, it seems 15:11:55 including you 15:11:56 because you can write the solution into files with a really large program, then read it back with a small one 15:11:58 or, well 15:12:00 without cheating much 15:12:19 ais523: I think it records the first size 15:12:24 no, it doesn't 15:12:29 in fact, they removed file save and load altogether 15:12:29 heh 15:12:31 to prevent abuse 15:12:39 "they"; you mean shinh 15:12:43 yes 15:12:46 ais523: that's really sad, I liked that solution 15:12:56 even if it was abusable 15:13:29 The Befunge solution for 123 is oh-so-complicated, since there's no PID, so you have to do it with ?, and you have to waste at least a second during the execution, all attempts at the same second get their random numbers seeded with the same. 15:13:34 ais523: how much will people hate me if I make a challenge which is to print out a string of data from /dev/urandom 15:13:49 so you have to try and rely in imperfections in the PRNG somehow :) 15:13:52 it'd just be boring, like hello world 15:13:58 urandom's cryptosecure 15:14:20 ais523: yes, but if the PRNG has a major flaw... 15:14:27 although it doesn't, of course 15:14:38 -!- augur has quit (Read error: Connection timed out). 15:14:41 ais523: also, I'm going to pipe it through cat -v 15:14:42 elliott: there was a hilarious anagolf question which wanted a sequence of numbers printed 15:14:46 so you can rely on the repeated M- and the like 15:14:47 and it was mersenne twister with seed 1 15:14:54 heh 15:15:07 it had a hilariously short solution in the languages which used mersenne twister and didn't seed by default 15:15:27 ais523: hmm, maybe I should seed a PRNG with random not-so-big numbers, and not reveal the seeds 15:15:35 so you can get a short program by brute-forcing what the seed was 15:15:57 And what the PRNG was. 15:16:03 I'd note that. 15:16:44 Non-crypto-oriented ones generally have better methods for finding the internal state than just brute-forcing. 15:16:59 cat -vet; a vet for cats. 15:17:06 fizzie: So I'd use a crypto-oriented one! :p 15:17:18 I'd make all the seeds less than a 8192 or so, so it's not "too" hard. 15:17:30 I'm still disappointed you can kill cat with just one kill(1) invocation, it should take nine 15:18:06 "Error: invalid title (use [a-zA-Z0-9_ ])" 15:18:07 pah 15:18:09 ais523: why? 15:18:10 oh 15:18:11 hah 15:18:23 -!- augur has joined. 15:18:25 You could also have a "--cat" flag for kill(1) that'd send the same signal nine times. 15:18:46 fizzie: no, no 15:18:49 fizzie: or just use -9 15:18:49 it'd be called curiosity(1) 15:18:57 ais523: -9 kills once with SIGKILL... 15:18:59 not nine times 15:19:03 beh 15:19:07 Yes, but it's the appropriate number. 15:19:09 -N is the signal id, not the # of times to kill. 15:19:11 elliott, feel free to chuckle 15:19:14 and it can't be blocked, either 15:19:22 Sgeo: So are you drunk from the vanilla essence, yet? 15:19:24 (I do /know/ what kill -9 does...) 15:19:32 ais523: are you suure :P 15:19:38 "Random data with redundancy from escapes" -- can anyone rewrite this in a better way? 15:19:48 I'm trying to suggest that the cat -v adds redundancy and thus compressibility into the data 15:19:52 elliott: well, it depends on platform 15:19:52 because of the M-s and the like 15:19:55 I'm far from certain what it does on Windows 15:22:18 anyone? :p 15:23:35 -!- Sgeo has quit (Read error: Connection reset by peer). 15:23:56 elliott: sorry, I was trying to remember what M-s did in Emacs 15:24:00 I might even have to C-h c to find out 15:24:11 it is a prefix, it seems 15:24:15 C-h c M-s prompts "M-s-" 15:26:44 M-s o runs "occur", and "M-s h r/u" does highlight/unhighlight a regexp. 15:27:09 This is irritating. 15:27:24 It seems that the only way to stay sane in a bootloader is to use the BIOS in unreal mode. 15:27:30 Which is ... ugh. 15:28:02 elliott: oh dear 15:28:20 for the exercise after the kernel keylogger, the students have to write a bootloader in asm, I think 15:28:50 I do not have high hopes 15:29:20 elliott: I didn't get mauled. I got Cooled. And I got some kind of award. And I thought e2 was supposed to hate noobs. 15:29:32 quintopia: Maybe it's been overrun by the facebookers. 15:30:01 ais523: seriously; talking to floppy disks and hard disks without the BIOS are both Pretty Damn Painful, especially if you would rather not have to make a multiple-stage bootloader and thus have to cram everything into 512 bytes. The BIOS lets you read from floppies and HDs easily, but only so much at a time. You can't really load the kernel in real mode, because you probably want to load it into the higher half of RAM (at least you will later on 15:30:01 wait what? 15:30:01 ). But you can't call the BIOS in protected mode. So you have to go into unreal mode. What's more, the BIOS can't write to high memory even if you're in unreal mode, so you have to load stuff into a scratch space, and then copy it into high memory. 15:30:09 ais523: Total. And utter. Cluster. Fuck. 15:30:28 ais523: quintopia decided he wanted to try being stupid, so he's written an everything2 node arguing that facebook doesn't damage relations 15:30:29 also, what /is/ unreal mode? I'm only aware of three x86 modes 15:30:50 ais523: unreal mode is real mode, except with a full flat 32-bit address space 15:30:58 "In x86 computing, unreal mode, also big real mode, huge real mode, or flat real mode, is a variant of real mode (PE=0), in which one or more data segment registers have been loaded with 32-bit addresses and limits." 15:31:13 ais523: did I mention that getting into unreal mode involves going into protected mode, and then doing crazy things to *undo* protection? 15:31:14 oh, so it's like oldfashioned huge pointers over a wider address space 15:31:22 was it deliberate? or a bug? 15:31:24 [[To enable unreal mode without using any undocumented features of the CPU, the program has to enter protected mode, locate a flat descriptor in the GDT or LDT or create such, load some of the data segment registers with the respective protected mode "selector", then switch back to real mode. When jumping back to real mode, the processor will continue using the cached descriptors as established in protected mode, thus allowing access to 4 GB of " 15:31:25 extended" memory from inside real mode.]] 15:31:26 ais523: deliberate 15:31:50 ais523: well, I lied slightly; you don't *have* to go into unreal mode to load a kernel into high memory 15:31:58 ais523: you could, of course, handle segment arithmetic yourself... 15:31:59 wait, is that how XMS is implemented? or is "extended" used for a different purpose there? 15:32:06 (assuming your kernel is bigger than one segment) 15:32:11 also, segment arithmetic is easy 15:32:11 ais523: "Some" DOS extenders, apaprently 15:32:15 *apparently 15:32:29 each segment starts 16 bytes from the one before 15:32:35 and as they're 64K long, they overlap 15:32:38 that's... it 15:33:02 ais523: segment arithmetic isn't easy if you have to cram loading a kernel with BIOS calls, copying memory around, printing diagnostics to the screen, enabling the A20 line, going into protected mode, and jumping to the kernel in 510 bytes 15:33:05 with x86 asm 15:33:33 why 510 bytes? 15:33:46 ais523: because that's how big a boot sector is 15:33:59 ais523: the last two bytes have to be 0x55, 0xAA 15:34:02 making up one sector 15:34:02 don't bootloaders just have a bootloaderloader in the boot sector? 15:34:12 oh, and I recognise 55 AA by heart 15:34:15 ais523: no. well, yes: multi-stage loaders. they're bloated. 15:34:23 getting stuff into 512 bytes isn't actually hard 15:34:34 it's the "this is deliberate and totally not a mistake" code for pretty much every hardware-based accidental-corruption check in existence 15:34:35 but you still feel a pang of irritation every time you realise you have to do something more 15:34:42 heh 15:35:29 (some /really/ secure checks require you to write a specific sequence of bytes on specific processor cycles to specific memory-mapped registers, to make absolutely sure it'll only happen during normal operation, but even then they normally have 55 AA in there somewhere) 15:36:18 ais523: the long, safe way of checking whether the A20 line is on involves comparing the 0x55, 0xAA signature with the value one megabyte higher; even then, if they're equal, you have to be paranoid and change one of them, and check the other 15:36:42 if you're really crazy, you even flush the cache in-between writing and reading (but only the 386 is affected by this, it seems, and it has no cache-flushing instruction) 15:37:09 olsner: what were you testing your OS with? qemu-system-x86_64 is pretty slow, although i guess it probably doesn't matter 15:37:42 the reason 55 AA is chosen, btw, is that it can't be sent unchanged through any plausible combination of shorted and broken wires unless they're arranged in a really weird order 15:37:56 heh 15:38:10 it's alternate wires, then the opposite set of alternate wires 15:38:20 ais523: behold the fun of boot sectors: 15:38:22 [[A device is "bootable" if it carries a boot sector with the byte sequence 0x55, 0xAA in bytes 511 and 512 respectively. When the BIOS finds such a boot sector, it is loaded into memory at a specific location; this is usually 0x0000:0x7c00 (segment 0, address 0x7c00). However, some BIOS' load to 0x7c0:0x0000 (segment 0x07c0, offset 0), which resolves to the same physical address, but can be surprising. 15:38:22 When the wrong CS:IP pair is assumed, absolute near jumps will not work properly, and any code like mov ax,cs; mov ds,ax will result in unexpected variable locations. A good practice is to enforce CS:IP at the very start of your boot sector.]] 15:38:42 (note, I've never actually heard of anyone being bitten by assuming it's 0:0x7c00, but you never know...) 15:39:43 knowing this course, they'll only care if it works on the computers they have there 15:40:13 -!- Sasha has quit (Ping timeout: 240 seconds). 15:40:14 also, absolute near is a weird combination of addressing modes to use in a 510-byte sector 15:40:30 given that you can go (signed 8-bit integer) with relative near, and it's shorter 15:40:40 ais523: well, you use an absolute jump to jump to the kernel 15:40:50 and it's more the "mov ax, cs; mov ds, ax" thing breaking, I think 15:41:40 elliott: presumably you'd set CS first 15:41:49 -!- augur has quit (Remote host closed the connection). 15:41:54 also, for some reason DOS seems to require bootable disks to start with a jump to the next location 15:41:56 ais523: um, no, because CS is initialised by the BIOS 15:42:10 elliott: I mean, it's likely a different CS for the bootloader and kernel 15:42:17 so you'd set it to a different value to be able to jump to the kernel 15:42:22 ais523: ...those were two separate things 15:42:24 ais523: well, you use an absolute jump to jump to the kernel 15:42:25 -------------- 15:42:27 and it's more the "mov ax, cs; mov ds, ax" thing breaking, I think 15:42:37 elliott: but after you set CS explicitly, absolute jumps work fine 15:43:02 ok, either you're not understanding me or I'm really not understanding you, so let's just change the subject :P 15:43:04 -!- Sasha has joined. 15:43:33 indeed 15:45:04 elliott: do you know the difference betwen near, far, and huge, incidentally? 15:45:21 ais523: vaguely; no idea what the last is 15:45:44 it's a DOS (well, any real-mode x86 platform) C compiler difference 15:46:01 far pointers will just assume they don't overflow from one segment to another, so you can only point to 64K of data at a time 15:46:30 huge pointers will add extra checks for segment overflow and adjust accordingly 15:46:57 so although far and huge are both 32-bit, huge are more expensive 15:47:08 (although, huge pointers could be merely 24-bit and work just as well; people just don't like such non-round number of bits) 15:47:13 (well, just as well from an information-carrying perspective, they'd be less efficient without the padding byte) 15:49:05 ais523: right 15:51:50 -!- MigoMipo has joined. 15:55:19 -!- nopseudoidea has joined. 15:55:54 -!- FireFly has joined. 15:56:23 -!- nopseudoidea has quit (Client Quit). 16:04:52 -!- Phantom_Hoover has joined. 16:15:49 -!- Wamanuz has joined. 16:16:41 -!- nooga has quit (Ping timeout: 260 seconds). 16:17:58 -!- nooga has joined. 16:18:22 -!- ais523_ has joined. 16:18:42 -!- ais523 has quit (Disconnected by services). 16:18:44 -!- ais523_ has changed nick to ais523. 16:25:58 !swedish hell 16:25:59 hell 16:26:14 !swedish The engines can't take it, captain! 16:26:15 Zee ingeenes cun't teke-a it, cepteeen! Bork Bork Bork! 16:26:39 Vorpal, you are now whatever Scotty was on the Enterprise, on the ROU. 16:26:51 You shall say the above phrase whenever possible. 16:43:53 -!- augur has joined. 16:50:20 ugh, this is irritating 16:59:22 Phantom_Hoover, is ROU finished? 16:59:29 Phantom_Hoover, also I doubt I will be that 16:59:31 Vorpal, nowhere near. 17:00:00 I'm building a reinforced bridge right now, although I just need to remove the scaffolding now. 17:00:07 Phantom_Hoover, oh and server side inventory will probably be implemented soon it seems. That means the end of throwing away tools and picking them up 17:00:19 I can only hope he adds kits 17:00:20 * Phantom_Hoover shakes his fist/ 17:00:39 Phantom_Hoover, also I suspect that means protocol changes, which means hmod won't work for a few days 17:01:04 Grr. 17:01:55 -!- Wamanuz has quit (Remote host closed the connection). 17:02:47 Phantom_Hoover, so any changes on ROU since yesterday? 17:03:00 Added bridge. 17:04:24 -!- nopseudoidea has joined. 17:04:37 -!- nopseudoidea has quit (Client Quit). 17:05:36 -!- Wamanuz has joined. 17:09:47 AL = number of sectors to read (must be nonzero) 17:09:47 CH = low eight bits of cylinder number 17:09:47 CL = sector number 1-63 (bits 0-5) 17:09:47 high two bits of cylinder (bits 6-7, hard disk only) 17:09:47 DH = head number 17:09:48 DL = drive number (bit 7 set for hard disk) 17:09:50 ES:BX -> data buffer 17:09:52 This is what we call "a bad API". 17:10:47 ais523: http://golf.shinh.org/p.rb?Random+data 17:13:34 ais523: hey, Brain Raiter competes on anagolf! 17:13:36 http://golf.shinh.org/reveal.rb?123/breadbox_1180162215&out 17:13:50 unless there's another person going by breadbox who does crazy-small ELF files 17:21:48 ineiros, there? 17:25:58 elliott, that list of register uses. Is it for some BIOS call or? 17:26:12 Vorpal: Yes; reading sectors from floppy-or-hard-disk. 17:26:29 elliott, a pity they didn't invent LBA back then 17:26:45 Vorpal: The issue being that the drive interface was totally shoehorned onto the floppy interface, making it a bitch to support loading from both, thus defeating the point of unifying the calls :P 17:27:22 Vorpal: Amusingly: ". 17:27:23 In order for BIOS to overcome this limit and successfully work with large hard drives, a CHS translation scheme had to be implemented in BIOS disk I/O routines which would convert between 24-bit CHS used by INT 13H and 28-bit CHS numbering used by ATA." 17:27:25 elliott, I don't see why you couldn't just use sector from start of disk 17:27:29 So it's getting translated to LBA anyway. 17:27:30 and length in sectors 17:27:39 oh and data buffer of course 17:27:41 and drive number 17:27:45 Vorpal: Um, because the BIOS call doesn't work like that? 17:27:54 elliott, yes, badly designed :P 17:28:15 elliott, also 28 bits is not LBA 17:28:21 elliott, iirc LBA is 48 bits or such 17:28:27 No it's not. 17:28:37 IDE standard included 22-bit LBA as an option, which was further extended to 28-bit with the release of ATA-1 (1994) and to 48-bit with the release of ATA-6 (2003). Most hard drives released after 1996 implement Logical block addressing. 17:28:47 elliott, ah yes a 48 bit one exist 17:28:52 And 28-bit. 17:29:00 elliott, presumably modern BIOSes handle the 48-bit one? 17:29:04 I'm staring at the vx6 boot sector source (partly in C, heh) and it seems to use IO ports to actually talk to some disk controller -- dunno whether floppy or HD or both -- so I'm going to see if I can find any information on that. 17:29:14 Vorpal: I don't think you can address anything that high with that BIOS call. 17:29:24 elliott, vx6? 17:29:33 elliott doesn't preoccupy himself with "modern" concerns. 17:29:38 Sorry, *xv6. 17:29:46 elliott, so we would run into issues with putting boot partition at the end of a modern 1 TB disk? 17:30:03 Vorpal: A Sixth Edition Unix-alike written in C for x86, developed 2006 by Russ Cox et al., for MIT's OS course. 17:30:09 (Replacing /actual/ Sixth Edition Unix.) 17:30:13 (Which was chosen in 2002.) 17:30:24 (Blame Lions for his commentary, I guess.) 17:30:29 wait, unix. As in the original unix? 17:30:36 No, as in eunuchs. 17:30:38 (original: not a fork or such) 17:30:41 Yes. 17:30:47 Bell Labs Research Unix. 17:31:07 Vorpal: It is a common pedagogical OS because of http://en.wikipedia.org/wiki/Lions%27_Commentary_on_UNIX_6th_Edition,_with_Source_Code. 17:31:10 huh 17:31:35 I'm just looking at xv6 because it's a very small boot sector that does most of what I want and it's really short, so I can use it for pointers to useful material :P 17:31:52 elliott, but hm why doesn't it use the bios? 17:32:06 bbl food 17:32:12 I don't know, I'll bring out my mind reader device and get back to you. 17:43:19 elliott, well maybe there was some docs? 17:43:31 Why do they need a reason not to use the BIOS? 17:43:52 elliott, for floppy I suppose it is portable, but what about harddrive controllers? 17:44:17 elliott, I mean, considering the huge number of drivers that the linux kernel has for different ATA controllers 17:48:25 waitdisk(); 17:48:26 outb(0x1F2, 1); // count = 1 17:48:26 outb(0x1F3, offset); 17:48:26 outb(0x1F4, offset >> 8); 17:48:26 outb(0x1F5, offset >> 16); 17:48:26 outb(0x1F6, (offset >> 24) | 0xE0); 17:48:28 outb(0x1F7, 0x20); // cmd 0x20 - read sectors 17:48:31 Doesn't look particularly unportable to me :P 17:48:34 Looks like IDE. 17:48:40 And IDE is really simple and universal. 17:56:08 I'm just looking at xv6 because it's a very small boot sector that does most of what I want and it's really short, so I can use it for pointers to useful material :P <-- might not work that well if they point to a different segment... 17:57:16 ais523: That was a joke, yes? 17:57:23 pointers, harr harr 17:57:24 I was actually expecting Vorpal to say that seriously, so ... 17:57:34 (Well, not with the segment thing, just "EH???") 17:57:45 elliott: why do you have to ask? I'm not Vorpal 17:57:53 -!- nooga has quit (Ping timeout: 240 seconds). 17:58:12 ais523: talking to vorpal is Vorpal-whoosh-paranoia-inducing 17:58:25 I apologise, it was a rather bad pun 17:58:27 ais523: incidentally, 17:58:28 > In my view, this (common) view makes nomic an uninteresting game of 17:58:28 > pedantic, and unrealistic legalese-wrangling. I personally find scams 17:58:28 > super-boring, and would much prefer it if Agora was a game of politics 17:58:28 > rather than legislation. But politics requires a grounding in some other 17:58:28 > activity. 17:58:31 --Michael Norrish 17:58:47 ais523, hah at that pun 17:58:48 (in reply to the "getting a loophole through is the fundamental gameplay of a Nomic" sentiment) 17:58:51 elliott: I replied to that, quoting it at me isn't going to be massively useful unless you have further comments 17:58:57 ais523: oh, you did? 17:58:58 so you did. 17:59:03 I didn't realise :) 17:59:06 -!- atrapado has quit (Quit: Abandonando). 17:59:08 Vorpal: no, not hah, it was a terrible pun 17:59:12 even ais523 admits that 17:59:21 elliott, I disagree though 17:59:34 well, you're wron 17:59:35 g 17:59:51 -!- nooga has joined. 17:59:57 ais523: I've replied too, and it seems like I basically agree with you except I addressed a different part of his point 18:00:04 elliott, is there any absolute truth when it comes to what is a good pun? Or any absolute truth at all 18:00:18 oh, some relay involved is being slow 18:00:18 Vorpal: Yes. 18:00:33 ais523: I only posted it a few minutes ago. 18:00:46 elliott, how can you know. Maybe thinking such an absolute truth exists is not absolute either 18:00:50 bbl 18:00:54 * elliott reads one of Norrish's papers 18:00:56 [[ Expressions in the programming language C have such an 18:00:56 under-specified semantics that one might expect them to be non-deter- 18:00:56 ministic. However, with the help of a mechanised formalisation, we have 18:00:56 shown that the semantics’ additional constraints actually result in a large 18:00:56 class of C expressions having only one possible behaviour.]] 18:01:08 Vorpal: because it was objectively unfunny and everyone who disagrees is both a Nazi, a hamster, wrong, bad, and evil 18:01:20 " However, our Cholera formalisation [6,7] is a completely formal se- 18:01:20 mantics for the bulk of the C language. It is formulated in a structural 18:01:20 operational style (see, for example, [2]) and is embedded in the HOL the- 18:01:20 orem prover [1]." 18:01:22 catchy name! 18:01:52 "The bulk of" 18:01:53 -!- Wamanuz has quit (Ping timeout: 255 seconds). 18:02:03 I'm betting that means it lacks casts and unions :P 18:02:11 elliott: I think it's funny the first time, it's just that that particular pun is coming up far too often 18:02:19 Gregor: http://www.cl.cam.ac.uk/~mn200/PhD/cholera-model.dvi 18:02:22 (doesn't open in my evince...) 18:02:29 Gregor: http://www.cl.cam.ac.uk/~mn200/PhD/esop1999.pdf the one i'm reading 18:02:32 hmm, evince can normally do dvi just fine 18:02:37 indeed 18:02:52 oh, I keep forgetting we have basically identical computers 18:03:06 it just... doesn't seem right, given our differing tastes in hardware 18:03:11 ais523: how is our hardware relevant here? or do you mean software, too? :) 18:03:32 admittedly, I don't actually have many programs installed here at all, over the base Debian install 18:03:38 Perhaps that's because it's 217 pages :P 18:03:42 elliott: our software isn't as similar as our hardware 18:03:52 and the answer is, it isn't relevant but I was reminded of it 18:03:59 emacs, xchat, minecraft, ghextris, ex falso appear to be all the gui apps i've installed 18:04:05 much more command-line stuff, obviously 18:04:17 ais523: I actually had no idea this model was in any way related to yours when I bought it 18:04:40 ais523: admittedly, there was not much choice (all the others were big, bulky, heavy machines with low battery life and terrible keyboards) 18:04:44 elliott: dvips handled it :P 18:04:52 -!- oerjan has joined. 18:05:00 well, and also super-super-crappy 3-penny netbooks 18:05:16 Gregor: * Omissions: The model doesn't do goto statements, switch statements or floating point values. 18:05:16 * Basic flaws: The model assumes that every integral value has a unique representation in terms of bytes. This is not true, though it is often true of C implementations. 18:05:26 I'd rather do without union than switch and goto :P 18:05:28 -!- Sasha has quit (Ping timeout: 265 seconds). 18:05:39 Vorpal: because it was objectively unfunny and everyone who disagrees is both a Nazi, a hamster, wrong, bad, and evil <-- Godwin! 18:05:47 Vorpal: you just say that because you're a hamster 18:05:48 elliott: Actually I'd say switch and goto are more reasonable to elide ... 18:05:58 elliott, Hamwin's law! 18:06:13 Gregor: I use switch and goto constantly, unions very rarely :P 18:06:19 Gregor: Have you seen https://staff.aist.go.jp/y.oiwa/FailSafeC/index-en.html, btw? 18:06:36 uh minecraft.net is down it seems 18:06:42 elliott: Well, there's no reason to get rid of unions if you're leaving in arbitrary pointer casts, so if they removed unions they'd probably be removing arbitrary pointer casts too. 18:07:08 Gregor: True dat. 18:07:22 elliott: I've heard of Fail-Safe C, haven't really looked into it. 18:07:39 Hmm, http://wiki.osdev.org/IDE looks much more complex than the xv6 code. 18:07:59 err what 18:08:13 fucking what the fuck 18:08:32 Vorpal: what. 18:08:32 getaddrinfo(whois.crsnic.net): Name or service not known 18:08:38 elliott, .net is down for me 18:08:45 elliott, ripe.net = DNS error too 18:08:48 just as an example 18:08:51 minecraft.net works for me :P 18:08:54 elliott, .com and such works fine 18:09:04 this is because networks are evil and corporations are awesome, duh 18:09:21 elliott, and .se is up and .uk is down. Yes the pattern fits 18:09:33 OS.c:14:42: error: asm/page.h: No such file or directory 18:09:34 wat 18:09:53 stupid xfreeeightysurcks :P 18:09:57 elliott, care to give me result of: host minecraft.net 18:10:10 Vorpal: minecraft.net mail is handled by 10 mx.hover.com.cust.hostedemail.com. 18:10:17 elliott, any other line? 18:10:21 There's also some line about "minecraft.net has address 194.28.157.42" but who knows what that's about! 18:10:26 ... 18:10:30 thanks anyway 18:11:01 there we go, in /etc/hosts 18:12:30 Vorpal: do you like hides and bacon 18:12:34 because uh 18:12:36 those trees 18:12:40 produce large amounts of it regularly 18:13:00 elliott, what 18:13:02 :O 18:13:05 i need some of them 18:13:07 elliott, how can tree produce it? 18:13:15 Vorpal: fire. 18:13:21 elliott, ah well, no thanks 18:13:28 They burn constantly now :P 18:13:45 elliott, so you didn't clean up after yourself? 18:14:41 Vorpal: You would prefer a bare forest? 18:14:48 There is no lava any more, just trees that burn. 18:14:57 It's quite pretty actually. 18:15:37 i wonder if california becomes littered with bacon every few years 18:16:09 dpkg: error processing linux-headers-2.6.32-5-686_2.6.32-28_i386.deb (--install): 18:16:09 package architecture (i386) does not match system (amd64) 18:16:11 elliott, I would like a beautiful natural forest yes 18:16:13 They're headers, you dumb-fuck package manager. 18:16:35 elliott, they probably only include the ones for this arch 18:16:44 I want the i386 ones :P 18:16:47 On purpose. 18:16:51 elliott, like include/asm/386 or such 18:16:55 I'm cross-compiling. 18:17:00 It's asm/page.h I want. 18:17:09 elliott, well then I think you are doing it down 18:17:11 wrong* 18:17:17 wtf at that typo 18:18:12 Vorpal: No, Debian literally has no cross-compiler support. 18:21:08 what's a verb for "to make transparent"? 18:23:33 Transparify :P 18:23:39 Clarify? 18:24:57 Opacify? 18:25:23 Uncolor 18:25:34 (or uncolour) 18:25:56 quintopia: colour != transparency 18:26:01 Phantom_Hoover: I'm not an opacifist. 18:26:33 elliott: but everything that is not transparent has a color, and hence, to uncolo[u]r would be to make transparent 18:26:35 Deopacify :P 18:28:15 Maybe I'll port http://www.colorforth.com/ide.html to asm. :p 18:28:57 Transpee. "I totally transpeed that texture." 18:29:57 this conversation is becoming quite cisparent 18:30:15 07:07:29 "You have some money. 18:30:15 07:07:30 [I'm korean so they will be won]" --http://golf.shinh.org/p.rb?kM4_ what is this i don't even 18:30:26 http://www.osdever.net/tutorials/view/lba-hdd-access-via-pio So this is what xv6 uses. 18:30:29 in case this is confusing you, won is the south korean currency unit 18:30:35 oerjan: orite 18:30:40 oerjan: the rest of the thing makes no sense though still :P 18:30:57 heh 18:31:33 Vorpal: It seems to me that LBA28 can address the first 128 gigabytes of any disk. 18:31:38 Apparently Bochs doesn't do LBA48. 18:32:08 "All ATA drives should support this way of addressing, the problem with LBA28 Addressing is that it only allows access 128GB to be accessed, so if the disk is bigger than 128GB, it should support the LBA48 Feature Set." 18:32:25 I'm just going to use LBA28 for now :P 18:33:04 PIO seems to be a DMA predecessor. 18:33:05 (also north korean actually, but i somehow doubt that was meant :D) 18:33:30 In the context of doing that in a boot loader, I wonder whether that sort of thing will let you USB-flash-boot, though; do they actually do IDE-controller-hardware-emulation, or just "make the BIOS disk routines be able to read the boot media"? I'd guess the latter. 18:33:47 PIO is older, but pretty much completely unrelated to DMA 18:33:51 different ways of sending data 18:34:08 olsner: same goal, though 18:34:20 fizzie: I imagine they'll do PIO. Prolly. 18:34:44 Gregor: SO with imake howwww do you make it not build a component exactly. 18:35:02 elliott: As soon as X11R7 came out, I put imake entirely out of my mind :P 18:35:20 Gregor: I DON'T WAAANT TO BUILD XFTTTTT 18:35:26 er 18:35:27 Xaw 18:35:27 Toooooo bad. 18:35:31 Toooooo bad. 18:35:31 no wait xft too :D 18:35:36 xftlex.l: In function ‘XftConfigLexDone’: 18:35:36 xftlex.l:274: error: ‘XftConfig_current_buffer’ undeclared (first use in this function) 18:35:36 xftlex.l:274: error: (Each undeclared identifier is reported only once 18:35:36 xftlex.l:274: error: for each function it appears in.) 18:40:51 Gregor: At this point, I'm considering just writing my own tiny X that runs on a framebuffer device :P 18:41:01 elliott: Do it. 18:41:04 elliott: DOIT 18:41:25 elliott: Make sure to just make it xlib compatible, and not actually be client-server. 18:41:41 Gregor: Why? Are domain sockets so big? :P 18:41:44 olsner: Why the enthusiasm :P 18:41:57 because you are doing it and not him 18:41:59 Gregor: (I was going to write my own miniature Xlib too.) 18:42:10 elliott: Because people are so bitchy about X11 being a "network" protocol :P 18:42:26 Gregor: BUT THEN WHAT OF ALL THE TWO PEOPLE WHO USE XCB 18:42:39 elliott: because it sounds better than all of your messing about with XFree 18:43:06 elliott: implement it halfway so that they thing it works and then it blows up and eats everything 18:43:09 olsner: you just want me to stop whining :D 18:43:12 *think 18:43:16 elliott: yes :P 18:51:59 elliott: So I compiled bash for JSMIPS. 18:52:04 elliott: I was like "YESSSS IT WORKS" 18:52:26 elliott: Problem: bash is 10x as big as Heirloom sh :P 18:52:31 (1.5MB vs 150K) 18:52:54 Gregor: Try pdksh. 18:53:01 Or http://www.wormhole.hu/~ice/ksh/. 18:53:03 elliott: ksh sucks arse. 18:53:15 Gregor: OpenBSD ksh doesn't. 18:53:21 It's just like bash, except not bloated and smaller :P 18:53:29 Ah :P 18:53:29 (It's a very-extended fork of pdksh.) 18:53:53 Gregor: http://www.wormhole.hu/~ice/ksh/'s Makefiles are BSD makefiles IIRC, so have fun :P 18:54:01 (ofc you can install pmake.) 18:54:30 Cross-compiling to a terrifying amalgam of SysV and GNU using a GNU toolchain with pmake sounds like a blast. 18:54:42 Gregor: It probably won't be that hard :P 18:54:49 Yeah, probably not *shrugs* :P 18:54:50 Hmm, does the AND instruction do an implicit TEST? 18:55:04 Or do I have to "test bl, bl" after ANDing it? 18:55:11 it's more like TEST does an implicit AND :P 18:55:44 I'm pretty sure AND also updates the flags 18:56:30 It does, yes. 18:56:57 Most of the things that actually involve the ALUish bits do; the memory-moves just don't. 18:57:57 Oh, test indeed does an implicit and. 18:58:00 "test bl, 0x08" then :P 18:58:04 I'm silley. 18:58:24 test is an and that doesn't save the result, just as cmp is a subtraction that doesn't save the result 18:59:19 And then there's the "oh, that's a bit strange" things, like inc/dec not updating carry flag (possibly because you can tell carry from the zero flag). 18:59:58 Am I allowed to hate Notch? 19:00:51 -!- cheater99 has quit (Read error: Connection reset by peer). 19:01:37 Incidentally, instead of "test ebx, 0x40000000; jz bleh" or something, you can consider "bt ecx, 30; jnc bleh"; that's only an 8-bit immediate constant. (For testing a bit in bl the test is probably more sensible.) 19:01:57 Phantom_Hoover: Do you have a plausible reason to? 19:02:22 I feel that with each update the server gets more restrictive. 19:02:33 With no way of reverting i. 19:02:35 *it 19:02:49 Phantom_Hoover: What happened now? 19:03:12 "The first step will be to commit everything to our brand new version control system (git)" I am 99% certain that this means he did not use a VCS before. At all. 19:03:17 Or perhaps he used TortoiseSVN! 19:03:31 Phantom_Hoover: Ah, but that's just done to make sure you play it right(tm). 19:06:22 Something is wrong! How do I know this? Because I'm reading the sector to the screen so it's obvious when it worked. 19:06:49 OMG, there's a bug in elliott's code! 19:06:52 fizzie, yeah, that's what I hate. 19:07:15 olsner: i know right i'm such an asm expert 19:07:17 how could i get it wrong 19:07:19 The fact that he can't see that people like having lightly-restricted sandboxes. 19:07:39 Phantom_Hoover: Or lightly-garnished sandwiches. 19:09:34 x86 needs an instruction, like, "blink the screen for two seconds" so I can see where my program borks. 19:12:02 If you're running it under an emulator, can't it catch an "int 3" or something for you? 19:13:25 (INT 3 is a special one-byte opcode that will raise the #BP breakpoint exception, used by debuggers.) 19:14:31 " magic_break: enabled=1 19:14:32 This enables the "magic breakpoint" feature when using the debugger. The useless cpu instruction XCHG BX, BX causes Bochs to enter the debugger mode. This might be useful for software development." 19:14:36 It's got that thing, at least. 19:14:39 (If it's bochs.) 19:18:41 -!- cheater99 has joined. 19:19:47 switching the bochses 19:22:42 Vorpal: Linux has a lot of drivers for the DMA support of various ATA controllers. 19:22:59 Vorpal: If you don't care about DMA, then ATA has a very, very simple interface. 19:23:07 And portable. 19:23:50 It's also an expansion on the ISA bus. 19:24:08 * Phantom_Hoover decides to care about Lazy K again. 19:24:31 pikhq, hey, you're an opinionated fellow. What's your opinion on the whole Wikileaks messs? 19:24:33 *mess 19:24:51 Phantom_Hoover: I think it a damned shame how the US has reacted to the mess. 19:25:15 You mean the whole "KILL ASSANGE" thing? 19:25:15 "ASSASSINATE HIM!" 19:25:18 Yes. 19:25:38 It's retarded and acts under the bizarre premise that US law applies outside of the US. 19:25:55 Australian in Sweden? Sorry guys, the US has no jurisdiction whatsoever. 19:25:57 I think it demonstrates admirably just how poorly governments have adapted to the internet. 19:26:04 Vorpal: Dodm? 19:26:12 That it does. 19:26:17 elliott, doom! 19:26:20 "Let's take out this guy; his face is everywhere so he MUST run the whole thing!" 19:26:46 * Phantom_Hoover ponders the contents of Wikileaks' insurance file. 19:26:58 Not to mention that their reaction is that of tyrants. 19:27:02 It's, literally, Julian Assange's house insurance details. 19:27:07 elliott, uå 19:27:08 He just wanted a bunch of backups in case his computer got lost or stolen. 19:27:10 up* 19:27:13 My logic is infallible. 19:27:14 Phantom_Hoover: Full set of everything Assange has that can be leaked. 19:27:15 elliott, XD. 19:27:15 elliott, did you get the bit about glass btw? 19:27:29 (source, Julian Assange in an interview I don't have a link to ATM) 19:27:30 It's rather larger than house insurance details, though. 19:28:07 Oh, and the leaks themselves show many worrisome acts by the US. 19:28:27 Like combing through Canadian television for anti-US sentiments? 19:28:41 Or asking diplomats to engage in espionage. 19:28:45 Phantom_Hoover: It has a bunch of copies of them, in case any sectors go bad. 19:28:50 *of it, 19:31:40 Anyway, anyone interested in the contents of io.scm? 19:32:11 (My monady IO thing.) 19:32:29 Oh, and senators are now wanting an ex post facto law to stop Julian Assange. 19:32:45 Not only do you lack jurisdiction, YOU CAN'T FUCKING DO EX POST FACTO LAWS. 19:33:06 It's one of the most explicit limits on government power! 19:34:09 bah, you just have to pass some law to allow ex post facto laws 19:34:34 Not in the UK, apparently. 19:35:15 olsner: US Constitution disallows ex post facto laws. 19:35:27 Patchable :P 19:35:46 Gregor: Not with our current Congressional setup. 19:35:53 pikhq: True :P 19:36:00 Gregor: It takes one Senator to halt Congress. 19:37:03 So when do Wikileaks go for the nuclear option? 19:37:32 Phantom_Hoover: If Julian Assange is stopped, all the shit flies. 19:37:41 "Stopped"? 19:37:46 As in "jailed"? 19:38:14 Sentenced, killed, etc. 19:38:31 Pretty sure it's a deadman switch setup. 19:38:51 Am I a Bad Person for wanting that to happen? 19:39:28 Also, what have they got that they haven't leaked (and why)? 19:39:58 they've saved it so they can leak it later, obviously 19:40:34 If they dumped it all at once, then it would probably take forever for the media to find things worth reporting on, and the government could actually react to the leak. 19:40:35 I guess it comes down to "is this worse for them to have leaked than it is good for us to leak?" 19:41:02 As it is, the media gets to report on things right when they're leaked, and the government *cannot react at all*. 19:42:32 -!- kar8nga has joined. 19:42:51 Also, keeping it ambiguous keeps government officials too afraid to just, say, send in the Marines, assassinate him, and deal with the fallout later. 19:43:57 Perhaps they have some things earmarked? 19:45:44 I also find the smear campaign going on completely ridiculous. 19:45:59 ... Not to mention the whole idea of a "surprise sex" law. 19:48:14 Incidentally, how can I check if my ISP (who I have established to be unethical bastards) are rate-limiting torrents? 19:48:27 Phantom_Hoover: if (comcast) { true } else { false } 19:48:43 :D 19:49:18 I refuse to believe that all other ISPs are too principled to do so. 19:49:25 What's in it for them? 19:49:38 Laziness. 19:49:45 Douchebaggery takes effort. 19:52:24 So... how do Comcast manage it? 19:54:29 I'm told that they spoof some built-in rate control message in BitTorrent. You can work around it by forcing your client to only send/accept encrypted messages. 19:56:44 I can't reach half of the DNS on internet. Gah 19:57:37 Gregor: Actually, they spoof a TCP reset. 19:58:02 pikhq: Oh really? I thought it was smarter than that, but I just have second-hand info. 19:58:02 Oh, wait, they *used to*. 19:58:10 The FCC ordered them to stop./ 19:58:16 Well, I only "used to" use Comcast too :P 19:58:47 pikhq: Did they force them to stop because they decided that doing it was illegal, or because Comcast was lying about it? 19:59:12 Exceptionally illegal. 19:59:49 how can it be illegal to send packets to your customers? if you pay for internet-with-RST-packets then that's what you get! :) 20:00:38 If only tampering with the Internet were like tampering with the mail. 20:01:51 pikhq: Fun for the whole family? 20:03:41 pikhq, Gregor: any if you can give me some ips to alternative dns servers? I don't know what good ones exist these days 20:03:48 (I haven't had dns issues like these for ages) 20:04:09 Vorpal: 8.8.8.8 20:04:14 hm 20:04:19 Vorpal: 8.8.8.8 and 8.8.4.4 if you're happy to hand all your data to The Google. 20:04:22 Or, if you're like me, 127.0.0.1 20:04:25 pikhq, which law does it break? 20:04:34 Phantom_Hoover: FCC regulations. 20:05:07 Gregor, if it is enough to be able to resolve the ip of the distro mirror to download a local recursive dns server: then yes for a while 20:05:30 Gregor, I'm utterly unable to reach anything not cached by my router atm 20:05:57 Or, if you're like me, 127.0.0.1 <-- isn't that rather unlikely to solve his fundamental problem? :D 20:06:20 oerjan: Does if he has a DNS server on localhost, like me. 20:06:21 pikhq, does dnsmasq do recursive resolver? 20:06:31 I do not want to install bind really 20:06:38 hm wait 20:06:47 Vorpal: Do you have some qualm with giving your data to The Google? The Google is everything. All that once was and all that will be. The Google controls time and space, love and death! The Google can see into your mind! The Google can SEE INTO YOUR SOUL! ALL GLORY AND LOVE TO THE GOOGLE 20:07:14 Gregor, for some reason that reminded me of time cube 20:07:20 I think dnsmasq only does forwarding. 20:07:27 Vorpal: It should have reminded you of Charlie the Unicorn :P 20:07:32 fizzie, so what is a good recursive one? 20:07:43 that preferably isn't bind 20:07:50 Gregor, never heard of that 20:07:55 Vorpal: ... D-8 20:08:04 pikhq, elliott: WEEP WITH ME 20:08:10 Gregor, which way is up in that smiley? 20:08:14 Gregor: Weep. 20:08:22 Vorpal: unbound does recursive DNS. 20:08:33 Well, if not bind, there was some small recursive-only thing too, but I've forgotten the name. 20:08:38 Vorpal: If you can't answer that question yourself, you have wildly insufficient experience with human faces :P 20:08:39 fizzie: unbound 20:08:48 pikhq, any good? 20:08:59 I've been using it for nearly a year now. 20:09:05 since it isn't in my distro repo I guess it means AUR or some manual work 20:09:06 Gregor: clearly you are wearing ray-bans and doing something contorted with your tongue 20:09:16 Vorpal: Which distro? 20:09:21 ah AUR... 20:09:23 pikhq, arch 20:09:34 pikhq, because I want rolling release. And gentoo is not a good option 20:09:36 Then there's djbdns' "dnscache", I don't have any first-hand experiences on that. 20:09:51 hm wait 20:10:18 hm I only used djbdns for authoritative 20:10:19 * oerjan thought ray-bans implied that shape but google images disagrees 20:10:36 * Gregor has no friggin' clue what "ray-bans" is supposed to mean :P 20:10:38 You could just use bind, and sob. 20:10:47 pikhq, nah, AUR has it 20:10:55 pikhq, so should be done soon 20:11:10 Gregor: it's a trademark for sunglasses afaik 20:11:36 oerjan: Sunglasses ... for cyclopses? 20:12:34 Gregor: well apparently not, although i haven't found the name of what i was really thinking of yet 20:14:51 Even those "uni-lens" sort of sunglasses have a bump where your nose goes, so D is a bad approximation for them too. (B I've seen for sunglass-eyes.) 20:16:19 pikhq, huh, it uses libtool yet the compiler command lines in make output are not massive 20:16:31 they fit on one line in my terminal 20:16:39 Gregor: hm maybe visor is the word 20:17:01 oerjan: That's a weird-lookin' visor, but I can see it :P 20:17:04 http://en.wikipedia.org/wiki/File:Visor.jpg looks similar 20:18:22 That ... is something I would usually call a facemask, unless it's worn in a way I can't fathom. 20:18:51 According to Wikipedia, I have no friggin' clue what a visor is 8-D 20:19:13 That linked one is a "sports visor" subclass object. 20:20:09 fizzie: er except the actual sports visor article says that's a cap and has nothing to do with glasses... 20:21:13 oh http://en.wikipedia.org/wiki/Green_eyeshade fits perfectly 20:22:06 So Gregor is involved in accounting, auditing, fiscal management, economics, or budgeting. 20:22:48 "The city is populated by various anthropomorphized animals, with ducks, dogs, and pigs the most dominant ones." 20:23:20 fizzie: sounds legit to me 20:25:05 Yes, such a git indeed. 20:25:58 olsner: Free yourself from the Wikipedia Clickit Game :P 20:26:00 "The population is estimated 316 000." I'm disappointed no-one's [citation needed]'d that. 20:28:09 * oerjan assumes green eyeshade -> Scrooge McDuck -> Duck universe 20:28:20 "The quality of Wikipedia pages has been brought into question, particularly in the amount of data it presents as needing citation [citation needed]." 20:28:52 Gregor: that needs a {{by whom}} tag as well :D 20:29:05 oerjan: Touche sir! 20:29:53 also i'm disappointed you apparently made that up 20:30:17 wow, I'm tired 20:30:35 that almost never happens! 20:30:42 oerjan: You would, what with being in one of those countries where Disney comics are actually popular. 20:30:52 (they hardly even *exist* in the US, their country of origin) 20:31:28 pikhq: i think norway may be the country where they are most popular 20:32:07 oerjan: Popular in most of Europe. It's rare to find someone aware of their existence in the US. 20:33:04 "By 2005 around one out of every four Norwegians read the Norwegian edition Donald Duck & Co. per week, translating to around 1.3 million regular readers. During the same year, every week 434,000 Swedes read Kalle Anka & Co. By 2005 in Finland the Donald Duck anthology Aku Ankka sold 270,000 copies per issue." I guess Norway does win, according to those perhaps not so reliable numbers. 20:33:24 * oerjan was about to paste that :D 20:33:36 At least our glorious country is the only one of which this tidbit of information is mentioned: "Finnish voters placing "protest votes" typically write "Donald Duck" as the candidate.[12]" 20:34:29 ineiros, ping! 20:34:37 If you say "comic" to the average American, they think of a small handful of superhero comics. 20:34:43 fizzie: on the other hand sweden had the distinction of Disney's Christmas special at one time being the most popular tv program 20:35:24 i vaguely recall a rumor that this fact made disney change a decision to cancel the program 20:35:42 (very vaguely) 20:36:18 Did I mention my pain in trying to find Sandman Vol. 4? 20:36:27 It seems to have been mysteriously discontinued. 20:36:29 "An annual Christmas special in Norway, Denmark and Sweden is called "Donald Duck and His Friends Celebrate Christmas". Segments include Ferdinand, a short with Chip and Chet, a segment from Lady and the Tramp, a sneak preview of a coming Disney movie and concludes with Jiminy Cricket performing "When You Wish Upon A Star"." -- What discrimination: we do that too. 20:36:47 Same contents and all. 20:36:51 Phantom_Hoover: i recall someone mentioning that about season of mists, was that it? 20:37:04 oerjan, indeed. 20:37:22 I really need a copy of Sandman. 20:37:46 So do I. 20:38:00 Phantom_Hoover: that's strange, i recall it being a particularly pivotal part 20:38:13 oerjan: Quite. 20:38:41 oerjan, perhaps it's sold out. 20:38:45 Bloody annoying. 20:39:02 IIRC I have a preorder which should arrive in... April. 20:39:18 not just for sandman itself, but also for the spinoff lucifer series 20:40:26 shutupshutupshutup 20:40:33 They also show this -- http://en.wikipedia.org/wiki/The_Snowman -- thing every Christmas (well; 1983, 1989, then 1992 onwards each year); I think that's been copied from UK? 20:41:04 Yep. 20:44:27 I'M WALKING IN THE AIIIIIIIIIIR 20:44:45 wait, chip and _chet_? 20:45:19 Uh, hmm. That's what it *says*. 20:45:42 Well, it's Tiku and Taku here in Finland; maye that was written with someone from another freaky-name-land too. 20:45:58 i'm pretty sure it's chip and dale (note the pun) 20:46:25 Yes, that sounds rather more familiar too. 20:46:52 A ""chip and chet" wikipedia" search seems to find just that one page and things quoting it. 20:48:47 It has been "Chet" on the page for at least the whole year 2010. (Wikipedia needs a "bisect"-style thing, or a "when was this bit edited" tool.) 20:48:49 WHY DOESN'T THIS WORK. 20:50:57 Needs more 🐮🔔 20:50:59 HEY OLSNER WANNA WRITE MY CODE FOR ME 20:51:01 eh olsner? eh? 20:51:12 Gregor: 01F42E 01F514? 20:51:36 YES. 20:51:59 http://en.wikipedia.org/w/index.php?title=Donald_Duck&diff=330059847&oldid=329462566 -- at least you now know which IP to blame. 20:52:27 -!- Wamanuz has joined. 20:52:28 fizzie: ah i was doing a binary search 20:52:55 ok so it was chet from the start 20:52:59 I was doing a "skip backwards one year at a time, then do a binary search" search. 20:53:51 oh i just did last 500 to start it 20:55:02 So what's a reliable way to make an x86 reboot in real mode? :p 20:55:05 As in crash it. 20:56:06 Use the same port as the fast a20 gate thing, except poke a 1 to bit 0. 20:56:51 What's this for? 20:57:24 * oerjan has edited 20:57:35 * oerjan has been edited 20:58:10 Use the same port as the fast a20 gate thing, except poke a 1 to bit 0. 20:58:17 No, apparently that doesn't crash everything. 20:58:21 It just doesn't work on some things. 20:58:22 pikhq, nice, dnssec works almost out of the box for unbound 20:59:09 Well, what do you need a reboot for? 21:00:31 fizzie: To check that this bit of code is actually being got to. :p 21:00:39 int 3 does nothing to qemu. 21:02:20 elliott: Does it even call interrupt 3? 21:02:29 Or just nothing at all? 21:02:42 btw the short in question is "Pluto's Christmas Tree" on the Chip 'n' Dale page 21:02:43 I have verified specifically that int 3 does nothing to qemu, so it does not help here. 21:02:58 Can you set a breakpoint in qemu? 21:03:00 Why does noöne appreciate my Lazy K IO library... 21:03:10 I HATE YOU ALL 21:03:17 Well, you could try the triple-fault, but I'm not sure how to do that in real mode really simply. 21:03:27 qemu's monitor can set breakpoints, IIRC. 21:03:35 Phantom_Hoover: I have never even seen your Lazy K IO library 21:03:47 zzo38, yay, you're interested! 21:04:19 fizzie: Can I jmp invalidly or something? 21:04:57 elliott: Well, the linux arch/x86/kernel/reboot.c reboots by executing the bytes 0xea, 0x00, 0x00, 0xff, 0xff /* ljmp $0xffff,$0x0000 */ 21:05:01 (After flipping to real mode.) 21:05:01 I think you would have to set a break point. 21:05:29 zzo38, http://esolangs.org/wiki/User:Phantom_Hoover/io.scm 21:05:30 Something I have done when debugging a GameBoy program in VisualBoyAdvance, which has no breakpoints, is make an instruction that jumps to itself. 21:06:24 Note the lack of documentation! 21:06:37 Supposedly a "jmp far 0xffff:0" will invoke a reboot routine in the BIOS. 21:07:19 Phantom_Hoover: OK, I can see it 21:07:30 I can see lack of documentation. 21:07:49 x86 is complicated. Let's all use MIPS instead. 21:08:20 tswett: No, MMIX! 21:08:31 Let's all use a non-imperative architecture! 21:08:47 One of our only involved-assembly-programming courses ("introduction to computer hardware", a really basic-level common-to-all course) used MIPS (simulated, in SPIM) for the (trivial) programming exercises. 21:08:48 Phantom_Hoover, reduciron! (sp?) 21:08:55 *e 21:08:59 Phantom_Hoover: I fixed the formatting for you. 21:09:02 Vorpal: -eron. 21:09:09 elliott, ah 21:09:29 elliott: No hardware implementation of MMIX exists. Although I would like to make one in some time 21:09:30 elliott, I wrote "reduceitron" first and thought "uh no, that wasn't it" 21:09:39 fizzie: "jmp far 0xffff:0" --> "mismatch in operand sizes" 21:10:09 elliott, hm. Add more f? 21:10:12 elliott, or fewer 21:10:19 (wild guess) 21:10:28 I do not see how that would accomplish anything. 21:10:39 elliott, well it would change the (textual) operand size 21:10:59 elliott: Just put in db 0xea, 0x00, 0x00, 0xff, 0xff then, I don't know what the proper syntax is. :p 21:11:21 OK, it doesn't reboot. Not good. 21:11:25 fizzie: Might I need interrupts enabled for that? 21:11:46 Possibly. You could try if it reboots if you put that in some place you're sure gets executed. 21:11:50 elliott, wait, you use intel I presume? So why are you using 0x? 21:11:58 Vorpal: ...as opposed to? 21:12:01 elliott, isn't h the usual way 21:12:05 No. 21:12:05 with intel 21:12:11 Only for interrupt numbers. 21:12:14 ah 21:12:16 zzo38: i see an FPGA implementation at least... 21:12:29 http://qntm.org/bead 21:12:33 THIS MUST BE MADE 21:12:34 http://www.reddit.com/r/programming/comments/dmk16/fpga_implementation_of_donald_knuths_mmix/ 21:12:51 well or maybe not the comment says something about it being abandoned 21:13:46 http://qntm.org/bead 21:13:47 Yes. 21:13:48 Yes yes yes. 21:13:55 Yesyesyesyes. 21:14:23 Phantom_Hoover, uh 21:14:26 "The locals will be equal parts sophisticated, intelligent, cosmopolitan Scandinavians with Bluetooth headsets, gigabit fibre optic internet connections and superb health care, and insane hairy fur-trappers and fishermen one step removed from the Norse god Thor." 21:14:31 not good for Svalbard 21:14:54 Vorpal, it is a sitcom. 21:14:57 Phantom_Hoover, I mean. Svalbard is probably satellite internet only 21:15:03 Humour > accuracy. 21:15:23 Phantom_Hoover, also uh. It is western Europe. So how eastern Europe makes no sense 21:15:41 eastern Europe starts east of Sweden definitely, and Svalbard is more like north of UK 21:16:02 Vorpal, if you can't realise the hilarity inherent in the concept, you suck. 21:16:09 Vorpal: well clearly they need the insane hairy fur-trappers to keep the polar bears at bay 21:16:12 Vorpal: Svalbard has a fibre-optic link. 21:16:19 To the US, iirc. 21:16:24 elliott, huh. That's impressive 21:16:27 Terrible latency one presumes, though apparently the throughput is great. 21:16:48 elliott, throughput ought to be great, not a lot of people share it 21:16:56 it's like. 1000 at most? 21:16:57 or such 21:17:02 Do they exist FPGA with publicly available information to program it, without encryption? 21:17:03 Plan 9 source code is so beautiful. 21:17:05 though quite season-dependant iirc 21:17:14 elliott, sample? 21:17:24 Svalbard, were it not so cold, would be a paradise; you can emigrate there just by *wanting to*. 21:17:31 There's actually a law. 21:17:39 I don't recall the exact statement. 21:17:39 elliott, what? 21:17:46 But basically anyone can go and live there, no questions asked. 21:17:52 And fibre-optic!!! 21:17:58 note: source is reddit :P 21:18:05 Phantom_Hoover: http://plan9.bell-labs.com/sources/plan9/sys/src/ 21:18:29 elliott, uh. if it wasn't so cold then probably it would be overcrowded and thus that law wouldn't exist (if it does, and wasn't misinterpreted) 21:18:48 Vorpal: IIRC it was part of some deal or something. 21:18:50 Looks like normal C code tto me. 21:18:50 I forget exactly :P 21:18:52 *to 21:19:17 Phantom_Hoover: You haven't seen most C code, then. 21:19:28 elliott, well, then we know where bin Ladin is hiding. No one asked him his name when he wanted to go there (no questions asked and so on) 21:19:29 ;P 21:19:36 Phantom_Hoover: (It might help you understand the elegance and simplicity of the code vastly if you know C.) 21:19:45 "Sick of your country? Don't mind cold weather? The treaty of Spitzbergen allows citizens of 39 nations to migrate to Svalbard (a Norwegian island near the North pole) and become residents if they want to, no questions asked." 21:19:59 elliott, any specific file that is a good example? 21:20:05 http://en.wikipedia.org/wiki/Politics_of_Svalbard#Spitsbergen_Treaty 21:20:21 Vorpal: Any file; pick one. The implementation will be more elegant than you expect unless you have very high expectations. 21:21:03 (OK, not every single file. But most.) 21:22:00 elliott, expectation: code for MMU handling will look like elegant haskell 21:22:06 Hm, Sharp has a "RGB+Y" TV (adds a yellow-ish subpixel into a RGB screen); after those RGBE camera filters, I was a bit wondering when they'd do the same trick in display technology too. (Too bad all the video signals contain only RGB material, so it's a bit dubious if it's any use there.) 21:22:19 Vorpal: Prepare to be disappointed. 21:22:23 elliott, which part is the low level kernel? 21:22:27 elliott, as in, what subdir 21:22:29 fizzie: Sulu was in the adverts for those here. 21:22:33 fizzie: As a pretentious scientist. 21:22:41 Vorpal: I think 9/, but I'm not sure. :p 21:22:50 boot/ is also relevant-looking. 21:23:32 http://plan9.bell-labs.com/sources/plan9/sys/src/9/pc/mmu.c 21:23:33 ah 21:23:36 elliott, not so elegant 21:23:49 Vorpal: It's the x86 MMU, how could it possibly be. 21:23:52 m->gdt[TSSSEG].d1 = (x&0xFF000000)|((x>>16)&0xFF)|SEGTSS|SEGPL(0)|SEGP; 21:24:04 elliott, well true 21:24:14 elliott, lets try memcpy 21:24:14 elliott: one point about svalbard btw, you need to have a job to go there, the usual norwegian welfare benefits don't apply there, not even to norwegian citizens iirc 21:24:17 The rest of the kernel is quite elegant beyond the low-level boot in my experience. 21:24:29 Vorpal: There's an assembly version I think, not sure if there's a generic version. 21:24:31 oerjan: lame :D 21:24:53 elliott, no generic code: http://plan9.bell-labs.com/sources/plan9/sys/src/libc/ ? 21:24:57 Vorpal: port/ 21:25:01 Vorpal: Here's memccpy: http://plan9.bell-labs.com/sources/plan9/sys/src/libc/port/memccpy.c 21:25:04 elliott, how logical name 21:25:09 elliott, ccpy? 21:25:10 Vorpal: PORTable. 21:25:20 Vorpal: The extra c is I'm not sure what. 21:25:25 elliott, ah, and 9/pc vs. libc/386 21:25:29 yes perfectly logical 21:25:31 Vorpal: 386s are not PCs. 21:25:33 PC = 386 + things. 21:25:38 libc/386 isn't PC-specific, just 386-specific. 21:25:40 elliott, indeed 21:25:44 So yes, it is logical. 21:26:02 Vorpal: (Also presumably one uses port/ when making a new PORT and you haven't yet written all the things; Plan 9 runs on more architectures than there are directories in libc/.) 21:26:07 http://plan9.bell-labs.com/sources/plan9/sys/src/libc/port/memccpy.c <-- why c &= 0xFF; 21:26:22 oh right 21:26:26 to get just one byte 21:26:57 elliott, the thin box on this looks weird: http://plan9.bell-labs.com/sources/plan9/sys/src/libc/386/memcpy.s 21:27:03 more like a poem or something 21:27:06 than a file 21:27:15 It's a CODE POEM. 21:27:25 elliott, it is x86 asm 21:27:32 CODE POEM 21:27:45 Phantom_Hoover: Maybe you should add a {{.file}} template to allow the formatted code to be downloaded. (Another way is changing the formatting to put a space before each line instead of
, that also allows it to be downloaded)
21:27:56  Either way should do.
21:28:30  elliott, opinion on DNSSEC?
21:28:38  I have no opinion.
21:28:45  elliott, you don't think it is bloated?
21:28:50  I am confused.
21:28:54  zzo38, I'd rather fix the scheduling.
21:28:58  by this behaviour
21:29:08  http://plan9.bell-labs.com/sources/plan9/sys/src/cmd/8c/cgen.c Entire 386 code generator for the Plan 9 compiler.
21:29:20  Vorpal: I haven't even looked at it since it sounds incredibly boring.
21:29:22  elliott, long
21:29:23  Phantom_Hoover: What scheduling?
21:29:31  Vorpal: Long?
21:29:34  Vorpal: I'd like to see gcc's.
21:29:37  Except it's probably 70 files.
21:30:34  zzo38, consider the following scenario: you wan to print something, input, print something else, then print whatever was input.
21:30:49  Vorpal: http://plan9.bell-labs.com/sources/plan9/sys/src/cmd/vc/cgen.c The much shorter code generator for big-endian MIPS.
21:30:49  hm... DNSSEC stands for "Domain Name System Security Extensions", hm SEC. I spot either a backronym or someone designing with the the acronym in mind
21:31:00  Lazy K's non-strict semantics cause the two constant outputs to be performed before the input.
21:31:18  elliott, still the usual mess, typical of well written C code
21:31:34  Vorpal: Code generation is a mess; there are nicer programs in the tree.
21:31:38  Nicer than gcc and llvm, I'll bet.
21:31:38  Phantom_Hoover: OK, then fix that problem.
21:31:43  elliott, C is ugly.
21:31:52  Vorpal: Not Plan 9 C.
21:31:53  sure, there are better and worse C code examples
21:31:59  elliott, compared to haskell yes it is ugly
21:32:03  Vorpal: Not if it is neatly printed using Enhanced CWEB.
21:32:11  zzo38, aaaaargh
21:32:15  Vorpal: Not at what Plan 9 is doing.
21:32:21  it's like sgeo and activeworlds
21:32:39  elliott, then we are doing the wrong thing :P
21:33:20  Phantom_Hoover: But I still suggest you correct the page to allow downloading (there are two ways to do so), as well.
21:34:34  The page isn't broken.
21:34:40  zzo38, what page
21:47:40  elliott: http://tools.ietf.org/html/rfc4255
21:47:44  looks cool
21:50:07  Vorpal: Heh.
21:50:30  elliott, proposed though
21:51:45  elliott, we can only be happy that the guys who invented stuff like DNSSEC haven't made DRM schemes. DNSSEC seems utterly competently made
21:54:59 -!- Sasha2 has joined.
21:55:59 -!- Mathnerd314 has joined.
22:03:24  ineiros, ping.
22:04:13  Phantom_Hoover, problems?
22:04:32  No, asking if he's come to a decision on MoveCraft.
22:04:54  http://interfacelab.com/objective-c-memory-management-for-lazy-people/ "whine whine i'm hardcore i don't need a gc"
22:06:00  Phantom_Hoover: The metatree is now a meta4.
22:06:10  No, wait.
22:06:11  Still a meta3.
22:06:24  But hey, I never meta3 I didn't like.
22:06:35  grr
22:06:40  how much horizontal clearance does a tree need
22:08:08  Phantom_Hoover: Are you coming back on today?
22:11:30 -!- kar8nga has quit (Remote host closed the connection).
22:11:56  Phantom_Hoover: Pong.
22:12:53  ineiros, have you come to a decision re MoveCraft?
22:14:31  elliott, ah, the classic hardcore nerd.
22:14:36  Haven't looked at it yet, no.
22:14:44  Phantom_Hoover: wut?
22:14:46  Oh.
22:15:08  elliott: a tree built out of metatrees?
22:15:29  or rather, a tree built out of those^?
22:15:39  http://www.youtube.com/watch?v=ySmYyAqV8jM
22:15:40  this
22:16:28  quintopia: do you play minecraft? i can only explain it if you do
22:16:57  quintopia, it's a tree planted on top of a tree. Ignore elliott.
22:17:47  metatree
22:17:53  what a rad name
22:17:58  Phantom_Hoover: i don't suppose minecraft yet has enough vertical voxels to accomodate a tree built of trees built of trees built of trees
22:18:12  quintopia, it does nott.
22:18:14  *not
22:18:52 -!- zzo38 has quit (Quit: zzo38).
22:19:30  but it might could manage 1 less meta there by digging down sufficiently far and limiting how many sub-trees each tree has suitably
22:19:32  Phantom_Hoover: it's harder than that
22:19:36 -!- Phantom_Hoover has quit (Remote host closed the connection).
22:19:37  you have to do surgery after it grows
22:19:49  fizzie: I forget, what's the common way to get "jz" and friends all knowing after you do a mov?
22:19:52  test foo, foo?
22:20:07  That's the usual one.
22:20:19  Does that work if foo is [di+N] for constant N? :P
22:21:34  I don't think you can have two mem arguments in test, but in that case the other operand of mov should've been a register you could test.
22:23:57   Phantom_Hoover: i don't suppose minecraft yet has enough vertical voxels to accomodate a tree built of trees built of trees built of trees <-- do you mean the height from top to bottom of map in blocks?
22:23:58  Constant actually :P
22:24:02  I guess I could do test const, const.
22:24:11  Or, wait.
22:24:13  Just precompute the result.
22:24:19  make lisp using redstone logic
22:24:26  In that case you should do it compile-time, yes.
22:24:36  Well, assemble-time.
22:24:40   fizzie: I forget, what's the common way to get "jz" and friends all knowing after you do a mov? <-- somehow I read that as "jwz and [his] friends"
22:24:42  XD
22:25:07  I did spend a moment thinking "who's jz?" too.
22:26:28  er
22:27:40  anyway my system now does dnssec. Very nice
22:27:52  If you want to set flags based on what's at di+N, you could "cmp [di+N], 0"; I don't know offhand if there's a variant that doesn't involve a silly immediate value 0.
22:28:22  fizzie, if you assembler supports macros you could make one
22:28:28  (of course, that is cheating)
22:28:59  Sure, but for a dword that's a four-byte immediate.
22:29:54  fizzie, why are you using asm if you care for efficiency.. Oh wait
22:30:28  (And in fact you'd need to indicate the size there since there's no register involved, and Intel syntax doesn't put in the suffixes.)
22:31:02  fizzie, so how do you indicate the size with intel syntax?
22:31:24  I don't remember
22:31:29  cmp dword [di+N], 0
22:31:34  Right.
22:32:08  how verbose
22:32:15  ...
22:32:20  stfu
22:32:29  elliott, it *is* shorter with gas :P
22:32:30  I would think the suffixes take up more bytes on average.
22:32:43  fizzie, maybe
22:32:43  indeed
22:33:55  cmpl $0, N(%di) there?
22:34:08  ew
22:35:56  elliott, you are on MC, but what are you doing
22:36:05  fizzie, seems quite sensible
22:36:38  no it doesn;'6
22:36:50  Let's not do the same syntax discussion again.
22:37:05  let's
22:37:12  I don't want to go grepping my examples with the phone, anyway.
22:40:43 -!- Sgeo has joined.
22:41:51  elliott, down?
22:43:58  very down
22:44:01  ineiros, what is going on?
22:46:30  why does anything have to be going on
22:47:51  fizzie: What's the maximum displacement?
22:47:53  is it signed 8 bit?
22:49:50 -!- MigoMipo has quit (Read error: Connection reset by peer).
22:49:57  32, I think.
22:50:03  fizzie: what, +32? :)
22:50:04  signed 32-bit, okay.
22:50:15  elliott: what are you doing?
22:50:16  But if you stay within 8, the encoding is shorter.
22:50:20  nooga: hm?
22:50:40  ais523: you know how you tried to make the dna maze source unconventionally formatted to irritate people?
22:50:42  (Asleep now.)
22:52:14  ineiros, see comment about authcraft in server chat
22:59:42 -!- augur has quit (Remote host closed the connection).
22:59:51 -!- impomatic has joined.
22:59:56  Hi :-)
23:00:18 -!- augur has joined.
23:01:03  请点我到英吉利海峡
23:01:07 -!- hkrliu has joined.
23:01:53 -!- augur has quit (Read error: Operation timed out).
23:06:18  ho
23:08:30  he
23:09:41 -!- impomatic has quit (Read error: Connection reset by peer).
23:24:30 -!- Goosey has joined.
23:27:10 -!- hkrliu has quit (Ping timeout: 260 seconds).
23:29:03  http://www.amazon.com/Unicorn-Castle-T-Shirt-Cotton-Sleeve/dp/B0037TPED4/ref=pd_sbs_a_2 // best comment ever: Here's the life-changing part: As soon as I started wearing it, people started believing I was gay. No more insisting on my part - the shirt says it all.
23:32:01  So if I'm gay, I should definitely get that shirt.
23:34:08  To quote another review: "Gay is the new black"
23:34:58  Customers Who Viewed This Item Also Viewed
23:34:59  The Mountain Three Wolf Moon Short Sleeve Tee by The Mountain
23:35:08  Surprising!
23:36:11  Can I get a Three Perry-the-Platypus Moon Short Sleeve Tee?
23:40:52 -!- ais523 has quit (Remote host closed the connection).
23:42:32 -!- Mathnerd314 has quit (Ping timeout: 255 seconds).
23:42:48 -!- Mathnerd314_ has joined.
23:43:13 -!- Mathnerd314_ has changed nick to Mathnerd314.
23:44:55  Gregor:     *  Receive 1 Ugly Christmas Sweater Fleece free when you purchase $100.00 or more of Qualifying Items offered by Bison Lake Trading Company. Enter code Q7WVSL9K at checkout. Here's how (restrictions apply)
23:44:59  WORST FLEECE EVER
23:45:38  elliott: It is pretty ugly :P
23:45:49  Oh, speaking of [SUPERLATIVE] [NOUN] EVER:
23:45:57  Gregor: you are the BEST JAZZ MUSICIAN EVER
23:46:04  That seems unlikely :P
23:46:47  Okay, you are a PRETTY GOOD JAZZ MUSICIAN?
23:46:56  I am no kind of jazz musician ...
23:47:12  I think tswett means Gregor's friend who is indistinguishable from him.
23:47:16 * tswett nods solemnly.
23:47:19  Why is my compiler trying to compile NULL and why is it working.
23:47:29  And is it actually...
23:47:31  If you're referring to Eric Allen, then he most assuredly is, y es.
23:47:31  *yes
23:47:47  Is NULL a programming language, a specific string, or... something else?
23:50:38  (void*)0
23:50:44  tswett: NULL is NULL :P
23:51:03  coppro: Actually it can be (T *)0 for any T, no?
23:51:14  So, a null pointer.
23:51:19  What does it mean to compile a pointer?
23:51:39  tswett: To feed the NULL pointer to my compilation procedure.
23:51:39  elliott: not sure
23:51:48 * tswett nods.
23:51:50  I don't think it actually is, but...
23:52:55  coppro: In C and C++ programming, two null pointers are guaranteed to compare equal; ANSI C guarantees that any null pointer will be equal to 0 in a comparison with an integer type; furthermore the macro NULL is defined as a null pointer constant, that is value 0 (either as an integer type or converted to a pointer to void), so a null pointer will compare equal to NULL.
23:53:06  coppro: So NULL can actually be #define NULL (char)0 :)
23:53:55  wait what
23:53:58  Okay, perhaps my parser is broken.
23:54:03  night
23:57:00  what compiler?
23:59:39  nooga: This one.

2010-12-10:

00:01:32  which one
00:01:47  nooga: This one.
00:02:15  okay
00:06:47  i can't see any compilers here
00:13:56  ghh
00:15:31  POSER INSTRUCTION
00:17:49 -!- Wamanuz has quit (Ping timeout: 272 seconds).
00:24:28 -!- terry123 has joined.
00:28:08  bash: ./foo: cannot execute binary file
00:28:10  That's a new one.
00:30:45 -!- Sasha2 has quit (Ping timeout: 240 seconds).
00:31:03 -!- Sasha has joined.
00:33:44  I hereby present The World's Worst Code Formatting Style, revision 1:
00:33:52  http://sprunge.us/hShh
00:34:20  Yes, there are rules involved.
00:34:22  Horrible rules.
00:34:34  &c and &d should be "& c" and "& d" there.
00:34:49 -!- elliott has quit (Quit: Leaving).
00:38:57  One could immediately spot "optimizations". :-)
00:41:07  what was that :F
00:41:30  i hope that elliott isn;t trying to write another C compiler
00:44:47 -!- sftp has quit (Remote host closed the connection).
00:57:08 -!- Sasha has quit (Ping timeout: 255 seconds).
00:57:48 -!- Sasha has joined.
00:58:06 -!- FireFly has quit (Quit: swatted to death).
00:59:26 -!- terry123 has left (?).
01:00:41  Z̷̰͙͚̫ͮ̐͝a̢̳̹̪͂̊̇̔̃͛̕͜ḷ̷̡̘̙̝̠̩͇̈́͆͢ǧ̅͏̹̮̟̰͇̝ő̱͚̠̗̠̖̣ͯ̀̀͠ͅ,̢͚̪̯͍̰̟̠̗̎ͪͧ̅ ͙̝̞̬̘͈̫̐͊̏̀ͧ̐͌a̡̖̪̻͕̯̅ͬ͋́̾͘ǹ̳̤ͧ́̀ͪ̍ͦͭ͘̕͜y̸͕̙͈̣̣̥̰͎ͩ̏ͦ̈́̓̌ͧo̶̮̼̫ͧ̐̍̃n̡̝̦̭̰͉̳͎͓̄̒ͩ̎ͪ̄͘͘ĕ̫̲̺ͤ?̥̥͇̦̻̗̟ͫ͒̃͑ͤ͋
01:03:58  who
01:04:08  wtf is that
01:04:34  Zatgo?
01:04:57  nooga: Zalgo. Zalgo is to invoke the hive-mind representing chaos.
01:05:07  Invoking the feeling of chaos.
01:05:11  With out order.
01:05:42  T̜̙̙͎̹̾͋ͩ̾͒ͤ̾ͅȟͬ̅e̢͚̣̩̩ͩͯ̌ͅ ҉N̈̾̚ez͖͍̬̥̣͙ͨ̾̌̔̔̇p̯͚eͯ͏̼̤̼r̾ͯ̕d̸̲̗̺i̹̳̹͉̙̳ͫ̃̽ͮ̽̅ͭa̡̺̻͙͕͕͇͕ͦn̴͓̜͌̊̅̔̊̒̓ ̛̜̤̭̊ͭh̵̟̮͔̘̬̜ͪi͎͊̑v̢͖͚̖͖͈̈́̿̀̽̏e̖̝̙̱̗͎̦͌̏̎̅̚-̟̹̠ͬͥ̈m̩̞͔͖̰̥̉̄̅ͫͬ́iͩ́ͫ̏͊̚n͋ͨͭ͞ḏ̩̰̦̫͇ ̨̹̫ͯ̔ͣͪo̡̮͈f͓̫͖̣̭ͩ͗̓ͧ̍̏̄ ̤̩̯̰̞̎͢c̲͓̯͞h̳̗̳̜̲͚ͤͥa̜͊o̳̣̭̐͂ͅs̎̒̐̋ͪ
01:05:43  ̨̖͙͖̹̞̗̈́ͨ.̛̟̦̙̙͎̮̉͑̈́ ̳̘̫̳Ž̧̬͎̝ͤ̿͆̋a̹̦l̢͔̟̜̈̀͐g̩̩̣̲͍͈ͯ̈͐ͦ̐̽̽ò̥͖.̍ͤ̽̍҉̙̭̰̼̞̩ ̸̂
01:05:56  Ḩ̶̡̯̮̠̙͙̹ͤ͊͂ͅe͍͖̅ͬͪ̏ͅ ̶̞̬̬̪̳̄͆̍͌̈́͘w̸̷̩͓̠̌̇ͯh͈͙̰͈̫̃̿̒ͭ͆ͪͣ̀͘͢ȍ̺͈̞̥̺̝͖ͯͮ͞ ̡̮̃͠Ẅ̮̖̝̊̀͜ͅá͖̻̞̬̖̮̾͒̎͂̔͠i̸̤͉̻̣ͮͤ̆ͥͭ̾̀t̸ͭ͋͗̍͋̔ͩ҉͔̣ş̷͖̝ͤ̑̈́̒͋̑̀ͣ̔ ͚͖̻͙̲̂ͦ͌ͤ̄͗B̝̫̻̬͈̦̲̮̭͊ͮ̍̂̏ͯ̇ͯe̼̺̠͍͚̤̫͖̊ͩ̒̋h̦͉ͤi̻͈͉̱̭̠̲ͪͪ̈́̀̊̐̑̈̀͡n͈̥͔̤̫̜ͮ̋͗d̡̼̖͕̠̙̫̬̗̂ ̢͈̜̺͉ͥ͌ͬ̀̆͑̔͠T̿ͦ
01:05:56  ̧̗̭̺͗̑ͥ̾͞h̷̨̤ͩ͂ͥ͒̈̿eͥ̅͗̽͛̂ͦ҉̗̝͎͖͚̩͍̹̜͜ ̔ͫ̏ͮ͗ͩ̚҉͈̝W̵̛̱̩͙̦̲̗͔̳̏̀͡a̸̯̣͍̽ͮ̔͒̅͑ͥͥ͐l̸̴̗̉̒̌̐̐͋͐̒͢ḽ̗͉̻̠̞͉͙ͫ̒͝.ͮ͐͏̴̗̺̟͖̣͎̮
01:06:05  Z̶̵̑̋̑̐͊̂̓̽ͨ̃͏͕͍̖̘̱̻͙̗̺̗̠͙̥Ą̴̯̺̟̭̅ͩͣ͑͘͝L͚̙͖̳̂̌̑̈́͌ͪ̿ͦ͘̕ͅĢ̷̛̹̙̖̩̻͚͚̳̳̬͇̮̬̰̬̒̑̑͗͗͆͛ͮͯ͑ͩ͜͝Ö̓̃̍ͬ̏̈́͋̉ͨ̓̂̔̐̐҉̴̨̞̟̪͈̬̝̞̬̱͠!̍ͭ̇͊̈̎̿ͬ͗ͥ̅̓̓̿̆̈́ͯͦ̈́̀͞҉̥̹̮͓̻
01:07:20  oh this creepypasta
01:07:22  right
01:09:10 -!- augur has joined.
01:15:08 -!- augur has quit (Remote host closed the connection).
01:16:39 -!- nooga_ has joined.
01:16:42  h3h
01:17:23  i couldn't screen -x the existing irssi session because it was on pts/0
01:17:41  That'll do it.
01:19:38  ?
01:33:07 -!- Sasha has quit (Read error: Connection reset by peer).
01:33:28 -!- Sasha has joined.
01:35:15  uh
01:35:18  screen is stoopid
01:37:18  as well as putty
01:37:21  and windows
01:41:46 -!- augur has joined.
01:42:09 -!- sebbu has quit (Read error: Connection reset by peer).
02:10:42 -!- sebbu has joined.
02:14:14 -!- zzo38 has joined.
02:19:44 -!- Mathnerd314 has quit (Ping timeout: 264 seconds).
02:26:46  I would like your suggestions about this D&D class http://zzo38computer.cjb.net/dnd/options/Patamagician.c
02:27:42 -!- Mathnerd314 has joined.
02:40:49  Do you like Null Metamagic?
02:51:56 -!- wareya has quit (Read error: Connection reset by peer).
02:53:14 -!- wareya has joined.
03:42:33  i don't even get it
03:42:47  No one gets it.
03:43:23  i also don't get why this channel is fucking up in my buffer...the last line printed stays six lines up :(
03:43:31  quintopia, XChat?
03:43:35  8-D
03:43:38  irssi
03:43:42  quintopia: What program? Do other channels do that?
03:43:43  quintopia: I'm betting it's because I ZALGO'D YOU
03:43:46 * oerjan blames ZALGO :D
03:43:55  it's just this one
03:44:00  although it's not happening in my irssi
03:44:12 -!- quintopia has left (?).
03:44:13 -!- quintopia has joined.
03:44:14  ZALGO?
03:44:16  Maybe the terminal option is misconfigured?
03:44:18  quintopia: try pressing ^L ?
03:44:30  it didn't fix it
03:44:35  maybe i need a new window
03:44:39  Sgeo: that unicode noise Gregor pasted
03:44:51  It had no detrimental effect on my clien
03:44:51  (it's a meme)
03:44:52  Sgeo: Za̷l̴g͞o is̀ ̨to̵ ̶ín͞v̶ok͡e ҉the̕ h͠i̛v̸e-͝m͞i̴n͡d͟ ͘re̛p̶r̵e̡śen͟t͞ìng ch̢a͘ơs.
03:44:54  client
03:45:05  hive-mind?
03:45:26  Sgeo: I͎̖͝n̨͔͙̪̹̰͎͎v͔̥̖̝̺͡o̱̦̳k͍̲̱̺ͅi̭̲͙͓̗̥n̟͖͎̱͓̯g̮̹̼̘͇̹ ̟̟͚̻̱̝͎th̰͓͓̞̟e̺ ̷̙̻̟̮͚fe̶el̟̼̹̀ị͖̮̯̞n̬ͅͅg̟̼͎̳̩̠͘ ͔̠o̙͓̳f̻̜̪͖̻̙ ̲͕c̢̣̪̩̣̺͕h̪̮̬̙̥a͕͈̱̻̬̹̦o̯̺̬̼̟s̗͖̦̠̣̦.̞̲́ ͔̱͈̭̠̟W̕i҉̘̖t̴̳̪ͅh̝̱̬̭͜ ͕̮o̮͍͎̭̥͉͡ut͙̟ ̼͈͖̫͠o̢̼r̪͙̝͢d͖̮̩ͅe̡̳̩̣͕͙r̗̣̜̝͎͜.̪͕̤̜͞ͅ
03:45:27  Zalgo is to invoke the hive-mind representing chaos
03:45:32  Gregor: nah, that doesn't do anything.  what appears to be happening is that somehow the window got the wrong offset for when to start displaying
03:45:38 * quintopia makes a new window
03:45:38  I just see the words with squares overlapping some letters
03:45:39  Sgeo: it only makes sense in a lovecraftian way
03:45:40 -!- quintopia has left (?).
03:45:51 -!- quintopia has joined.
03:46:01  I see mostly boxes
03:46:02  okiedoke
03:46:08  But the letters are clear enough
03:46:25  Then your Unicode support S̷̨͈̼̖͈̈́̓ͥ͋̈̑Ų̷̠̹͓͎̱̰͉̮̠̻̮̭͓͌̉ͫ̓̆̿͛̀̐̓̿ͭ̄̍ͤͅC̓̔̔́ͫ͌̾͘͟͏̶̰̤̺̮̕ͅK̵̴͉̞̰̟̣͈̬͔̗̟̐̎ͯͣ͊̐̇͊ͮ̓ͥ͒ͯ̓̓̈́̽͋̚S̴͌̾̊̽͂͛͂͂ͦͧ̈́̽̒͌͒̋̚҉̞̯͎̝͓̥̱̤̹̙̻̦̘̯͓͟
03:46:26  this is my favorite time of day in this channel
03:46:43  Gregor: you is silly
03:46:46  :P
03:46:47  Do you have any suggestions about the 'Patamagician class?
03:46:56  zzo38: does it really need a '?
03:47:01  quintopia: If you don't give me WebSplat suggestions, I'll just have to make it zalgofy things you jump on!
03:47:09  quintopia: it's traditional!
03:47:17  Gregor: ... not bad.  go for it!
03:47:17  quintopia: That is part of the name it has a apostrophe
03:47:33  http://encyclopediadramatica.com/Zalgo (all ED links should be assumed NSFW)
03:48:14  zzo38: what the hell is a null metamagic?  why would you want one?
03:49:32  everyone smile
03:49:35  :D
03:49:44  :E
03:49:55  :D
03:50:17  3:
03:50:23  :D̷̢̼̮͍̫͇̣̹̗̥͍͕̺͆̆̅̇ͭ̇̿ͣ͂ͭ̿̀͜͟͠ͅ
03:50:44  gregor did you just write something
03:50:53  Yes? :P
03:51:07  i think it was you that broke my window
03:51:14  you better not have done it this time
03:51:50  8-D
03:51:58  LOVE THE ZALGO
03:52:07  (You said it wasn't the Zalgo :P )
03:52:31  this channel needs an admin bot to auto-punt anyone that uses the RTL unicode modifier...
03:53:04 * quintopia tests
03:53:29  i don't think it broke anything this time
03:53:47  oh, wait, it added and extra blank line
03:53:58 -!- quintopia has left (?).
03:54:01 -!- quintopia has joined.
03:54:34  maybe i could write a script that autokilled those particular characters
03:54:48  before they reach the buffer
03:54:56  quintopia: The purpose of a null metamagic is mostly for use with 'patamagic.
03:55:04  But there might be other uses as well.
03:55:31  it's purpose is to what?  occupy a slot?
03:55:33  Do you have any suggestions for the auxiliary tables, or any 'patamagic feats?
03:55:49  quintopia: So that you can apply a 'patamagic to it.
03:55:59  oh
03:56:00  http://en.wikipedia.org/wiki/USA_v._$124,700 Such bullshit.
03:56:09  Yes, that is USA v. $124,700.
03:56:25  Or, in full: United States of America v. $124,700 in U.S. Currency
03:56:51  zzo38: body table: one arm shrinks five inches and the other grows five inches :P
03:58:01  OK. If you have more than two arms, select two at random. If you have only one, select shrink/grow at random. If you have none, reroll.
03:58:24  Yes, the US *actually sued* money.
03:58:34  I didn't know you are allowed to sue money
03:58:49  zzo38: The US can.
03:59:35  zzo38: They sue the currency to do asset forfeiture, without either just compensation or convicting anyone of a crime.
04:00:19  Anything else for the auxiliary tables? I should put twenty or one hundred choices per table, I think.
04:00:58  Is it allowed to sue the sun?
04:01:18  Yes, the US could sue the sun to claim it.
04:01:44  actually that would be against a space treaty, i believe
04:01:59  holy crap pikhq.  that's BS.  that's practically spitting in the face of the fourth amendment
04:02:06  oerjan: The US handling of treaties is that they are ordinary law.
04:02:14  oerjan: And as such the courts can overrule them just fine.
04:02:30  oerjan: In short, the US says "FUCK YOU, I WANT TYRANNY".
04:02:33  Do you find anything wrong with this 'Patamagician class? Any ideas for 'patamagic feats that can be written?
04:02:42  quintopia: Yeah.
04:03:16  zzo38: the only thing i find wrong with it is that i don't understand it
04:03:48  quintopia: What parts do you not understand? Maybe I can clarify it?
04:03:51  Ah, *anyone* can directly sue an item in order to attempt to claim it.
04:04:15  Is it allowed to sue yourself?
04:04:18  See: R.M.S. Titanic, Inc. v. The Wrecked and Abandoned Vessel, R.M.S. Titanic
04:04:24  (yes, really)
04:04:33  did they win it?
04:04:39  Is it allowed to sue things which do not exist?
04:05:14  zzo38: I think not.  cases X vs. God tend to get thrown out.
04:05:39  OK
04:05:48  quintopia: No.
04:06:02  zzo38: explain what that big level table is about (i don't play, so i have no idea)
04:06:17  pikhq: does anyone have a claim to it?
04:06:20  That "R.M.S. Titanic" case is not against itself.
04:06:37  quintopia: No.
04:06:49  hm, well, i suppose that's for the best
04:06:54  quintopia: The level table describes how many spells you get at each experience level
04:06:55  quintopia: It was merely shown that R.M.S. Titanic, Inc. did not have a valid claim.
04:07:21  zzo38: spells per slot?
04:07:29  quintopia: No, spell slots per day.
04:07:44  zzo38: only one kind of spell can occupy a slot at a time?
04:07:53  quintopia: Yes.
04:07:57  aha
04:08:18  and 'patamagic feats ... let you use prepared magic spontaneously and vice versa?
04:09:49  quintopia: No. 'Patamagic feats are effects applied to metamagic feats (like metamagic feats are effects applied to spells), but 'patamagic is applied spontaneously to a prepared spell, and you can spontaneously cast a spell from a spontaneous slot which has been prepared with a 'patamagic feat.
04:10:17  oh
04:10:32  so what's an example of a 'patamagic feat?
04:10:39  You can also spontaneously cast a spell with a spontaneous slot even if it has not been prepared with 'patamagic.
04:11:15  quintopia: I have none yet, but I guess one possibility is one which allows you to use a metamagic feat by spending 'patamagic points instead of adjusting the spell level.
04:11:39  Another could be that the metamagic affects the spell during even numbered rounds of the spell's duration only.
04:13:06  or...the metamagic affects the last spell cast, and history is rewritten to account for the change?
04:13:52  quintopia: No. Metamagic affects the spell you are currently casting.
04:14:15  A 'patamagic only affects a metamagic you have applied to a spell you are casting.
04:14:17  So that won't work.
04:14:24  zzo38: yes, but why couldn't your 'patamagic feat make the metamagic travel back in time? :D
04:15:35  am i evil for even suggesting it?
04:15:52  quintopia: Perhaps that might be a possibility. But the metamagic still has to apply to a spell you are currently casting.
04:16:01  Making a mistake is not the same thing as being evil.
04:17:35  zzo38: i'm suggesting that you first apply the metamagic to the spell you are casting, and then you do the 'patamagic feat, and it switches the metamagic from the spell you are casting to the previous spell, if it applies to that spell
04:18:08  quintopia: Ah! That could work, I think.
04:21:44  (My character in current D&D game is ettercap and my brother's character is human. Next time my character I think I should want to be 'patamagician class, and my brother's character is ninja.)
04:28:01  You can look at some of the other spells and feats I wrote too, if you want to (they are in the same directory).
04:29:44  http://www.youtube.com/watch?v=h7eREddMjt4 this is going to take forever to happen, but if it ever does...wooooo!
04:31:34  What is that video about?
04:32:35 -!- Pupuser402-1 has joined.
04:35:46  it is a new MMO in development
04:35:49  for example, if the target asks
04:36:03  large scale procedurally generated universe
04:36:06  "Why did Bodhidharma come to China from India?" and the manifester answers That oak tree in the garden" those words are understandable
04:40:16 -!- oerjan has quit (Quit: Good night).
04:40:41 -!- Pupuser402-1 has quit (Quit: Leaving).
04:40:41  Also do you have any comments about the esolang called TNTNT?
04:42:13  no
04:42:29  did you watch the videos?
04:44:49  quintopia: No. Do you have a transcript of the videos? And then I can watch the transcript. Or a Ogg Theora video I can also watch (but I prefer a transcript).
04:46:09  what do you mean by transcript?
04:46:55  Like a text transcript of the things the video is about.
04:47:02  oh
04:47:19  it would just leave you wishing you had seen the video
04:47:32  here is a transcript of everything that is said in the videos:
04:47:37  \
04:47:58  because it is a tech demo
04:48:03  it's about pretty graphics
04:50:57  I think I submitted the only deterministic solution to the "123" problem on anarchy golf.
04:51:35  what is the problem again?
04:52:00  The program is run three times. No input. The first time, output "1", the second time, output "2", the third time, output "3".
04:52:37  soo...it's "find a way to save state between runs"?
04:53:13  quintopia: Actually there is another later problem which involves saving state between runs.
04:54:00  there is no way to do 123 without finding a way to preserve some state...
04:54:07  what's your solush?
04:54:09  All the other solutions to the "123" problem use the process ID or random numbers.
04:54:24  My solution (in Bash and Zsh) is:     ls>>*;wc -l<*
04:54:44  It is shorter than the nondeterministic solutions in Bash.
04:55:52  Please note that with most programming languages available (including Bash and Zsh), your program is the only file in the directory, initially.
04:56:05  yeah, no i see it
04:56:53  otherwise, you'd get some other numbers :P
04:57:02  Yes.
04:57:38  hello coppro
04:57:50  coppro: Are you trying to make a report about the IRC clients used by people in this channel?
04:57:51  Hi
04:57:56  zzo38: No. I should.
04:58:10  or even better
04:58:16  I should do like a chart of the top N freenode channels
04:59:21  what are the top N channels?  i can't even begin to guess
05:17:29  coppro: Maybe you can also make a report about timezones and cloaks.
05:18:21  Also, do you know what random number algorithm would be suitable for TeXnicard?
05:19:26  (One possibility is the same one used in METAFONT, so that I can reference it in the bibliography.)
05:21:06  Would that one be suitable? Or would a different one do better?
05:22:34  sshc's VERSION response says "mIRC version something"
05:56:06 -!- Goosey has quit (*.net *.split).
05:56:07 -!- Zuu has quit (*.net *.split).
05:56:07 -!- quintopia has quit (*.net *.split).
05:56:07 -!- Ilari has quit (*.net *.split).
05:56:07 -!- HackEgo has quit (*.net *.split).
05:56:07 -!- EgoBot has quit (*.net *.split).
05:56:07 -!- Gregor has quit (*.net *.split).
05:56:07 -!- Vorpal has quit (*.net *.split).
05:56:07 -!- rodgort has quit (*.net *.split).
05:56:07 -!- Deewiant has quit (*.net *.split).
05:56:08 -!- sebbu has quit (*.net *.split).
05:56:08 -!- jcp has quit (*.net *.split).
05:56:08 -!- nooga_ has quit (*.net *.split).
05:56:08 -!- nooga has quit (*.net *.split).
05:56:09 -!- sshc has quit (*.net *.split).
05:56:09 -!- mycroftiv has quit (*.net *.split).
05:56:09 -!- Ilari_antrcomp has quit (*.net *.split).
05:56:09 -!- augur has quit (*.net *.split).
05:56:10 -!- pikhq has quit (*.net *.split).
05:56:10 -!- Slereah has quit (*.net *.split).
05:56:10 -!- pingveno has quit (*.net *.split).
05:56:11 -!- aloril has quit (*.net *.split).
05:56:11 -!- mtve has quit (*.net *.split).
05:56:11 -!- yiyus_ has quit (*.net *.split).
05:56:11 -!- SimonRC has quit (*.net *.split).
05:56:11 -!- olsner has quit (*.net *.split).
05:56:11 -!- iamcal has quit (*.net *.split).
05:56:12 -!- jix has quit (*.net *.split).
05:56:12 -!- coppro has quit (*.net *.split).
05:56:12 -!- fxkr has quit (*.net *.split).
05:56:12 -!- ineiros has quit (*.net *.split).
05:56:12 -!- dbc has quit (*.net *.split).
05:56:12 -!- Sgeo has quit (*.net *.split).
05:56:12 -!- tswett has quit (*.net *.split).
05:56:13 -!- Mathnerd314 has quit (*.net *.split).
05:56:13 -!- cheater99 has quit (*.net *.split).
05:56:13 -!- Quadrescence has quit (*.net *.split).
05:56:14 -!- Leonidas has quit (*.net *.split).
05:56:15 -!- zzo38 has quit (*.net *.split).
05:56:15 -!- fizzie has quit (*.net *.split).
05:56:15 -!- wareya has quit (*.net *.split).
05:56:15 -!- Sasha has quit (*.net *.split).
05:56:15 -!- myndzi\ has quit (*.net *.split).
05:56:16 -!- lifthrasiir has quit (*.net *.split).
05:56:16 -!- yiyus has quit (*.net *.split).
06:00:31 -!- quintopia has joined.
06:00:31 -!- wareya has joined.
06:00:31 -!- zzo38 has joined.
06:00:31 -!- sebbu has joined.
06:00:31 -!- augur has joined.
06:00:31 -!- Sasha has joined.
06:00:31 -!- nooga_ has joined.
06:00:31 -!- Goosey has joined.
06:00:31 -!- Sgeo has joined.
06:00:31 -!- cheater99 has joined.
06:00:31 -!- nooga has joined.
06:00:31 -!- Quadrescence has joined.
06:00:31 -!- myndzi\ has joined.
06:00:31 -!- pingveno has joined.
06:00:31 -!- tswett has joined.
06:00:31 -!- Zuu has joined.
06:00:31 -!- olsner has joined.
06:00:31 -!- pikhq has joined.
06:00:31 -!- Ilari has joined.
06:00:31 -!- fizzie has joined.
06:00:31 -!- Slereah has joined.
06:00:31 -!- HackEgo has joined.
06:00:31 -!- EgoBot has joined.
06:00:31 -!- jcp has joined.
06:00:31 -!- aloril has joined.
06:00:31 -!- Gregor has joined.
06:00:31 -!- iamcal has joined.
06:00:31 -!- sshc has joined.
06:00:31 -!- mtve has joined.
06:00:31 -!- Leonidas has joined.
06:00:31 -!- Vorpal has joined.
06:00:31 -!- rodgort has joined.
06:00:31 -!- ineiros has joined.
06:00:31 -!- dbc has joined.
06:00:31 -!- jix has joined.
06:00:31 -!- yiyus_ has joined.
06:00:31 -!- coppro has joined.
06:00:31 -!- mycroftiv has joined.
06:00:31 -!- Deewiant has joined.
06:00:31 -!- fxkr has joined.
06:00:31 -!- lifthrasiir has joined.
06:00:31 -!- SimonRC has joined.
06:00:31 -!- Ilari_antrcomp has joined.
06:00:31 -!- yiyus has joined.
06:36:27  Is anyone on, today?
06:48:01  eh
07:12:44 -!- FireFly has joined.
07:15:49 -!- Zuu_ has joined.
07:16:11 -!- Goosey has quit (Read error: Operation timed out).
07:16:27 -!- Zuu has quit.
07:29:01 -!- MigoMipo has joined.
07:39:41 -!- zzo38 has quit (Remote host closed the connection).
07:49:12 -!- Wamanuz has joined.
07:51:58 -!- Sgeo has quit (Read error: Connection reset by peer).
07:52:25 -!- Sgeo has joined.
07:52:29 -!- MigoMipo has quit (Ping timeout: 255 seconds).
07:53:40 -!- Sgeo has quit (Read error: Connection reset by peer).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:36:01  I wonder if the French translation of Star Wars uses "Ceci n'est pas une lune"...
08:40:53 -!- Wamanuz has quit (Ping timeout: 265 seconds).
08:41:07 -!- FireFly has quit (Quit: swatted to death).
08:44:04 -!- MigoMipo has joined.
09:00:08  Vorpal: that makes for a funny t-shirt text though
09:06:01 -!- Deewiant has quit (Ping timeout: 272 seconds).
09:06:19 -!- Deewiant has joined.
09:19:59  "Ce n'est pas une lune." in the French subtitles.
09:34:38 -!- MigoMipo has quit (Read error: Connection reset by peer).
10:11:27 -!- nopseudoidea has joined.
10:13:43 -!- atrapado has joined.
11:17:31  fizzie, close but not close enough
11:25:26 -!- nopseudoidea has quit (Quit: Quitte).
11:40:24  hi
11:48:30 -!- nopseudoidea has joined.
11:49:09 -!- nopseudoidea has left (?).
12:10:06 -!- wareya_ has joined.
12:13:10 -!- wareya has quit (Ping timeout: 250 seconds).
12:41:55 -!- zzo38 has joined.
12:53:22 -!- Wamanuz has joined.
12:53:30 -!- Phantom_Hoover has joined.
12:56:59 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
12:57:49 -!- Phantom_Hoover has joined.
12:59:44 -!- atrapado has quit (Quit: Abandonando).
13:07:19 -!- FireFly has joined.
13:09:51 -!- Wamanuz has quit (Remote host closed the connection).
13:11:34 -!- Wamanuz has joined.
13:13:22 -!- hagb4rd has joined.
13:13:35 -!- ais523 has joined.
13:14:47 -!- MigoMipo has joined.
13:22:35 -!- ais523 has quit (Read error: Connection reset by peer).
13:22:59 -!- elliott has joined.
13:23:02  19:46:47  Do you have any suggestions about the 'Patamagician class?
13:23:05  the p is lowercase in 'pata
13:24:07  elliott: It is a title, though?
13:24:12 -!- elliott_ has joined.
13:24:13 -!- elliott_ has quit (Read error: Connection reset by peer).
13:24:15  zzo38: the ' is uppercase
13:24:36  zzo38: oh, it seems that the P is capital only at the beginning of a sentence or in a name, like brainfuck
13:25:53  zzo38: er, in a title
13:26:09  so it's 'Patamagician in titles or at the start of sentences, 'patamagician everywhere else
13:26:31  20:04:18  See: R.M.S. Titanic, Inc. v. The Wrecked and Abandoned Vessel, R.M.S. Titanic
13:26:31  20:04:24  (yes, really)
13:26:33  album name.
13:26:39 -!- ais523 has joined.
13:26:57  The name of the class is a title.
13:29:52  ais523: hi
13:30:13  ineiros, you should generate a new map. the last one is quite old
13:32:38  20:59:21  what are the top N channels?  i can't even begin to guess
13:32:42  #ubuntu, #gentoo is on there somewhere
13:32:44  #wikipedia
13:32:53  try /list in a fancy client that can sort /list
13:32:53  s
13:34:04  elliott, ##linux is high too
13:34:05 -!- ais523 has quit (Read error: Connection reset by peer).
13:34:12  also uh, /list will take ages
13:34:57  Vorpal: not that long, actually
13:35:02  it's just a few thousand lines :)
13:35:16  xchat just displays it raw though, you'd have to | sort -n and the like
13:35:29 -!- ais523 has joined.
13:35:30  * End of /LIST
13:35:32  hi ais523
13:36:25  I thought http://irc.netsplit.de/ had a sortable channel list, but apparently not. They produce an across-networks top-100 channel list, and they can list freenode's channels (paginated into 950 pages of 10), but they don't have a per-network top-channels page.
13:36:36  (Or if they do, I can't find it.)
13:37:03  Wait, now it went sorted-by-user-count.
13:37:08  I don't know what I did, exactly.
13:37:32  http://irc.netsplit.de/channels/?net=freenode in that case, maybe. They strip one # off the name there.
13:37:40 -!- nooga_ has quit (Ping timeout: 260 seconds).
13:37:41 -!- nooga has quit (Ping timeout: 260 seconds).
13:38:05  So #ubuntu (1407 users), then #debian, #gentoo, #archlinux, #python, #git, #jquery, ##c++, #perl, #haskell.
13:38:17  but didn't debian move to oftc?
13:38:28  and #debian redirect to ##debian iirc?
13:38:40  debian are still on freenode, but they're on oftc too.
13:38:42 -!- nooga has joined.
13:38:45  oh
13:38:48  yes, it's ##debian now
13:38:56  so why is #debian so large?
13:39:04 -!- nooga_ has joined.
13:39:05  because it redirects
13:39:09  and it used to be #debian
13:39:16  so the netsplit.de system still knows it as #debian
13:39:20  one presumes
13:39:48  hm
13:40:08  ugh, ##c is too high up that list for comfort
13:40:11  horrible channel
13:40:29  Hey, it's our departmental christmas party now, I think I should be out there. ->
13:40:58 * elliott plots ways to overthrow ##c
13:41:01  Nukes?
13:41:02  elliott, I need to know which sea you plan to use for the glass cube, because I need to find one for something I planned. Need to be large (but not nearly as large, something like 70x50 is enough for me)
13:41:18  elliott, thus I would rather not build where you will be building
13:41:36  Vorpal: Um, find a sea that isn't very close to nice, mountainous land, and that ideally doesn't have a perfect 128x128 block somewhere in it. :p
13:41:47  And if you can go further from spawn that would work too.
13:42:12  elliott, well which one. I want to be reasonably close to spawn due to travel time otherwise (I will need to get a lot of material from my store)
13:42:19  Vorpal: Warp :P
13:42:27  elliott, none yet afaik?
13:42:53  Vorpal: No, but you could always get one added.
13:43:00  It's a single command at Mount Vorpal to get /warp vorpal.
13:43:40  elliott, depends on ineiros doing it though
13:44:00  Vorpal: Ask nicely? :p
13:44:16  Vorpal: Actually /warp thingi'mbuilding would be better, since you wouldn't want /warp vorpal to go inside.
13:44:21  And then we could visit it too.
13:44:29  Vorpal: But, ehh, just take any sea; most of them don't have 128x128 blocks.
13:44:30  elliott, well yeah, he said he would add them but was rather preoccupied.
13:44:45  /tp dwarf1982 BCxVAhWQXI
13:44:48  /setwarp thing
13:44:53  elliott, as for that thing I plan: I have no idea how it will turn out. :P
13:45:01  elliott, did you type that user name from memory!?
13:45:08  (mine I mean)
13:45:18  elliott, if so: more than I can do
13:45:19  LOL, PHP decided against supporting "finally" beause you could just catch and ignore the exception.
13:45:20  Genius.
13:45:24  Vorpal: Yes, I did.
13:45:27  Vorpal: *WQxi, actually.
13:45:39  is it. okay
13:45:46  Vorpal: "B.C. Ex-vah Wuh-kwuh-cksi".
13:46:00  elliott, the w is not voiced
13:46:20  Vorpal: 'Tis in my mind.
13:46:21  the second one in that pronunciation that is
13:46:22  whoa.
13:46:29  Vorpal: Oh, heh.
13:46:30  elliott, Vorpal, are you two planning Minecraft things?
13:46:32  No.
13:46:36  elliott, as in: "B.C. Ex-vah Wuh-kuh-cksi"
13:46:37  [[This is one of numerous cases why finally is useful:
13:46:37  mysql_query("LOCK TABLES mytable WRITE");
13:46:37  try {
13:46:37    // ... do lots of queries here
13:46:37  } finally {
13:46:45  try {
13:46:47    // ... do lots of queries here
13:46:49  } catch (Exception $e) {
13:46:51    // do nothing here
13:46:53  }
13:46:54  what
13:46:55   mysql_query("UNLOCK TABLES");
13:46:57  The only difference is the second example does rethrow the exception. Though this is still possible (however much more to type) it is wrong design. Since obviously you are using the exceptions as control flow.]]
13:46:58  elliott, that makes no sense
13:47:00  look at that
13:47:02  silently dropping the exception is better than re-throwing it after cleaning up
13:47:04  this person is a core PHP developer.
13:47:06  >_<
13:47:08  Vorpal: PHP makes no sense
13:47:10  Vorpal: http://bugs.php.net/bug.php?id=32100 see the problem and first response
13:47:11  elliott, "transactions"?
13:47:12  then cry
13:47:25  elliott, I mean, that is how you do sql stuff. With transactions
13:47:28  Vorpal: Dude, they built this language on embedding values into SQL strings.
13:47:32  They don't know shit about SQL features :P
13:47:52  elliott, php does support sql transactions iirc though. No idea to what degree
13:48:11  Yeah yeah :P
13:49:34  Vorpal: The best thing is, to rethrow the exception, you need
13:49:36  try { ... }
13:49:42  Phantom_Hoover, yes I'm considering an underground dock. Two waterfalls in the middle of the sea, a bit from each other. then a small river from the down shaft, opening onto a small lake (this really needs flickering flames :/) with a dock. From that another short river to an up shaft
13:49:45  catch (Exception $e) { mysql_query("UNLOCK TABLES"); throw $e; }
13:49:46  mysql_query("UNLOCK TABLES");
13:49:55  Redundancy AND it loses the file/line info!
13:50:13  "Two waterfalls in the middle of the sea, a bit from each other" ;; use the ones you already have? :p
13:50:22  elliott, these ones go *down*
13:50:23 * Phantom_Hoover wonders how MoveCraft deals with ships sailing into waterfalls.
13:50:30  elliott, but I could do it in the same sea, sure
13:51:06  Vorpal: That might work, I don't plan to buld there.
13:51:12  elliott, actually one waterfall and one drop shaft. Hm. How to prevent the water from flowing into the drop shaft and making the boat not drop
13:51:28  oh wait, I could use that.
13:51:30  right
13:51:31  hah
13:51:46  (like the water-redstone thingy, except with no redstone)
13:51:52  (perfect drop shaft)
13:57:32  Phantom_Hoover, elliott: which of you ruined the easter egg
13:57:38  huh?
13:57:45  Vorpal, not me.
13:57:47  elliott, lots of lava, stuff dug away
13:57:59  Vorpal: not I, I haven't been tot he easteregg since you led me there
13:58:05  I'm not good enough at navigation :P
13:58:13  elliott, Phantom_Hoover: I doubt fizzie would do it, nor ineiros. I certainly didn't do it. nailor: doubtful. So that leaves you two.
13:58:29  Well, I haven't been there in ages *shrug*
13:58:33  elliott, so PH then
13:58:39  I get lost by travelling for 30 seconds away from Mount Hoover.
13:58:40  Phantom_Hoover, no good lying
13:58:45  Vorpal, it wasn't me.
13:59:03  Phantom_Hoover, you or elliott. I don't know who
13:59:20  but seriously. One of you are lying
13:59:28  It's not me.
13:59:36  I blame sheep.
13:59:49  Or cows. What did the server say to burn?
13:59:54  Whatever they are, they're clearly evil.
14:00:01  elliott, ... pouring lava over the whole thing? digging away blocks?
14:00:16  Nasty piece of work, cows... sheep?
14:00:25  Fiendishly intelligent beasts, sheep.
14:00:26  Seriously though, I've been there exactly once.
14:00:42  ....
14:01:21  when I find out who did it, I will make the same damage to whatever he built
14:02:17  Phantom_Hoover, you are the prime suspect. Can you prove you didn't do it?
14:02:23 -!- sftp has joined.
14:02:41  Vorpal, ...no. Why am I the prime suspect?
14:02:44  I see Vorpal's legal system is based on the tried-and-true principle of guilty until proven guilty. :p
14:06:29 -!- hagb4rd has quit (Quit: hagb4rd).
14:07:47 -!- elliott_ has joined.
14:07:51  Vorpal: I can't log in
14:07:55  it says i'm alraedy logged in
14:08:18  elliott_, it says "ehird joined/left" all the time
14:11:39 -!- elliott has quit (Ping timeout: 276 seconds).
14:21:40  pikhq: CubeHash is not an SHA-3 finalist.
14:21:53  "According to the announcement, the choice of finalists came down more to issues of efficiency than issues of security."
14:22:05  [[# Given the above, NIST didn’t have much to go on, with regard to security, in making their decision. They even made what I find to be an unusual statement in their announcement: “in some cases [we] did not select algorithms … largely because something about them made us ‘nervous,’ even though we knew of no clear attack”.]]
14:22:27  elliott_, down?
14:22:38  Vorpal: Seems so. I'll come there with bukkits of lurva.
14:22:48  elliott_, no thanks :P
14:22:58  Vorpal: Obsidian, dude!
14:23:29  elliott_, well, will do other stuff for a while. And only I know the font.
14:23:53  Vorpal: I'd just donate the bukkits.
14:24:28  elliott_, you realise how much you would need? the V alone is 9 blocks
14:24:46  O is considerably more. Besides the scaffolding for that would be large
14:24:58  (to prevent lava going everywhere
14:25:17  bbl, going to make food now
14:26:49  ineiros, ping
14:28:32  Vorpal: You just need to make a 3D O shell, fill it with water, and put lava there.
14:42:46  ugh oklopol isn't here
14:50:55 -!- Sasha has quit (Read error: Connection reset by peer).
14:51:06 -!- Sasha has joined.
14:54:35 -!- Sasha has quit (Read error: Connection reset by peer).
14:54:44 -!- Sasha has joined.
15:00:56 -!- augur has quit (Remote host closed the connection).
15:01:20 -!- augur has joined.
15:05:28 -!- oerjan has joined.
15:05:56 -!- augur has quit (Ping timeout: 264 seconds).
15:09:23 -!- Vorpal_ has joined.
15:09:34 -!- Vorpal has quit (Ping timeout: 272 seconds).
15:12:48 -!- hoxily1 has joined.
15:13:16   what are the top N channels?  i can't even begin to guess
15:13:25  http://irc.netsplit.de/channels/?net=freenode has a list
15:14:02  memetech.com is still down
15:14:36  #ubuntu, #debian, #archlinux, #gentoo, #python, #git, #jquery, #haskell, ##c++, #perl i think
15:14:41  oerjan: i saw the whole discussion above already, thanks
15:14:56  wait there was a discussion?
15:15:21 * oerjan was still on yesterday's logs
15:15:23  fizzie said the same things you just said
15:15:32  two hours ago
15:15:53 -!- Vorpal_ has changed nick to Vorpal.
15:17:45  HOW RUDE
15:18:31 -!- hoxily2 has joined.
15:20:30  people should really make all their responses to logs in a separate file as they read, and then post them all at once when they reach the present moment...
15:21:34 -!- ginz has joined.
15:21:57 -!- hoxily1 has quit (Ping timeout: 245 seconds).
15:23:24  quintopia: whine whine, we do it this way and we like it
15:23:58  elliott_: ah.  that's good then.
15:24:10  buffered IO is more work
15:24:12  :)
15:25:21  meh, i don't care much. i just think it must be embarassing to be ninja'd by hours...
15:27:14  psht, just being in this shithole is embarrassing!
15:28:23  elliott_: true.  but it's really not worth any effort to reduce the amount of shit here. best to come up with more and more ways to add to the shitpile.
15:29:03  inDEED
15:31:12 * elliott_ ups his font size in an effort to become friends with his eyes once again
15:34:05  hmm, I just wrote the following: "void* with_rng_state_saved(func, data) void* (*func)(void*); void* data; {"
15:34:15 -!- hoxily2 has quit (Ping timeout: 272 seconds).
15:34:17  there is something so wrong about functional programming in K&R C
15:34:25  ais523: is NetHack K&R or something? :)
15:34:33  indeed
15:34:43  ais523: I'd make it a macro.
15:34:49  NetHack: 1987; C89: 1989
15:35:30 -!- ginz has quit (Quit: Leaving).
15:35:53  ais523: #define DO_with_rng_state_saved(q) do { rng_state *foo = current_rng_state(); {q;}; restore_rng_state(foo); } while (0)
15:35:54  something like that
15:36:00  DO just to mark it as a macro without shouting the whole thing
15:36:06  hmm, perhaps
15:36:10  usage:
15:36:10  DO_with_rng_state_saved(
15:36:12      ...
15:36:14  );
15:36:26  elliott_: issue with there is not writing any commas in what might be quite a complicated function
15:36:33  *issue with that
15:36:38  ais523: you can solve that in various ways
15:36:40  indeed
15:36:46  ais523: by calling the macro as DO_with_rng_state_saved((...))
15:36:53  and tweaking it slightly
15:36:54  then you can't use semicolons
15:37:02  unless you use gcc extensions
15:37:07  and IMO, gcc extensions and K&R C don't mix
15:37:18  (not because you can't do it, just because it's an abomination)
15:37:28  ais523: and, it's just that constructing functions in C is irritating, and also, you have to separate the code from where it happens
15:37:31  which doesn't really aid reading
15:37:42 -!- augur has joined.
15:38:05  it's not too bad, because I'm doing it in two consecutive functions, the second of which is mostly a wrapper
15:38:08  ais523: hmm... what about
15:38:16  WITH_RNG_STATE_SAVED {
15:38:18      ...
15:38:20  } END_SAVE_RNG
15:38:24  also, macros are the wrong tool for this
15:38:34  functions are clearly "better"
15:38:35  ais523: Cpp macros are, yes :)
15:38:42  ais523: what it really wants is a Lisp macro
15:39:01  Lisp macros always strike me as fundamentally impure and awkward
15:39:07  as they work syntactically rather than semantically
15:39:13  ais523: that's the whole /point/
15:39:19  ais523: with Lisp, the syntax and semantics are closely linked
15:39:45  yes, I think that's a huge negative for a language
15:39:48  ais523: have you looked at Scheme's hygenic macros?
15:39:52  they're much nicer
15:40:02  it's actually almost what inspired Underlambda
15:40:09  which is pretty much syntax-independent
15:40:11  what, scheme macros?
15:40:26  no, wanting to not link syntax and semantics
15:40:29  like Underload does
15:40:53  ais523: clearly, we need to define Abstract Semantic Trees
15:41:07 * elliott_ 's brain flags up a warning sign: that actually sounds like a good idea
15:41:11  looks like we're straying off topic!
15:41:22  good ideas aren't offtopic
15:41:28  well, no, but close :)
15:41:30  as long as they're sufficiently eso
15:42:08  ais523: I'd just like to say that I highly recommend 12pt fonts on small, high-PPI laptop screens like we have.
15:42:09  this is nice.
15:42:11  elliott_: sounds to me like you're summoning augur :D
15:42:20  oerjan: oh dear :D
15:42:28 -!- elliott_ has changed nick to elliott.
15:42:32 -!- elliott has quit (Changing host).
15:42:32 -!- elliott has joined.
15:42:36 * oerjan actually did that now, didn't he :D
15:42:36  I AWAKEN
15:42:43  AIIIIIEEEEEEEEEE
15:43:31  ais523: the problem with abstract semantic trees is that for all programs, P,Q, eval(P)=eval(Q) must => ASemT of P = ASemT of Q
15:43:38  so they're not computable, *unless* you restrict the operations on them
15:44:02  so that for every ASemT P' and Q' of programs P and Q, eval(P)=eval(Q) => f(P')=f(Q') for all f
15:48:13  ais523: do you know a way to get the GNOME menu to only show the generic names of applications, not their brand name too? it's irritating me that a bunch of applications have an irrelevant name on top of them
15:48:32  ("Pidgin Instant Messenger" vs. "Instant Messenger", etc.)
15:49:04 -!- ais523 has quit (Read error: Connection reset by peer).
15:50:42 -!- hoxily2 has joined.
15:51:47 -!- ais523 has joined.
15:58:18 -!- hoxily2 has quit (Ping timeout: 265 seconds).
16:00:23  wb ais523
16:03:43 -!- hoxily2 has joined.
16:05:04 -!- hoxily2 has left (?).
16:05:57  elliott, hm, would you prefer "gimp" or "image editor"? And what about gimp vs. krita then (both are image editors)
16:06:17  of course, if you have no more than one of any type of application installed
16:06:37  Vorpal: "GNU Image Manipulation Program"? :P But yes, disambiguation is required, it's just one of those niggles.
16:06:59  I'd probably rename GIMP to "Image Editor" and Krita to just "Krita" if I used both but GIMP more often. Admittedly that is not a very future-proof solution.
16:07:06  Or automatic, either.
16:07:13  indeed
16:07:22  But my menus are a bit daunting, so I'm decluttering them.
16:07:31  mine just say "Gimp" and so on
16:07:49  Vorpal: For instance "AisleRiot Solitaire", there's no reason not to have that as Solitaire really, since it's the GNOME desktop's official Solitaire program.
16:08:07  And also it's a little confusing, I wondered "what game is AisleRiot?" the first time Is aw it.
16:10:55  elliott, gconf-editor failure: "long description: Project-Id-Version: gnome-panel Report-Msgid-Bugs-To: POT-Creation-Date: 2010-07-27 00:02+0200 PO-Revision-Date: [... lots more ...]"
16:10:58  for some setting
16:11:32  Vorpal: :D
16:12:07  elliott, very strange that the UI is in English but some key descs are in Swedish
16:12:15  (some are however in English)
16:12:25  since the UI on this machine is set to English I find this very strange
16:12:47  oh nice, this one has different languages for short and long desc
16:13:04  Does any METAFONT-like music program exist?
16:13:52 -!- ais523 has quit (Read error: Operation timed out).
16:14:11 -!- ais523 has joined.
16:14:39 -!- hoxily has joined.
16:15:33 * elliott wonders what Inkscape's generic name is
16:15:38  Scalable Drawing Editor?
16:15:42  Scalable Graphics Editor?
16:17:03  hmm
16:17:20  I can't figure out what the difference between Applications → System Tools and System → Administration is meant to be
16:17:24  local vs. global? that doesn't really fit
16:17:47  Information vs. modification or something like that?
16:18:10 -!- hoxily1 has joined.
16:18:37  Deewiant: Nope; System Tools has Configuration Editor.
16:18:50  (Most things in Administration are modification, but not all.)
16:19:24  But I think GF-Magick is better than Inkscape and GIMP?
16:20:37  I disagree!
16:21:50 -!- hoxily has quit (Ping timeout: 240 seconds).
16:22:04  Pidgin calls itself Pidgin Internet Messenger, not Pidgin Instant Messenger. Interesting.
16:22:17  elliott, system → admin I think is gnome settings for system stuff. contrast with system → preferences
16:22:32  Vorpal: yes, but what is Applications → System Tools then?
16:22:49  elliott, ones that doesn't show up in the gnome control center?
16:22:58  elliott, since the ones under system → admin do
16:23:01 * oerjan assumes it has bloated so much it is no longer instant
16:23:06  Vorpal: you think that's a worthy distinction? :)
16:23:15  Vorpal: The Control Centre is basically hidden out of sight nowadays anyway.
16:23:19  Getting to it is non-trivial.
16:23:22  elliott, Applications → system tools contain stuff like wireshark and other non-settings thingies
16:23:29  elliott, gparted too there
16:23:41  gconf-editor is in system tools too for me
16:23:42  Vorpal: it also contains Configuration Editor. also, GParted here in in System → Administration
16:23:51  Conclusion: Nobody knows what the fuck the difference is meant to be.
16:23:55  elliott, I have control center right there in the system menu
16:24:14  elliott, I don't think I added it manually
16:24:31 -!- augur has quit (Remote host closed the connection).
16:24:43  Vorpal: Ubuntu?
16:24:44  Or what?
16:24:58  Anyway the Control Centre is a rather rubbish version of a menu. :)
16:25:15  Stuff that requires root privileges vs. stuff that doesn't? :-P
16:25:57  Deewiant: That's actually vaguely plausible, but not a very relevant distinction; e.g. just because Disk Utility doesn't require root to show information, doesn't mean it isn't system-wide.
16:26:04  If it's nothing else it's probably something similar to regular vs. power user distinction
16:26:31  Deewiant: What, Configuration Editor isn't a power-user tool?
16:26:47  elliott, both on ubuntu and arch
16:26:47  I don't what Configuration Editor is, so I can't answer that question
16:26:49  Or if you mean the other way around: the Services settings?
16:26:51  +know
16:26:52  Deewiant: gconf-editor.
16:26:58  Deewiant: Think regedit, except less annoying to use.
16:27:00  elliott, neither install is brand new
16:27:01  I don't know what gconf-editor does
16:27:01  Where GNOME settings go to die.
16:27:02  Alright
16:27:21  Vorpal: Well, Ubuntu hasn't had the Control Centre visible in forever (years).
16:27:26  It *may* be in stock GNOME; dunno.
16:27:32  Well, then it's probably not that either, which is a bit surprising
16:27:52  elliott, well, on my ubuntu system it dates back to jaunty
16:27:54  Deewiant: I'm just moving everything in System Tools to either Administration or Accessories :P
16:27:58  elliott, so maybe the default was different then?
16:28:08  Vorpal: Not that I know of.
16:28:14  elliott, huh
16:28:18  Deewiant: Amusingly, Administration is in the top-level menu System, so one would think System Tools would at least be System → Tools.
16:28:41  elliott, but System menu contains stuff like log out?
16:28:45  I think System Tools is meant to be Accessories: The Expert Edition.
16:28:48  Vorpal: Yes it does. And?
16:28:55  (Not on recent Ubuntus, incidentally.)
16:28:57  elliott, I don't think it is a "real" menu in the sense that applications is
16:29:00  Ubuntæ.
16:29:01  Vorpal: Yes it is.
16:29:06  elliott, recent = ?
16:29:06  Vorpal: You can add things to it with the menu editor.
16:29:13 -!- augur_ has joined.
16:29:16  Vorpal: Recent = 10.04 onwards? Maybe 9.10 onwards.
16:29:19  elliott, my lucid system has logout and such in the system menu
16:29:30  elliott, it didn't back in jaunty
16:29:37  Vorpal: Well, that's just because your upgrade botched *shrug*
16:29:37  I know my arch always had it in system
16:29:51  elliott, it did? haven't noticed in general
16:29:56  Vorpal: http://www.liberiangeek.net/wp-content/uploads/2010/07/photo_on_menu_thumb.png
16:30:20  elliott, I have log out and shut down below that. But isn't that 10.10?
16:30:31  hm maybe not
16:30:37  (considering date)
16:30:48  Vorpal: I've *used* Lucid, I know what it was :P
16:30:59  Vorpal: You can tell it's not Maverick because it has that brown highlight, not orange.
16:31:03  Beigey.
16:31:16  elliott, well, I upgraded to lucid and switched back to clearlooks first thing :P
16:31:45  elliott, also indeed, ubuntu has gparted in system -> admin
16:31:56  Debian too.
16:32:01  elliott, and in control-center too
16:33:55 -!- hoxily1 has quit (Ping timeout: 240 seconds).
16:37:11 * elliott considers putting Emacs in every menu
16:38:05 * elliott renames Quadrapassel to Tetris
16:38:09 * elliott considers appending a (TM) sign
16:42:16  Is there anything wrong with GF-Magick? Is there anything wrong with Inkscape and GIMP?
16:43:26  zzo38: They have completely different usage cases, as far as I am aware.
16:44:04  # (Deletion log); 14:49 . . Keymaker (Talk | contribs) (deleted "Talk:Brainfuck/w/index.php?title=Talk:Brainfuck/index.php")
16:44:05  elliott: They do?
16:44:09  ais523: will you hate me?
16:44:21  zzo38: Sure; GF-Magick is a batch program, and Inkscape and GIMP are interactive editors.
16:46:53  elliott: Yes and that is the problem with those programs, that if you do it wrong, you have to do it over again, and even if you have a macro with calculation, you still have to click the point manually every time you change something.
16:47:27  zzo38: Well, in my opinion they are much more suitable for creating and editing images than GF-Magick, because you can see what you're doing while you're doing it, and you don't have to plan ahead as much.
16:49:16  elliott, static linking. Would it not be rather annoying when you have a security update in some commonly used library. Such as OpenSSL. Probably would take more time to get the update out too, since more stuff needs to be recompiled?
16:49:50  Vorpal: I am sure you have raised this objection before as it is the first one *everyone* raises when hearing of static linking ... no?
16:50:00  Vorpal: The answer is basically that
16:50:02  erm
16:50:29  Vorpal: The answer is basically that with symbol versioning, ABI breaks in libraries are *already* common and we have to go through situations like this. Additionally, it does not really help that much:
16:50:30  elliott, I don't remember having mentioned it. Of course this does not apply to glibc and it's stupid versioned symbols. But to stuff like openssl it seems somewhat relevant
16:50:46  elliott, openssl doesn't version symbols though
16:50:47  With a decent distribution method -- think binary diffs here -- it does not actually take all that much bandwidth to transfer the new binaries.
16:51:00  Maybe if you're on dial-up it would be a problem.
16:51:05  elliott, but time on the compile farm before you can push out the upgrades?
16:51:32  Vorpal: As far as compilation goes, any active, semi-large distro already regularly compiles many, many packages every day as part of the normal routine of things -- updates, simple time-based builds to check it still works, etc.
16:51:51  Vorpal: Compile farms are fast. And the best part is, with static linking, they'll spend a lot less time running ld(1) ;-)
16:51:53  elliott, yes but kitten will be a one man project for quite some time
16:51:59  So quicker security updates!
16:52:15  elliott, so slower since you don't yet have a huge compile farm
16:52:16  Vorpal: Indeed it will. Small distros tend to not be so quick on the security updates. That's a risk you take.
16:52:26  Vorpal: Of course I would endeavour to recompile all vulnerable packages ASAP.
16:52:26  elliott, true
16:52:35  But it might take three days or so to get everything pushed out.
16:53:05 -!- augur_ has changed nick to augur.
16:53:07  Vorpal: Anyway, I don't plan to recompile for every new library update, as for things like new features and the like it really doesn't matter. I can easily update a library package without updating every program to be compiled with it.
16:53:17  If you do not plan ahead when making the drawing, you will make a mistake! And then you have to do it all over again.
16:53:18  elliott, true
16:53:19  Every now and then I'll rebuild every single package over the course of a week to bring in a new libc.
16:53:30  zzo38: No, because with Inkscape and GIMP you can just fix your mistake.
16:53:32  Or use undo.
16:54:03  elliott, but for security issue in openssl that is quite a bit. Hm. *checks with ldd for binaries using openssl*
16:54:35  Vorpal: I plan to avoid OpenSSL wherever I can.
16:54:46  elliott, gnutls?
16:54:48  Vorpal: I have seen a few too many code snippets to trust their sanity.
16:54:52  Dunno about gnutls.
16:54:55  I'll have to see.
16:55:02  dropbear uses LibTomCrypt :P
16:55:03  elliott, from what I remember it's API is actually somewhat saner
16:55:15  elliott, ssh != ssl
16:55:17  elliott: Yes you can undo, of course. But can you put all the steps in one window and type equations in there, and keep them there with the drawing? (With SVG you can *almost* do so, but almost is not enough except for exploding hand grenades)
16:55:18  Yeah, gnutls is probably my best bet.
16:55:20  Vorpal: I know that.
16:55:34  But IIRC There's a LibTomWhatever for that.
16:55:51  Vorpal: /msg
16:55:53  elliott, still, a lot of stuff only has code for openssl. Unless you plan to rewrite those I suspect you will need openssl
16:56:08  Vorpal: gnutls is actually meant to be openssl-compatible ... *sort of*
16:56:16  But yeah, openssl is probably a necessary evil.
16:56:24  Don't say I didn't warn you if another vulnerability is found :)
16:57:03  zzo38: "but almost is not enough except for exploding hand grenades" what?
16:58:52  elliott: O, it is just a metaphor. It can be safely ignored.
16:59:03  zzo38: I'm not sure I quite understand that metaphor.
16:59:14  elliott: Then ignore it.
17:00:24  And just read the rest of the sentence by assuming the metaphorical part is not there.
17:05:57  (Even if it can, not all SVG rendering programs work the same way (some might not support all feature, or might be slow, you might have some fonts missing, etc), and it doesn't do the kind of contrast/hue/colorspace and those kind of things (Inkscape and GIMP are not the same program).)
17:08:34  zzo38: What license is Enhanced CWEB under?
17:15:27  elliott: It is under the license that you are not allowed to call any derivative works just "CWEB" by itself, and that you must not change the license.
17:16:26  That is, it must be clear that it is not the standard CWEB.
17:16:58  (I included the comment at the top of each source file "% This is modified from standard CWEB." to make it more clearly)
17:17:53  Programs written with Enhanced CWEB can use whatever license you want to use, though. (I often use either the GNU GPL or public domain, depending on the program.)
17:20:17  Why do you want to know what the license is?
17:23:50  zzo38: Just curious. I thought it was GPL.
17:25:34  It isn't. It is a free software license incompatible with the GPL. I believe the license only applies to the specific modules included in standard CWEB, not to external modules such as PicoC.
17:26:06  But if you want to use Enhanced CWEB to write your own programs, those programs can be GPL if you want it to.
17:27:42  zzo38: it's compatible with GPL version 3; see clause 7c
17:28:51  you're allowed to add a requirement "requiring that modified versions of such material be marked in reasonable ways as different from the original version"
17:29:02  and requiring it to not have exactly the same name as the original version seems reasonable to me
17:29:38  ais523: OK let me see. OK I saw it. So I guess that means you are permitted to add modules licensed under the GPL, to the program, and link them together without license violations.
17:30:01  I think so, too, as long as the modules don't require a version before 3
17:30:16  (I don't think you are allowed to relicense the CWEB modules though, because they specifically say you can't change the license)
17:30:53  GPL version 3 had quite a few changes to make it more compatible with existing open source licenses
17:30:55  ais523: I agree with you that it is a reasonable requirement.
17:32:00  If I made a GPL'd software as part of a commercial project, I would certainly want to make that requirement.
17:36:24  Would it do to simply type "Option 7c of the GNU GPL v3 is selected" in the license notice, or is that not specific enough?
17:36:36  I think it's not specific enough
17:37:33  you'd say something like "As an additional restriction, you must give any derivative works a name other than just 'CWEB', to distinguish them from the original work."
17:38:24  s/original work/original version/, may as well keep it as similar to the wording in GPLv3 as possible
17:39:17 -!- ais523 has quit (Remote host closed the connection).
17:40:35 -!- elliott has quit (Quit: Leaving).
17:40:43 -!- elliott has joined.
17:41:44 -!- Phantom_Hoover has quit (Ping timeout: 265 seconds).
17:42:04 -!- Phantom_Hoover has joined.
17:42:35  Is it allowed to make any of the options in section 7 to be conditionally applied, such as only for commercial use or whatever?
17:43:01  That would be non-Free, I strongly believe.
17:43:09  (Discrimination on the basis of field of endeavour.)
17:44:05  elliott: Maybe that makes it non-Open-Source, but for the Free-Software definition, such things are not explicit (whether they are important depends on certain things).
17:44:41  zzo38: Well, it's non-Free according to the DFSG.
17:44:47  So your software could not be included in Debian.
17:45:23  Of course I suppose the condition can be written as a separate license, and the separate license is deleted, then it is unconditional, so it can be used, then, I guess.
17:46:07  And anyways, I have no reason to add these kind of conditionally applied restrictions except in the case of software I would be writing as part of a commercial project, so it doesn't really need to be included in Debian anyways.
17:48:20  But writing the condition as a separate license probably helps.
17:51:34 -!- impomatic has joined.
17:54:06  Similar to how the LGPL v3 is written as a separate license which adds extra permission to the GPL v3.
17:57:51  Do you agree with me that octal numbers are good for coding the patterns on a seven-segment display?
17:58:22  I hardly ever use octal, but it does have a few good uses.
18:05:58 -!- oerjan has quit (Quit: leaving).
18:10:13  Phantom_Hoover, down?
18:10:53  Vorpal, no, as you would have noted if you could wait for more than two goddamn seconds before asking.
18:11:12 -!- Sasha2 has joined.
18:13:09 -!- Sasha has quit (Ping timeout: 265 seconds).
18:15:24  oh god
18:15:26  Ubuntu Shop
18:15:26  http://shop.canonical.com/
18:15:36  http://shop.canonical.com/product_info.php?products_id=795 ha what
18:15:46  "Ubuntu Mouse"
18:15:48  http://shop.canonical.com/product_info.php?products_id=643
18:15:53  why is it flat
18:15:58  why does the ubuntu logo illuminate
18:23:34 -!- nooga__ has joined.
18:25:07 -!- nooga has quit (Disconnected by services).
18:25:13 -!- nooga__ has changed nick to nooga.
18:29:37 -!- augur has quit (Remote host closed the connection).
18:46:30  elliott, down?
18:46:32  Vorpal: dwon?
18:47:01  elliott, I don't know if d won anything
18:50:41  zzo38: Basically having such a conditional requirement only will work for the FSF's notion of "Free", and even then they will be damned annoyed by it.
18:51:38  pikhq: OK.
18:54:30  But it can be separate license for the condition this is you can stop being annoying by it?
18:55:58  There are some scripts using FurryScript, such as D&D adventure, video game names, TV plot, etc. Maybe you or someone else can have more ideas, such as news headlines, or mahjong, or something else?
18:56:29  Still annoying to the FSF for the licensing conditions to change based on whether or not you like money.
18:57:11  If it is a separate license, then you are allowed to tell the licensing conditions not to change, if that is what you prefer.
18:57:35  zzo38, I feel I may regret this, but what is FurryScript?
18:58:00  Phantom_Hoover: Probably the best way is to look at it http://zzo38computer.cjb.net/furry/
18:58:25  There is no documentation yet, sorry. Just use the existing scripts as examples to base on
18:59:19  (Despite what some people think, it has nothing to do with pornography or Javascript.)
19:04:02 -!- cheater99 has quit (Ping timeout: 245 seconds).
19:04:11  Phantom_Hoover: Did you regret this? Or do you have another question, because you did not understand it the first time?
19:05:16 -!- ais523 has joined.
19:12:34 -!- augur has joined.
19:12:46 -!- wareya has joined.
19:14:30 -!- wareya_ has quit (Ping timeout: 240 seconds).
19:18:51 -!- cheater99 has joined.
19:22:49 -!- Sasha2_ has joined.
19:25:08 -!- Sasha2 has quit (Ping timeout: 255 seconds).
19:31:13  elliott, down?
19:41:44 -!- impomatic has left (?).
19:43:02 -!- pingveno has quit (Ping timeout: 255 seconds).
19:44:56 -!- pingveno has joined.
19:47:20  Phantom_Hoover: Did you manage to figure it out yet?
19:51:41 -!- kar8nga has joined.
19:57:33 -!- Wamanuz has quit (Remote host closed the connection).
19:59:44 -!- Wamanuz has joined.
20:08:51  down?
20:13:54  what's down?
20:23:23  The basement
20:48:56  pikhq: Is there a NASM-portable way to get names for syscall numbers in a program?
20:49:08  Don't want to run cpp on my program.
20:50:58  apply sed to the relevant headers, massage into nasm syntax, use %include (if there is such a thing)
20:51:00 -!- Algoromist has joined.
20:51:21 -!- Algoromist has quit (Client Quit).
20:51:21  sed <3
20:51:57  elliott, I just read about how C++ differentiate operator overloading of ++ prefix vs. ++ postfix
20:51:59  UGH
20:52:13  C++ [...] UGH
20:52:20  are you surprised or something? :P
20:52:22  http://wiki.sk89q.com/wiki/CraftBook#Usage
20:52:22  Oh, you mean the dummy argument?
20:52:26  olsner, yes indeed. But this is worse than average
20:52:28  fizzie, indeed
20:52:35  elliott, remember your integrated circuit thing?
20:52:49  I think it's fantastic. Horrible, but somehow fantastic.
20:53:02  Vorpal, how?
20:53:16  fizzie, it is like they left in a quick hack for testing during development. (the "sane" thing would have been to have operator++pre or something like that. Or a prefix/postfix keyword)
20:53:21  fizzie: hmm, I don't really get that, how is it fantastic?
20:53:25  Phantom_Hoover, how what?
20:53:35  Does it differentiate?
20:53:46   elliott, remember your integrated circuit thing?
20:53:47  Hm?
20:53:55  Phantom_Hoover, it needs different function signatures. Right?
20:53:56  olsner: I don't know, it's just a subjective feeling.
20:54:03  fizzie: fair enough
20:54:04  Phantom_Hoover, so it passes an extra int dummy argument for postfix
20:54:10 * olsner still doesn't get it though :P
20:54:34  elliott, http://wiki.sk89q.com/wiki/CraftBook/ICs
20:54:43  I think the way operator overloading works in C++ is very dumb. I think many things in C++ are very dumb in general.
20:54:44  Incidentally, do you know if there is a defined value for the dummy argument, or is actually using it implementation-defined (or even undefined)?
20:54:47  Phantom_Hoover: Definw how it's my integrated circuit thing.
20:54:56  elliott, not sure.
20:54:57  *Define
20:55:18  Wow, a PRNG.
20:55:50  Foo& Foo::operator++() { /* code for prefix */ return *this; }  Foo Foo::operator++(int this_is_so_stupid) { /* code for postfix */ return whatever; }  -- what's not to like!
20:56:00  Also, bookshelves in some form.
20:56:28  elliott, ah, http://wiki.sk89q.com/wiki/CraftBook/Readable_bookshelves
20:57:47  elliott, you could make a prng in redstone by making use of the timing issues of redstone on SMP :P
20:58:17   Incidentally, do you know if there is a defined value for the dummy argument, or is actually using it implementation-defined (or even undefined)? <-- no idea. one source says "constant dummy value"
20:58:18  Phantom_Hoover: That's a server mod though.
20:58:22  Or are all of these server mods?
20:58:23  Ah, the dummy argument is defined to have a value of 0 when the postfix code is called. I'd like to know how much code there is in the world that actually relies on that value. :p
20:58:30  Oh, they are.
20:58:31  L A M E
20:58:34  elliott, not so much server mods as plugins to hMod.
20:58:49  I thought it was an actual redstone PRNG.
20:58:55  So they can be installed while it was running.
20:59:06  (ISO/IEC 14882:2003(E) 13.5.7 para 1: "When the postfix increment is called as a result of using the ++ operator, the int argument will have value zero.125)"
20:59:14  elliott, lame indeed
20:59:29  "125) Calling operator++ explicitly, as in expressions like a.operator++(2), has no special properties: The argument to operator++ is 2.")
20:59:45  fizzie: ooh, that implies that you can call it explicitly with a non-zero value :)
20:59:50 -!- Wamanuz has quit (Read error: Connection reset by peer).
20:59:55  Hmm, wait, it isn't an hMod plugin. Forget it.
20:59:58  Phantom_Hoover, if you was to decide it would no longer be minecraft that we ran. But some sort of blinkenlightcraftbling
21:00:00  foo->operator++(7) or something like that
21:00:08  olsner: Right, that's the second line I pasted.
21:00:16  WaitI'mnotsureanymore
21:00:38  fizzie: doh, missed that :)
21:00:50 -!- Algoromist has joined.
21:01:01   fizzie: ooh, that implies that you can call it explicitly with a non-zero value :) <-- you can explicitly call operations in C++ iirc. Except for the classical C types
21:01:03 -!- Algoromist has quit (Client Quit).
21:01:06  it should be a void argument
21:01:08  operators*
21:01:09  operator++(void x)
21:01:10  :D
21:01:15  that you're not allowed to use, except as
21:01:17  x;
21:01:19  or
21:01:20  (void) x;
21:01:32  Vorpal: Right, again, that was the second line I pasted.
21:01:33  then you could do
21:01:39  foo->operator++(function_returning_void())
21:01:40  see!
21:01:46 -!- Wamanuz has joined.
21:01:58  Bonus points for not allowing a void value/argument ANYWHERE but in operator++.
21:02:10  And yet having (void) in a declaration imply one void argument, thus making every C89 header ever invalid.
21:02:19  Especially since the only time you could use that in a declaration would be for operator++.
21:02:42  maybe if you also add an empty expression and make it have a void type :D
21:03:30  so that calling foo(), where foo is declared foo(void) actually calls it with one void argument
21:04:30  olsner: no, the syntax for a void argument is (;)
21:04:36  since the null statement results in a void value
21:04:41  haha, ok
21:04:42  fizzie, C++ apparently left out operator** to simplify parsing. How utterly ironic
21:04:43  foo->operator++((;))
21:04:50  but statements don't have values, stupid
21:04:58  the empty *expression* has a value :)
21:05:00  elliott, you might like that irony too
21:05:15  olsner: when has C++ ever been logical?
21:05:16  the empty statement is simply an expression statement evaluating the empty expression!
21:05:25  olsner: I don't suppose you have a nasm struct declaration for an ELF header? :p
21:05:29 -!- Sgeo has joined.
21:05:33  elliott: I do not, no
21:06:05 -!- oerjan has joined.
21:06:20  elliott: I won't have ELF in my OS, I'll just have a jump-to-first-byte binary format - considering making the "magic" value an x86 jmp instruction :D
21:06:53  olsner: who needs a magic value!
21:06:57  execute anything you're told to
21:07:07  dunno, but I think hashbang is useful enough to keep around
21:07:35  and probably pluggable loaders too, since that should allow me to support ELF too in theory
21:07:37  olsner: psht, do what the commodore 64 did (sort of); instead of hashbangs, use some assembly code that does exec(interp, myfilename)
21:07:52  olsner: then just have a compiler that turns #!foo at the start of a file to a program with that at the top!
21:08:16  hashbang is useful because it's in ASCII, you don't need a binary editor to edit shell scripts
21:08:22  but sure, that can be done
21:08:24  elliott: Then you have to compile it on every computer, the file won't just run on all computer, but it can still work, I guess.
21:08:28  olsner: you can do x86 code in ascii, just ask ais523
21:08:32  also, having the shell recognize hashbangs works
21:08:35  he wrote a self-uudecoder program in entirely ascii
21:08:39  olsner: not really, exec()
21:08:42  e.g. what does init do
21:09:42  The jump to first byte format can work, maybe similar to .COM format, it can load the PSP (program segment prefix).
21:09:44  IMO, init can be limited to the set of binary formats actually supported by the vanilla kernel
21:09:46  fizzie: nasm-mode is supremely irritating for structures :P
21:09:53  olsner: no, I mean, init scripts
21:09:58  the scripts that init calls
21:10:04  with exec()
21:10:07  they could be in any language :)
21:10:58  well, they just need to be something that init can execute, and init doesn't necessarily use exec(), and exec() doesn't necessarily even exist
21:11:47  what, C++ allows overloading the comma operator?!
21:11:51  how does that even make sense
21:12:01  (well of course C++ isn't required to make sense)
21:12:10  (but here I meant "how can that even have a meaning")
21:12:20  comma operator overloading is hardly the most weird part of C++ even :P
21:12:38  it's easy, it's a binary operator, you can make it do whatever you want
21:12:46  olsner, oooh, the comma operator does the dummy int too
21:12:55  wait
21:12:56  what
21:13:00  I still think it doesn't make sense to overload the comma operator, though.
21:13:15  it is binary but exists in prefix and postfix
21:13:18  what the fuck
21:14:20  olsner, it isn't even like the comma operator is commonly used in C... I mean, to stuff into for (...) or while (...) is the only common usage afaik
21:14:59  hm you can overload ->....
21:15:06  how do you handle this-> then
21:15:12  it is not used a lot, no... maybe for corner cases like sequencing into a single statement or to do something similar to statement expressions
21:15:22  Vorpal: this-> doesn't invoke the overload
21:15:28  olsner, how boring :P
21:15:33  this is a pointer to Foo, not a Foo
21:15:40  oh right
21:15:45  olsner, so this->->?
21:15:46  but it is often used to implement classes that behave like pointers
21:15:47  wait no
21:15:53  (*this)->
21:15:57  how silly
21:16:05  Why would you ever do that?
21:16:07  smart pointers, handles, etc
21:16:08  Just for the syle?
21:16:12  Sgeo, what
21:16:23  Wait, n/m
21:16:35  Wait, how can this ever be a **?
21:16:47  Wait, this is C, right?
21:16:59  Wait, Sgeo is lost, right?
21:17:25  still C++: vorpal is reading about C++ and finding things he find weird :)
21:17:42  olsner: C/C++!
21:17:45 * elliott mauled
21:18:03  elliott: no, this is *well* into the C++-only part of C/C++
21:18:04  olsner, only because a course uses it
21:18:08  i'm translating http://www.sco.com/developers/gabi/1998-04-29/ch4.eheader.html (lolol sco.com yeah yeah) to nasm and it's a pain :)
21:18:10  olsner: i was joking
21:18:14  elliott: oh, ok
21:18:18  Ok then. Why would this ever be a **?
21:18:25  Sgeo: it isn't
21:18:33  Why would you ever ask? :P
21:18:44  (*this)->
21:19:23  this is a pointer to Foo, (*this) is a Foo, Foo presumably has an overloaded -> operator, it gets called
21:19:48  Ah
21:19:55  writing your own elf header is a bitch
21:20:31  Next, someone will tell me that * and & (as deref and ref) can be overloaded
21:20:37  the operator would then return a pointer to Bar, and the name that comes after -> is then resolved as a member of Bar
21:20:38  Sgeo: Yes.
21:20:41  [or did I get the names backwards?]
21:20:42  Sgeo: they can
21:20:48  o.O
21:21:17  The times I've written ELF headers in NASM, I've just done it with commented db/dw/dd lines. (Possibly because I haven't ever bothered with NASMs struct macros anyway.)
21:21:18  *but*, as before, this is a pointer so *this always gets the default operator* (the one that takes a pointer type)
21:21:30 * Sgeo wonders what the utility of fake pointers is
21:21:43  *(*this) however, could invoke an overloaded operator
21:21:52  hm
21:21:58  new[] could overflow couldn't it?
21:22:12  Sgeo: well, smart pointers and such things
21:22:16  if the size of the object * the number of objects to allocate > SIZE_T_MAX
21:22:20  fizzie, ^
21:22:30  As much as calloc, I would say.
21:22:32  I wonder if that will be a compile time error
21:22:33  I think you're supposed to check for that
21:22:40  Sgeo: You can also overload cast to void*.
21:22:57  olsner, "you" as the programmer check for that size? Or "you" as compiler writer?
21:23:04 * olsner gets a vaguely uneasy feeling his new[] overloads and calloc implementations don't check this
21:23:09  Can you overload other casts? Or add your own casts?
21:23:15  olsner, wait, why do you use C++ ?
21:23:18  Vorpal: the one implementing new[] that is
21:23:31  if it's too big, return null or throw bad_alloc
21:23:46  olsner, won't throwing an exception allocate memory btw?
21:23:53  Sgeo: Hmm. Yes, you can.
21:24:02  operator name_of_type()
21:24:03  olsner, which is bad for OOM
21:24:08  Vorpal: only if you heap-allocate the exception, I don't think you usually do that
21:24:14  you stack-allocate it instead
21:24:24  but I have never ever used exceptions in C++
21:24:36  olsner, won't that be invalid when the function returns?
21:24:44  olsner, even if it returns by exception that is
21:24:55  but it doesn't return, it throws an exception, and then magic happens
21:25:20  If you catch by value, it's even intuitively okay.
21:25:27  olsner, so... surely the stack frame must be cleared up, and then signal handlers could clobber it
21:25:39  But I think catching by reference is sort-of allowed too.
21:25:48  I don't get how this could possibly work
21:25:56  copy to reserved area
21:25:59  stack frames, signal handlers, these things don't even exist in C++'s semantics afaik :)
21:26:01  but then, what about size of the thing
21:26:11  olsner, stack frames must, at some level
21:26:19  olsner, and even plain C89 has signals iirc
21:26:21  not in the language, maybe in the implementation :D
21:26:28  It's a very abstract level.
21:26:44  fizzie, #include  I presume works
21:26:48  so uh...
21:26:56  surely they realised this must be handled
21:27:13  Uuuh, signals are a POSIXism.
21:27:22  pikhq, they are in C99. I checked
21:27:22  signals are too unixy to exist in C/C++ - for one Windows doesn't ever do signals
21:27:36  pikhq, just SIGFPE and SIGABRT iirc
21:27:58  Ah, right, they did add signals to C, didn't they.
21:28:05  So they must exist in C++.
21:28:30  pikhq, I don't have a copy of C89 so can't check it
21:28:40  anyway, if exception handlers don't allocate new stack space until after the exception object has died, it'll be fine... but I wonder what happens if you catch by reference and call some functions
21:28:41  You could just specify that signals during exception handling use a different stack or something. Or run the exception handler before the stack actually gets properly unwound, I'm sure that's doable (if messy) too.
21:28:42  well
21:28:47  man page of signal(2) says
21:28:50  C89, C99, POSIX.1-2001.
21:28:54  in conforming to
21:28:54 -!- Sasha2_ has quit (Ping timeout: 265 seconds).
21:29:23  *it'll be fine as long as you don't unwind the stack until after you've run the exception handler(s)
21:29:54  C++ isn't based on C99
21:29:58  so no, they mustn't exist in C++
21:30:01  elliott: Is based on C89.
21:30:13  pikhq: based on, yes, but not as a standard
21:30:20  the C++ spec doesn't go "this is a delta to C89 that defers to it"
21:30:23  wait, post increment operator needs to return previous value?
21:30:24  what
21:30:28  if it doesn't mention signals in the PDF, it's not part of C++
21:30:33  elliott: True, true.
21:30:38  elliott: That's only POSIX.
21:30:47  shouldn't it just be called *AFTER*
21:31:04  I wonder if you could say that signal "conforms to" C99 also if C99 doesn't include the signal function, as in saying any function you've written in pure C99 conforms to it
21:31:44  Vorpal: It's not proper overloading if you can't completely specify the return value to whatever.
21:31:45  that is to say: "conforms to? what does that EVEN MEAN?"
21:32:04  fizzie, so it isn't just syntax sugar then... It needs to act insane
21:32:23  If you just always returned the object it's called on, then you could only use postfix ++ for "postfixy" things.
21:32:39  Now you can use it for any operation you want.
21:32:39  Vorpal: not insane, it just needs to act as the normal postfix-increment operator or your users will go mad
21:32:41  fizzie, patently good idea!
21:32:47  See, flexibility!
21:32:49  (to only allow postfixy uses)
21:33:35  olsner, "act insane" = "make a deep copy of the object to return, then modify the original one"
21:33:39  olsner, is what I'm saying
21:34:53  They're just trusting their magical optimizing compilers to optimize away the copies.
21:35:37  fizzie, that would be a good trick. I have a feeling this would entail solving the halting problem to handle for the general case.
21:36:05  (I'm not sure though)
21:36:27  this would all make perfect sense to you if you were sufficiently damaged by C++
21:36:35  (as it does to me)
21:36:52 -!- Sasha has joined.
21:36:53  olsner, why have you exposed yourself to so much C++
21:36:58  olsner, surely you must hate the language
21:37:11  hm is delete NULL; valid?
21:37:15  after all, free(NULL) is
21:37:19  yeah, it's a no-op
21:38:10  or, hrm, literally "delete NULL;" might not be valid because delete on a void-pointer is undefined
21:39:17  olsner, I meant literally yes
21:40:48  well, written literally, it's a damned stupid thing to do and best removed by nothing or a better no-op :)
21:40:57  yeah
21:41:02  like __asm__("nop")
21:41:05  :P
21:41:47  olsner, actually tried it. error: type long int argument given to delete, expected pointer
21:41:52  not what I expected
21:42:05  delete (void *)NULL;
21:42:06  try that
21:42:26  elliott, tells me that delete of void* pointer is undefined
21:42:34  Vorpal: delete (char *)NULL;
21:42:56  elliott, the void* thing was just a warning though
21:42:58  elliott, not an error
21:42:59  :D
21:43:00  "-- if the value of the oeprand of delete is the null pointer the operation has no effect."
21:43:04  So that shouldn't be an error.
21:43:09  Oeprand.
21:43:12  The void thing is prohibited, though.
21:43:12  Is that really in the spec?
21:43:22  No, I'm typing because the PDF-paste often messes things up.
21:43:22  That conventional space between char and * irritates my eyes
21:43:33  Is it really because of the int* a, b; thing??
21:43:33  fizzie: *but* doesn't the null pointer and void thing interact?
21:43:38  s/\?\?/?/
21:43:50  which takes precedence - is deleting a null void-pointer a no-op or undefined? :)
21:44:06  Sgeo: It's also because of declaration-mirrors-use.
21:44:10  int *a;
21:44:11  *a = 3;
21:44:12  See?
21:44:17  olsner: Not really, since the null-pointer thing was when the expression has a valid type.
21:44:22  elliott, it seems to have been optimised away at -O0 by gcc
21:44:24  how weird
21:44:38  -O0 shouldn't do that
21:44:39  Or, hmm.
21:44:51  It's only about deleting an incomplete class type.
21:45:00  Doesn't really work that well with C++'s reference types, which must die a horrible death
21:45:45  Sgeo: ...what's wrong with them?
21:46:19  They seem a bit magical. Assign to them once, followed by a subsequent assign.. those assigns do two different things
21:46:33  Initialization != assignment.
21:46:55  what fizzie said
21:47:01  what elliott said
21:47:05  what olsner said
21:47:09  what elliott said
21:47:13  what fizzie said
21:47:31  wait, no, what I said
21:48:29  uh
21:48:55  you can't see if the thing will be modified with references
21:49:03  without checking the declaration of the function
21:49:04  consider:
21:49:06  int i;
21:49:10  i = 4;
21:49:13  foo(i)
21:49:30  and then consider: foo(int x) vs. foo(int &x)
21:50:04  C# actually gets that right, it requires ref keyword both in function "prototype" and in the call to the function
21:50:33  elliott, hence C++ references needs to die.
21:51:50  C++'s references were most assuredly a mistake.
21:52:10  Aside from being totally redundant with pointers, they make function calls super-confusing since you can't tell what's what.
21:52:15  But you all know that :P
21:52:46  bah, I'm not so sure everyone knows that :P
21:53:36 * oerjan didn't know :D
21:53:49  not knowing C++ almost at all helps with that
21:54:07  oerjan: I switch back and forth from C++ to JavaScript every day 8-D
21:54:14  some people think "but omg, references, like, optimization! and stuff!", but references are really exactly like pointers except *possibly* if something gets inlined (and then I believe references and pointers are just as optimizable anyway)
21:54:23  Gregor: and your brain has not been completely fried yet?
21:54:43  oerjan: Have you seen pictures of me?
21:54:44  :P
21:55:07  Who designed ELF, can I shoot them?
21:55:13  It's so freakin' complex X_X
21:55:13  Gregor: i realized that after i spoke.  ok, i retract my previous line.
21:56:11  elliott: HEY
21:56:17  elliott: ELF is fucking AWESOME.
21:56:26  elliott: And why are you trapped in the land of ELFs?
21:56:36  *elves
21:56:42  *ELFs
21:56:48  he was probably led there by a GNOME
21:56:49  Gregor: I've decided that the only way my wimpy coreutils efforts can possibly compete with asmutils is to... , so yeah, I'm writing elf.inc right now with all the ELF header structures.
21:56:54  And I will define macros to assemble them manually :P
21:56:56  Gregor: ELVes then :D
21:57:01  But SHEESH there is a lot of crap here.
21:57:50 -!- Sasha2 has joined.
21:58:20  elliott: That ... explained nothing.
21:58:40  Gregor: ld generates big executables. So I'm assembling in a custom ELF header.
21:58:47  Which involves defining the ELF structures in nasm.
21:59:03  (Big = almost 300 bytes when stripped!)
21:59:56 -!- Sasha has quit (Ping timeout: 264 seconds).
22:00:45  Gregor: Explained? :P
22:00:54  so it should have been called GIANT then?
22:01:01 * elliott swats oerjan
22:01:07  with an invisible swatter obvs
22:01:12 -!- Sasha has joined.
22:01:14  elliott: For some definition of "explained"
22:01:34  Gregor: WHY ARE SECTION HEADERS SO HUGE
22:01:40  that's actually plausible given that putty shows unknown unicode as space to me
22:02:29  although clog sees and reveals all.  well almost all.
22:02:50 -!- Sasha2 has quit (Ping timeout: 260 seconds).
22:03:08  elliott: PornograFREE.
22:03:23  Gregor: What.
22:03:26  porn wants to be free
22:03:49  this is of course a corollary to porn being information
22:03:54 -!- kar8nga has quit (Read error: Connection reset by peer).
22:05:00  Keys are information
22:05:20  information wants to pee
22:05:36  Information wants to be Cree.
22:05:37  ... and according to rule 34/35, information is porn
22:06:13  The leaked diplomatic cables are SO HOT
22:07:38  olsner, what's the correlation between that and its Kolmogorov complexity?
22:07:41  ...what's rule 35
22:08:11  Phantom_Hoover: over 9000
22:08:35  oerjan: the one about if there's no porn of it, it must be made (no exceptions)
22:08:55  ok
22:09:45  i.e. the rule that makes sure rule #34 always applies even when it doesn't (didn't)
22:09:58   oerjan: the one about if there's no porn of it, it must be made (no exceptions)
22:09:59  not true
22:10:05  that is not the statement of the rule
22:10:07  the statement is:
22:10:12  If porn of it does not exist, it will be made.
22:10:25  i.e.: it's a platonic statement, not a mere order
22:10:55  IMO -- speaking theologically -- rule 34 has no exceptions, as it itself states, and rule 35 merely clarifies it
22:10:56  yeah, you're probably right. seems the end effect of either formulation is the same though
22:11:04  I don't think so. It is just the way things tend to happen. Or, at least that is what I have heard.
22:11:12  that is, for everything, there IS porn of it, but it might not be on the internet, anyone's hard drive, or even in this universe
22:11:35  rule 35 is merely stating that, upon this being noticed, eventually, porn of it *will* enter this universe, after existing in mathematical platonic concept-space
22:11:45  elliott: rule 34 always applies! but when it doesn't, rule 35 makes sure it applies anyway! :)
22:11:50  so, there is porn of it, no exceptions; and if the porn cannot be found, it will be made
22:12:00  olsner: it is not a crude hack, it is an elegant clarification!
22:12:07  it's like a tautology with a plus menu
22:12:11  I think it has nothing to do with mathematical platonic concept-space. Just some people like to make pornography of anything so that is why they do so.
22:12:12  :D
22:12:19  zzo38: I pray for your soul.
22:12:27  Maybe one day you will see the light.
22:12:37  It's not that I LIKE to make pornography of everything.
22:12:45  It's just that the Great Guiding Pervert forces me to.
22:13:04  I don't like to make pornography of anything, but some people do, so they can have freedom to do so.
22:13:32  hmm, I expected zzo38 to be more of a pervert
22:15:15  olsner: Some people think some of my concepts are a bit perverted. However, it is not meant to be.
22:17:04  Phantom_Hoover: MC!
22:17:08  Gregor, you made porn of what now?
22:17:13  olsner: isn't he asexual? pretty sure he's said he's asexual.
22:17:31  Vorpal: Colour porn.
22:17:38  elliott: by choice? :P
22:17:39  Nasty, perverted colour porn -- interracial, non-matching colour porn.
22:17:41  Other people are the perversion, who thinks FurryScript has something to do with both pornography and Javascript, and gave a (completely stupid) example. In reality, FurryScript has nothing to do with pornography or with Javascript.
22:17:48  elliott, Gregor or zzo38?
22:17:50  "you are about to close 123 tabs, do you want to save your session" <--- hell, no that will take forever to open
22:17:51  zzo
22:17:51  XD
22:17:56  olsner:  Pretty sure he's said he's gay.  by choice? :P
22:17:58  also explains the memory usage
22:18:27  olsner: Lesson: just don't go there. :p
22:18:28  elliott, zzo38 is asexual, according to his WP user page.
22:18:38  elliott: haha, ok
22:18:54  Phantom_Hoover: creepy, dude :P
22:19:25  elliott, "ZOMG YOU KNOW SOMETHING ABOUT SOMEONE THAT THEY ADMIT OPENLY" is not a mature mode of conversation.
22:19:41  Phantom_Hoover: I was referring more to the looking up his wikipedia page.
22:19:50  elliott: in the "not having sex" sense, it can certainly be by not-choice though
22:19:57  olsner: that's not what asexual means
22:20:12  elliott, remembering information from it is not creepy either.
22:20:29  elliott: not really, no, but that's the sense I used back there
22:20:56  wikipedia user pages are of course strictly private information.
22:21:01  when I say it, it means what I mean it to mean, or however that nice quote goes
22:21:23  fleebquobble mcflooby screenflib.
22:21:33  Phantom_Hoover: quite.
22:21:50  Phantom_Hoover: just quibble that flibble-flobble
22:22:01  olsner: PERVERT
22:23:26  Vorpal: 123 tabs is seriously nothing to worry about
22:24:24  This user likes to use redundant userboxes that are redundant. This user likes to use redundant userboxes that are redundant. This user likes to use redundant userboxes that are redundant. This user likes to use redundant userboxes that are redundant. This user likes to use redundant userboxes that are redundant. This user likes to use redundant userboxes that are redundant. This user likes to use redundant userboxes that are redundant.
22:25:30  zzo38: so you're not the zzo38 on wikipedia?
22:26:18  olsner: I am the same as the User:Zzo38 on the Wikipedia, that is my user page.
22:26:53  that looks batshit insane
22:27:40  but I know from here that you're not nearly as batshit insane as that looks
22:28:38  Hay, I *invented* Icoruma and FurryScript. If you are not perversioned, you might be able to guess the correct usage of FurryScript (or you might not, if you have no information)
22:28:41  Phantom_Hoover, did you stalk my Wikipedia page some time back, or did I link it?
22:28:50  olsner: And I am a bit insane in some ways though, too.
22:28:51  I can't remember.
22:28:57  But not all ways.
22:28:58  zzo38, insane is good.
22:29:11  zzo38, "This person does not understand Python (or understands it with considerable difficulties, or does not want to program in Python)."
22:29:14  We are at war
22:29:42  ooh, that statement applies to me too!
22:29:42  Ooh, this'll be entertaining.
22:29:45  Phantom_Hoover: Yes, it can be, depending on many things. But often the insane can do good things, and this is good things.
22:30:02  at least the "does not want to program in Python" part
22:30:18  [[This user knows that 0.999... is exactly 1.]] — zzo38's WP page.
22:30:24 -!- Quadrescence has quit (Quit: omghaahhahaohwow).
22:30:28  Not in nonstandard analysis!
22:30:39  Sgeo: Actually since I put that there, I have programmed a few card games in Python, and have modified a drive wipe script written in Python. I don't ever write any of my own new programs in Python, though.
22:31:22 -!- Quadrescence has joined.
22:31:48  Phantom_Hoover: I suppose then you can use nonstandard analysis? In the standard way, though it is equal. In my opinion it is equal, but it might still be incorrect to use the equivalence sign there; the equal sign is OK there
22:32:38  "This user can code in XUL"
22:32:43  Why would you want to?
22:32:54  zzo38, well, saying "not in nonstandard analysis" is like saying "2+2 /= 4 in Z_4"; it's an axiomatic thing.
22:32:59  Unless Vonkeror can do XUL, which would surprise me
22:33:35  Sgeo: There is probably not a good reason except for making Mozilla based programs (Vonkeror is Mozilla based)
22:33:49  Oh, wasn't aware of that
22:34:17  Essentially, \lim_{x→\infty}1/x = 0 in standard analysis, but an infinitesimal in nonstandard analysis.
22:34:38  Phantom_Hoover: Well, sort of...
22:34:38  Phantom_Hoover: What 2+2 makes is not axiom in TNT.
22:35:09  zzo38, but it is dependent upon the axioms of the system you're in.
22:35:29  Phantom_Hoover: Yes. I guess so. TNT is only for natural numbers, anyways.
22:35:58  zzo38, have you used a proof assistant in the past?
22:36:11  Phantom_Hoover: No.
22:37:19  But maybe later I will invent a computer program for proof assist if I would have a reason to do so.
22:37:19 -!- EgoBot has quit (Ping timeout: 272 seconds).
22:38:26  zzo38, making a proof assistant yourself is an exercise in futility unless you have several years of free time and like writing long papers showing that your proof kernel is reliable.
22:39:27  And you have an intimate understanding of a particular flavour of logic and its implementation into a computational system.
22:40:58  I know how TNT works (described in Hofstadter's book), and how it could be generalized, and how you could also have macros and so on, so that would work.
22:42:42  TNT does not a good proof assistant make.
22:43:02  Are there actually any good proof assistants other than Coq?
22:43:14  And then it can be possible to prove Fermat's Last Theorem in TNT by writing macros and so on.
22:44:12  zzo38, words fail me on that.
22:44:31  It would not be interactive, it would only execute the macros which you write and which can be checked according to the current state of the proving system, and so on, and then tell you which ones are valid, and then have a macro check if it is valid to make another proof.
22:44:35  There's NIH and there's proving Fermat's Last Theorem on a self-written proof assistant.
22:45:54  Coq, the best, most mature proof assistant I know of, has a barely-understandable non-constructive implementation of the *reals*, let alone the vast towers of mathematics upon which that proof is based.
22:48:01  Grr at http://en.wikipedia.org/wiki/User:Sgeo/randcolor-hex being broken
22:48:03  Does Coq prove Fermat's Last Theorem?
22:48:08  Oh, right, I still need to learn Coq
22:50:29  Does Coq prove the twin prime conjecture?
22:50:38 -!- rodgort has quit (Ping timeout: 272 seconds).
22:52:26 * Sgeo is again thinking about scientists inside GoL
22:53:38  zzo38: No.
22:53:53  zzo38, in the loosest sense.
22:54:19  i.e. they are constructible within its logical framework from an appropriate set of axioms.
22:55:37  Well, not the twin prime conjecture since we don't actually know if it's true or not.
22:57:13  it _does_ prove the four color theorem, though
22:57:52  Phantom_Hoover: erm fermat's last theorem might not hold in Coq's logic
22:57:59  Wiles' proof wasn't exactly constructive
22:58:06  Huh?
22:58:08 -!- Sasha has quit (Ping timeout: 240 seconds).
22:58:52 -!- Sasha has joined.
22:59:15  Phantom_Hoover: ?
22:59:17 -!- rodgort has joined.
22:59:37  Not exactly constructive...?
22:59:39  Coq...
22:59:48  afk
23:00:23  How do you constructively prove a universal statement?
23:02:34  Is Fermat's Last Theorem provable in Typographical Number Theory?
23:04:05  Phantom_Hoover: You mean forall x, y?
23:04:12  That's a function..
23:04:19  Fair point.
23:04:21   Phantom_Hoover: erm fermat's last theorem might not hold in Coq's logic
23:04:22   Wiles' proof wasn't exactly constructive
23:04:29  what i'm saying is, all we have to go on is wiles' proof
23:04:34  done in very non-constructive logic
23:04:48  it isn't FALSE in constructivist logic, we know that thanks to wiles
23:04:50  but it might not be provable
23:06:46  But do you know if it is possible in TNT? Even if you do not know if it is provable in Coq?
23:07:13 -!- FireFly has quit (Quit: swatted to death).
23:08:18  zzo38, depends entirely on the specific flavour of logic TNT uses.
23:09:30  Phantom_Hoover: TNT works entirely by typographical operations of replacing groups of symbols matching a template with other ones.
23:10:01  And by combining and splitting previous theorems in some ways.
23:14:13  [ʝ̃ŋʝ̃ŋʝ̃ŋʝ̃ŋʝ̃ŋʝ̃ŋʝ̃ŋʝ̃ŋ]
23:14:38  I don't think [ʝ̃] is a sound in any language.  :P
23:16:39  Is it defined in the IPA?
23:16:59  Yes.  It's a nasalized voiced palatal fricative.
23:17:13  But "nasalized" and "voiced palatal fricative" are separate symbols; you just put the former over the latter.
23:17:34  Ah.
23:17:37  So I should say ~ and ʝ are defined in the IPA but ʝ̃ is not.
23:20:04  Ah, the joys of making up stupid phonemes.
23:20:37  :P
23:20:50  This is a sound, not a phoneme.  If it were a phoneme, it would be /ʝ̃/ instead of [ʝ̃].  :P
23:21:27  "The sound written ‹r› in Mandarin has an odd history; for example, it has been borrowed into Japanese as both [z] and [n]. It seems likely that it was once a nasalized fricative, perhaps a palatal [ʝ̃]."
23:22:03  That was, of course, just speculation.
23:22:27  elliott, *prod*
23:22:31  And Mandarin apparently doesn't have that sound now, or else it would say.
23:22:58  fizzie, you must see the underground dock I built in MC. only thing remaining is adding some wooden piers + some pirate feel to it
23:23:02  or smugglers maybe
23:23:10  smugglers is better
23:23:12 -!- Phantom_Hoover has quit (Remote host closed the connection).
23:23:24  Does it have a ramp going up to the ocean?
23:23:40  tswett, it has a drop shaft and a boatlevator
23:23:48  tswett, both in the middle of the ocean
23:23:56  tswett, the boatlevator ends at the sea bottom
23:24:09  Yes; it does list some other nasalized fricatives (which to a Finnish speaker is a bit strange-sounding concept in the first place); "Some of the South Arabic languages have phonemic nasalized fricatives, such as /z̃/, which sounds something like a simultaneous [n] and [z]."
23:24:14  But not that particular one, no.
23:24:28  Vorpal: cool.
23:24:53  fizzie: it's a strange idea to me, too.  I would be surprised if English had them.
23:27:25  Ever.
23:28:58  Rule 34 roulette
23:29:16  What is Rule 34 roulette?
23:29:26  The world's greatest idea.
23:29:38  And how does it work?
23:29:42  it's just roulette with different rules (one rule, in fact - rule 34)
23:30:28  And what is that rule? Is that the only number on the board?
23:30:44 -!- Goosey has joined.
23:31:38  oh no, the internet is full of numbers
23:32:45  I took a look at the Internet once and found that, while it had a lot of numbers in it, it also had a lot of pointers and mutexes.
23:33:45  How does rule 34 work?
23:34:10 -!- ais523 has quit (Remote host closed the connection).
23:37:28  You cannot really write a proper syntax highlighter for TeX or for Forth, but METAFONT and FurryScript can be properly syntax coloring.
23:38:00  (With Forth, it is possible, however, to prettyprint a program while it is executing.)
23:38:05  FurryScript?  What is this language whose name catches mine eye?
23:38:19  tswett:  http://zzo38computer.cjb.net/furry/
23:39:11  If you have ideas for additional scripts, you can suggest and/or write them. (Sorry, no documentation yet. You can look at the files in the scripts/ directory for examples)
23:40:14  Any questions so far? There probably is one, at least.
23:40:45  Is there any documentation that isn't code?
23:41:02  Oh, I should learn to read
23:41:09  Sgeo: Unfortunately not. But we can work together to write some.
23:41:50  Is it TC?
23:42:47  Sgeo: I believe so.
23:43:12 -!- MigoMipo has quit (Ping timeout: 245 seconds).
23:43:29  But I am not completely sure.
23:46:00  What do you think?
23:46:24  Someone should make a language whose TC-ness is undeterminable. And as soon as I thought that, I start thinking that it's already been done
23:46:56  Sgeo: There is one that is dependent on Goldbach conjecture
23:50:19  Hopefully the files available in scripts/ is enough to understand most of the features of FurryScript so that you can write a code in FurryScript.
23:50:40  What's that programming language where a program is a series of fractions?  Is it called "Bag" or something?
23:50:50  tswett: fractran; bag is iirc oerjan's extension of it
23:51:14  So, I just realized that Fractran is equivalent to some other language, and then I realized that that other language is also equivalent to Fractran.
23:51:18  MY MIND IS SO PROFOUND.
23:51:19  fractornran
23:58:04  There are other programs with similar purpose to FurryScript exists, but as far as I know the other programs are weaker and not as clean.

2010-12-11:

00:02:02  tswett: Please tell me whether or not any of this makes any sense to you.
00:02:27 -!- wareya has quit (Read error: Connection reset by peer).
00:03:33 -!- wareya has joined.
00:04:27  Sgeo: Please tell me you feel a great surge of pride every day knowing you created {{purge}}.
00:05:15  zzo38: that makes sense.
00:05:40  tswett: Does the files I linked makes sense to you?
00:05:58 * Sgeo isn't sure how serious elliott is, but I am somewhat glad I made some somewhat widely used contribution
00:07:20  Now, if I can figure out how it's used today, since I certainly don't see a purge link on http://en.wikipedia.org/wiki/Talk:Buffer_overflow
00:07:36  I also made http://en.wikipedia.org/wiki/Template:Wstress3d
00:11:23  zzo38: oh, those files.  I didn't look closely at them.
00:11:56  Sgeo created Wikipedia's {{purge}}?
00:12:55  I have as much claim to it as I have to Wikihack and Creatures Wiki
00:13:10  I created a page number template which was once used on Wikipedia, that template is now gone, however.
00:13:53  Which is probably the most significant thing I ever posted on Wikipedia, except for a few userboxes I created, some of which (but only a few!) are used by other users too.
00:14:19  Most of my Wikipedia edits are removing commas.
00:14:29 -!- Sasha has quit (Ping timeout: 255 seconds).
00:15:03  I have done some minor changes like that too, but I think it was never removing commas, as far as I know.
00:16:28  If you want to see which userboxes that I have created are used by other user pages, go to edit on my user page, and then on the list of templates see things started with "User:Zzo38/Userboxes/" scrolled there, click on each one and select "What links here" to see what pages used that template.
00:17:09 -!- Sasha has joined.
00:17:21  [[User:Zzo38/Userboxes/cmdline]] seems to be the one used the most.
00:19:49  If GoL scientists discovered the glider, would they assume that it has "phases" that it exists in
00:20:03  Gliders in phase 1 react a certain way, gliders in phase 2 act differently
00:20:04  etc
00:20:14  Although presumably macro-level objects are mostly resistant
00:20:22  Or self-repairing
00:21:32  night →
00:21:36  Nigh
00:21:37  t
00:22:29  Sgeo: that's very likely.  They might not even discover until the very end that the two things are both gliders.
00:24:18  Well, they might discover that glider guns seem to produce one or the other or both seemingly at random
00:24:37  (depending on how they position the target object, but they wouldn't know that)
00:25:56  No, they'd... only see one at a time, they wouldn't see both eminating at once
00:27:33  hm that's an interesting idea - if their life form has a consistent global phase with some large cycle number, like our own molecules have chirality...
00:28:03  and if the cycle length is even, then the two phases of glider _would_ have different biological effects
00:29:19  oerjan: :D
00:29:26  i wish GoL was the universe, it's cooler than this one
00:30:46  "Out of phase" has more meaning in their universe than it does in ours
00:30:50  although they would probably still be capable of producing chaos in scientific experiments, assuming their universe contained some to start with
00:32:14  What about the orientation of the glider?
00:32:50  Erm, as in, it kind of has 4 phases, 2 of which are just reflections of the other 2
00:33:09  oh right
00:33:17  so they might see 4 different kinds
00:34:36  also if their life form has parts that are always directed in the same way globally, then they might even find gliders traveling in different directions to be different
00:35:15  Hmm, didn't think of that
00:35:34  That's.. interesting
00:35:42  they might need to do experiments with chaos in order to discover the simpler fundamental rules
00:36:26  why does it have to take on such an existance. Why not a different form of life, more like a single sentient being?
00:36:27  life could have global symmetry phases both in position on the grid, timing, and direction
00:36:29  oerjan, Sgeo ^
00:36:35  Depending how little/much their smallest movement is (if they can move), they'd notice that building a glider gun in different places results in different gliders?
00:36:37  Vorpal: very irrelevant to this hypothetical.
00:36:59 -!- zzo38 has quit (Remote host closed the connection).
00:37:02  elliott, oh?
00:37:13  Sgeo: except without chaos to investigate they might not even recognize building a glider gun in different places as the same operation
00:38:10  ...huh
00:38:36  they might have to use entirely different methods to build them 1 place shifted
00:42:50  Would they even get a correct value for c?
00:43:27  Things in a vacuum have a maximum speed that's lower than c, right?
00:44:05  periodic things, yes
00:44:27  a long line still expands at c, but it gets shorter in the process
00:47:33  Sgeo: Max speed in a vacuum in Life is c/2, IIRC.
00:48:06  I was thinking that we should make a simulation that lets us pretend to be GoL Scientists, but we don't know what good manipulatory .. manipulations are reasonable
00:53:31  elliott, wow, amazing lava + water cavern
00:57:43  Are there items in GoL with a small number of parents?
00:58:09  Perhaps some life might evolve with a finite resource, a pattern that is involved with some reaction that ends up returning just that pattern
00:58:30  Said pattern has no parents other than reactions in which the pattern is part of the parent
00:58:56   Are there items in GoL with a small number of parents?
00:59:00  there are items with 0.
00:59:16  I should have said non-zero
01:07:01  93 true
01:07:03  That is more f'n like it!
01:07:09  Gregor: Okay, I love ELF now (since I got it working.)
01:07:17  And it's even a pretty "istruc", too!
01:07:21  X-D
01:07:38  http://www.dslreports.com/r0/download/1606057~0c86508b26b11f6901e6989a7b4e327c/Soeed.JPG From a recent FCC survey on broadband in the US.
01:08:09  Gregor: http://sprunge.us/TjZS true.s :P
01:08:31  Gregor: (I am not at all sure "xor al, al    inc al" works reliably if anything above the low byte of eax is set.)
01:08:41  Not sure how much the kernel looks at, for a syscall, or what guarantees there are on eax's initial value in Linux :P
01:08:44  lawl
01:08:59  Note that by the FCC's current standards on what "broadband" is, 58% of US broadband connections aren't.
01:09:25  Mine most assuredly is not.
01:09:28  Gregor: Still, dude, 92 bytes! Not bad!
01:09:40  Gregor: 4 Mbps down and 1 Mbps up?
01:09:44  elliott: A shell script would be shorter ;)
01:09:46  pikhq: Nope.
01:09:48  Now to go further in the Whirlwind page and pick the one that stays remotely sane :P
01:09:54  Gregor: Not if you add /bin/sh's size :P
01:10:10 -!- Sasha has quit (Ping timeout: 240 seconds).
01:10:16  Gregor: Thing I learned reading sco.com (lawl)'s copy of the ELF header specification thing: ELFs can set an interpreter. Seriously.
01:10:20  Who needs shebangs?!
01:10:20  elliott: I'm assuming, based on my brilliance, that you have to include /bin/sh ANYWAY.
01:10:21  Gregor: But remember, "we're number one!".
01:10:37  elliott: That is actually how dynamic linking works.
01:10:40  Gregor: Not if you don't need it!
01:10:42  elliott: Calling that an interpreter is a bit misleading, although that is the spec, that's where you put /lib/ld.so
01:10:44  elliott: The dynamic linker is set as the interpreter.
01:10:45  pikhq: Oh, indeed.
01:10:50  Say their biological cycle is a multiple of 4
01:10:59  Gregor: But what if you wrote an ELF/esolang polyglot? :p
01:11:02  They see gliders as 4 distinct particles, don't see the connect
01:11:03  elliott: Why not just "xor eax, eax" + "inc eax"? It's not any longer.
01:11:06  Or /anylang, but I doubt most languages would accept such silly :P
01:11:10  fizzie: It is? Oh, wonderful. :p
01:11:13  elliott: But yeah, it could be an invalid ELF otherwise, just enough to get passed into an interpreter :P
01:11:13  What happens when they come across a 5... thingy item
01:11:23  Gregor: Yes, but the ld.so actually gets passed the file. :)
01:11:38  Might they eventually deduce that the 4 particles are in fact the same, similar to the 5-phase item?
01:11:38  ...
01:11:43  Gregor: Kudos to the first person to write an ELF/something else polyglot with the something-else set as the interpreter :P
01:11:50  You could actually set your ELF files to load using qemu. :P
01:11:55  Gregor: Mega kudos if it's a quine.
01:12:09  pikhq: Only if you lied about architecture and the like :P
01:12:11  (well, it'd only really work if the file in question is statically linked.)
01:12:17  elliott: Should be possible with BF.
01:12:17  pikhq: http://sprunge.us/TjZS true.s!
01:12:29  Gregor: That's so close to cheating that I don't like it :P
01:12:34  elliott: :)
01:12:36  :P
01:12:47  Gregor: Like polyglots where the other languages are all in comments.
01:12:52  No, man, you gotta use dual meanings!
01:13:15 -!- Sasha has joined.
01:13:29  I wonder why my version of true is two bytes larger than his 42...
01:13:42  Perhaps nasm changed the instructions generated somehow, but I doubt it.
01:13:50  (in the, what, 11 years since that article was written)
01:13:56  elliott: It is in fact one byte shorter with eax:
01:13:58  00000000  30C0              xor al,al
01:13:58  00000002  FEC0              inc al
01:13:58  00000004  31C0              xor eax,eax
01:13:58  00000006  40                inc eax
01:14:03  fizzie: What luck.
01:15:06  [[Note that the last eight bytes in the ELF header bear a certain kind of resemblence to the first eight bytes in the program header table. A certain kind of resemblence that might be described as "identical".]]
01:15:10  Some phrasings I just love.
01:16:33  fizzie: OTOH "xor ebx, ebx" seems to be bigger than "xor bx, bx" here.
01:16:57  It shouldn't, in 32-bit mode.
01:17:26  One will require a prefix byte, but it should be the one that's not the "native" size.
01:17:46  (ndisasm defaults to -b 16 though.)
01:18:25  fizzie, I found a VAST lava + water cavern
01:18:30  got lost in it for half an hour
01:18:34  before I found my way back
01:18:38  elliott, fizzie ^
01:18:53  fizzie, just 30 second walk from underground dock
01:19:15 * elliott decides that 93 bytes is acceptable for true
01:19:17  Shocking, I know.
01:19:23  I'm not going to interleave with the ELF header.
01:20:08  It's harder to interleave with the structs anyway. :p
01:20:24  elliott, do you realise you will NEVER use less than min(page-size,disk-sector-size)
01:21:29 -!- Mathnerd314 has joined.
01:21:40  Vorpal: untrue
01:21:46  if you, e.g., pack it all into one file
01:21:58  fizzie: not really, well yes ehdr and phdr, but not putting the code into ehdr
01:22:01  elliott, well okay
01:22:04  fizzie: since it's basically just macros :P
01:22:20  Vorpal: anyway it's not about saving disk space, which I have in abundance
01:22:55  Also don't the filesystems do tail-packing nowadays anyway?
01:23:19  Vorpal: it's more about coding asceticism, for fun and also to remind myself facilis descensus Averni.
01:23:32  (At least experimentally.)
01:23:34  (Whereby Avernus I clearly mean bloated code.)
01:26:39  elliott@dinky:~/code/crtls$ make; wc -c true
01:26:40  make: Nothing to be done for `all'.
01:26:40  94 true
01:26:40  elliott@dinky:~/code/crtls$ make; wc -c true
01:26:40  nasm -f bin true.s -o true
01:26:40  chmod +x true
01:26:42  93 true
01:26:48  fizzie: I replaced "xor ebx, ebx" with "xor bx, bx".
01:26:50  I swear, it's smaller.
01:27:03  bl is the same as bx.
01:27:15  Are you sure you're assembling with bits 32?
01:27:26  It's not the default with -f bin.
01:27:37  00000007  31DB              xor ebx,ebx
01:27:37  00000009  6631DB            xor bx,bx
01:27:37  0000000C  30DB              xor bl,bl
01:27:54  Those are the three variants with ndisasm -b 32.
01:28:05  fizzie: Indeed I was not! Oops.
01:28:20  Now my size matches Raiter's, too. Joy.
01:28:31  fizzie: And the two variants are the same, as well, although ebx is probably "nicer".
01:28:56  real0m0.001s
01:28:57  (I sleeps now.)
01:29:00  That's the fastest true I've ever seen!
01:29:02  ASM POWER!
01:30:42  "When Linux starts up a new executable, one of the things it does is zero out the accumulator (as well as most of the other registers). Taking advantage of this fact would have allowed me to remove the xor, bringing the program down to five bytes. However, this behavior is certainly not documented, and there's no guarantee that it can be counted on to stay that way (other than the lack of any obvious reason to change it)."
01:30:48  Methinks I will not rely on that. :p
01:31:14  Without any code, my ELF spooge takes up 84 bytes. I think that is an acceptable smallest program size :P
01:33:03  My eyes love me so much for this new theme.
01:38:55  "VbeSignature should be set to 'VBE2' when function is called to indicate VBE3.0"
01:42:30  elliott: ... guh?
01:42:45  Gregor: From the Plan 9 fortune file :P
01:43:50 -!- zzo38 has joined.
01:44:38  "If emacs buffers were limited to the size of memory, it would not be possible to
01:44:38  edit /dev/mem."
01:44:45  What a profound and yet utterly insane statement.
01:47:09  What we need is the computer game allowing adjusting all the rules, including: days played, hours played per day, season, wind, gravitational field strength, match condition, players per team, wicket strength, field diameter, field eccentricity, pitch length, leg bye toggle, LBW toggle, time limits, etc.
01:48:34  elliott: It shouldn't make much sense to edit /dev/mem directly in emacs though!?
01:49:07  What would be great is editing the part of Emacs' memory that pertains to the open /dev/mem buffer.
01:49:15  It's Emacsen all the way down!
01:49:43  elliott: Figure out if you can do that.
01:50:15  zzo38: No :P Thinking about Emacs makes my head hurt, I just use the thing and pretend it doesn't exist.
01:51:04  Then figure out if you know anything about making a computer game like I described.
01:51:45  How many computer games allow adjusting gravitational field strength?
01:52:14  I'm going to see if I can watch the first ep of DS9
01:52:38  Sgeo: Then do watch the first ep of DS9
01:53:14  no no, he's just going to check if he _can_.  for the principle of it.
01:53:43  OK, check if you can.
01:54:01  oerjan, are there simple 5... thing spaceships?
01:54:10  Sgeo: i have no idea
01:54:17  In the description I made, what other rules are needed adjustment, I think?
01:54:24 * nooga has got a new shell account on an OpenBSD box
01:54:27 * nooga likes
01:54:29  Or at least, ones with an odd number of ... I want to call them phases
01:54:41  Sgeo: Next time see if you can watch DS999
01:55:18  Sgeo: No, you have to call them phones. Even if it is incorrect.
01:56:40  night →
01:57:34  Again?
01:57:45  Again??
01:58:40  Vorpal goes to bed about 5 times every night.
01:58:50  he dilutes the usage of → to a hideous degree.
01:59:06 * Sgeo points a glider gun at Vorpal
01:59:27  elliott: Maybe he has the macro set up to do that, and he didn't bother to change it.
01:59:27  Vorpal is secretly a hamster
01:59:58  oerjan: i approve of this theory
02:00:19  If they eventually work out that these four c/4 diagonally-moving particles that move in the same direction are one and the same, might they end up lumping in other spaceships that are also c/4 in the same direction?
02:00:47  As they lazily assume that that's the best observable distinguishing characteristic
02:01:45  day
02:01:49 -!- zzo38 has quit (Remote host closed the connection).
02:02:59  I mean, if they don't directly observe that the 4 phases are similar, but guess it from a 5-phase ship or something
02:26:19  Ugh... IPv6 in practice is just a one big Charlie Foxtrot. Well, if you take all the RFCs about it, it is a decent network-layer protocol, but the practical implementation is just CF.
02:27:56  Ilari: YAY PEOPLE
02:28:18  Ilari: This is why technical specifications must be flawless and completely-specified; then it'll only be a major clusterfuck, rather than a gigantic one!
02:28:26  (And that's really the best you can hope for.)
02:29:23  Well, it is not incomplete specifications that are the problem... It is the "not implemented yet" and "broken in practice" stuff...
02:31:33  Oh, and then there's still that great IPv6 routing split (really really bad)...
02:34:42  What's wrong with IPv6 implementations? Beside the fact that they're not used?
02:36:57  #1) The great routing split #2) Hosts that think they have IPv6 connectivity but don't #3) Last mile issues #4) Low adoption on client side.
02:37:29 -!- pikhq has quit (Ping timeout: 255 seconds).
02:38:00 -!- pikhq has joined.
02:38:43  Oh, and then there's DNS whitelisting. It just won't scale.
02:39:19  The complexity isn't linear, it is quadric, and the n is very large.
02:42:01 -!- donglongchao has joined.
02:42:03  DNS. Whitelisting
02:42:05  .
02:42:36  I don't know what that means, but please tell me it's more sane than it sounds
02:43:17  Alsol, what's the great routing split?
02:44:50 -!- donglongchao has left (?).
02:47:14  I didn't realise how badly I was treating my eyes before this.
02:49:04  If GoL life _doesn't_ have a NORTH or whatever, and can rotate, they might discover that 2 of the phases are just the other two upside down
02:49:11  Or might not, I guess
02:49:26  So they'd think there are 2 distinct particles instead of 4
02:49:40  Why am I calling it a "particle"?
02:49:54  Wait, I'm mistaken, aren't I?
02:50:07  elliott: ?
02:50:16  Yeah, n/
02:50:17  m
02:50:23  Gregor: ?
02:50:36   I didn't realise how badly I was treating my eyes before this.
02:51:02  Gregor: I've upped all my font sizes and made my theme a bit nicer on the eyes :P
02:51:24  Gregor: Specifically everything's about 12pt now, although what I actually did was set my PPI properly, so it's still set at 10pt.
02:51:25  You should wear polarized computer-viewing glasses like meeeeeeeeeeeee :P
02:51:27  But the point is it's big.
02:51:33  Gregor: Do you... actually do that?
02:51:41  elliott: Have for years.
02:51:54  Anyway, the problem was that 10pt fonts when X thinks your display is 96 ppi and you actually have a 120 ppi laptop display that you sit away from = LOL PAIN
02:52:04  Gregor: But why.
02:52:20  elliott: Because after I sit in front of a computer without them for an hour or so, my eyes start to scream at me.
02:52:57  Gregor: What do they even change, anyway? Visually. :p
02:53:22  My eyes have adapted to staring at a computer screen for countless hours at a time. Surprisingly I don't need glasses and have better-than-average vision even after all these years...
02:53:29  elliott: Uhh, everything looks yellow? They reduce glare? I'm really not sure, but I know that they work, and believe their affect to be stronger than placebo.
02:53:44  I have great vision, my eyes just burn after staring at a computer for a while :P
02:53:46  Sgeo: Well, it probably isn't.
02:55:17  Gregor: Everything looking yellow sounds "fun"
02:55:22  Gregor: As in "no thanks" :P
02:57:57  elliott: You certainly lack faith in your mind's ability to adapt to scenarios w.r.t. vision.
02:58:39  Gregor: But dude, all the porno would become ASIAN!
02:58:46  ...
02:58:49  *clap clap*
03:01:24  I think I have no problem looking at a computer screen for 12+ hours at a time
03:01:31  Well, actually, I do go eat sometimes
03:01:49 -!- rodgort has quit (Quit: Coyote finally caught me).
03:04:00  Sgeo: Your computer doesn't feed you? Ha.
03:33:16  Gregor: I eat my keys.
03:33:29  I's geng qui difficu o ype
03:33:34  *ge||ing
03:34:08  I eat my cryptographic keys.
03:34:36  It's getting quite difficult to 0x8fd0113ab9c04e
03:36:08  Gregor: i eat chips
03:36:09  ...
03:36:11  computer chips
03:36:13  ha! ha!
03:36:14  ha!
03:36:16  ha!
03:37:13  Beep boop
03:55:55  okay the newest uTorrent is ugly as fuck
03:56:01  why is it so ugly
03:56:12  it makes me feel like they are making programs for retards
03:56:30  all big pictures and "lawl it's a search thing too"
03:56:45 * oerjan points out that _is_ a possibility
03:56:56  *that that
03:59:10  have there been any big surveys in the last couple of years about which terminal emulators people use?
04:00:07  there are enough people using terminal emulators for a big survey?
04:00:27  and/or virtual terminals
04:00:37  basically everything that can speak vt
04:00:38  If there are glider guns with odd periods, if they're constructed, the GoL scientists should see that some guns emit the 4 (what they think are distinct) while others only 1, right?
04:01:13  Sgeo: you'd think
04:01:45  Not entirely sure if they'd make the right inference from that, but surely it would help
04:02:19  although that doesn't really prove anything, you could be able to make something that emit the 4 without doing it in a periodic way
04:02:38  or even something that emit precisely 3 of them...
04:03:38  *emitted
04:07:12  http://www.linuxquestions.org/questions/linux-software-2/what-is-your-favorite-terminal-emulator-442024/
04:07:25  lame.  why does konsole have such an overwhelming number of users?
04:07:44  People like KDE?
04:07:48  (i know the answer...default kde and all that)
04:07:55  is aterm default on something?
04:08:07  What's with the Konsole hate?
04:08:32  I use konsole on XFCE.
04:08:33  i found it fat, slow and ugly?
04:08:37  konsole is the best terminal emulator there is.
04:08:52  It has nice bindings, tab support, scrollback, ...
04:09:26  it has lots of gui stuff that mostly just got on my nerves
04:09:45  but again: is aterm default for anyone?
04:09:52  quintopia: It has ... almost no GUI stuff, and what little it has is all disable-able, like most KDE stuff.
04:13:09  Gregor: perhaps it is that i am using a relatively slow computer and frequently at a very low resolution
04:13:28  That could be an issue :P
04:15:17 * Sgeo again ponders switching his Ubuntu install to Kubuntu
04:25:52   have there been any big surveys in the last couple of years about which terminal emulators people use?
04:25:56  um it's hardly a subject of holy wars
04:26:33  I use vimterm
04:28:54  yeah, i don't intend to start a major holy war.  i just wanted to have my finger on the pulse of common preference
04:34:45  it's really irrelevant
04:34:51  we're never going to see major innovations in vt100 emulation
04:34:59  and that's undeniable
04:35:04  lol
04:35:27  I have to agree with Gregor
04:35:32  Konsole is the superior terminal emulator
04:35:47  i don't really get what konsole does that gnome-terminal doesn't, to be honest
04:36:08  urls
04:36:21  copy-paste keyboard shortcuts
04:36:39  coppro: gnome-terminal does urls.
04:36:42  and copy-paste keyboard shortcuts.
04:37:19  coppro: so/
04:37:21  *so...?
04:37:22  elliott: hrm
04:37:32  maybe some other term was running last time I used non-konsole then
04:37:37  I sort of assumed it was gnome-term
04:37:39  probably xterm ...
04:38:04  and gnome-terminal is actually pretty darn configurable
04:38:06  unlike most gnome programs :)
04:40:10  coppro: anyway copy-paste shortcuts are for noobs, learn to use selections
04:40:33  elliott: fuck them
04:40:42  coppro: seriously?
04:40:49  they're the only thing X does for me that I like. :)
04:41:08  "The X server has to be the biggest program I've ever seen that doesn't do anything for you." --Ken Thompson
04:41:08  I hate trying to remember what the last thing I selected is
04:41:15  coppro: that's not how you do it...
04:41:25  coppro: you select what you want, immediately move to where you want it, and press the middle button
04:41:31  nothing in-between
04:41:42  elliott: yes, and that last step is where I have trouble
04:41:54  you have trouble pressing the middle button?
04:42:01  no
04:42:05  the nothing in-between bit
04:42:28  also, I hate my algebra prof
04:43:02  the second half of the course to me was roughly equivalent to taking a pull-string doll
04:43:07  that says "polynomials"
04:43:08  "root"
04:43:11  "irreducible"
04:43:14  "finite field"
04:43:17  "irreducible"
04:43:20  "polynomials"
04:44:47  galois galois galois
04:44:54  oerjan: thankfully none of that
04:57:43  Why wouldn't the Second Law of Thermodynamics apply in GoL? Isn't it a statistical thing, rather than a physical thing?
04:58:52  Or maybe I'm confused
05:00:23  well for a start it's not clear that the _first_ law applies
05:01:45  Does Second rely on First?
05:02:01  It seems rather clear that the First law does NOT apply
05:02:20  as for the second, there is probably some way to apply the informational interpretation of it to GoL, yes.  but i think that without the first law and the link between them the consequences might not be as strong
05:03:05  that is, you still have free energy
05:03:11  *"energy"
05:03:17  You can go from an active state to a dead state, but not dead to active
05:03:30  *completely dead
05:04:10  I'm thinking that that's.. something
05:04:10  more importantly, you cannot increase the information content
05:04:24  whether or not you have active states
05:04:28  BRB
05:05:11  Vorpal: ping
05:09:15   ack
05:09:53  O viously, I wore out my  key
05:10:52  What's the equivalent of heat in GoL?
05:11:02  Err, closest equiv
05:13:37  i have no idea that is not essentially "looks lively"
05:17:05  If we attempt to make GoL life via evolution, we should make sure that it's absolutely full of a pattern F such that all ancestors of F contain more than one copy of F in some generation
05:17:16  So that those otherwise immortal ****s can know mortality
05:18:31  Gregor: Wow -- Brian Raiter, dissatisfied with a 45-byte program returning 42, made a 45-byte program that acts as either true or false, depending on how you invoke it.
05:18:34  http://www.muppetlabs.com/~breadbox/software/tiny/true.asm.txt
05:18:36  Impressive.
05:19:56  elliott: Does it work if invoked as "/bin/true" instead of "true"?
05:20:15 -!- Sgeo has left (?).
05:20:19 -!- Sgeo has joined.
05:20:23  Gregor: It only checks one byte near the end of argv[0], so "yes".
05:20:43  Ok, with maybe one ancestor of F that contains 1 F, but that should be stilllifeish or something
05:21:09  Mmmmm, near the end ... clever, also impressive to keep it so small.
05:21:49  Gregor: I'm too much of a wimp, and have complete ELF headers in my programs. :)
05:21:55  Albeit far smaller ones than you'd expect.
05:22:06  Ahhh :P
05:22:15  Gregor: Still, 91-byte true and false ain't bad :P
05:22:19  I even use symbolic names for the fields and values! I want my money's worth out of elf.inc, it was a bitch to write.
05:22:26  (I copied large swathes of the ELF specification in there.)
05:22:46  Actually, earlier, I was thinking that something similar [but less brutal [all ancestors of F contain as much F as the child]] would help foster competition and assist in the evolution of intelligent life
05:24:18  Gregor: Hopefully I can manage to write cat(1) without going insane.
05:24:26  And next, why, mount(8)! Or, er, eventually.
05:24:41  I pride myself in being A Slightly Better-Maintained asmutils With More Naffness.
05:24:48  (My true and false are smaller though!!)
05:25:40  I should make macros for these :P
05:25:49  (These = standard ELF junk.)
05:32:57  ais523logread: http://www.muppetlabs.com/~breadbox/intercal/os2diff.txt does this still suffice for using c-intercal on os/2?
05:38:43 -!- elliott has quit (Quit: Leaving).
05:50:06 -!- pingveno has quit (Ping timeout: 260 seconds).
05:51:37 -!- pingveno has joined.
05:57:24 -!- rodgort has joined.
06:01:06  "These 16 particles [4 in each direction] cause damage to biological tissue. Fortunately, the damage is usually automatically repaired by our bodies. All 16 particles travel at the same speed."
06:01:31  wait what the hell?
06:02:02  ^not an actual quote from anything
06:02:07  coppro: BE AFRAID
06:02:48  Just what I'm imagining as possible incorrect knowledge in GoLverse
06:03:00  what is GoL?
06:03:06  and why is it so brainhurty
06:03:09  Game of Life
06:04:18  Because we're speculating what a completely alien form of life might think about the universe around them
06:04:38  And said universe has very, very little in common with ours
06:06:58  oh
06:07:07  there are more than 4 directions in Life
06:07:17  Gliders can only travel in 4
06:07:39  oh, I se
06:07:45  For some reason, I'm obsessed with gliders
06:07:51  What they think of gliders
06:08:38  oerjan suggested that if they have a universal-to-their-form-of-life UP, then they might not notice that a NW glider is the same thing as a NE glider
06:09:12  And if there's a biological ... clock thing that's a multiple of 4, the phases of a glider might be seen as distinct and unrelated particles
06:09:27  Although I guess that also assumes that they move at distances that are multiples of four
06:14:58 -!- rodgort has quit (Quit: Coyote finally caught me).
06:15:09 -!- rodgort has joined.
06:23:24 -!- Goosey has quit (Ping timeout: 276 seconds).
06:29:03  oerjan, you awake/
06:31:01  How does "Amount of blocks destroyed when deterministically placed all at a certain distance from live cells after X amount of time" sound as a definition of heat/
06:32:05  Well, 'deterministically placed' would need to be replaced with an algorihm, I mean
06:32:11  i guess that's something to measure, at least
06:32:45  Funky IETF working group names: 6lowpan, multimob, softwire, dime, grow, bliss, drinks, martini, mmusic, salud, splices, forces, dane, emu, hokey, kitten, ledbat and storm.
06:34:49  Blinkers shouldn't be considered to have heat, should they? (Given any distance above um, a very small number, used in the definition, they don't)
06:35:37  Actually, then, a sufficiently dense immobile object doesn't have heat, even if there's a lot of internal activity :/
06:35:57  External heat?
06:36:10  Since it's certainly not causing things around it to move, seeing as it's immobile
06:36:34  Erm, immobile and not giving stuff off
06:36:40  that way to measure it is only going to be an approximation, anyhow, while waiting for their scientists to develop a deeper understanding
06:37:59  Just to clarify: Deeper than us? Or are we trying to think of what THEY'd use as a definition? I was being selfish
06:38:18  Although I'm sure they would have a deeper than us understanding of larger scale stuff
06:38:21  well both
06:59:07  What could we do to attempt to identify life? Intelligent life/
07:00:44  ...also raising a question, what if WE are in a simulation, and our watchers have limited means to identify intelligent life?
07:00:55  Should we do something that might be recognizable somehow?
07:05:22 -!- oerjan has quit (Quit: Anyway, good night).
07:35:39 -!- kar8nga has joined.
07:49:15 -!- Sgeo has quit (Read error: Connection reset by peer).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:39:59 -!- andywang has joined.
08:40:38 -!- andywang has quit (Client Quit).
08:42:22 -!- Mathnerd314 has quit (Ping timeout: 245 seconds).
08:43:17 -!- kar8nga has quit (Remote host closed the connection).
08:48:09 -!- kar8nga has joined.
09:02:09 -!- kar8nga has quit (Remote host closed the connection).
09:03:23 -!- nopseudoidea has joined.
09:03:41 -!- nopseudoidea has quit (Client Quit).
09:05:34 -!- MigoMipo has joined.
09:53:46 -!- Macstheyjustsuck has joined.
09:54:17 -!- Macstheyjustsuck has left (?).
09:58:37 -!- Phantom_Hoover has joined.
10:26:32 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds).
10:44:00 -!- kar8nga has joined.
10:53:32 -!- Phantom_Hoover has joined.
11:09:08 -!- Georgey has joined.
11:09:25 -!- Georgey has left (?).
11:48:53 -!- ishagua has joined.
11:49:12 -!- ishagua has left (?).
12:04:15  MoveCraft empties chests when used. How irksome.
12:12:39 -!- kfdsfdsafdsaf has joined.
12:14:16 -!- kfdsfdsafdsaf has quit (Remote host closed the connection).
12:25:55 -!- Phantom_Hoover has left (?).
12:26:01 -!- Phantom_Hoover has joined.
12:36:37  And it has a 1000 block limit. "$£%"£$%^
12:37:16  A changeable limit, but I suspect the ROU will slow things horrifically. I give up.
13:23:50   Vorpal: ping <-- pong
13:24:24   he dilutes the usage of → to a hideous degree. <-- well in that case I had planned to go to bed before, but then forgot it
13:24:29  also it was exactly 2 times
13:48:01 -!- ppseeker has joined.
13:49:02 -!- ppseeker has quit (Quit: ~ Trillian Astra - www.trillian.im ~).
13:57:49  Is it only me who thinks that the lambda calculus page on WP should use  tags around expressions rather than ?
13:58:59  Phantom_Hoover: no
13:59:04  but luckily, WP is a W
13:59:06  not merely a P
13:59:28  Yes, but doing things like that will tend to bring down the screaming hoardes of bureaucrats.
14:00:29  no it wont
14:00:41  Well, there's only one way to find out!
14:01:02 -!- wareya_ has joined.
14:02:39  Urgh, the tags aren't even ; they're .
14:04:02 -!- wareya has quit (Ping timeout: 245 seconds).
14:04:44  Previewing this will be fun...
14:07:20  What's the LaTeX macro thingy for ↦?
14:08:14  Ah, \mapsto
14:14:02 * Phantom_Hoover wonders if it's justifiable to be annoyed at people calling the lambda calculus "code".
14:16:21  Oh, forget it. That page is beyond easy repair.
14:16:25  Phantom_Hoover: depends. do you think LC is a programming language?
14:16:29  nooo dont stop!
14:16:36  I MUST
14:17:11  Seriously, I'm trying to convert horrific HTML formatting into nice LaTeX formatting on a huge article with lots of the former.
14:17:28  sounds like a job for a script!
14:18:06  I can fix the various lexing errors etc., but spacing &stupidhtmlentities; have sapped my resolve.
14:20:48  And I suck at scripting things.
14:36:55 -!- oerjan has joined.
14:46:48 -!- augur has quit (Remote host closed the connection).
14:47:13 -!- augur has joined.
14:51:45 -!- augur has quit (Ping timeout: 250 seconds).
14:57:17  [[ Many programmers have created and promoted the computer programming language known as "open source code" to be shared on public sites at no cost, but licensing issues are murky.]] — Reuters.
14:57:40  I shall make this language, and write an absurdly incomprehensible licence for it.
15:03:09 -!- Mathnerd314 has joined.
15:03:31  lol
15:04:03  journalists are extremely ignorant in all fields
15:08:11  Except journalism, naturally.
15:08:22  Which is not a particularly high endorsement.
15:08:37 -!- jack has joined.
15:08:54 -!- jack has changed nick to Jackoz.
15:32:01 * Phantom_Hoover is tempted to add ""Goths don't do anything bad in the UK," I say "They're a gentle and essentially middle-class subculture."" to the head of TV Tropes' article on goths.
15:33:55 -!- augur has joined.
15:49:24 -!- Jackoz has quit (Quit: Jackoz).
15:49:50 -!- Mathnerd314 has quit (Ping timeout: 240 seconds).
15:53:09 -!- FireFly has joined.
16:06:25 -!- elliott has joined.
16:08:38  22:32:45  Funky IETF working group names: 6lowpan, multimob, softwire, dime, grow, bliss, drinks, martini, mmusic, salud, splices, forces, dane, emu, hokey, kitten, ledbat and storm.
16:08:41  Ilari: wat :D
16:09:12  And out of those, dane was IIRC annouced less than 48 hours ago...
16:09:27  23:00:44  ...also raising a question, what if WE are in a simulation, and our watchers have limited means to identify intelligent life?
16:09:28  23:00:55  Should we do something that might be recognizable somehow?
16:09:42  there is no reason to believe they could recognise our actions at all.
16:09:49  and there is also no reason to believe that they *want* sentient life.
16:11:04  Vorpal: ping2
16:11:36  Fun fact: The orignal name for 'dane' was rejected for being too similar to 'kitten' (which is existing working group).
16:13:31  Ilari: do the names have any meaning? :P
16:14:35  elliott, the formatting in the WP article on the lambda calculus is awful.
16:14:40  Phantom_Hoover: I'm fixing it now.
16:14:53  I fully expect to get reverted for daring to be an anonymous IP and making such a sweeping change of evil.
16:15:10  Your soul must be greatly uncompressible.
16:15:15  [[The [[identity function]] I(x) = x takes a single input, ''x'', and immediately returns ''x'']]
16:15:17  Hahaahahaha.
16:15:20  I like how they phrase it imperatively.
16:15:24  But no, I am here to fix formatting alone.
16:15:54  Most of apparently acronyms...
16:16:09  elliott, that section is not for the intelligent. It is for the kind of idiot who thinks of everything imperatively.
16:17:55  No doubt choosen for amusement potential...
16:18:35  Phantom_Hoover: Amusingly, this actually looks uglier with the default math formatting (do it in HTML for simple stuff).
16:18:36  OH WELL!
16:21:10  elliott, use some terrible hack to force it into formatting with TeX always!
16:21:17  No :P
16:22:46  Phantom_Hoover: If this gets reverted I'll replace the λ-calculus article on Esolang (pretty sure we have one) with a merger of it and my revision of the Wikipedia page.
16:23:07      x[x := N]        ≡ N
16:23:07      y[x := N]        ≡ y, if x ≠ y
16:23:07      (M1 M2)[x := N]  ≡ (M1[x := N]) (M2[x := N])
16:23:07      (λy.M)[x := N]   ≡ λy.(M[x := N]), if x ≠ y and y ∉ FV(N)
16:23:12  ^ Only a shithead does that with monospaced text.
16:23:21  elliott, we do not have the MW TeX thing on the esolang wiki.
16:23:38  Phantom_Hoover: Well, I can prerender stuff. Or beg Graue for it.
16:23:39  I asked graue, and he said it was effectively impossible with his hosting setup.
16:24:02  Given two arguments, we have:
16:24:02 ((x, y) ↦ x*x + y*y)(5, 2)
16:24:02 = 5*5 + 2*2 = 29.
16:24:02 However, using currying, we have:
16:24:04 Thou art fucking with me. 16:24:36 Phantom_Hoover: I'll do something or other, then. 16:24:50 rutian is still alive. 16:24:54 After all these years. 16:24:56 And it has an IP. 16:25:03 I could put something on there. :p 16:26:20 You know what'd be funny? If the article had originally been done with LaTeX and some moronic bureaucracy had led to it being HTMLed. 16:27:12 Rutian? 16:28:20 Phantom_Hoover: Rutian is the server of yore. 16:28:28 Born out of the ESO standards agency. 16:28:35 Used for miscellaneous crap for three years or so. 16:28:40 Well, two, it's beend ormant lately. 16:29:14 elliott, was out gathering wood in the middle of nowhere. Found a lone obsidian block, no water or lava near. 16:29:20 elliott, halfway up a mountain 16:29:27 Vorpal: DUN DUN DUUUUN 16:29:40 elliott, what genre are we talking about? 16:29:47 Vorpal: what? 16:30:04 elliott, oh I thought that was supposed to be scary music 16:30:19 Vorpal: It was just your standard moving DUN DUN DUUUUUUUUUUUUN. 16:30:28 http://www.youtube.com/watch?v=7g9WjcGdxuM 16:31:09 elliott, ah, so not the music when the protagonist is carefully walking forward and you just *know* something will happen at any moment 16:31:24 The thing was the lone obsidian. 16:31:59 elliott, hm. will watch in a sec 16:32:28 Phantom_Hoover: Failed to parse (unknown function\begin): \begin{align*} ((x, y) \mapsto x*x + y*y)(5, 2) \\ &= 5*5 + 2*2 = 29. \end{align*} 16:32:32 Phantom_Hoover: NO SOUP FOR YOU 16:32:42 elliott, that video says "not available in your area" 16:32:46 elliott, so what is it 16:32:48 Vorpal: What X-D 16:32:52 Vorpal: It's just the DUN DUN DUUUUUUUUUUUUUUUUN. 16:32:52 elliott, indeed 16:33:08 elliott, huh, it works when refreshing page 16:33:38 elliott, ah, that sound. Is it a stock one or? 16:35:04 Vorpal: Presumably. 16:35:06 :P 16:35:13 Or else constantly reproduced perfectly. 16:35:41 * elliott forces Firefox to look at clog logs in utf8 16:35:51 Vorpal: anyway what i was pinging you for is this http://code.google.com/p/loper/source/browse/trunk/crap/example/oiuboot.asm?r=93 16:36:00 Vorpal: an example of super-simple sorta-orthogonal persistence 16:36:25 elliott, too tired to read asm 16:36:25 Vorpal: specifically, whenever it gets a page fault, it loads that address from disk into RAM and pages it into the virtual address, then returns 16:36:43 Vorpal: and it doesn't even load the kernel itself; it just sets up the page fault handler, and jumps into unloaded memory 16:36:53 the page fault handler then pages it in from disk, and the jump succeeds 16:36:58 heh 16:37:05 elliott, what makes sure stuff gets written to disk then? 16:37:16 Vorpal: It wasn't developed that far. :) 16:37:37 Vorpal: It's the oiu system from memetech.com which is *still* down. 16:37:42 The cap system got more development... 16:41:42 Gregor: Should I switch to sid to get Firefox 3.6? 16:41:58 WHAT, it's still 3.5 in sid. 16:42:02 3.6 is only in experimental. 16:42:10 Fuck this, I'm installing the experimental package manualla. 16:42:12 *manually. 16:43:10 manuel, the package from barcelona 16:44:15 elliott, did you give up on the LC rewrite? 16:45:49 Phantom_Hoover: Not yet. 16:46:40 elliott@dinky:~$ sudo dpkg -i iceweasel_3.6.13-1_amd64.deb 16:46:44 Bring on the instability! 16:46:48 iceweasel depends on xulrunner-1.9.2 (>= 1.9.2.11); however: 16:46:49 Package xulrunner-1.9.2 is not installed. 16:46:49 LOZL 16:50:10 I need: libmozjs3d, iceweasel-l10n-en-gb 16:54:06 speaking of tex articles being redone in html, is there a good tool for converting a tex file to an html file (getting as close an approximation to the formatting as html allows)? 16:56:11 no, there are tools but they all suck at it and i'll kill you if you use them because they're that bad. 16:56:29 damn 16:56:31 you may want to look into mathjax (jsMath's successor) if you're willing to do some manual work. 16:56:38 could you pelase write me one that doesn't suck? 16:56:49 no, it is basically impossible 16:56:54 html doesn't work like that 16:57:05 i don't care about the math. i just want to preserve the non-math formatting 16:57:40 basically, where text and images are located, and laying out of bibliography, and anchoring citations 16:58:01 not gonna happen. html doesn't work like that unless you force it to, and doing it from tex would just be near-impossible. 16:58:14 There's one that's OK. 16:58:17 One sec. 16:58:19 i know a lot of it could be done approximately 16:59:28 and i'm willing to tolerate a lot of differences since they are fundamentally different paradigms 16:59:29 quintopia: http://www.tug.org/applications/tex4ht/ <-- good part: Works well. Bad part: Original creator is dead. 16:59:39 lol 17:00:21 Gregor: so the continued development isn't as good as the original development? 17:00:46 It's not that it's not as good so much as that it's slowed to a crawl. 17:01:49 Anyway, if you have something that you want to convert to an HTML page that looks like it came from LaTeX but isn't just a PDF barfed into a web browser (e.g. a language spec), it's pretty good. 17:02:17 -!- Goosey has joined. 17:02:53 uh 17:03:13 are there some papers on implementing UNIX-like systems? 17:03:37 nooga: Literally every advanced OS textbook in history? :P 17:04:36 Gregor: Unix counts as advanced nowadays? Fuck. 17:04:55 You know, the OS designed to be as simple as possible to implement and get working and be practical. 17:05:02 In a multi-user, networked environment. 17:05:18 elliott: By "advanced" I mean "it covers topics lower than shells", not "it covers research in OS design" 17:05:37 Gregor: There are OS design textbooks which... cover just shells? And not kernels? 17:05:40 Are you being serious? 17:05:47 Slight exaggeration :P 17:05:57 Gregor: ^_________________^ 17:06:01 The point is there are definitely OS textbooks you could read cover-to-cover without being able to write an OS. 17:06:10 Gregor: Indeed... 17:06:16 s/being able to/learning to/ 17:06:40 I love how big my fonts are and how beige my background is! I'm OLD now! 17:08:04 -!- kar8nga has quit (Remote host closed the connection). 17:10:04 elliott, how goes the LaTeXification of WP? 17:10:22 Phantom_Hoover: Oh stop bugging me. 17:14:48 Wtf is up with cat. 17:25:00 -!- oerjan has quit (Quit: leaving). 17:25:50 -!- Mathnerd314 has joined. 17:27:07 elliott, how should we know? 17:27:14 magic 17:41:10 elliott, read MC Experiment day 12 yet? 17:41:46 Phantom_Hoover: I haven't read since ... I forget. Link me to the first 17:42:27 http://www.pcgamer.com/author/pentadact/ 17:42:36 Look back until you find the one you haven't read. 17:43:24 Hey, it goes to beta in 9 days. 17:44:46 I’m swept violently over the threshold, flung clear of the falling water, and left mid-air, sickeningly high over dry land. My only hope is if the water somehow hits the ground before me, spreads out into some kind of pool and… 17:44:47 It doesn’t. 17:44:47 A fountain of metal, stone, sand, torches and sticks explodes from me as I hit the ground, and the last thing I see in front of my dying face is the egg, still intact. 17:45:05 Phantom_Hoover: Beta? With all the shitty bugs? 17:45:58 I assume he's working like hell to ruin^W fix it. 17:55:22 http://www.mezzacotta.net/garfield/?comic=571 17:55:34 I feel quite intensely nerdy for getting that reference. 18:02:49 Phantom_Hoover: http://i.imgur.com/asrO9.jpg XD 18:02:57 Indeed. 18:04:48 "Oh my God. 18:04:48 OK. That should be enough. 18:04:48 On Monday: turns out it’s not enough." 18:04:52 elliott: http://i.imgur.com/LZZJx.gif 18:05:09 quintopia: what 18:05:19 Phantom_Hoover: Ha, the price is going up to 15 euros in beta. 18:05:25 More bugs cost more! 18:06:18 elliott, I still prefer his GCII playthroughs by a small margin, though. 18:06:26 (Tom Francis', that is.) 18:06:38 Phantom_Hoover: I haven't played GCII, so I probably wouldn't. 18:06:45 elliott, nor have I. 18:06:52 It's not written for people who have. 18:07:01 Phantom_Hoover: OK, rephrase: I don't really like games like that. 18:07:19 Nor I. 18:07:31 Phantom_Hoover: Oh fine, link me then. 18:07:37 But I like the Minecraft ones partly because I know how silly he's being. 18:08:28 http://www.computerandvideogames.com/article.php?id=161570&site=pcg 18:09:02 someone buy me a fast computer so i can play minecraft 18:09:19 quintopia: what? 18:09:35 quintopia: I play it on a 1.3 GHz Core 2 Duo laptop running at 1.2 GHz with an onboard Intel GPU 18:09:45 on Linux, no less, where the graphics performance isn't exactly stellar 18:09:56 quintopia: rendering distance to short, graphics to fast, problem solved 18:10:09 hmm 18:10:38 it always ran ridiculously slow for me. i'll see about the settings. 18:10:53 quintopia, and my mid-to-low end laptop runs it fine on normal rendering distance and fancy graphics. 18:10:56 quintopia: Sometimes it does and you just have to restart it. You're not playing in-browser, right? 18:11:36 elliott: don't think so. haven't played in-browser since the very first demo. 18:11:39 it ran okay then. 18:11:51 quintopia: Sun JRE or? 18:11:55 If you're not on Linux I can't even remotely help. 18:12:05 Phantom_Hoover: My laptop is actually on the high end of mid end; it's very sturdy, thin and lightweight, and has a long battery life; it's just that long battery life, lightweight and super-fast CPU don't really mix. :p 18:12:08 It's actually pretty snappy. 18:12:15 a modification of sun jvm i think 18:12:31 elliott, depends on how you define "end", then. 18:13:00 Phantom_Hoover: Price-wise, ignoring things that are stupidly overpriced because of a brand name (*cough* Sony *cough*) 18:13:04 quintopia: what? you mean icedtea? 18:13:10 that isn't a modification, that's a backport of openjdk to run java 6 18:13:22 quintopia: uninstall the other javas and install the sun-java6-* packages on debian 18:15:00 pretty sure that's my default (or something close enough to it not to make a difference) 18:15:24 quintopia: no, in fact, the difference /does/ matter 18:15:30 openjdk, icedtea, etc. don't work or don't work as well 18:16:10 elliott: i'm talking about an experimental build that doesn't actually change the performance of sun's build at all 18:17:11 quintopia: well, suit yourself 18:20:53 [[So I did what I always do when I can't do anything good: I did something stupid.]] 18:21:04 There's something unspeakably profound about that quote. 18:23:00 Phantom_Hoover: Link me to the playthrough of GCII? 18:23:24 http://www.computerandvideogames.com/article.php?id=161570&site=pcg 18:26:00 There's another one where he takes over the next size of galaxy through peaceful means. 18:26:08 Well, *"peaceful" 18:30:39 Phantom_Hoover: "Final Entry"? 18:30:41 That doesn't look final to me. 18:30:46 Also that site's font rendering is fucked up and hideous. 18:30:50 Phantom_Hoover: Or rather: Where's First Entry. 18:34:17 elliott, it must have been updated in place. 18:34:27 Phantom_Hoover: Greaaaat. And on a hideous site too. 18:34:31 The diary starts at Day 1 on that page. 18:34:37 It is rather, isn't it? 18:34:54 Phantom_Hoover: Especially since it fucks up Firefox's font rendering for me. I think I'll skip that playthrough for now. :p 18:35:08 (computerandvideogames.com <-- what kind of domain name is that) 18:35:21 I have a thing that guts horrible rendering on webpages and makes them vaguely readable, if that helps. 18:35:55 It also guts the screencaps, but that's a minor loss and you can use the popup thing if you're that desparate. 18:36:00 *desperate. 18:36:35 Phantom_Hoover: I know, I know, Readability, yes. 18:36:36 I don't like it. 18:36:42 I can never get it looking nicely. 18:37:06 Why not? 18:37:35 To force the formula to render as PNG, add \, (small space) at the end of the formula (where it is not rendered). This will force PNG if the user is in "HTML if simple" mode, but not for "HTML if possible" mode (math rendering settings in preferences). 18:37:36 Aha. 18:37:48 Phantom_Hoover: I'm fussy. 18:38:24 elliott, default layout or Readibility layout. Guess which is palatable? 18:38:35 Phantom_Hoover: Shaddap. 18:41:53 elliott, still in there? 18:42:11 elliott, so can we expect Nicely Formatted Lambda Calculus soon? 18:43:19 Vorpal: Yes. 18:43:20 elliott, if you want me to show you the way out, that happens now, not in half a minute 18:43:20 Phantom_Hoover: Maybe. 18:43:32 Phantom_Hoover: You're really irritating when you bug people. :p 18:43:43 elliott, guess not then 18:43:59 elliott, FEAR MY BUGGINESS. 18:52:02 Phantom_Hoover: Especially since it fucks up Firefox's font rendering for me. I think I'll skip that playthrough for now. :p ← what rendering would that be? 18:52:07 Phantom_Hoover: http://upload.wikimedia.org/math/c/b/4/cb4c22a5b26892bebcca85d168d98566.png 18:52:10 Phantom_Hoover: Whoops! 18:52:15 mathisavariable 18:52:22 19:00:47 Phantom_Hoover: Sheesh, WP's LC raticle is just terrible. 19:01:16 I'm tempted to write a treatment that doesn't both assume its readers are stupid and also use non-obvious mathematical terminology in the same sentence. 19:01:17 *article 19:02:12 elliott, that is the problem with WP as a reference source... 19:02:39 A basic form of equivalence, definable on lambda terms, is alpha equivalence. This states that the particular choice of bound variable, in a lambda abstraction, doesn't (usually) matter. For instance, λx.x and λy.y are alpha-equivalent lambda terms, representing the same identity function. Note that the terms x and y aren't alpha-equivalent, because they are not bound in a lambda abstraction. In many presentations, it is usual to identify alpha 19:02:40 -equivalent lambda terms. 19:02:43 "doesn't (usually) matter" 19:02:45 Real fucking helpful there. 19:03:41 Phantom_Hoover: Prediction: Being an IP, I'm going to get auto-reverted by a bot for making too many changes, left a threatening anti-vandalism message by it on my talk page, and will then have to contact the owner of the bot to stop it re-reverting if I do, at which point my edit will be reverted because fuck you. 19:03:44 (by a human) 19:03:56 -!- cheater99 has quit (Ping timeout: 250 seconds). 19:04:31 I'll help in that case; I have a probably-autoconfirmed account handy. 19:04:50 Phantom_Hoover: Undoubtedly a sockpuppet of me! 19:05:00 Incidentally, Google Code redesigned and it's now harder to read and get information. 19:05:10 More cluttered too. 19:05:12 -!- pikhq has quit (Ping timeout: 265 seconds). 19:05:16 A 2-year-old sockpuppet? 19:06:47 Phantom_Hoover: Yes! Sinister. 19:07:21 http://www.bulwer-lytton.com/ 19:07:35 * Phantom_Hoover shivers at the pure unadulterated awfulness of the design. 19:10:51 Phantom_Hoover: Why are you even visiting those poseurs? http://adamcadre.ac/lyttle.html 19:11:09 Congratulations, you won the Bulwer-Lytton -- you can write long sentences! Fuckfaces. 19:11:14 elliott, stumbled there from TV Tropes. 19:11:27 Phantom_Hoover: (Presumably you already know of the Lytton Lytton, though.) 19:11:33 (If not, READ ALL THE RESULTS NOW AND LAUGH) 19:11:58 elliott, I've seen it. 19:14:18 Phantom_Hoover: FWIW, I'm up to "Beta reduction" in the informal description. 19:14:33 -!- oerjan has joined. 19:17:09 09:55:22 http://www.mezzacotta.net/garfield/?comic=571 19:17:10 09:55:34 I feel quite intensely nerdy for getting that reference. 19:17:11 -!- cheater99 has joined. 19:18:02 hey i got it too, but i consider sandman to be on my _less_ nerdy side... :D 19:18:58 this may just be a further sign of my madness, i guess 19:23:25 oerjan: you know the two "famous" LC encodings of data types, Church and Mogensen-Scott? 19:23:44 actually no. at least not the latter. 19:23:50 oerjan: http://en.wikipedia.org/wiki/Mogensen%E2%80%93Scott_encoding 19:26:52 ok the scott encoding looks like the one i consider "obvious" 19:27:50 oerjan: presumably you know http://en.wikipedia.org/wiki/Church_encoding :p 19:28:03 which ofc applies to more than just naturals 19:28:47 oerjan: anyway (as actually mentioned in that article at the bottom) i've been wondering about an encoding based on the induction combinator for a function... i.e. right fold 19:28:50 erm for a data type 19:28:53 so 19:28:55 nil f g = f 19:28:55 cons x xs f g = g x (xs f g) 19:28:57 and then we can define foldr 19:28:59 foldr f z xs = xs z f 19:29:00 :: 19:29:00 foldr f z {nil} = z 19:29:00 foldr f z {cons x xs} = f x (xs z f) 19:29:00 :: 19:29:02 foldr f z {nil} = z 19:29:04 foldr f z {cons x xs} = f x (foldr f z xs) 19:29:21 where the first :: there is expanding out the call tot he list, and the second one is replacing foldr's RHS (xs z f) with a call to foldr itself 19:29:24 oerjan, wait, the Church encoding isn't the obvious one for you? 19:29:38 Phantom_Hoover: mogensen-scott is pretty obvious for non-numeral-and-list types 19:29:45 oerjan: and I'm just wondering how well this would work in general 19:29:57 oerjan: hm you can define foldl with foldr right? (ignore efficiency right now :)) 19:29:59 I forget how 19:30:00 elliott, ah, you meant in general. 19:30:06 Phantom_Hoover: not what is listed as church encoding on the http://en.wikipedia.org/wiki/Mogensen%E2%80%93Scott_encoding page 19:30:36 but the boolean and pair examples on the Church encoding page are indeed what i'd consider obvious 19:30:43 Yes, indeed. 19:30:57 oerjan: how do you do that again? :p 19:31:55 in fact i'm wondering if that first page might have it wrong then? 19:32:33 true = \t f -> t, false = \t f -> f 19:32:52 cons x y = \f -> f x y 19:33:07 might be so, now tell me how to define foldl with foldr :p 19:33:12 or i'll ASK #HASKELL 19:33:19 oh _that_ 19:34:20 * oerjan is suddenly very hungry 19:34:25 Hmm, so Mogensen-Scott for the unary naturals would be... 0 = \ c1 c2 -> c1, S = \ n c1 c2 -> c2 n? 19:34:28 i think you'd better as #haskell then 19:34:34 *ask 19:34:40 food -> 19:35:00 I really need to find a better reference for the LC than WP... 19:36:45 oerjan: 19:36:45 myFoldl f z xs = foldr step id xs z 19:36:45 where step x g a = g (f a x) 19:36:51 thanks RWH, that was so real-world of you :P 19:39:45 elliott, what do you seek to do? 19:40:15 Phantom_Hoover: I'm playing with this data encoding to figure out if it's a good representation of data. 19:40:30 Phantom_Hoover: The Reduceron, for instance, represents data as functions, and doesn't use this encoding AFAIK. 19:40:50 And they have notes writing about how their automatic CPU-level inlining optimisations and the like help inline data structures right into the code so that stuff is efficient. 19:40:57 I'm wondering if this foldl expands to the "efficient" implementation. 19:41:53 I get this steadily growing feeling that a Lazy K implementation in Haskell would be a good idea... 19:42:24 Ugh, I made a mistake. 19:42:30 Phantom_Hoover: Enjoy your possible space leak. :p 19:42:34 Phantom_Hoover: But yeah, it would make things easier. 19:42:52 elliott, it can't be worse than the one in the existing (C++) implementation. 19:42:58 Indeed. 19:43:07 Phantom_Hoover: Lazy K is kinda rubbish, though; it's SKI calculus plus gimmick. :p 19:43:42 elliott, well, it's SKI calculus + normal functional IO mechanism. 19:44:02 Phantom_Hoover: Plus syntax gimmick. 19:46:07 I still ponder the sanity of someone who thinks "SKI calculus implementation? C++ is the perfect language!". 19:50:18 foldl fl zl {cons xv xsv} = (\xq gq aq -> gq (fl aq xq)) xv (xsv (\xi -> xi) (\xq gq aq -> gq (fl aq xq))) zl 19:50:19 this is going well 19:51:38 The worst part is that you cannot pronounce any of those names. 19:52:14 Phantom_Hoover: I've renamed them to disambiguate :P 19:53:09 Phantom_Hoover: What I need is a program to let me do valid manipulations on lambda expressions manually, handling alpha conversion etc. itself. 19:53:18 So I can simplify these things step by step without making stupid mistakes. 19:53:44 elliott, you mean handling code as code rather than text? 19:54:48 Yes. 19:55:06 YES! 19:55:10 Simplified 19:55:11 foldl fl zl xsl = foldr (\xq gq aq -> gq (fl aq xq)) (\xi -> xi) xsl zl 19:55:11 to 19:55:13 foldl f z {nil} = z 19:55:13 foldl f z {cons x xs} = foldl f (f z x) xs 19:55:42 What I'm saying is: The right-fold data structure representation supports foldl perfectly well. 19:55:46 (With a sufficiently smart CPU :P) 20:00:42 Phantom_Hoover: I am not sure how this works with mutually-recursive data types and the like :( 20:01:59 Phantom_Hoover: I guess I'll just go with the induction schemes. 20:03:28 "TIL That Linus Torvalds also created Git, so much cooler now" 20:03:31 Fuck you /r/programming. 20:03:34 I'm going to Slashdot. 20:05:38 elliott, zuh? 20:06:19 Phantom_Hoover: That's on /r/programming's front page. 20:06:31 It has finally ceased to be worthwhile even in the slightest. 20:07:47 elliott, "What do Java developers think of Scala?" I sense the invisible hand of Sgeo! 20:08:21 I remember when git was low-level and you had to use cogito to get anything done. 20:12:47 You're OLD 20:13:11 Phantom_Hoover: Dude, it was 2006 :P 20:13:32 OLD 20:13:52 Back then I could write Hello World in Pascal and that was IT! 20:18:02 Tree_rec = 20:18:02 fun (T : Type) (P : Tree T -> Set) => Tree_rect T P 20:18:02 : forall (T : Type) (P : Tree T -> Set), 20:18:02 (forall t : T, P (Leaf T t)) -> 20:18:02 (forall t : Tree T, 20:20:45 Coqing, then? 20:21:11 Phantom_Hoover: No, I was just trying to get a tree's recursive induction scheme. 20:21:16 Since Coq is :oohdependent:, it hasn't helped much. 20:22:14 Oh, the whole rec and rect thing. 20:24:03 Leaf x f g = f x 20:24:03 Branch x y f g = g (x f g) (y f g) 20:24:05 beautiful 20:24:56 mapTree f t = foldTree f Branch 20:25:06 Wundervoll! 20:25:22 erm actaully 20:25:23 mapTree f t = foldTree f Branch t 20:25:30 *actually 20:25:50 oh, wait 20:25:54 mapTree f t = foldTree (Leaf . f) Branch t 20:26:48 mapTree f {Leaf x} = Leaf (f x) 20:26:49 mapTree f {Branch x y} = Branch (mapTree f x) (mapTree f y) 20:26:50 mission accomplished 20:31:11 map f {nil} = nil 20:31:11 map f {cons x xs} = cons (f x) (map f xs) 20:31:16 Phantom_Hoover: these things really expand properly! 20:31:18 this is awesome 20:40:39 Phantom_Hoover: Have you looked at the Reduceron? 20:40:43 It may restore your faith in electrons. 20:40:48 Phantom_Hoover: http://www.cs.york.ac.uk/fp/reduceron/ 20:40:54 The memos are great. 20:41:10 Phantom_Hoover: tl;dr purely functional, lazy graph rewriting on an FPGA. 20:41:21 IO? 20:41:29 electrons, traitorous little schemers 20:41:31 Phantom_Hoover: Yes, it does have IO of some kind. 20:41:34 Well, it has O. Dunno about I. 20:41:43 It's irrelevant though, just gawp at the amazingness and read the lovely memos. 20:54:42 Phantom_Hoover: Oops, I just realised my tree structure was (Leaf X | Branch Tree Tree), which is rather useless. 20:54:54 It should be (Leaf | Branch X Tree Tree). 20:59:18 mapTree f {Leaf} = Leaf 20:59:18 mapTree f {Branch x t1 t2} = Branch (f x) (mapTree f t1) (mapTree f t2) 20:59:20 w00tz. 21:05:35 elliott, idea: redstone message bus (think CAN) 21:05:52 elliott, doable or not? 21:06:02 -!- hagb4rd has joined. 21:06:08 well presumably doable considering the CPU 21:06:13 but... feasible? 21:06:22 hi@all 21:06:37 brb 21:07:54 Vorpal: Maybe. 21:07:59 HackEgo: hi. 21:08:29 `addquote i didn't like jquery, until i decided to use it because it made development faster. now i can't go back to women... 21:08:47 241) i didn't like jquery, until i decided to use it because it made development faster. now i can't go back to women... 21:10:37 hagb4rd: "hi@all" isn't likely to elicit much of a reaction, except for elliott mistabbing you :P 21:10:59 241) i didn't like jquery, until i decided to use it because it made development faster. now i can't go back to women... 21:10:59 wat 21:11:10 `pastequotes 21:11:13 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.28706 21:11:20 Gregor: I can't believe my new quote system isn't 17x as efficient as the old one :P 21:11:27 Your bot spends SO MUCH TIME doing ABSOLUTELY NOTHING OF VALUE X-D 21:12:23 231) Wow, that [ ! "$1" ] actually works. 21:12:26 Why is that even in the database. 21:12:28 `delquote 231 21:12:41 *poof* 21:14:48 `addquote ONLY GOOD QUOTES PLEASE! AND NO FAKE ONES EITHER! 21:14:49 241) ONLY GOOD QUOTES PLEASE! AND NO FAKE ONES EITHER! 21:15:07 HOLY CRAP MY PARENTS ARE WATCHING SELTZER AND FRIEDBERG AND LAUGHING I'M GOING TO UNIVERSITY NOW AND NEVER COMING BACK 21:15:32 `addquote IN AN ALTERNATE UNIVERSE THAT IS THIS ONE: The mother of my children is a goat! 21:15:44 Phantom_Hoover: ;__; 21:16:49 elliott, AAAAAAAAAAAA ALL MY GENES ARE THEIRS AAAAAAAAAAAAAAAAAAAAAAAA 21:17:25 I think I need a fuse-hg. 21:17:31 Phantom_Hoover: Don't worry! It is theoretically possible that every single gene you have mutated! 21:17:37 You could share NO genes with them! 21:17:40 SCIENCE 21:17:41 elliott, yesyesyesyesyesyes 21:17:41 hg clone-ing a large repository is (sometimes) quite slow >_> 21:17:47 242) IN AN ALTERNATE UNIVERSE THAT IS THIS ONE: The mother of my children is a goat! 21:17:48 Or at least, inconsistent-speed. 21:18:05 Gregor: Is "fuse-hg" meant to be something more interesting than a FUSE interface to hg? 21:21:38 Gregor: y/n? 21:22:00 `quote 129 21:22:03 129) if you claim that the universe is more than 3D the burden of proof is on you to produce a klien bottle that doesn't self intersect ^ I learned that trick from atheists 21:22:16 Ah, the good old days. 21:22:57 it's vaguely irritating that fax was an interesting cool person and an utterly insane psycho in one 21:26:43 hmph, what's foldl on a tree.. 21:27:32 elliott: i'm not sure that makes sense 21:27:37 foldl . toList 21:27:51 oerjan: me neither, but i *want* it to make sense :) 21:27:56 Deewiant: bad Deewiant *slaps* 21:28:15 -- foldlTree f z Leaf = z 21:28:15 -- foldlTree f z (Branch x t1 t2) = foldlTree (f (foldlTree f z t1) x) t2 21:28:16 It typically is that 21:28:18 oerjan: i think that *sort* of works 21:28:28 elliott: Yes 21:28:32 i mean a tree is basically a way to correct for a list's biased direction-ness... 21:28:39 so really there's foldlTreeLeft and foldlTreeRight 21:28:41 if you get my meaning 21:28:47 where you just swap t1 and t2 there 21:28:51 Gregor: hm? were you saying yes to my definition? 21:29:28 note that for a list, a foldl is equivalent to a foldr of the reversed list 21:29:39 elliott: To fuse-hg :P 21:30:10 however if you reverse/mirror a tree, you still use the same fold 21:30:12 Gregor: What would it be, then? (Suggest rename to hg-fuse, for consistency.) 21:30:13 elliott: Basically, I want to be able to fuse-mount a particular revision, then when I unmount it commits a new revision with my changes. 21:30:21 (with tweaked parameters) 21:30:22 oerjan: right. 21:30:27 Gregor: Oh, so "no" then. 21:30:42 Gregor: I was saying: is it more interesting than FUSE? As in: did you mean "fuse" the verb? 21:30:46 As in fuse two hg repositories together in some way? 21:30:48 That would be interesting. 21:30:54 Oh :P 21:32:32 oerjan: give me a tree operation other than fold and map, then :P 21:32:46 elliott: monad operations! 21:32:47 to write in terms of foldr and expand back 21:32:55 oerjan: oh gawd -- what are they on trees? 21:33:26 well return x is just Branch x Leaf Leaf i think 21:33:52 oerjan: I'm doing this because I'm fairly sure that representing structures as their right fold (i.e. their induction-recursion combinator) is the best representation in LC; it's easy to convert pattern matching into it, and when inlining and expanding functions defined with the combinators, they tend to unroll to the obvious, efficient "direct" implementation 21:37:29 actually i'm not sure about monad operations on trees when the x'es are embedded straight into Branch rather than Leaf 21:38:30 oerjan: eh? (Leaf X | Branch Tree Tree) you mean as the alternative? 21:38:33 what should join (Branch (Branch x t1 t2) t3 t4) be 21:38:37 I had that at first, but then realised it doesn't model actual trees 21:38:39 or do you mean 21:38:44 (Leaf X | Branch X Tree Tree)? 21:39:03 the former has an obvious monad instance, at least 21:39:22 the latter may not actually help in that respect 21:39:37 Gyaaah, where's pikhq when you need him and his multimedia nerdery. 21:41:08 Phantom_Hoover: I have some of it. 21:41:16 oerjan: erm but how do you model an "actual" tree with the former? 21:41:24 * Phantom_Hoover just goes for the torrent with the most peers. 21:42:31 elliott: oh forget that 21:42:42 oerjan: what :D 21:42:47 oerjan: but then it's hardly a tree structure, is it? 21:42:50 it doesn't work 21:42:51 oerjan: oh or do you mean, forget what i said 21:42:54 Phantom_Hoover: no, I can help 21:42:55 yeah 21:43:05 Phantom_Hoover: pretend i'm pikhq, i'm as much an encoding nerd as he is :) 21:43:06 well, close 21:43:26 elliott is in fact pikhq converted to big5 21:43:29 elliott, http://torrentz.eu/search?f=futurama+season+3 21:43:36 or wait, that's the wrong way around 21:43:40 (obviously) 21:43:52 Pick one or find a better one. 21:44:01 elliott, I have an idea how to make that "clear" one work. Involves one SR-latch and two buttons 21:44:21 Phantom_Hoover: http://torrentz.com/7f97cf9ea5ff10a01b56789c85ce32e3c8a24674 This is the best one out of the first few. 21:44:33 Phantom_Hoover: 11 seeders, 10 peers. Should go quickly enough. 21:45:00 Phantom_Hoover: There is a preferable 8 gig Matroska rip, but it is seederless. 21:45:04 So go with that one. 21:45:31 elliott, define "quickly enough". 21:45:39 And I shall compare it with actual results. 21:45:42 Phantom_Hoover: You can't tell without downloading. 21:46:03 Phantom_Hoover: It depends on your connection, everyone else's connection, general swarm health... Start the torrent, add the trackers from torrentz, and give it some minutes to get going. 21:46:08 elliott, I mean in the sense of "what would be the kind of order of magnitude you'd expect"? 21:46:28 Phantom_Hoover: A few hours if stuff is good. 21:46:49 1 peer. 21:46:54 Stuff is not good. 21:47:15 1 peer *listed*, not connected. 21:47:24 Phantom_Hoover: Did you add the trackers? 21:47:30 Did you *wait* because this stuff takes time to propagate? 21:47:32 Yep. 21:47:46 There were 4, and one of them was already there. 21:47:46 Phantom_Hoover: No you didn't. 21:47:48 Wait a few minutes. 21:47:52 Phantom_Hoover: Wait. 21:47:57 Phantom_Hoover: You did add them with a blank line in between, yes? 21:48:04 Yes. 21:48:18 Phantom_Hoover: Give it some minutes. 21:48:38 And I am looking at the tracker list right now and two of them have 1 peer listed each. 21:49:30 Phantom_Hoover: OK, I realise you don't get how BitTorrent works, but stop looking at it and go back in five minutes. 21:49:32 Seriously. 21:50:03 I take your point. It's up to 29. 21:52:43 THERE IS EGG ON MY FACE 21:53:10 oerjan: so wait what's the preferable tree structure again :D 21:53:17 YOU NEED TO IMPROVE YOUR COOKING SKILLS 21:53:45 elliott: nothing wrong with your original, is there 21:53:56 oerjan: you mean Tree = Leaf | Branch X Tree Tree? 21:54:01 yes 21:54:05 oerjan: right, so what's join :D 21:54:24 I DON'T KNOW 21:54:36 if it even is a monad 21:54:51 oerjan: now i need to find the monad laws as phrased for join :p 21:54:57 * oerjan googles 21:55:11 oerjan: now i need a winning lottery ticket 21:55:16 (if it worked once, it's worth trying again!) 21:58:03 oerjan: join . return == id 21:58:04 join . fmap return == id 21:58:04 join . join == join . fmap join 21:58:20 oerjan: wait do you need fmap to do a monad? doesn't join/return suffice 21:59:00 elliott, you need it in some capacity, since >>= can't be expressed in terms of join and return alone. 21:59:10 hm indeed 21:59:26 ok well I have treeMap so that's sorted 21:59:37 oerjan: ok so obviously "join (Branch x Leaf Leaf) = x" :) 22:00:32 (>>= f) = join (fmap f), yes? 22:01:30 I wish cpressey was here so I could torment him with both monads AND pointfree style! 22:02:32 Erm, s/!/./ 22:02:52 What an overbearingly gregarious lapse. 22:03:18 elliott: the examples i find for tree monad all seem to assume something equivalent to the Leaf x | Branch (Tree x) (Tree x) version. although i found this one comment: http://www.rhinocerus.net/forum/lang-haskell/383058-good-old-tree-monad.html#post1814212 22:03:45 oerjan: well I mean I have no objection to "Leaf x | Branch (Tree x) (Tree x)" I just don't see how it's a *tree* 22:03:55 as in when someone says "oh yeah i solved this problem using a TREE", i can't imagine them using that 22:05:15 Wait, Tree is a monad now? 22:06:14 Phantom_Hoover: seemingly 22:06:30 oerjan: HA! 22:06:32 -!- Sasha has quit (Ping timeout: 245 seconds). 22:06:40 How are bind and return done? 22:06:40 oerjan: Initially, I thought this was going to be about even plainer binary 22:06:40 trees, like this: 22:06:40 data Tree a = Branch (Tree a) (Tree a) | Leaf a 22:06:40 -- 22:06:40 Simon Richard Clarkstone: 22:06:45 oerjan: = our SimonRC 22:06:50 you can combine it though, Tree a b = Leaf b | Branch a (Tree a b) (Tree a b), then Tree a is still a monad 22:06:52 lesson: #esoteric is unable to avoid itself 22:06:57 you can combine it though, Tree a b = Leaf b | Branch a (Tree a b) (Tree a b), then Tree a is still a monad 22:06:59 that's ugly though :) 22:07:00 Well, I assume return = Leaf. 22:07:20 elliott: um clarkstone doesn't ring a bell 22:07:30 oerjan: Simon Richard Clarkstone = SimonRC 22:07:33 -!- Sasha has joined. 22:07:40 /whois if you want to check (also note present in #haskell too) 22:07:43 oh /whois agrees 22:07:45 also i remember his sig :) 22:07:51 oerjan: so would you recommend I just go for the ultra-plain binary tree route for the sake of algorithmic purity :) 22:07:52 * [SimonRC] (~sc@fof.durge.org): Simon Richard Clarkstone 22:08:10 weird, i thought his surname was something different 22:10:34 Phantom_Hoover: for join, whenever you have t :: Tree a (Tree a b), you can conceptually get a Tree a b from that by replacing all Leaf x with x 22:11:00 (at the outer level) 22:11:11 oerjan, what's the structure of this tree? 22:11:28 the combined one above 22:11:55 oerjan: wait since when does Tree have two type parameters 22:12:09 elliott: in the combined version it does 22:12:23 Right. 22:12:23 oerjan: we're doing the (Leaf X | Branch Tree Tree) version now, I've decided :P 22:12:25 for simplicity 22:12:27 you allow different types for values in branches and in leaves 22:12:38 elliott: ok in that case just ignore the a's 22:14:32 so hm 22:14:37 tree :: Tree (Tree a) -> Tree a 22:14:42 oerjan: oh that's rather easy then isn't it 22:14:46 oerjan: we just want to s/Leaf x/x/ 22:14:53 no? 22:15:02 join (Leaf x) = x; join (Branch t1 t2) = Branch (join t1) (join t2) 22:15:37 yep 22:15:47 oerjan: and thus joinTree = foldTree Branch id 22:15:51 Incidentally, I found out why Coq files have a .v suffix: it's short for "vernacular". 22:16:16 Phantom_Hoover: Insert lewd reference to Coq's name and word beginning with V. 22:16:24 Insert me being swatted by oerjan. 22:16:33 * oerjan obliges -----### 22:17:14 imagine if this subreddit actually were highly active http://www.reddit.com/r/correctionsdept/ 22:17:34 oerjan: "there doesn't seem to be anything here" - ha, ha, ha 22:18:00 hm so wait how do you do bind in terms of fmap and join? 22:18:04 it's uh 22:18:10 x >>= f = join (fmap f x) 22:18:11 right? 22:18:16 indeed 22:18:32 it's no fair to type my lines before me! 22:19:32 (btw it was linked from http://www.reddit.com/r/technology/comments/ek22q/reddit_now_creates_the_news_the_ciapsyteknet/) 22:22:36 elliott, oerjan, I said that about 15 minutes before either of you. 22:23:26 Indeed, (>>=) = flip $ join . fmap 22:23:28 Phantom_Hoover: well your time-traveling ways aren't fair either! 22:24:23 Phantom_Hoover: um no i don't think that's right 22:24:42 oerjan, oh? 22:24:46 progress so far simplifying bind: 22:24:47 bindTree {Leaf v} f = f v 22:24:47 bindTree {Branch t1 t2} f = Branch (((mapTree f t1) (\x -> x) Branch)) (((mapTree f t2) (\x -> x) Branch)) 22:25:03 oerjan, operator precedence or...? 22:25:41 I wish we still had lambdabot... 22:25:45 (>>=) = flip $ (join .) . fmap 22:26:44 you were trying to use . with a two-argument function 22:26:44 oerjan: go ask for lambdabot again :D 22:26:50 Phantom_Hoover: *not* you, you're not nice and persuasive 22:26:55 elliott: i didn't do it the first time 22:27:03 bind = (join .) . flip fmap 22:27:03 oerjan: which is why you're the best person to do it now! 22:27:08 oerjan: nobody's sick of you yet 22:27:39 I doubt anyone remembers me from last time I asked... 22:27:53 Phantom_Hoover: Yes, but when you asked, it disappeared soon after. 22:28:00 When I (IIRC) asked gwern it didn't. 22:28:08 What I'm sayin' is: you're not sweet enough :P 22:28:18 argh 22:28:42 oerjan: just use puppy dog eyes 22:28:43 8.8 22:29:42 elliott: it probably disappears whenever lambdabot quits, regardless. sheesh. 22:30:05 oerjan: it didn't last time, iirc it was added to the list :) i may be wrong though 22:30:22 oerjan: anyway go ask! you can prolly use your haskell report credentials to make ridiculous demands or sth 22:30:25 bindTree {Leaf v} f = f v 22:30:25 bindTree {Branch t1 t2} f = Branch (bindTree t1 f) (bindTree t2 f) 22:30:26 elliott, how's fmap defined for Tree? 22:30:26 YES 22:30:28 if it was added to the list why did it disappear again? 22:30:28 IT FINALLY WORKS 22:30:38 Phantom_Hoover: It's just map. 22:30:42 mapTree f {Leaf x} = Leaf (f x) 22:30:42 mapTree f {Branch t1 t2} = Branch (mapTree f t1) (mapTree f t2) 22:30:43 or 22:30:45 mapTree f t = foldTree Branch (Leaf . f) 22:30:49 oerjan: who knows? I think it changed servers at one point or something 22:30:54 Oh, just map Leaf x => Leaf (f x). 22:30:56 oerjan: Lemmih is the current guy-to-bug. 22:33:05 http://sprunge.us/UiAY here's my working out of all of this 22:33:10 :: precedes a block that's equivalent 22:33:56 Dear god what is that at foldl aaaaa 22:34:30 foldl = xqgqaqgqflaqxqzl 22:34:32 Phantom_Hoover: Read it like this: 22:34:47 foldl f z xs = foldr (\x g a -> g (f a x)) (\x -> x) xs z 22:34:51 olsner: fthagn! 22:34:55 The suffixes on the variables were added because I ran into alpha-renaming issues. 22:35:13 This is why I need a manual-but-automated rewriter tool. :p 22:37:50 Would anyone like a copy of my GLORIOUS EYE-CURING GNOME THEME? 22:39:23 Wait, Coq curries things, doesn't it? 22:40:15 chicken and curry 22:44:29 Phantom_Hoover: Generally, yes. 22:45:21 My tormentor was in fact the byzantine implicit argument system masquerading in the garb of currying oddities. 22:45:54 * elliott notes http://www.cs.york.ac.uk/fp/reduceron/memos/Memo13.txt for reading in a minute 22:46:05 Phantom_Hoover: The implicit argument system is nicer than Agda's, at least. 22:46:12 Phantom_Hoover: Would you like my WONDERFUL GNOME THEME? 22:46:28 WHY IS IT SO "£$%"£$%ING *HARD* TO MAKE ID A FUNCTION? 22:46:32 PLEASE EXPLAIN. 22:46:32 What? 22:46:51 Phantom_Hoover: Definition id x := x. 22:46:59 Wait, no. 22:47:05 Phantom_Hoover: Definition id {A} (x : A) := x. 22:47:13 Anything wrong with that? 22:47:14 elliott, YOU'D THINK IT'D BE THAT SIMPLE BUT NOOOOO 22:47:20 Coq < Definition id {A} (x : A) := x. 22:47:20 id is defined 22:47:22 Phantom_Hoover: Yes it is. 22:47:27 You're doing it wrong. 22:47:29 YES THERE BLOODY WELL IS 22:47:36 Phantom_Hoover: What? 22:47:57 [[Case expressions can be removed by defining data constructors as 22:47:58 functions and transforming case expressions to function applications.]] 22:48:04 elliott, fmap (A B : Set) (f : A -> B). 22:48:10 hey they stole Church's and Mogensen's and Scott's and my idea :) 22:48:15 Phantom_Hoover: And? How is id not a function? 22:48:35 fmap [elided or not actually there depending on what's set] id is a type error. 22:48:51 Don't ask me why because I don't know. 22:49:03 Phantom_Hoover: OK, please give me the full definition of fmap. 22:49:09 id has type forall A : Type, A -> A. 22:49:13 Phantom_Hoover: OK, please give me the full definition of fmap. 22:49:28 NO BECAUSE IT IS EMBARRASSINGLY AWFUL 22:49:36 Phantom_Hoover: OK, please give me the full definition of fmap. 22:49:44 I have done monads in Coq before. 22:50:00 Fixpoint fmap (A B : Set) (f : A -> B) (t : tree A) : tree B := [elided]. 22:50:21 Phantom_Hoover: Definition of tree, please. 22:50:25 Actually, nevermind. 22:50:27 I can just make it an axiom. 22:51:57 Essentially, I'm told that fmap id is an error as id : ID rather than * -> *. 22:52:16 Phantom_Hoover: Yes, because the values of A and B are not clear. 22:52:18 Where ID = forall A : Type, A -> A. 22:52:26 Phantom_Hoover: You might want to try using {A B : Set} in fmap. 22:52:38 Failing that... just give A as a parameter, and forall A in the scope you're in. 22:52:41 elliott, just tried that. 22:52:45 Still an error. 22:52:47 Failing that... just give A as a parameter, and forall A in the scope you're in. 22:52:49 elliott, tried that. 22:52:52 Still an error. 22:53:40 Coq < Axiom tree : Set -> Set. 22:53:40 tree is assumed 22:53:40 Coq < Axiom fmap : forall (A B : Set) (f : A -> B) (t : tree A), tree B. 22:53:40 fmap is assumed 22:53:40 Coq < Definition id {A} (x : A) := x. 22:53:48 fmap_id 22:53:50 : forall A : Set, tree A -> tree A 22:53:52 Phantom_Hoover: You did something wrong, then. 22:54:11 Right, so I have to actually *define my own id* because Coq's definition is idiotic? 22:54:30 Phantom_Hoover: Nope: 22:54:41 elliott, well, you did. 22:54:46 Phantom_Hoover: I forgot Coq has its own. 22:54:56 elliott, then try it with that. 22:55:16 Certainly. 22:55:23 -!- zzo38 has joined. 22:55:33 Coq < Definition fmap_id (A : Set) (t : tree A) : tree A := fmap A A (id (A:=A)) t. 22:55:33 fmap_id is defined 22:55:42 Phantom_Hoover: Was that so hard? 22:55:51 If an implicit parameter can't be inferred, just specify it with (paramname:=val). 22:56:12 How I found out what name to use: 22:56:16 Coq < Check id. 22:56:16 id 22:56:16 : ID 22:56:16 Coq < Print ID. 22:56:16 ID = forall A : Type, A -> A 22:57:13 Exactly what I did. 22:57:31 Phantom_Hoover: I refuse to believe it discriminates against you and refuses to execute the same code that works for me. 22:57:33 You did something wrong. 22:57:49 oerjan: I've managed to convince myself that the only good representation of data as lambda-calculus functions is with their induction-recursion right folds. Yay. 22:58:03 elliott, well, sans the (A := A) which is the silly part I couldn't remember. 22:58:06 "also, for future reference, spambots, makes no sense as an XML-style tag in any markup system I know..." Apparently someone typed that in a spam message in esolang wiki? 22:58:16 Phantom_Hoover: The silly part? That's the important part. 22:58:34 Phantom_Hoover: When you say "fmap A A id t", it can't infer what the value of A is in id's type, (forall A, A -> A). 22:58:50 Phantom_Hoover: You can't say (id A), obviously, because we can easily infer that A:=Set and thus id is Set -> Set and thus (id A) = A. 22:59:02 Phantom_Hoover: The reliable way to specify implicit type parameters is with (name:=val). 22:59:13 Just because the name in id's type and the name in your code happen to coincide doesn't make it silly. 22:59:26 It could be (A:=WhatARandomNameToGiveASet). 22:59:50 elliott, that is not my problem; my problem is "why make the parameter implicit if you'll have to specify it explicitly anyway". 23:00:18 Phantom_Hoover: Because in all the /other/ cases, it works fine. 23:00:37 Implicit parameters are hugely convenient; the type inferrer just can't manage this one case; once you see the error and know what to do, it's trivial to fix. 23:00:43 elliott, you mean those in which id is not being passed to other functions? 23:01:02 Phantom_Hoover: No, you can pass id to other functions easily; just not to functions you're using polymorphically. 23:01:14 (Or some condition roughly like that.) 23:01:22 Do you think it is somehow possible to do some special things in C by a external program that looks at the error messages emitted by the compiler? 23:01:29 It's a compromise solution, sure; but then so is type inference, there's always going to be cases it can't handle. 23:05:56 So that you can insert compile-time error traps into the program, and then in case of specific errors, modify the program and resubmit it to the compiler to try again. 23:06:16 zzo38: That seems... interesting. 23:06:19 An automatic bug-fixer? :p 23:06:23 Phantom_Hoover: Would you like my GNOME THEME?!?!?1i19037248957yj 23:06:59 elliott, does it shrilly scream about type errors constantly? 23:07:56 Phantom_Hoover: NOPE! That's the best feature! 23:08:02 elliott: No, not quite an automatic bug-fixer. You would still have to enter manually what it changes in case of what error, so you might use it to change things in case something doesn't fit due to machine word size, or to allow "x.qqq" to be replaced by a macro if "x" is not a structure, and so on. 23:08:08 Then I shall have it! 23:08:14 Phantom_Hoover: BTW, I often find that it's actually easier to write functions with tactics first. 23:08:17 -!- pikhq has joined. 23:08:29 Every video encoder sucks. 23:08:38 X-D 23:08:49 Phantom_Hoover: Defining functions like that is a Bad Idea, but you can do it -- just end Definition with a dot. And you can even do some fixed-point stuff. Just remember to Show the code at the end and replace the tactics with it. 23:08:57 I cannot figure out *any* way to properly encode mixed framerate video. 23:09:37 Handbrake almost does it, (Windows-only) Avisynth can be hacked into doing it, x264's CLI can do it if you can somehow get a timestamp file for it, and nothing else even *makes the attempt*. 23:10:35 Phantom_Hoover: http://filebin.ca/qkmtx/Kimono.zip 23:10:44 If I could perhaps write a timestamp-generating inverse telecine filter + deinterlacer, I could just barely get it going right. 23:10:47 Phantom_Hoover: Install by selecting the zip in Appearance → Install... 23:11:02 Phantom_Hoover: Fonts to set: Application font = Droid Sans, Document font = Sans, 23:11:05 Desktop font = Droid Sand 23:11:14 *Sans; Window title font = Droid Sans Bold 23:11:17 Fixed width font = Droid Sans Mono 23:11:21 All 10 except Window title, which should be 11. 23:11:35 And set your DPI write in details, too. (http://members.ping.de/~sven/dpi.html to calculate) 23:11:43 Well, okay, so the DPI thing is optional. 23:11:45 But the fonts aren't. :p 23:12:08 Is Droid Sans preinstalled? 23:12:18 Oh, and the .deb for the Droid fonts: http://ubuntu.mirrors.pair.com/archive//pool/universe/t/ttf-droid/ttf-droid_1.00~b112+dfsg+1-0ubuntu1_all.deb 23:12:25 Phantom_Hoover: http://ubuntu.mirrors.pair.com/archive//pool/universe/t/ttf-droid/ttf-droid_1.00~b112+dfsg+1-0ubuntu1_all.deb 23:12:34 Phantom_Hoover: wget it and dpkg -i it. 23:12:49 Oh, and I apologise to pikhq for making a theme that isn't Grey Mist. 23:12:50 So. ATM I am encoding with a gigantic pipeline because I've gotten fed up with the limitations of all the tools out there. ALL OF THEM. 23:13:01 elliott: Screenshot? 23:13:37 Or possibly if you suppress some error messages, even. 23:13:45 pikhq: Sure. 23:14:12 elliott, erm, Appearance expects something called a theme file and complains about the zip. 23:14:21 Phantom_Hoover: Oh. 23:14:25 Phantom_Hoover: I'll reupload in a second. 23:14:26 pikhq: http://imgur.com/GIKWc.png (Phantom_Hoover too) 23:14:33 pikhq: (If you think the fonts are huge, consider that my display is 120 ppi.) 23:14:59 Is that Bad or Good? 23:15:16 It's Good, but it means fonts will look huge for people on less Good displays. :p 23:15:23 (i.e. desktop displays or not-as-small laptops) 23:15:28 Phantom_Hoover: Still want it after seeing THE HIDEOUS SCREENSHOT? 23:15:50 I must say my enthusiasm is dimmed somewhat. 23:16:01 YOUR LOSS 23:16:12 I mean, I actually *like* Mist. 23:16:15 elliott: Insufficiently Grey. And insufficiently Mist. 23:16:17 Now pikhq will yell at me for the fact that it has a gradient. 23:16:20 SEE I WAS RIGHT 23:17:23 pikhq: Looking at it, I guess it actually just shows that, deep down, I still like Bluecurve. :P 23:18:29 Is there an easy way of expressing function composition in Coq? 23:19:16 I think another use of getting these message from compiler to automatically change things, might also include linker errors, if needed. 23:19:31 Phantom_Hoover: http://coq.inria.fr/library/Coq.Program.Basics.html 23:19:34 Notation " g ∘ f " := (compose g f) 23:19:35 (at level 40, left associativity) : program_scope. 23:19:49 Phantom_Hoover: You may want to define your own notation for it that is less Unicodey. 23:20:35 Funnily enough, compose is not a defined object for me. 23:21:03 Phantom_Hoover: "Library Coq.Program.Basics" 23:21:07 Phantom_Hoover: Require Import Coq.Program.Basics. 23:21:31 Phantom_Hoover: (Or Require Import Program.Basics or Require Import Basics.) 23:21:37 Electric terminator, but anyway... 23:21:56 Phantom_Hoover: What about it? 23:22:11 Phantom_Hoover: You realise you can cause statements to become un-evaluated? And also unevaluate everything beyond a certain point in the document? 23:22:21 Which, of course, is what you should do all the time when correcting things... 23:22:33 C-c C-u to unevaluate the previous statement, I think ... but I've forgotten. 23:22:45 elliott, yes, but typing "." evaluates. 23:23:03 Phantom_Hoover: Yes; and? 23:23:32 eviluation 23:24:41 elliott, so Require Import Foo.Bar. will evaluate as soon as I type the "." after Foo. 23:24:53 Phantom_Hoover: And? 23:25:13 Hey, it takes care of that. 23:25:51 Phantom_Hoover: Ohh, I see what you mean. 23:25:52 Yes, it does. 23:26:00 Proof General is godly. 23:26:21 "# See the Proof General Eclipse wiki for screenshots of Proof General in Eclipse." 23:26:22 WHY DOES THAT EXIST 23:27:52 XD. 23:31:02 Phantom_Hoover: What are you writing in Coq? 23:31:49 elliott, incompetence personified. 23:31:58 Phantom_Hoover: Which is intended to be? 23:32:37 Something... monady... 23:33:05 Phantom_Hoover: Oh, sprunge your code. :p 23:33:37 -!- MigoMipo has quit (Ping timeout: 260 seconds). 23:34:06 Even better: I'll EXTRACT it! 23:35:25 Phantom_Hoover: I'd prefer to laugh at your Coq. 23:35:30 Considering extraction removes all the interesting dependency. 23:35:37 the monad of incompetence 23:35:58 finally a good use for strict encapsulation 23:36:19 NB: My method for proving things in Coq is "type simpl. Type rewrite and some relevant rule. Type unfold and a function name. Is proof finished? Repeat otherwise." 23:36:37 With "type intros. Type induction and a variable name." stuck in for good measure. 23:36:46 And the occasional reflexivity. 23:37:05 I know 6 tactics and that is enough! 23:40:16 Phantom_Hoover: If rewrite is your most common tactic, ur doin it rong. 23:40:28 Deeply. 23:40:32 Phantom_Hoover: BTW, Proof General can list all the tactics in the system (there's fewer than you think). 23:40:37 Just TAB on that and pick a likely one. :p 23:40:47 I don't pretend to know how to do it properly. 23:41:41 Phantom_Hoover: I'm just trying to help. 23:44:28 But seriously; I've never had occasion to do anything interesting enough to invest time into properly learning Coq. 23:46:39 Phantom_Hoover: Do what me and fax were trying to do, replace the standard library. 23:46:54 Phantom_Hoover: (Try starting with category theory; there's a wonderful paper about embedding it into Coq, absolutely wonderful.) 23:47:02 That actually seems worthwhile. How do I sign up? 23:47:04 If you can't get the algebraic structures down, you lose. 23:47:07 Phantom_Hoover: You sign up by doing it! 23:47:14 Phantom_Hoover: Er, there's some option to Coq to tell it to forget the stdlib exists. 23:47:15 Let me find it. 23:47:26 -!- Sasha2 has joined. 23:47:33 i note that fax disappeared from the internet right after oerjan banned it 23:47:50 Phantom_Hoover: 23:47:51 (* 23:47:51 *** Local Variables: *** 23:47:51 *** coq-prog-args: ("-emacs-U" "-nois") *** 23:47:51 *** End: *** 23:47:54 ...i've seen fax on freenode since then 23:47:59 Phantom_Hoover: Put that at the end of your file... or the top, I forget. 23:48:05 oerjan: Well, okay, stopped posting to reddit. And its blog. 23:48:07 Also, I think you misunderestimate how weirdly uneven my understanding of things. 23:48:11 *is 23:48:17 Phantom_Hoover: Try the bottom. Yes, the bottom. 23:48:24 -!- Sasha has quit (Ping timeout: 240 seconds). 23:49:18 Phantom_Hoover: http://sqig.math.ist.utl.pt/pub/CarvalhoA/98-C-DiplomaThesis/maintext.ps 23:49:21 Phantom_Hoover: (One version of) the lovely paper. 23:49:45 elliott, did I mention that I don't know any category theory? 23:49:54 Phantom_Hoover: You don't really have to. :p 23:50:13 Also that I'm tired? 23:50:20 It's not even midnight... 23:50:39 Phantom_Hoover: Categories are what happens when you decide to make entire mathematical foundations objects. For instance, in the Set category, objects are sets. In the Hask category (Haskell), objects are Haskell types. 23:50:54 Phantom_Hoover: Then you get to the cat of small cats -- sorry, category of small categories -- and shit goes crazy. 23:51:02 I think oerjan can agree with the part of my explanation that involves shit going crazy. 23:51:19 Phantom_Hoover: Also morphisms and monoids and monads. 23:52:02 and topoi. or so i hear. 23:52:20 oerjan: i never got that far :D 23:52:31 not really me either 2010-12-12: 00:07:59 oerjan: can you make oklopol come back 00:10:02 Why did oklopol go? 00:12:37 Phantom_Hoover: he's just busy i think 00:13:08 his masters iirc 00:13:13 [[Little did Beethoven know, on that cold December morning in 1770, that he was about to be born. (Randall Munroe)]] 00:13:27 Was this pre- or post- the xkcdecay? 00:14:39 -!- pingveno has quit (Ping timeout: 250 seconds). 00:15:13 oerjan: erm he's doing his bachelors iirc, working on his thesis 00:15:18 he's just planning to do his masters because he's crazy :) 00:15:31 oh 00:15:32 although he probably will start doing his masters before his second year is over, i guess 00:15:47 oerjan: but he did mention having to do some last fixes on his bachelor's thesis sometime :p 00:16:10 Phantom_Hoover: post- I think but it hardly matters 00:16:12 maybe during- 00:17:07 Hmm. So he still keeps the ability to be funny, he just doesn't apply it to his webcomic? 00:22:16 Phantom_Hoover: Yes. See: Oh Dear Family Is Sick 5 Minute Comix. 00:22:21 Those were good. 00:22:32 Yes. 00:22:50 -!- pingveno has joined. 00:23:07 Although as soon as normal programming was resumed I dropped it from my webcomic list altogether. 00:23:44 he's just planning to do his masters because he's crazy :) <-- who? 00:23:51 oh? 00:23:55 oklo? 00:26:21 yes 00:26:46 http://lists.gnu.org/archive/html/gm2/2010-12/msg00009.html 00:26:48 GNU Modula-2 1.0! 00:27:39 Can we make a computer game that allows you to adjust the gravitational field strength, field eccentricity, number of deliveries per over, etc? And then possibly also more crazy things such as alien abduction (my brother suggested this). 00:28:11 Number of deliveries per... what? 00:28:30 Uh oh... 3.75Mi worth of new (<5 days) allocations from APNIC. This model now estimates IANA depletion at end of January. 00:29:01 Phantom_Hoover: Deliveries per over. 00:29:16 Zuh? 00:30:17 An over is six consecutive balls bowled by one bowler. 00:31:05 Extending up to 30 days: 11 /14s, 5 /13s, 3 /12s and a /11. That's 10.25Mi addresses (plus some <0.25Mi allocations)... 00:32:39 brb 00:33:59 Other crazy ideas include multiball mode, antigravity, sloped (or curved) ground, slowly rotating field, making the players on the team to be not people but spiders or monsters or something else, and even more possible crazy ideas..... 00:34:33 It really is bizarre how xkcd is funnier when he spends *less* time at it. 00:34:44 Ilari: ... 00:34:47 Ilari: ... 00:34:59 Ilari: Run on the bank! 00:37:15 Counted from delegated file for APNIC, 13 606 144 addresses have been allocated on 20101111 and since. 00:37:25 *assigned 00:37:53 Wow. 00:39:10 Holy crap: Of those, 8 124 928 were assigned this month. 00:39:55 So everyone's trying to get their hands on what's left of the internet? 00:41:16 Phantom_Hoover: Yes, because otherwise the Internet will be full. 00:41:33 Ilari: Okay, so we can probably expect RIR depletion to start much sooner than "late next year". 00:42:05 When IPv6 is used more often, then IPv6 won't be full. 00:42:33 What's the current IPv6 address space usage? 0.027% or so? 00:42:42 Ilari: Sounds about right. 00:45:47 Holy crap: Of those, 8 124 928 were assigned this month. <-- sooo, the end of ipv4 is moving to earlier? 00:46:20 Ilari, that much? I blame crappy allocation 00:46:30 I mean, I have a fricking /48! 00:46:38 from sixxs 00:47:01 623 553 494 712 323 IPv6 networks out of 2 305 843 009 213 693 952 (0.027%) have been allocated. current RIR pool usage is at 2.74%. 00:47:19 0.027%? That sounds ENORMOUS? Are we really using that much of ipv6? 00:47:19 Ilari, still quite a lot more of it than reasonable 00:47:32 Gregor, it *is* enormous 00:48:10 I guess with ipv6 they can ridiculously over-provision, and still have many trillions of ipv4 networks worth of free IPs :P 00:48:16 Heck, the number of network addresses allocated is about 600 trillion... 00:48:30 Ilari, whaaaaat? 00:48:41 Ilari, we *will* run out of ipv6 at this rate 00:49:06 Gregor: The smallest allocation is a /64. 00:49:39 So are we out of ipv4 yet? :P 00:49:45 A small number of gopherspaces are IPv6-only, and the ASCII Star Wars in color is only IPv6....... 00:49:56 Vorpal: There's still enough /64s to give every man, woman, child, and pet there own and have leftovers. 00:50:00 zzo38, it isn't in colour on ipv6 either.... 00:50:03 s/there/their/ 00:51:10 pikhq, yes but that doesn't help when I got a /48... 00:52:27 /48 for each person on the planet would be only /15. The present defined unicast space is a /3 (4096 times bigger). 00:52:29 Then we use hypernet next time, since hypernet uses no allocation and can therefore never be run out. 00:53:16 hypernet? 00:53:17 Does IPv6 have more port numbers? Or is it the same port numbers? 00:53:21 Heck, individual allocations to RIRs are bigger than that. 00:53:30 zzo38, that is not on ip level 00:53:34 it is transport layer 00:53:47 -!- Phantom_Hoover has quit (Quit: Leaving). 00:54:48 Vorpal: Yeah, the "standard" allocation is a /48. 00:54:50 Vorpal: Can they fix DNS to allow a hostname to be associated with a IPv6 address and a port number range together? 00:55:12 That ... would not be a fix. 00:55:22 Vorpal: And it's still enough to grant everyone one. 00:55:38 zzo38, it isn't in colour on ipv6 either.... 00:55:38 Gregor: It isn't? 00:55:39 yes it is 00:55:44 zzo38: It is technically possible for DNS to return an IPv6 address and a port number, but WHY WOULD YOU WANT TO? 00:55:45 AFAIK, The entiere present internet going IPv6-only wouldn't need enough addresses to even warrant new allocation from IANA. 00:55:56 pikhq: No I mean a range of port numbers. 00:56:08 zzo38: That said, if you really want to, you'd just need to create a new kind of DNS response and make software support it. 00:56:09 Or even a offset number. 00:56:18 Vorpal: Can they fix DNS to allow a hostname to be associated with a IPv6 address and a port number range together? 00:56:19 pikhq, is it technically possible? Wouldn't it need a new record type? 00:56:23 zzo38: That's just NAT implemented at the wrong layer. 00:56:32 For example, if you want to access SMTP on port 25, and the returned offset number is 1000 then you connect to SMTP on port 1025. 00:56:36 zzo38: That's just NAT implemented at the wrong layer. 00:56:39 Vorpal: New record types, I'm pretty sure, can just be added. 00:56:45 Question./ 00:56:46 pikhq, ah yes indeed 00:56:53 Are there any POLICIES for ipv6 allocation? 00:56:54 e.g. 00:56:57 can sixxs do whatever they want? 00:57:00 if so: WHY. 00:57:06 Yes, there are. 00:57:08 they're a provider, not an end-customer, so they shouldn't be allowed free reign 00:57:12 e.g. giving Vorpal a /48 :) 00:57:16 shouldn't be allowed unless he actually needs it 00:57:26 elliott: /48 is the standard end-user allocation, actually. 00:57:28 elliott, I would be happy with a /64 00:57:31 How much of the ipv6 range is reserved for extraterrestrial species? 00:57:53 Gregor: IPv6 is not for extraterrestrial species. You need to make IPv9 for that. 00:57:59 In my opinion, the standard allocation should be /54. 00:58:09 Of course this is not workable with the way IPv6 is defined. 00:58:12 A /64 is only enough for that end-user to have a SINGLE IPv6 network using stateless autoconfiguration. 00:58:21 pikhq: Which is a flaw in IPv6. 00:58:35 elliott: A /54 is actually entirely feasible. 00:58:35 And then there are 6 times present IPv6 unicast space reserved by IETF... 00:58:40 pikhq: Question: In 100 years, do you think IPv6 will still be almost endlessly available? 00:58:43 pikhq: Answer: No. 00:58:49 Question: Is this avoidable? 00:58:52 Answer: Yes, but nobody wants to. 00:59:21 Actually, it is handy to have some space for network number. 00:59:37 elliott: Actually, even with current allocation policies, it's entirely possible that it will be almost endlessly available. 00:59:38 Even 1024 addresses should be a lot more than enough addresses for each end-user (in most cases). 00:59:43 Otherwise you would need to sometimes "NAT" the stuff. 00:59:46 pikhq: I doubt that. 00:59:51 There's 281474976710655 /48s. 00:59:55 pikhq: Did you forget that technology accelerates? 01:00:08 pikhq: As the 100 years progress, IP allocation will go up, up, up. 01:00:12 *regular IP allocation 01:00:15 There's 281474976710655 /48s. 01:00:23 elliott, when are we due for the singularity? 01:00:30 pikhq: Indeed. /48 isn't the biggest block being handled out. 01:00:51 Vorpal: Probably 100 years+. Sign up for cryonics if you hit middle age and we still don't seem to be close. :p 01:00:58 For ISPs, /32 is pretty standard. 01:01:03 I still want to make a network simulator that will simulate IP networking between Earth and Mars :P 01:01:05 elliott, hah 01:01:06 elliott: Okay, so there is some stupid, stupid, stupid shit regarding allocations. 01:01:10 Vorpal: Who says I was joking? 01:01:17 pikhq: s/handled/handed/ 01:01:21 elliott, no, but it was still funny 01:01:55 I don't think /48 is really supposed to be any sort of standard "end-user" thing, except if you're a cery large end-user; and even so, the network part of the address is supposed to reflect the routing hierarchy, not some sort of logical "owned by X" thing. 01:02:03 elliott: For instance, the DoD does *not* fucking need a /12. 01:02:20 IPv6 workaround oddities: NAT-to-self: Perform 1:1 NAT to address itself. 01:02:28 fizzie, indeed. a /60 would be quite nice instead 01:02:33 I would think it'd be a lot more reasonable to just give customers as many individual /64s as they need networks. 01:02:36 Ilari, whaat? 01:02:51 Those are supposed to be easily renumberable anyway. 01:02:57 If you need internal hierarchy and only have /64... 01:03:04 Sorry, a /13. 01:03:17 pikhq, /13? what a strange number 01:03:22 pikhq: Why does the DoD have a /13. 01:03:41 elliott: Because GOD DAMMIT I WISH I KNEW IT MAKES NO FUCKING SENSE. 01:03:44 pikhq: Oh right because US MILITARY ONLY IMPORTANT MILITARY IN THE WORLD SO FUCKIN' BIG TO DEFEND US FROM ALL THE 0 PEOPLE ATTACKING US 01:03:56 elliott: For traceability, every bullet has its own IP, and stores all interdepartmental memos on it. 01:04:02 elliott: It's 64 times larger than *any other entity's allocation*. 01:04:11 They don't. The total marked for US is about a /18. 01:04:20 Gregor: You're not far off. 01:04:31 Gregor: No, no. They have an IP allocated for every secret they have. WikiLeaks actually just scans the space for open ports. 01:04:33 Nobody should need that many addresses, I think...... 01:04:38 Gregor: They use IPv6 addresses as a unique identifier for objects. 01:04:44 pikhq, shouldn't the RIRs get /32s or such? 01:04:46 They don't. The total marked for US is about a /18. 01:04:47 They don't. The total marked for US is about a /18. 01:04:50 pikhq seems to be ignoring this :P 01:05:06 Now the policy seems to be that RIRs get /12 at a time. 01:05:11 Anyway, IPv6 is being mismanged IMO; the policies need to be more stringent. 01:05:18 How strict are the policies that apply to places like SixXS? 01:05:31 (Evidently not *too* strict, considering some of the insane, untrustworthy shit SixXS does.) 01:06:05 Heck, all the IPv6 addresses allocated IN THE ENTIERE WORLD wouldn't even be a /14. 01:06:59 Ilari: But you don't want any sort of "internal hierarchy" that'd reflect a corporation's structure (US site, European site, etc.) to be visible in the network part, because they need to be aggregatable routing-wise. (Okay, possibly some level of internal hierarchy could be useful even for a single physical site; but I would still think also a not-necessarily-contiguous group of individual /64s would work just as well.) 01:07:10 Ilari: Therefore you can use one block for a private network (which might even include individual files on your computer), if you need a private network. 01:07:47 The Internet is crazily geography-biased. 01:07:48 I don't get it. 01:08:04 Don't they *understand* that it's irrelevant on the net? 01:08:13 adress this: did you know there are more connections in a human brain then stars in in the universe? 01:08:21 elliott: Except that it's not irrelevant, because at some point you have to route, and you have to be able to route quickly. 01:08:24 The addressing is supposed to reflect the network structure so that the routing tables don't grow too much. 01:08:49 Gregor: Sure, but it's in the core of *everything*. 01:08:52 Why is it impossible to find ARIN's list of IPv6 assignments? 01:08:57 Gregor: CCTLDs should never have been invented. 01:09:11 Gregor: Well, okay, CCTLDs are good for... governments. 01:09:14 Whoops, that's it. 01:09:15 Just try to put two computers on seperate logical networks to the same /64. 01:09:20 I can find it for each other one. 01:09:22 elliott: Also, for .tv domains! 01:09:33 Gregor: That is a reason they should not have been invented too :P 01:09:48 Ilari: What was that related to? 01:10:09 That /64 might not be enough for end-user, even small one... 01:10:17 Ilari: You seem to be ignoring the whole "a set of individual /64s" thing. 01:10:38 hagb4rd: That sounds like one of those quotable-quotes that turns out to not actually be true. 01:10:39 Heck, I can't even find which fucking *number* is the DoD's IPv6 address. 01:10:40 fizzie, like, a /63? 01:11:17 THEY POSSESS AN ACTUAL ASSIGNMENT, AND ARIN DOESN'T SHOW WHICH ONE IT IS. 01:11:22 adress this: did you know there are more connections in a human brain then stars in in the universe? 01:11:25 hagb4rd: that's false. 01:11:30 hagb4rd: that's completely and utterly false. 01:11:37 Fuck you, ARIN. 01:11:45 Unless the universe is SIGNIFICANTLY smaller than I've been told, you're off by orders of magnitude. 01:11:50 hagb4rd: Maximally 330 trillion connections in the human brain according to Wikipedia, which is way, WAY less than the number of stars in the universe. 01:11:56 hagb4rd: Where the heck did you get that info? 01:12:13 hagb4rd: Maybe "stars visible to the human eye at night". 01:12:27 Gregor: Not only was the universe created 6000 years ago, but it was created to be the solar system tiled 100x100. 01:12:32 at least i wonder how they know how many stars there are out there 01:12:36 Gregor: As such, there are exactly 10,000 stars in the universe. 01:12:36 elliott: X-D 01:12:41 hagb4rd: They just GUESS!!! 01:12:42 Vorpal: Not necessarily a contiguous set. Sure, not grouping them into a single block means it's two routing table entries, but it's still just one organization's clients. (I think the power-of-two sizes encourage over-allocating things.) 01:12:54 hagb4rd: Or, perhaps they measure all their data and extrapolate beyond that... 01:13:00 hagb4rd: One estimate said 3*10^23. 01:13:05 I'm pretty sure we've measured something CLOSE to 330 trillion stars. 01:13:07 Biggest individual IPv6 assignments from ARIN are /22s. 01:13:09 fizzie, hm 01:13:15 Doesn't take much to put a bunch of sensors up there and listen/look intently :P 01:13:29 Okay, maybe more like hundreds of thousands to hundreds of millions. 01:13:29 Wikipedia also says minimally 100 billion times 100 billion stars in the OBSERVABLE universe. 01:13:30 BUT STILL. 01:13:38 hagb4rd: See, yer wrong :P 01:13:39 Ilari: Incidentally, I have computers in different logical networks in a single /64. (Nebula's home customers get a /64 each; not sure about their corporate clients.) 01:13:45 k :) 01:13:50 Ah, Nebula... 01:14:03 elliott: Did you know that there are less stars in the entire universe than there is Love in God's discarded toenail? 01:14:20 Gregor: What is the SI unit for love? 01:14:33 Gregor: Did you know that there are fewer stars in the entire universe than there are angels that can dance on the head of a pin? 01:14:35 pikhq: The Jesus. 01:14:42 elliott: In terms of base units? 01:14:55 pikhq: 1 orgasm / minute. 01:15:03 elliott: Orgasm is not a base unit. 01:15:05 (Based on measurements of Jesus) 01:15:06 Giving only a single /64 and then doing some things wrong, one will break neighbor discovery, making things nasty. 01:15:10 pikhq: Sure it is. 01:15:15 pikhq: It's the base unit of LOVE. 01:15:23 pikhq: Photons. It's quantum. 01:15:23 pikhq: In every second you're being bombarded by trillions of Love of Jesus photons. This is in spite of the fact that only 0.0001% of them make it through the ozone layer. 01:15:25 (The ozone layer is evil btw) 01:15:32 Gregor: That all came through at once. 01:15:33 Ilari: What do they do wrong? 01:15:35 elliott: The SI base units are: meter, kilogram, second, ampere, kelvin, candela, and mole. 01:15:42 pikhq: You forgot orgasm. 01:15:44 elliott: Yeah, so did yours, my connection is all wonkulous *shrugs* 01:15:45 pikhq: And also turkey. 01:15:59 Meter, kilogram, second, ampere, kelvin, candela, mole, orgasm and turkey. 01:16:21 * pikhq sticks several thousand kg m^2/A s^3 through elliot 01:16:28 pikhq: I'm underage! 01:16:34 Don't know about them now, but I heard somebody complain they broke neighbor discovery somehow in the past. 01:16:37 pikhq, uh. A? 01:16:38 Ilari: FWIW, I did the logical segmentation of the /64 with a bridging firewall (interface-based rules), and some host-lists for services that care. 01:16:41 Vorpal: Ampere. 01:16:44 `addquote * pikhq sticks several thousand kg m^2/A s^3 through elliot pikhq: I'm underage! 01:16:46 242) * pikhq sticks several thousand kg m^2/A s^3 through elliot pikhq: I'm underage! 01:16:53 They might have; I had problems with it. 01:16:54 pikhq, yes, I thought you defined that 01:16:57 pikhq, wait no 01:16:58 duh 01:17:01 I'm tired 01:17:03 Vorpal: You may know that whole unit as the Volt. 01:17:09 pikhq, ah indeed 01:17:11 Gregor: pikhq: I hope that when they figure out how to define the kilogram independently of a chunk of metal in France or wherever, they also change it to the gram instead. :P 01:17:28 elliott: Would be nice, but that would fuck up many, many derived units. 01:17:30 Having "kg" be the base unit and specifying that, when prefixing it, you pretend it's "g" is just COLOSSALLY STUPID. 01:17:33 pikhq: Why? 01:17:35 kg would still be a kg. 01:17:46 Mkg! Megakilogram! 01:17:55 -!- Sgeo has joined. 01:18:37 I shouldn't be on here right now 01:18:38 kkg: Kilokilogram 01:18:39 elliott: Yes, but then all of a sudden you've got orders of magnitude between the named derived units and the natural expression in base units. 01:18:50 But I think I have an awesome idea for a definition of "heat" in GoL 01:19:00 pikhq: So? 01:19:07 pikhq: The universe doesn't care about small numbers. :p 01:19:08 We'll measure it in Love of Jesus photons! 01:19:08 elliott: And that makes things a Pain. 01:19:11 pikhq: Not really. 01:19:16 pikhq: Just don't use base units when they're a pain ... 01:19:35 elliott, solution: define the base unit as g. Which is defined to be 1/1000 of the weight of the prototype. 01:20:07 (Note: This is not the whole thing) XOR the current generation with the next generation 01:20:37 Blocks are completely cold, blinkers are somwhat warm, but not as hot as some chaos 01:20:44 Vorpal: Problem: the natural unit for power is the milliJoule, the natural unit for force is the milliNewton, the natural unit for resistance is the milliOhm, the natural unit for electric potential is the milliVolt, and so on and so forth. 01:20:50 That is some hot, hot chaor. 01:20:53 elliott, solution: define the base unit as g. Which is defined to be 1/1000 of the weight of the prototype. 01:20:53 ... chaos. 01:20:59 Vorpal: The prototype is *really* obsolete and work is ongoing to replace it now. 01:21:04 Vorpal: It is, after all, getting lighter. 01:21:07 elliott, I know 01:21:25 Now, take the heat for generation 1, and XOR it with the heat of generation 2 01:21:26 Vorpal: Any change to g should be done simultaneously with the change to an actual definition, and there it's easy; just divide the equation by 1000 :P 01:21:31 pikhq, yes the constant factor will be annoying 01:21:35 Similar to a second derivative 01:21:38 pikhq, solution: rename the kg to g 01:21:41 wait that is painful too 01:21:46 Vorpal: Problem: the natural unit for power is the milliJoule, the natural unit for force is the milliNewton, the natural unit for resistance is the milliOhm, the natural unit for electric potential is the milliVolt, and so on and so forth. 01:21:49 pikhq: I don't see why. 01:21:53 By that measure, blinkers are completely cold 01:21:56 pikhq: Leave the other units intact. 01:22:02 elliott, I see why easily 01:22:02 pikhq: If something says kg, keep it saying kg. 01:22:23 Arbitrary restrictions the SI definers decided to impose shouldn't stop sanity prevailing :P 01:22:29 For any pattern: keep doing it. If it ever reaches 0, it's Polynomial Heat, otherwise, it's Nonpolynomial Heat 01:22:38 elliott: Because a Joule is a m^2 kg s^-2, and so a Joule in base units would be *100* m^2 g s^-2. 01:22:49 Erm, 1000. 01:22:59 pikhq: OK. Anything wrong with that? 01:23:13 pikhq, *ouch* 01:23:13 elliott: It's a BITCH to do physics with! 01:23:21 Are there any boring things (things that stay in one play, don't deserve to be called warm) that are nonpolynomial heat? 01:23:22 elliott: Which is the only time that you even care about base units! 01:23:31 pikhq: Nobody likes physicists. 01:23:32 pikhq, any chance of renaming the kg to be g? 01:23:38 Vorpal: That's terrible since g is in use. 01:23:40 Rename the kg to... 01:23:42 the... 01:23:45 q! 01:23:46 elliott, the gram 01:23:52 the gram to the milligram 01:23:53 Vorpal: No, because g is in use. 01:23:55 and so on 01:23:57 No :P 01:24:00 Better idea: 01:24:11 Rename it to the quam. 01:24:14 Symbol: q. 01:24:19 Kiloquam. 01:24:20 kq. 01:24:22 WORST NAME EVER 01:24:27 that sounds absurd 01:24:28 Just name it "klograham", where the fact that "klo" sounds a lot like "kilo" and "graham" sounds a lot like "gram" is a coincidence. 01:24:30 Rename it to the grave, the original unit of mass in the French metric system. 01:24:38 The shortform for the klograham will be "kg" 01:24:49 pikhq, hah 01:25:07 Said unit of mass is actually about equal to 1 kilogram. 01:25:17 Gregor: No, dammit, because then we'd have to talk about kkgs :P 01:25:22 pikhq, "about"? 01:25:45 Gregor: Make it the k, and then we can measure things in kkks. 01:25:52 Vorpal: It's effectively impossible for something other than The Kilogram to be precisely equal to 1 kilogram. 01:25:56 I *knew it* 01:26:09 elliott, I knew you would make a joke about kkk.... 01:26:11 Gregor: "How heavy is that dude?!" "Oh, about 3 kkk." 01:26:17 Gregor: "Not cool, man." 01:26:21 elliott: Whoah, heavy 01:26:23 Vorpal: LA LA LA LA I CAN'T HEAR YOU 01:26:29 (the kilogram is, of course, defined as the mass of The Kilogram. Stupid.) 01:26:31 elliott, XD 01:26:38 Gregor: Yeah, kinda like your mom. Who is also, unrelatedly, a KKK member. 01:26:41 elliott, you are soooo predictable 01:26:43 Gregor: This is because she hates black people. 01:26:59 elliott: That's a good reason to be a KKK member. 01:27:02 Gregor: The best! 01:27:10 elliott: Pretty much the only, actually. 01:27:11 pikhq, so how is the grave defined? 01:27:49 Gregor: I dunno man, their robes are pretty slick. 01:28:05 Vorpal: The grave was defined as the mass of 1 cm^3 of water at the melting point of ice. 01:28:23 pikhq: That should make more sense than The Kilogram. 01:28:25 Vorpal: The pressure and the composition of the water were not defined. 01:28:35 pikhq, oh we get circular here? 01:28:37 pikhq: PRESSURE PUSHIN' DOWN ON ME 01:28:38 What? 01:28:40 Then define the pressure and composition of the water! 01:28:58 elliott, and how is pressure defined? 01:29:13 zzo38: A better definition would probably fix Avogadro's number. 01:29:34 Vorpal: http://www.youtube.com/watch?v=a01QQZyl-_I 01:29:36 It's broken? 01:29:36 Sorry, s/cm^3/dm^3/ 01:29:45 AKA 1 liter (not an SI unit). 01:30:00 `addquote zzo38: A better definition would probably fix Avogadro's number. It's broken? 01:30:01 XD 01:30:03 243) zzo38: A better definition would probably fix Avogadro's number. It's broken? 01:30:06 it's a bit sad, really, here the physicists were all ready to make the perfect measurement system. but somehow the chemist managed to get a mole in. 01:30:19 Sgeo, he meant "fix" as in "not variable" 01:30:27 oerjan: <3 01:30:32 -!- wareya has joined. 01:30:40 *chemists 01:30:40 oerjan: wait that wasn't a pun. 01:30:43 Yeah, it should be a motherfucking unitless quantity. 01:30:46 oerjan: i thought it was :P 01:30:53 elliott: um yes it was 01:30:54 -!- wareya_ has quit (Ping timeout: 265 seconds). 01:30:55 elliott, it was in fact. 01:30:59 oh 01:31:00 oerjan: <3 01:31:22 i thought it was at first :P 01:31:44 oerjan, COMMENT 01:32:33 * Sgeo gets the pun finally 01:33:19 {- chirp -} 01:33:30 oerjan, comment on GoL heat 01:33:41 oerjan: if you don't he'll burn to death 01:33:42 rather ironic 01:35:35 * Sgeo tries to figure out if an (obviously impossible) dot that appears for 1 gen, then is gone for 2, then repeats, has polynomial heat or not 01:36:45 I might need paper :/ 01:37:38 oerjan: do /you/ know the algorithm to calculate a type's induction scheme from its ADT definition? 01:38:28 Sgeo: hm so the "nth derivative" is found by XORing the (n-1)th derivative with its next generation? 01:39:00 Hmm. I think so 01:39:49 i've done a similar calculation before, it's pascal's triangle mod 2: 1 11 101 1111 10001 110011 1010101 11111111 1000000001 01:41:10 hmm? 01:41:13 the 2^n'th "derivative" in fact ends up being just the xor of two 2^n'th apart original generations 01:41:23 on the brain-connections-issue: if there are 10^11 neurons and each one can make 100 connections, then the total possible number of different connections is 10^13 times 10^13, which is about 10^26 ... there are about 10^80 atoms in the universe.. how many stars did u say? 33x10^13 stars.. so it seems i was right.. elliott :> 01:41:29 -!- sebbu2 has joined. 01:41:32 Gregor: ^ tell him how he's wrong i'm too lazy 01:41:51 so unless you have a 2^n period, it will _never_ fade out completely to 0 01:41:53 hagb4rd: erm wait you know this channel is about programming right 01:42:01 sorry 01:42:03 ;) 01:42:21 -!- pikhq has quit (Ping timeout: 276 seconds). 01:42:29 elliott: oh COME ON it's no more off topic than we use to be 01:42:41 oerjan, so, polynomial vs nonpolynomial is not too interesting/ 01:42:45 elliott: The pseudomath in hagb4rd's last thing was too mind-bogglingly stupid for me to actually comment on. 01:42:59 Gregor, I loved pseudomath back in my day 01:43:04 Sgeo: THAT IS WHY YOU ARE STUPID. 01:43:24 Gregor: Yes, but if you don't correct him he'll start believing it and bring it up all the time as a reason to be awed by... something because that's what people look like do, dear god save us and reply to it. 01:43:25 -!- augur has quit (Remote host closed the connection). 01:43:27 Gregor, linky, or just what hagb4rd last said? 01:43:34 Gregor: I beg thee. 01:43:40 on the brain-connections-issue: if there are 10^11 neurons and each one can make 100 connections, then the total possible number of different connections is 10^13 times 10^13, which is about 10^26 ... there are about 10^80 atoms in the universe.. how many stars did u say? 33x10^13 stars.. so it seems i was right.. elliott :> 01:44:00 hagb4rd: If there are 10^11 neurons and each one can make 100 connections, then the brain can have 10^13 connections. Period. 01:44:27 -!- sebbu has quit (Ping timeout: 265 seconds). 01:44:52 i mentioned this, because i think there must be an alternative way of addressing.. someway like a neural network 01:45:39 but nevermind 01:45:41 (Also the rest of your numbers are all wrong, but that's irrelevant in the face of that wtf) 01:46:25 hagb4rd: hagb4rd: One estimate said 3*10^23. 01:47:15 hagb4rd: maybe you are right _if_ there were connections between almost every two neurons, but obviously there isn't 01:47:30 oerjan, and discard the "100 connections" thing 01:47:45 thats not really important.. im really not that good in math 01:47:53 hagb4rd: It seems to me that you are not trying to find out whether it's true, you're just trying to find a way to make it true. 01:47:56 just forget it 01:47:57 oerjan: Even then he'd be off by 4 orders of magnitude. 01:48:07 hagb4rd: Besides, if it was true, what would it mean? 01:48:08 What is hagb4rd trying to make true? 01:48:13 Why would it be relevant? I'm actually interested. 01:48:21 Sgeo: that there are more connections in the human mind than there are stars in the universe. 01:48:58 Oh. Stuff that uses actual physical numbers stemming from science. Bleh *gets bored* 01:49:16 `addquote Oh. Stuff that uses actual physical numbers stemming from science. Bleh *gets bored* 01:49:23 244) Oh. Stuff that uses actual physical numbers stemming from science. Bleh *gets bored* 01:49:47 hell..i was just wondering about life, cosmos and stuff 01:50:05 excuse me! 01:50:27 hagb4rd: 42. 01:50:32 hagb4rd: btw i think they estimate the number of stars by estimating the number and sizes of galaxies (many billions) and estimating the number of stars per galaxy for those nearby enough to count stars (for our own galaxy, also many billions) 01:50:33 :) 01:50:38 yess 01:51:49 -!- pikhq has joined. 01:51:57 I feel sorry for GoL scientists, who, in a random soup beginning universe, have limited means of learning about the cosmos 01:52:34 hell..i was just wondering about life, cosmos and stuff 01:52:37 although i'm not sure the estimate for stars is entirely accurate - red dwarf stars are hard to observe, but then that would give an underestimate 01:52:37 I think I have a way for them to determine the age of the universe, though 01:52:40 hagb4rd: I just want to know what you'd conclude from your statement. 01:52:46 why is the number of stars relevant to neurons? 01:53:11 -!- Goosey has quit (Read error: Operation timed out). 01:53:19 Sgeo: didn't we have a previous discussion at one time where we assumed the initial soup should be very thin, to avoid too much chaos 01:53:21 oerjan, are there any patterns that have ONLY themselves (and other things at a distance of two empty cells or more away, of course) as parents? 01:53:28 oerjan, I don't remember :( 01:53:33 [2:44]i mentioned this, because i think there must be an alternative way of addressing.. someway like a neural network <--- elliott 01:53:36 It is such a weird experience being at a party where you speak only one of the two spoken languages there. 01:53:44 hagb4rd: i do not understand 01:53:57 i fold 01:54:25 "i do not understand" is an invitation to speak, not an insult.. at least, if it were coming from me. elliott is caustic 01:54:34 yes, i am actually asking hagb4rd what he means 01:54:34 Wow, it felt weird trying to avoid capitals in that 01:54:41 i legitimately don't understand and want to know 01:55:04 Sgeo: no idea about self-parent patterns 01:55:15 yes thanks np sgeo, but im not really intrested, sry ;) 01:55:53 hagb4rd: don't reply to me saying you're right if you're not going to elaborate when i ask sincerely. 01:56:03 Because if there were, and there was some chaos in the universe, and they knew how often some such patterns should appear, and know how likely such patterns are to decay, etc. etc. 01:56:11 Not "decay" 01:56:16 But be hit by random universe chaos 01:56:37 Which is similar to decay, kind of 01:57:56 oerjan, I still don't remember that discussion :( 01:58:16 Sgeo: well i'm not sure who was there 01:58:34 it was many months ago, at least 01:59:59 the idea i think was that it would be easier for life to survive in such an environment 02:03:44 -!- augur has joined. 02:05:41 oerjan: if i start an esowiki project to create formal definitions of the multiple facets of Turing-completeness, accounting for disagreements about ais-style proofs, and Befunge/index.php type scenarios and Easy, can I coerce you into participating? 02:05:56 need an actual mathematician to give the scribbles credibility :D 02:06:04 very unlikely 02:07:53 elliott: I would like there to be such a project on esowiki, though. 02:07:55 oerjan: free cookies. 02:13:52 elliott, "Befunge/index.php"? 02:14:05 Free air! 02:14:32 elliott, doesn't TCness have a formal definition? 02:14:44 elliott, in the original church-turing thingy 02:14:54 Vorpal: But sometimes there are strange circumstances 02:15:07 zzo38, ... go on 02:15:08 Vorpal: Church-Turing thesis? If so: that's just a non-mathematical conjecture. 02:15:19 èlhm 02:15:21 err 02:15:22 elliott, hm* 02:15:27 Vorpal: http://esolangs.org/wiki/Befunge/index.php is my language which ais523 has proved both TC and not. 02:15:32 Vorpal: See the [[Befunge/index.php]] and [[Easy]] pages on the esolang wiki for more information. 02:15:34 " Proof that the language is Turing-complete: you can trivially write a BF interpreter in it, by reading strings from user input onto the stack (easy in Befunge-93), then running them. 02:15:34 Proof that the language is not Turing-complete: it's impossible to compile all Turing machines into it, because there are an infinite number of Turing machines yet a finite number of Befunge/index.php programs." 02:15:52 Vorpal: Easy has the same basic situation (there's one program and it's a brainfuck interpreter). 02:16:10 elliott, .... wow 02:16:15 (about those proofs) 02:16:21 Vorpal: The basic definition used is... "can emulate all universal Turing machines", although it's hard to distinguish that from "can emulate *a* universal Turing machine" and ... it's basically a clusterfuck. 02:16:22 elliott, actually one is false I think 02:16:39 Vorpal: Both are true. They exploit the informality of the definition of Turing-complete. 02:16:48 But sometimes we get even more strange situations..... 02:16:51 elliott, in the second case, what is the input 02:16:54 elliott, and what is the program 02:16:56 Vorpal: What? 02:17:22 elliott, is the input not actually part of the program? 02:17:57 elliott, if we get rid of the concept of input this can trivially be resolved. Since all input is then part of the program 02:18:10 Vorpal: That does not solve the problem in the slightest. 02:18:16 elliott, how does it not? 02:18:25 Vorpal: It may solve it for Befunge/index.php but it doesn't solve it for anything else. 02:18:30 hm okay 02:18:41 elliott, it also solves it for Easy 02:18:51 Easy is a pathological case :P 02:18:58 elliott, easy to solve yes 02:19:20 elliott, anyway, P'' had no I/O. I/O has no place in a definition of TC. 02:19:26 Vorpal: Yes it does. 02:19:35 Same reason it's in the Halting problem. 02:19:36 elliott, it just complicates stuff 02:19:38 IO is just functions. 02:19:41 Functions have results. 02:19:44 Functions have inputs. 02:19:44 hm 02:19:49 Anyway, what we need is multiple precise, mathematical definitions; it seems clear that there are at least three things people mean when saying "Turing-complete" and surely certainly more; these should all be formalised separately. 02:20:09 (Pipe dream: Coq library with all of them defined and a framework for proving things are $variation_on_TC in Coq.) 02:20:14 (That would be really nice.) 02:20:30 elliott, why the silly name Befunge/index.php? 02:21:15 Vorpal: Talk:Befunge/index.php was created protected because it was a frequent spambot target. ais noted in his protect message that it would only be useful in the unlikely case that someone invented a language named Befunge/index.php. 02:21:27 And, of course, being me... 02:21:48 Vorpal: I created it just to troll the esolang wiki into arguing over its TCness :P But I didn't think it was actually legitimately ambiguous. 02:21:54 elliott, "In spring of this year on the IRC channel I proposed a language called ℒ. ℒ is a severely restricted subset of your favourite indisputably Turing-complete language (say, Pascal) -- so severely restricted, in fact, that you can only write a single program in ℒ. But that program is a Universal Turing Machine simulator. Is ℒ Turing-complete? " 02:22:01 -!- hagb4rd has quit (Quit: hagb4rd). 02:22:03 elliott, I remember that discussion 02:22:13 Vorpal: indeed 02:22:33 cpressey adamantly holds the position that you must be able to write a program for *every* Turing machine to qualify as TC 02:22:46 e.g., a brainfuck interpreter where you can specify an input of arbitrary size in the interpreter program qualifies 02:22:53 (as a proof) 02:23:00 but not a "regular" brainfuck interpreter that reads from stdin 02:23:12 what 02:23:17 elliott, how does that even make sense 02:23:41 Vorpal: It makes perfect sense. 02:24:08 Vorpal: If the program size is bounded, then there isn't a program for every Turing machine. 02:24:27 "and blah blah blah this is boring shut up Chris." <--- what 02:25:06 elliott, indeed 02:25:17 elliott, but why does there have to be one for every TM? 02:25:46 Vorpal: Because otherwise the language where there's only one program and it's a BF interpreter is TC. 02:26:18 Vorpal: It is, of course, completely useless and you can't write any program you want in it. 02:26:32 cpressey believes this is sufficient justification for not believing it to be TC; your definition may vary. 02:26:43 Issues of input 02:26:47 elliott, in some sense of TC he is right 02:26:52 Moral of the story, TC is ambiguous. 02:26:56 Sounds almost like when I deluded myself into thinking I disproved God via math 02:26:56 Vorpal: My WHOLE POINT is that there are multiple valid definitions. 02:26:58 pikhq, indeed 02:27:00 elliott, indeed 02:27:01 Sgeo: What? 02:27:04 Sgeo: No, that just sounds idiotic. 02:27:36 I sort of decided that uncomputable meant unknowable, and that therefore Chaitin's constant was an unknowable number 02:27:50 And if God's supposed to know everything... 02:28:21 I think my idea of "uncomputable = unknowable" had something to do with Oracle machines and input 02:28:27 Sgeo: "Rock heavy enough God can't lift it" is the same damned argument. 02:28:54 I think the best "mathematical" argument for god is the natural numbers. And even that's silly. 02:29:02 Sgeo: You do realise we know values of the Busy Beaver function, which is uncomputable? 02:29:02 Well, except yours is weaker. "Uncomputable" generally means "uncomputable using a UTM", not... That. 02:30:00 -!- hagb4rd has joined. 02:30:12 Sgeo: Also, you can work out N prefix bits of a given halting constant with a lot of effort. 02:30:27 For any N? 02:30:35 Sgeo: Depends how good a mathematician you are... 02:30:59 Sgeo: The first four bits of binary lambda calculus's Chaitin's constant are .0001. 02:31:30 Sgeo: I mean, you can do it just by looking at every program with N bits in it and proving whether it halts or not. 02:31:37 Then it's just numberthathalt/numberthatdon't. 02:31:59 So for a simple language like binary lambda calculus, it's not hard to calculate the first few bits. 02:32:17 Huh. It has been proven that Sigma(12) > g1. 02:32:42 I think I was thinking "Oracle machine hooked up to input to make machine that outputs a Chaitin's constant using fewer... symbols than should be expected". 02:32:43 (g1 being the starting value in the sequence that defined Graham's number) 02:32:45 Or something like that 02:32:53 Did I mention I no longer believe this? 02:33:12 (that is to say, it's greater than 3 uparrow^4 3) 02:33:46 ... Hmm. Actually, the lower bound for the entire sequence is known. 02:34:12 Sigma(2k) > 3 uparrow^k-2 3. 02:34:28 That's... Absurd. 02:35:02 pikhq: What an upper bound :P 02:35:17 erm 02:35:19 pikhq: Wow. Lower bound. 02:35:21 pikhq: Lovely :P 02:35:37 pikhq: Not sure I believe in numbers that big. 02:35:40 what's Sigma(12) 02:35:56 oerjan: busy beaver 02:36:00 oerjan: Sigma(n) is the Busy Beaver function. 02:36:05 ah 02:36:10 pikhq: G_1 is 3^^^^3, if it's defined correctly. :P 02:36:14 G_0 is, of course, 4. 02:36:38 tswett: ... Yes... 02:36:39 tswett: And G_2 is a pony! 02:36:47 Precisely. G_2 is a pony. 02:37:04 tswett: And G_64 is insane. 02:37:07 Also a pony. 02:37:13 I think we should just replace every number larger than, say, 26 in mathematical literature with a pink, sparkly picture of a pony. 02:37:16 It would be much nicer. 02:37:30 I think 27 is an important number, so we should keep it. 02:37:40 tswett: I think pony is an important number too. 02:38:08 163 is also a pretty important number, come to think of it, because e^(pi*sqrt(163)) is within 0.0000000000001 of an integer. 02:38:25 tswett: It's also within 0 of an integer!* 02:38:31 *0 is a rounded value here 02:38:47 pikhq: "Semi-implicit batched remote code execution as staging" --Oleg 02:38:55 pikhq: Hypothesis: For any string of words, Oleg can be smarter than you about it. 02:38:57 elliott: I think we should replace the term "number" with "pink, sparkly picture of a pony". 02:39:03 pikhq: YES. 02:39:11 Graham's pink, sparkly picture of a pony is very large. 02:39:23 It would take more space than there is in the universe to draw it. 02:40:09 The same is true of the g1 pink, sparkly picture of a pony. 02:40:35 It's larger than the pink, sparkly picture of a pony of Planck volumes in the Universe. 02:41:07 http://okmij.org/ftp/DreamOS.html 02:44:02 BTW, Planck units are most definitely the most awesome system of units ever. 02:46:17 There's definitely something to be said for E=m. 02:46:41 YOU MEAN E = m^2 + p^2 02:47:00 er 02:47:02 pikhq: E=E 02:47:03 WHOA 02:47:05 I'M LIKE AYN RAND 02:47:08 *YOU MEAN E^2 = m^2 + p^2 02:47:10 EXCEPT 4 LETTERS ONWARDS 02:47:12 DUUUUDE 02:47:24 oerjan: you mean E = vibrating strings 02:47:27 * elliott prepares for swatting 02:47:47 * oerjan swats elliott in E minor -----### 02:47:56 oerjan: No, I definitely meant E=m. Who cares about the energy of an object in motion, anyways? :P 02:48:50 THAT IS THE KIND OF ATTITUDE THAT HAS LEAD TO THE CURRENT OBESITY EPIDEMIC 02:49:22 oerjan: :D 02:49:36 oerjan: you need like a web form where people can file requests to be married to you, just for a few weeks 02:49:39 it could be very profitable 02:49:53 oerjan: :D 02:50:18 pikhq: don't you agree, i mean 02:50:24 that comment totally warrants brief matrimony. 02:50:33 elliott: Totally. 02:50:51 elliott: Warrants brief polyamorous matrimony. 02:50:58 NO HE'S ALL MINE 02:51:04 * elliott gets swatten 02:53:22 -!- zzo38 has quit (Remote host closed the connection). 02:54:38 pikhq: "InDecember 1999, it was found that Netscape Communicator used ROT-13 as part of an insecure scheme to store email passwords." 02:54:41 *In December 02:55:25 XD 03:01:24 pikhq: Hmm. Can you change the page size on x86-64? 03:02:44 -!- pikhq has quit (Ping timeout: 265 seconds). 03:03:02 -!- nooga_ has quit (Ping timeout: 260 seconds). 03:04:22 -!- nooga_ has joined. 03:12:38 elliott: Nope. The page sizes are fixed. 03:13:03 Ilari: That's a shame. 4K is so tiny. 03:13:12 Well, there are 4MB ones too... 03:14:53 Ilari: Eh? 03:14:58 Ilari: You can use 4MB pages? 03:15:44 -!- pikhq has joined. 03:16:27 There's flag in second-to-lowest page table structure on if the entry is pointer to 1024 page structure or pointer to page itself (if it is pointer to page, it will be 4MB). 03:17:50 (well, at least late iteration X86s supported 4MB pages, and I presume X86-64s do too...) 03:18:43 Or it might be that X86-64 had 4kB and 2MB page sizes... 03:19:09 Ilari: Hmm... would be nice to have something inbetween, say 1MB. 03:20:01 x86-64 supports up to 1GiB pages. 03:20:38 Actually, only three page sizes: 4KiB, 2MiB and 1GiB (which may not be supported). 03:20:49 Ah, right, those are the only ones. 03:21:30 x86 base, PSE+PAE, and... Absurd. 03:22:05 1GiB pages X-D 03:22:13 (okay, it's only absurd with respect to the currently available RAM, not with respect to address space or all of what could reasonably *have* an address.) 03:22:13 That's a whole 12 pages on a super-high-end desktop system! 03:22:30 Although in THIS case I actually have all of disk. But not all of it will have page entries. 03:22:46 Still, that's 2048 theoretical maximum pages on the biggest reasonable consumer disk manufactured today :P 03:22:47 The reason why it is 1GiB is that it is next level of aggeration (512 2MiB pages). 03:23:35 Just like 2MiB/4MiB is the next step from 4KiB. 03:23:52 So how easy is it to use 2 MiB pages in an OS? I mean, compared to the code requires to use 4 KiB. 03:24:51 Well, if one wanted to use 2MiB pages only, perhaps even sightly simpler than using 4KiB pages... 03:25:09 Since that would cause one page table level to vanish. 03:25:19 elliott: For a 4 MiB page, one simply sets the PSE flag in the page table. 03:25:25 That sounds nice. 03:25:29 I'll do that, then. 03:25:48 elliott: For a 2 MiB page, one simply also supports PAE, which has the side effect of halving the larger page size. 03:26:09 pikhq: And x86-64 is based on PAE. 03:26:17 pikhq: (Great idea, that; base your next-generation future-proof architecture on a massive hack.) 03:26:48 They really, really should have thrown out more of x86 with that. 03:27:21 At least they threw out most of segmentation... 03:28:00 Ilari: still have to deal with it in real mode :) 03:28:17 True, segmentation only exists for privilege seperation now, thankfully. 03:28:41 Actually, 32 bit protected mode is the worst... 03:28:50 And 16-bit. 03:28:52 Ilari: It would be wonderful if x86-64 specified some IO port stuff you could do that would make it automatically turn on the A20 line and switch into long mode, and give some flag back that x86 wouldn't (make it be something that does nothing on plain x86). 03:29:15 Ilari: Then you could just make your initial bootsector be "shove to IO port; check response; if it's good, jump into 64-bit code; otherwise error message". 03:29:18 But noooo. 03:29:32 oerjan, measure of heat that is simpler than "destroyed blocks", but has the same "problem" of internal activity with no external activity being cold: Draw a bounding box. Count how many generations it takes for an escape of the bounding box. 1/that is the heat 03:29:33 We have to go through real mode, check CPUID, disable the A20 line ourselves, go into protected mode, and go into long mode. 03:29:40 elliott: Or even *write an actual address to jump to* to that IO port. 03:29:57 pikhq: That would work, but IO ports touching the instruction pointer feels really weird to me. 03:30:03 Actually, that's crap 03:30:13 elliott: Fair enough. 03:30:40 pikhq: Right now I'm going slowly (quickly) insane trying to get into long mode and set up a page fault handler. 03:30:45 Draw bounding box. Advance until it's about to escape. Count how many cells escape 03:31:11 Do some fudge factor to make it comparible usefully 03:32:56 elliott: ... Huh. PAE is actually nowhere near as bad of a hack as you'd think. 03:33:33 pikhq: It totally is, though. :p 03:33:48 elliott: Setting the PAE bit of CR4 changes the entire page data structure. 03:33:58 Hm. 03:35:03 elliott: Each entry in the page table becomes double the size, and there's another level of nesting in the paging. 03:35:38 elliott: And x86-64 adds yet another level of nesting. 03:35:39 olsner: hey can you link me to your protected mode / long mode snippets so i can steal them again :D 03:38:56 ha found it 03:39:44 -!- sftp has quit (Remote host closed the connection). 03:49:27 -!- hagb4rd has quit (Ping timeout: 245 seconds). 03:51:22 pikhq: Paging sure is complicated. 03:51:30 I love headphones. 03:52:10 ...you don't seem to be on the same page 03:52:35 Parties are loud. And I wish not to leave the basement. 03:52:47 And headphones solve much of the noise problem. 03:53:14 Oddly enough, parties are even *louder* when half of the people in attendance are deaf. 03:54:07 pikhq: Paging sure is complicated. 03:54:15 'Tis. 03:54:20 Segmentation sucks. 03:56:02 pikhq: I JUST WANT TO GO INTO LONG MODE WHY DO I HAVE TO SET ALL THIS STUFF UP MAN? YOU HATE ME, CPU 03:56:56 elliott: Would it make you feel better to know that they actually expend valuable wafer space on this bullshit? 03:57:00 ... Probably not, no. 03:57:41 pikhq: I'm not entirely sure *what* is in the wafer of a modern x86-64 processor... everything's so small that they can fit Micro Manhattan in there, and yet chips aren't really getting smaller... WAIT! 03:57:44 I've figured it out! 03:57:52 pikhq: To comply with the GFDL, they have a copy of Wikipedia in there. 03:58:00 In fact, that's the source of ALL computing bloat. 03:58:19 elliott: you're so wrong, it hurts 03:58:37 Mathnerd314: You mean they don't REALLY have a copy of Wikipedia in there to comply with the GFDL??????????????????????????? 03:59:36 Mathnerd314: ????????????///////////////// 03:59:38 elliott: All computing bloat but that of Microsoft. 03:59:48 pikhq: No, they have a copy of Wikipedia in there too. It's a long story. 04:00:04 elliott: no, they have 1) a compiler 2) a VM 3) an interpreter 4) an optimizer 5) a copy of Windows 6) several encryption/compression algorithms, such as AES, DES, and MPEG 04:00:08 elliott: Microsoft also has a copy of every single version of Windows in there, for the sake of compatibility. 04:00:09 :D 04:00:19 Mathnerd314: WOW THAT IS GOOD TO KNOW, BECAUSE I WAS BEING TOTALLY SERIOUS 04:00:21 also you're full of shit 04:00:31 since when does x86-64 have an interpreter in it 04:00:32 Mathnerd314: On the silicon? 04:00:33 ...or an optimiser 04:00:46 also they have shit to SUPPORT MPEG, but they don't have an actual MPEG codec. 04:00:47 well, *my* processor has those 04:00:49 that would be ridiculous. 04:00:51 Mathnerd314: No. 04:00:56 Mathnerd314: on what grounds do you claim this? 04:01:07 elliott: the docs. 04:01:10 Mathnerd314: It has opcodes to make those algorithms more efficient. 04:01:12 Mathnerd314: Which docs? 04:01:29 http://www.via.com.tw/en/initiatives/padlock/hardware.jsp 04:01:34 among others 04:01:47 Mathnerd314: OK, link me to the page where it says "We have an actual complete MPEG decoder in hardware." 04:02:38 Mathnerd314: I'm waiting... 04:02:43 http://www.via.com.tw/en/products/processors/c7/ "all VIA C-Series mobile chipsets integrate hardware MPEG-2 and MPEG-4 decoding acceleration" 04:02:55 Mathnerd314: That's marketing bullshit. Note "acceleration". 04:02:57 That acceleration is not a full MPEG decoder. 04:03:08 Mathnerd314: What they mean is there are instructions dedicated to certain tasks which, when implemented in an MPEG decoder, speed up the process. 04:03:09 Odds are, it's a fast inverse discrete cosine transform. 04:03:20 Mathnerd314: Now where's the interpreter? And the optimiser? 04:03:41 Mathnerd314: (Also the copy of Windows...) 04:04:03 elliott: pretty standard features... it interprets the machine instructions, and optimizes them when it can 04:04:20 Mathnerd314: That's not an interpreter ... That's silicon. 04:04:26 OK, so it's microcode, but it's *not* an interpreter. 04:04:35 psshh 04:04:35 Mathnerd314: And no, CPUs aren't in the business of optimising their instructions... 04:04:49 Mathnerd314: Pipelining and the like, yes. Branch prediction, yes. Outright optimisation, *no*, far too expensive. 04:04:55 Mathnerd314: OK, where's the compiler? 04:05:01 I call pipelining optimization 04:05:07 Mathnerd314: OK, where's the compiler? 04:05:18 compiler = interpreter + optimization, obviously 04:05:21 Mathnerd314: I call anything faster than a room full of females optimization. 04:05:29 Mathnerd314: And NO IT FUCKING ISN'T. 04:05:41 That is ... not what a compiler is. 04:05:48 That's what an optimising interpreter is. 04:06:03 Mathnerd314: You're obviously just trolling, so here we go: where's the claimed copy of Windows? 04:06:38 elliott: see #2 in http://en.wikipedia.org/wiki/Partial_evaluation#Futamura_projections 04:06:56 Mathnerd314: I know what the Futamura projections are. Specialisation is one of my great loves. 04:07:07 Mathnerd314: An interpreter and an optimiser together do NOT a specialiser make. 04:07:11 You have no idea what you are talking about. 04:07:17 Mathnerd314: Specialisation is *very* different from optimization. 04:07:27 A specialiser optimises, but an optimiser doesn't specialise. 04:07:42 elliott: Actually, a specialiser doesn't necessarily optimise. 04:07:48 ok, whatever. I'll agree there's (probably) no copy of Windows 04:07:52 pikhq: It's a useless specialiser if it doesn't. 04:08:03 elliott: Never said it was a *useful* specialiser. :) 04:08:49 Mathnerd314: Where's the VM? 04:09:13 (if you mean "virtual memory" by that, I'll hunt you down and kick you into next week.) 04:09:42 since I start weeks on Sundays, that means tomorrow. 04:10:04 so I'll just fall asleep instead of letting you kick me 04:10:06 *Far* into next week. 04:10:15 Mathnerd314: You really don't start weeks on Sundays, you just claim to. 04:10:43 I have noted several people who like to say that for them the week starts on Sunday and they all feel very strongly about it being "right". They also go "oh no, the weekend is over, it's Monday and a new week begins!!!111". 04:10:48 elliott: no... sunday is "noneday", and I count starting from 0 04:10:56 Mathnerd314: No you don't. You really don't. 04:11:05 You're just saying that because it sounds interesting. 04:11:39 sunday the unday 04:11:59 elliott: no... listen to J. H. Conway some time 04:12:27 Mathnerd314: Stop being psuedoïntelligent for a bit. 04:12:37 Mathnerd314: are you just naming all these things and people thinking I don't know what or who they are? 04:12:45 Mathnerd314: Presumably you are referring to the Domesday algorithm. 04:12:49 yes... 04:13:00 Mathnerd314: Doomsday. 04:13:06 Mathnerd314: But I am about 90% sure that you do not, actually, think of Sunday as Noneday. And that you do not actually start counting at 0. 04:13:08 pikhq: Whatever :P 04:13:14 Mathnerd314: At least not for days of the week. 04:14:13 I don't see how I could tell where I start counting, other than saying that I do 04:14:50 I stopped counting out loud long long ago... 04:15:02 I'm fairly certain that he typically just thinks of the names of celestial bodies and/or associated deities with "day" appended for the days of the week. 04:16:06 pikhq: what? then why would I have trouble remembering how to spell "Wednesday"? 04:16:45 Mathnerd314: Because you have *extreme* difficulty remembering the Old English term for Odin. 04:17:33 hmm, you might be right 04:18:56 I don't know enough about Odin to know if I've forgotten about (it/him/...) 04:21:41 pikhq: https://gist.github.com/657234#LID75 In which olsner manages to make me hate real mode. 04:21:43 Erm. 04:21:45 pikhq: https://gist.github.com/657234#LID75 In which olsner manages to make me hate long mode. 04:24:06 elliott: Clearly, "jmp rip+0" should be enough to initial long mode. 04:24:11 Initiate. 04:24:34 pikhq: MAKE THE PAIN GO AWAY 04:25:59 * pikhq puts elliot out of his misery 04:26:07 * pikhq also puts elliott into further misery. 04:26:08 :) 04:26:40 ;_; 04:46:14 multicast:manypeople::?:oneperson 04:46:47 quintopia: unicast 04:46:52 kk 04:46:53 quintopia: (this is the technical term) 04:46:58 Quadrescence: also dude you can use spaces 04:47:00 thx 04:47:04 multicast:many people :: ?:one person 04:47:17 erm quintopia 04:47:22 meh 04:47:30 it's a stylistic thing 04:47:35 It's hard to read. :p 04:48:07 pikhq: Fun fact! "if (write(fd,buf,n) < 0) { perror("write"); exit(1); }" prints "write: Success" and exits with failure on HALF of all possible bufs. 04:48:26 pikhq: Why? Because sizeof(size_t) = sizeof(ssize_t); write takes the former and returns the latter. 04:48:29 http://en.wikipedia.org/wiki/File:VLC_Icon.svg 04:48:32 * Sgeo stares 04:48:35 PERTY GRADIENTS 04:48:38 pikhq: (I suppose one could make ssize_t a bigger integer, but nobody does.) 04:48:38 GRADIENTS 04:48:45 Sgeo: You're fucking psycho. 04:49:13 There's a reason I have a link to a bunch of Nuvola icons on User:Sgeo 04:49:35 Sgeo: Because you're fucking psycho? 04:50:10 http://commons.wikimedia.org/wiki/File:Nuvola-like_mail_internet.PNG you can't tell me that this isn't pretty 04:50:47 Sgeo: It really isn't. 04:50:58 That globe-and-plug thing looks awful on it. As well as making evry little sense. 04:51:03 And the envelope has an awkward angle. 04:51:09 And ... no, no it's not pretty. You're insane. 04:51:25 What about just the globe part? 04:52:15 Sgeo: IT'S NOT PRETTY 04:52:24 I could not stare at it for more than two seconds. 04:52:41 Nuvola is one of the worst icon sets ever created, switching to it turns your desktop into a lens flare generator. 04:53:29 * Sgeo gibbers in joy at http://en.wikipedia.org/wiki/Nuvola 04:53:39 ah yes 04:53:41 gibbering 04:53:48 as in "gibbering idiot" right? 04:54:02 or was it "gibbering lunatic"? 04:54:59 Sgeo: HAPPY FOURTH BIRTHDAY 04:55:25 Um 04:55:33 Why are there GNOME icons for Nuvola 04:55:36 elliott: link me to something you would describe as pretty 04:55:40 Nuvola makes me think very KDE thoughts 04:55:43 (in the visually attractive sense) 04:55:57 quintopia: Imagine the opposite of http://en.wikipedia.org/wiki/Nuvola#Examples_of_icons. 04:56:19 elliott: it's a subjective thing. link me to the opposite for you -.- 04:56:28 I WANT TO KNOW HOW YOUR MIND WORKS 04:56:34 "Link to something pretty" is a pretty vague question ... 04:56:42 indeed. 04:56:45 Kind of hard to do on the spot. 04:57:00 next time you see something pretty, link me 04:57:01 This is pretty imo: http://commons.wikimedia.org/wiki/Category:Nuvola_icons 04:58:52 quintopia: It's hard. "This is pretty" is a rare thought for me; "beautiful" maybe. 04:59:02 Prettiness tends to be rather vapid and flashy ... like Nuvola ... 04:59:09 elliott: beautiful is good enough. do that then. 04:59:18 quintopia: But that's even harder. 04:59:28 don't go out of your way 04:59:34 just next time it happens and you remember 04:59:44 elliott is just trying to hide the fact he thinks _everything_ is ugly 04:59:54 oh geez yeah those icons suck balls 04:59:57 * oerjan whistles innocently 05:00:21 oerjan: must be a lonely sad depressing life 05:00:41 For regular use maybe, I don't know, but surely to look at on occasion... 05:00:48 WE WERE TALKING ABOUT HIM NOT ME 05:01:13 quintopia: i think plenty of things are beautiful, oerjan just likes to project his crankiness onto me :) 05:01:30 but yeah nuvola is like staring at a lightbulb 05:01:49 LIES 05:03:34 I don't think I ever mentioned the dumb stuff I've done with a lightbulb 05:04:17 Sgeo: Oh god. 05:04:32 quintopia: Come to think of it, the last few things I've thought "wow, that's pretty" have probably been in Minecraft, and I probably didn't screenshot them. 05:04:39 Such is the way of random number generators. 05:04:57 heh 05:07:26 quintopia: http://www.math.cornell.edu/~mec/2008-2009/HoHonLeung/fig.7.png This might be pretty. 05:07:31 Argh, I am no good at introspection. 05:07:58 a trefoil eh? 05:08:15 you like symmetry? 05:08:32 quintopia: I suppose so? :p 05:08:54 The 3D version http://www.earlham.edu/~peters/trefoil.gif would be nicer, except the shading and colours are horrible. 05:08:59 i like my women as symmetrical as i can get them, so i suppose i can relate :P 05:09:27 render your own trefoil in a raytracer 05:09:45 ball-shaped women ftw 05:09:47 nah. i've never used a raytracer and don't really want to 05:09:54 oerjan: :D 05:10:30 quintopia: google helped me find this http://i35.tinypic.com/1r42zd.jpg 05:10:32 symmetrical! 05:11:04 mirrored people always look bizarre. 05:11:10 even me, and i'm perfect 05:11:34 (also, symmetry isn't my only criterion in women) 05:11:40 Note to self: Stop looking at blinkers as being + shaped. They're not 05:11:40 quintopia: that's offensive, i was in a mirror accident and now my second half is a permanent mirror 05:11:44 typing is kind of difficult 05:12:29 With narrow spacing of blocks, even the block definition of heat has blinkers being warm 05:12:30 `addquote < elliott> quintopia: that's offensive, i was in a mirror accident and now my second half is a permanent mirror 05:12:37 is that how that works... 05:12:40 rifj yeotu slaøy lseo 05:12:53 oerjan: how did i parse that 05:12:56 245) < elliott> quintopia: that's offensive, i was in a mirror accident and now my second half is a permanent mirror 05:13:01 oh good 05:13:10 `run sed -i 's/< ell/ No output. 05:13:14 `quote 245 05:13:16 245) < elliott> quintopia: that's offensive, i was in a mirror accident and now my second half is a permanent mirror 05:13:17 why is it that hackbot has such a long warm-up period? 05:13:19 what 05:13:23 elliott: i don't know, did it make sense? 05:13:30 `run sed -i 's/\< ell/ 245) quintopia: that's offensive, i was in a mirror accident and now my second half is a permanent mirror 05:13:34 there we go 05:13:42 oerjan: yes 05:13:48 oerjan: "if you say so" 05:13:56 elliott: while you're at it, tack the typing thing on the end 05:14:00 indeed 05:14:05 Quadrescence: wut? 05:14:06 erm 05:14:07 quintopia: wut? 05:14:18 the next line "typing is kind of difficult" 05:14:41 nobody's said that 05:14:54 oh 05:14:55 i did 05:14:55 :D 05:15:09 must have been the mirror half 05:15:18 is it just a line in a plaintext file? 05:15:20 `run sed -i '245s/$/ typing is kind of difficult/' quotes 05:15:24 No output. 05:15:27 quintopia: yep. it was previously a sqlite db 05:15:32 but i chucked all that out and rewrote the system unixy 05:15:36 `quote 245 05:15:38 245) quintopia: that's offensive, i was in a mirror accident and now my second half is a permanent mirror typing is kind of difficult 05:16:29 quintopia: http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/quotes is the raw quote database 05:16:46 10:53:32 addquote http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/addquote 05:16:46 10:53:32 allquotes http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/allquotes 05:16:46 10:53:32 quote http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/quote 05:16:46 10:53:32 pastequotes http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/pastequotes 05:16:46 10:53:32 And the latest quote database is always available at http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/quotes. 05:16:53 quintopia: ^ all the sources 05:16:54 i suppose flat files makes sense for a channel this small, but when i create a hackbot to take over the IRC universe, it will use a db :P 05:17:05 quintopia: well, there's actually now also http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/pastenquotes 05:17:09 quintopia: and it was *way* slower with a DB 05:17:19 quintopia: unix is fast. 05:17:38 that's why i wouldn't switch over until 100000 quotes 05:18:06 (or until i need the ability to search for specific quotes easily by content) 05:18:10 quintopia: err, i can do that 05:18:14 `quotes oklo 05:18:15 No output. 05:18:21 ...well it usually works :D 05:18:25 quintopia: it's called grep. 05:18:27 no, you can only use regexes and such 05:18:35 quintopia: as opposed to... 05:18:42 quintopia: and even after 100000 quotes it still wouldn't be faster than e.g. a strfile-indexed file 05:18:44 you can't attach category lists to quotes 05:18:59 quintopia: nobody can be arsed to do that. 05:19:12 nobody fundamentally gives a shit about qdbs, good luck trying to make them 05:19:20 i would write a learning system to do it if i had 100000 quotes to categorize :P 05:19:28 `quotes ell 05:19:29 No output. 05:19:37 hmm 05:19:38 `quote ell 05:19:40 29) PA ET ANNET UNIVERSET DER DE ENESTE PERSONEN OERJAN: sa jeg kan bare konkludere med at det er feil, eller er verden helt bonkers \ 53) Gregor is often a scandalous imposter. It's all the hats, I tell you. \ 75) ehird: every set can be well-ordered. corollary: every set s has the same diagram used 05:19:45 wtf? 05:19:47 `run ls -l bin/quotes 05:19:50 lrwxrwxrwx 1 5000 0 9 Dec 12 05:19 bin/quotes -> bin/quote 05:19:51 (i realize that i'm never going to do this, it being that i don't give a shit either) 05:19:56 `quote oklo 05:19:58 37) i can get an erection out of a plank, you can quote me on that. \ 39) anyway, torture would be fun to experience, true should put that on my todo list \ 42) i'm my dad's unborn sister \ 52) oklofok: I'm a tad over-apologetic. I apologize. \ 55) GregorR: are you 05:20:02 `quotes oklo 05:20:03 No output. 05:20:04 elliott: bin/bin/quote? 05:20:05 SYMLINK FAIL 05:20:10 oh god it's so active in here tonight 05:20:12 `run cd bin; ls -l quotes 05:20:14 lrwxrwxrwx 1 5000 0 9 Dec 12 05:19 quotes -> bin/quote 05:20:16 Gregor: LOZL 05:20:24 `run unlink bin/quotes; cd bin; ln -s quote quotes 05:20:25 wareya: RUN IN FEAR 05:20:26 No output. 05:20:27 `quotes oklo 05:20:30 No output. 05:20:31 `quotes oklo 05:20:32 37) i can get an erection out of a plank, you can quote me on that. \ 39) anyway, torture would be fun to experience, true should put that on my todo list \ 42) i'm my dad's unborn sister \ 52) oklofok: I'm a tad over-apologetic. I apologize. \ 55) GregorR: are you 05:20:35 yay 05:20:45 `pastequotes 05:20:47 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.16424 05:20:52 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.16424 05:20:53 the best quotes 05:21:07 elliott: what's the best way to select a random line? 05:21:09 holy SHIT it's 5:20 am! 05:21:10 `pastequotes 05:21:13 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.22726 05:21:15 `pastequotes 05:21:23 quintopia: I use shuf; http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/quote 05:21:24 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.17216 05:21:35 `quote 69 05:21:35 69) if a girl is that cute, i don't care how many penises she has \ 169) (in #irp) Flonk, ask on #esoteric? Sgeo: yeah well its C++, so not that esoteric :P 05:21:38 Ok, why are those links broken? 05:21:41 `quote 231) Vorpal loves the sodomy. elliott, sure why not \ 232) [...] ALWAYS OPEN TO TRYING NEW THINGS. \ 233) So it's not exactly trivial. [Later about same thing] It's a trivial C program :P \ 241) ONLY GOOD QUOTES PLEASE! AND NO FAKE ONES EITHER! \ 242) * pikhq sticks 05:21:43 Sgeo: give it time 05:21:46 try reloading 05:21:54 elliott: It'd be nice if `quote 69 didn't give you 169 and 269 too :P 05:21:59 `quote No output. 05:22:02 Gregor: `quote ^69) 05:22:09 `quote ^69) 05:22:11 No output. 05:22:12 `quote ^69\) 05:22:13 69) if a girl is that cute, i don't care how many penises she has 05:22:18 Gregor: `quote ^69\) :P 05:22:36 Gregor: I don't want to make it impossible to search for a number. Admittedly you could do that by doing (93) or whatever. 05:22:38 Gregor: Okay, I'll do it. 05:22:59 I'm glad I've made such persuasive arguments. 05:23:44 `quote 69) 05:23:45 No output. 05:23:52 elliott: poor you and your lack of sleep 05:23:58 My quotes are boring 05:24:05 my quotes are non-existent 05:24:10 `addquote My quotes are boring 05:24:12 246) My quotes are boring 05:24:13 but then i don't talk 05:24:24 can't get a word in edgewise next to elliott :P 05:24:33 elliquintopia 05:24:35 quintopia: nobody can, the graphs prove it 05:24:57 quintopia: i was the most active talker when i was only on for two hours or so, at night, on an iphone, concealing this fact 05:25:04 my life's achievement 05:25:05 elliott: the evidence before the court is incontrovertible, there's no need for the jury to retire. 05:25:19 I think I still like XOR Heat, despite the uselessness of polynomial heat vs not 05:25:29 (verdict: you have no life) 05:25:39 RIP elliott 05:26:02 quintopia: hard to have a life in a mental unit. 05:26:17 i'd have gone insane without the wonders of mobile data links. 05:27:12 `run echo '#!/bin/sh' >bin/quote 05:27:13 No output. 05:27:18 surely you could have smuggled a knife into your room somehow? there's no end of fun to be had with a knife... 05:27:21 `run echo 'allquotes | if [ "$1" ]; then' >>bin/quote 05:27:21 No output. 05:27:28 `run echo ' if [ "$(($1+0))" = "$1" ]; then' >>bin/quote 05:27:29 No output. 05:27:33 quintopia: good to know your sanity is still intact 05:27:39 `run echo ' sed "$1{p;q};d"' >>bin/quote 05:27:40 No output. 05:27:45 `run echo ' else' >>bin/quote 05:27:46 No output. 05:27:51 `run echo ' egrep -i -- "$1"' >>bin/quote 05:27:52 No output. 05:27:57 `run echo ' fi' >>bin/quote 05:27:58 No output. 05:27:59 elliott: Good lord man X_X 05:28:02 `run echo 'else shuf -n 1; fi' >>bin/quote 05:28:03 No output. 05:28:07 Gregor: i actually wrote those lines on the spot! 05:28:14 Gregor: that sentence would be true, were it not a lie! 05:28:18 `quote penis 05:28:19 69) if a girl is that cute, i don't care how many penises she has \ 106) A person's sex is not the same thing as their penis length. 05:28:23 `quote 69 05:28:24 69) if a girl is that cute, i don't care how many penises she has \ 69) if a girl is that cute, i don't care how many penises she has 05:28:27 what 05:28:37 `quote (69) 05:28:38 69) if a girl is that cute, i don't care how many penises she has \ 169) (in #irp) Flonk, ask on #esoteric? Sgeo: yeah well its C++, so not that esoteric :P 05:28:43 ok it almost works :D 05:28:55 hm 05:29:13 aha 05:29:37 `run sed -i 's/ sed "$1{p;q};d"/ sed "$1q;d"/' bin/quote 05:29:39 No output. 05:29:47 `quote 69 05:29:58 69) if a girl is that cute, i don't care how many penises she has 05:30:02 that was quite slow 05:30:03 oh well 05:30:04 `quote 69 05:30:05 69) if a girl is that cute, i don't care how many penises she has 05:30:07 yay 05:30:09 `quote (69) 05:30:11 69) if a girl is that cute, i don't care how many penises she has \ 169) (in #irp) Flonk, ask on #esoteric? Sgeo: yeah well its C++, so not that esoteric :P 05:30:16 Gregor: leet unix coder, at your service 05:30:22 lawl 05:30:49 05:31:24 Sgeo: you have a tmi story relating to that quote? 05:31:27 this i gotta hear 05:31:54 Does it involve the phrase "or more precisely, pre-op transexual" 05:32:17 It's less of a story, and more of an incorrect belief I had as a kid 05:32:20 Gregor: Hellooooooooo Sine! 05:32:33 Gregor: (I think Ami pumped oestrogen into #lobby.) 05:32:47 (Oh contravarsy) 05:32:48 elliott: Funny since Ami is a bot run by a male :P 05:32:50 (Am I a bad person yet?) 05:32:55 oyster gene 05:32:59 Gregor: *by a male... FOR NOW 05:33:03 Or rather, by a (male... FOR NOW) 05:33:08 GET OUT WHILE YOU STILL CAN 05:34:23 My mom told me that girls were different from boys, and my creativity was very limited. I thought "almost exactly the same, except at the tip" 05:34:48 I... and ... uh, what was the difference at the tip ... 05:35:40 Instead of a slit, I thought maybe a star, for example 05:36:04 ...wow. 05:36:31 The Girl With The Starry Urethra. 05:37:31 a sure-fire path to stardom 05:37:59 oerjan: What, can girls aim their penises better? 05:38:02 YOUR PUNS REQUIRE SCIENTIFIC BACKING 05:38:26 `addquote oerjan: What, can girls aim their penises better? 05:38:26 247) oerjan: What, can girls aim their penises better? 05:38:46 Gregor: I should have added "starry" in there to complete the quote's perfection :P 05:38:58 I'm having nightmarish images in my head now of a penis with a starry urethral opening. 05:39:00 Oh god it's terrifying. 05:39:07 We need to add datestamps to the bot, so we can find out the context of quote 05:39:08 s 05:39:35 Sgeo: It's called a copy of the logs and grep. 05:39:49 Sgeo: Or... just looking at the hg history on the HackEgo log. 05:40:14 Sgeo: Anyway, are you sure you want people to be able to find what you said easily forever? :P 05:40:50 elliott: Actually I occasionally recreate HackEgo's hg repo, losing (from the perspective of the public viewer) all history. 05:41:03 Gregor: that's revisionism for you 05:41:25 you know who else liked revisionism? stalin! 05:42:23 oerjan: and hitler! 05:42:38 oerjan: and their baby, stalitler. unfortunately the world was not ready for gay couples to have babies and it was killed shortly after. 05:42:39 oerjan: Yeah, but then he wrote the Declaration of Independence, founded the USSR (United States Soviet Region) and began a reign of prosperity that lasts to this very day. 05:42:41 oerjan: a true shame 05:43:00 Gregor: I approve of this history, the only history. And also the true history. 05:47:05 In Soviet America, history alter you. 05:47:43 (And negros are lynching you) 05:52:09 oerjan, suppose life moved at c/2 orthogonally 05:52:24 Let's call the direction of movement EAST 05:52:40 How will that affect what they can perceive, what experiments they can run? 05:52:53 oerjan, suppose life moved at c/2 orthogonally 05:52:55 that would be very fast! 05:52:59 i find that completely unlikely. 05:53:09 c/2s can't do much that isn't moving. 05:53:56 elliott: but if we were all in it together, it'd be just business as usual in our reference frame (although, significant blueshifting and redshifting of the night sky maybe?) 05:53:57 hasn't it been proved that ships cannot go faster than c/2 05:54:10 quintopia: we're talking about game of life. 05:54:11 oerjan: yes. 05:54:36 oerjan: intelligent life moving at c/2 would have to compute *and* do half of moving in one generation, or something 05:54:39 elliott: i thought you were making a joke by remapping it to real life 05:54:42 oerjan: c/100000000000000 is more likely :) 05:55:34 (and in any case, i was doing that whether or not you were) 05:55:34 Which came first? Proof of c/4 max speed diagonal, or of c/2 max speed orthogonal 05:55:46 i think i'm missing some piece of this particular GoL conversation though 05:55:46 I know one is easily proved from the other 05:56:14 quintopia, scientists living inside GoL 05:56:32 ah 05:57:45 quintopia: basically sgeo is crazy 05:57:51 words to live by 05:58:07 elliott: no more crazy than you though. just crazy in a different way. 05:58:55 quintopia: an inferior way! 05:59:31 in any case, they'd have to have spaceships travelling ahead of them at all times if they wanted to be able to detect one another to turn before colliding 06:00:01 and they'd have to rebuild each other's spaceships when they passed one another to maintain them at that distance 06:00:28 so if they didn't cooperate, they'd die really easily at that speed 06:00:51 but i doubt they would trust each other any more than we would, and so wouldn't do so 06:00:56 therefore i'm gonna rule it out 06:01:20 quintopia: the scientists are really just hypothetical here, it could just be scientist :P 06:01:21 bye. 06:01:21 -!- elliott has quit (Quit: Leaving). 06:02:36 oh, i suppose they could stop, build their own spaceship, let it get a little bit ahead, and then start chasing it 06:02:41 If they evolve like that, there would possibly be pressures against breaking that sort of trust. Or it could be an automatic biological thing, like heartbeat in humans 06:03:56 Sgeo: evolution would tend to make them smaller, and shave off unnecessary components. aka, they'd devolve into viruses. more than half of the population would be viruses because there could be more of them in the same amount of space 06:04:23 i think the "waiting a bit before starting moving" is a more evolutionarily stable strategy 06:06:15 ahahaha, i just imagined someone posting on the GoL database "the smallest pattern that never stabilizes" and then coming back later and retagging it "the smallest pattern that evolves into a community of intelligent lifeforms" 06:06:32 (yes i realize both are impossible) 06:07:32 (i also realize that even if it were, the former, at least, couldn't be proven) 06:07:49 Good luck proving the latter too 06:08:18 How is the latter impossible, exactly? 06:08:38 ...because the former is impossible? 06:08:53 Define "stable"? 06:09:00 would not a community of interacting intelligences be unstable by definition? 06:09:28 I still don't see why the former is impossible 06:09:43 how is GoL stability usually define? 06:09:49 I have no idea 06:10:01 we know GoL is TC, so you definitely can do neverending processes 06:10:41 http://en.wikipedia.org/wiki/File:Conways_game_of_life_breeder_animation.gif stable? 06:11:05 ah wait... 06:11:32 lack of the first doesn't preclude the second 06:11:41 i withdraw my statement 06:11:56 yeah i would call a breeder stable 06:12:54 there comes a point where the possibility of certain reactions (that may have taken place in the past) can never happen again <-- how i would define stabilizing 06:14:45 for instance, if *our* universe is accelerating in its expansion, there will come a point where we can never observe light incoming from the boundaries of the universe again 06:16:03 A still-life that has only itself as a parent... 06:16:08 Once you run out of those 06:16:34 (I was thinking of that as a way for particularly smart and determined inhibitants to determine the age of the universe) 06:17:02 (Not counting those parents of it whose active cells other than it are at a distance such that they have no influence) 06:20:04 but yeah, with my definition of stabilizing above, it is trivially true that any finite pattern in an infinite universe must eventually stabilize 06:20:39 *empty universe 06:20:41 blah 06:21:08 trivially? 06:21:22 trivially 06:21:53 well 06:21:58 okay, not exactly trivially 06:22:06 there is one technical issue 06:22:43 i think i could prove it though 06:23:20 Also, define "reaction" 06:23:27 I think that's a bit ambiguous 06:23:34 what is obvious is that you'd need the "active area" to expand forever 06:24:05 in order for a sequence of events never to repeat 06:24:29 Ok 06:24:53 Actually, that's blindingly obvious once mentioned but it didn't occur to me 06:25:52 i define reaction more intuitively than precisely 06:26:15 as two or more patterns interacting in a way that produces other patterns (or not) 06:26:29 here patterns would be cohesive distinct pieces 06:26:33 like spaceships 06:27:03 where all the parts are necessary for it to behave the way it does 06:27:12 basically, what the greeks meant by atom 06:28:10 For a definition of pattern, what about: Works even when separated by all other active cells by 2 empty cells 06:28:27 "works" is weird 06:29:28 so imagine you had puffers travelling orthogonally in all four directions, releasing nothing but gliders alternately to either of the directions "behind" them 06:29:45 and those gliders are timed to hit each other and annihilate 06:30:07 in some sense, the same thing never happens in the same place twice 06:30:39 and yet, the places and times where particular reactions happen form a very simple predictable sequence 06:30:52 so i would call it a stable system 06:31:06 you can describe it by a small number of formulas and nothing surprising will ever happen 06:31:10 "predictable" isn't well defined 06:31:28 what's ambiguous there? 06:31:32 All of GoL is 100% predictable 06:31:39 yes 06:31:50 -!- hagb4rd has joined. 06:31:50 it's the "simple" part that's interesting here 06:32:30 the 3-body gravitational problem is completely predictable for any 3 specified bodies, but it's far from simple for many of those arrangements 06:32:46 it may show chaotic behavior 06:33:10 completely determined...but hard to describe 06:34:16 so in a stabilized universe, an observer could look around and say "these types of reactions are going to keep happening for eternity, and those are never going to happen again" 06:44:25 -!- oerjan has quit (Quit: Good night). 06:46:57 All the more reason that an infinite random soup is a much better place to grow up 06:47:22 Although, even with eventual stabilization, life could thrive for a little while 06:47:45 Or even indefinitely, I guess. Just not.. creatively, if the brains don't expand 06:55:36 exactly 06:56:10 not creatively by definition 06:56:42 because on some scale something fundamentally new must happen 06:58:22 if someone were able to say "oh look, we can do this thing that's never been done!" that would contradict the definition of stabilized as the point after which nothing new happens. 07:03:29 It's almost awesome that GoL universes die --- I am no longer _as_ jealous 07:03:38 Our universe dies, their universe dies 07:03:52 (Except, ofc, infinite random soup) 07:04:38 Maybe for GoLverse a definition of heat should be such that we can talk about heat death == stabilization 07:04:55 I need sleep 07:05:26 what do you define as life in the GOL? 07:06:26 I ... don't know. I do know that I like the thought of intelligent life in GoL 07:08:16 -!- pingveno has quit (Ping timeout: 240 seconds). 07:10:26 -!- pingveno has joined. 07:11:40 -!- TLUL has joined. 07:12:46 Gemini hardly seems like it deserves to qualify 07:13:26 Gemini as in what? Sounds like an interesting conversation. 07:14:19 GoL 07:14:26 Ah, thought so. 07:14:31 You know logs exist, right? 07:14:45 Yes, but I didn't know where. 07:14:55 !logs 07:15:07 Ah, hoped maybe a bot would have a link. 07:15:17 Where are they? 07:15:18 /topic 07:15:23 http://tunes.org/~nef/logs/esoteric/?C=M;O=D 07:15:34 這是通道有深奧的編程計算機語言。在這裡,我們用英語交談,如中文,請找其他渠道 07:15:39 That's all I see of the topic 07:15:47 Say /topic 07:15:53 In my client, that's "symbol not displayable" 07:16:05 http://tunes.org/~nef/logs/esoteric/?C=M;O=D ? 07:16:24 sgeo: what is gemini? 07:16:25 Alright. Dunno why that's easier than someone just answering me, but meh. 07:16:39 -!- Sgeo|CGIIRC has joined. 07:16:50 TLUL, so you know how to get it for next time 07:17:08 Oh, /topic doesn't work in CGIIRC 07:17:26 quintopia, replicator 07:17:32 quintopia: It's a UCC-based spaceship. 07:17:50 link? 07:17:53 It's not a replicator, as it cannibalises its parent configuration 07:18:08 http://conwaylife.com/forums/viewtopic.php?f=2&t=399&p=2327#p2327 07:18:24 Can it be made to not do that? 07:18:29 yeah i wasn't aware of a GoL replicator existing yet... 07:18:49 It can be, yes. 07:19:31 It has three-armed constructors at each end. Two arms are for construction, one is for destruction of the parent. 07:19:47 Wonder when the first true replicator will be constructed... 07:20:20 The tape is a glider stream, duplicated and reflected back at each end, offset enough to enter the child created last time it passed through. 07:22:31 How many diffrent variants of Gemini there are? Last I looked a while ago there were at least 3 (the original, true knightship variant and slope 5 ship with different speed)... 07:22:44 wait, if you took out the deconstruction arm, it would be a replicator? 07:22:58 okay i agree with the thread then... awesome pattern 07:23:37 Anyway, it was the first spaceship with slope not 0 or 1. 07:25:58 Night 07:26:15 oh 07:26:16 i see 07:26:23 the tape doesn't get duplicated 07:26:30 so it would require some more modification 07:27:15 Wonder if there is pattern that is bounded in width, length goes to infinity and lengthwise minimum coordinate also goes to infinity, which is not a forward-shooting rake? 07:27:18 -!- Sgeo has quit (Read error: Connection reset by peer). 07:28:34 Would be pretty wild patterns: Gun shooting caterpillars and rake that shoots caterpillars... :-) 07:30:58 -!- Sgeo|CGIIRC has quit (Ping timeout: 265 seconds). 07:31:00 For constructing those, four-slavo glider synthethis of The Caterpillar would be very useful. 07:40:53 lol 07:41:51 Gaaah, today. 07:41:51 what you're describing sounds like one of the fuse-ships (being chased by something that burns the fuse slower) 07:41:55 I just had dinner. 07:42:01 It is 00:41 local time. 07:42:17 mountain time eh 07:42:25 albuquerque? :P 07:42:38 Nope, suburb of Colorado Springs. 07:42:48 close enough 07:42:55 Not very far from the UTC-7 meridian. 07:43:12 -!- hagb4rd has quit (Ping timeout: 245 seconds). 07:51:55 quintopia: All that said, I now have parts of Albuquerque stuck in my head. 07:52:38 pikhq: if you can wake up some neighbors by singing it at the top of your lungs, please do so 07:54:30 quintopia: I'm afraid I cannot without going outside. 07:54:36 And it is FUCKING COLD OUTSIDE HOLY FUCK. 07:54:50 swut you get for being in CO 07:55:03 BECAUSE I HAD MY TRAY TABLE UP 07:55:58 According to weather.gov, the current temperature at the nearest reporting station (the Air Force Academy, a few miles away) is 15°F (-9°C). 07:56:12 And... Very, very bizarrely humid. 07:56:19 ... 68% humidity? What the hell? 07:56:31 The usual humidity here is more like 0. 07:56:45 -!- hagb4rd has joined. 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:11:59 Oh, /topic doesn't work in CGIIRC 08:12:00 What? 08:12:20 I'm not using CGI:IRC 08:36:53 -!- Mathnerd314 has quit (Ping timeout: 250 seconds). 08:41:34 -!- hagb4rd has quit (Ping timeout: 240 seconds). 08:42:46 -!- kar8nga has joined. 08:47:11 -!- kar8nga has quit (Remote host closed the connection). 08:59:40 Well, if the temperature is low, even slight amount of water gives high RH. 09:01:46 The same amount of water that gives 70% RH at -10degC would give only about 6.3% RH at 25degC. 09:09:05 -!- MigoMipo has joined. 09:17:04 -!- Ilari_antrcomp has quit (Read error: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number). 09:18:49 -!- Ilari_ has joined. 09:18:57 -!- Ilari_ has changed nick to Ilari_antrcomp. 09:35:22 -!- MigoMipo has quit (Ping timeout: 240 seconds). 09:37:29 -!- TLUL has quit (Quit: *disappears in a puff of orange smoke*). 10:31:43 As one of those freaky Northerners, I'm conractually obliged to note that -9°C is pretty far from "fucking cold outside holy fuck". 10:33:28 With that amount of expletives, it should be at least -30°C, and even that is pushing it; it's not such a unheard-of temperature. 10:45:20 -!- Phantom_Hoover has joined. 10:59:01 fizzie, indeed, -9°C is more like "uncomfortably cold, but sadly quite common" 11:13:10 -!- MigoMipo has joined. 11:49:23 fizzie, btw I found a lone block of obsidian out in the middle of nowhere yesterday 11:49:38 fizzie, there is a torch trail to it from the crafting bench near the water pillars 11:50:11 fizzie, no water or lava near it 11:51:51 I don't think I had anything to do with that. 12:15:30 Phantom_Hoover, down? 12:15:35 Yes. 12:19:39 fizzie, know anything about the floating *wood* block above a very flat mountain top opposite of nailor's old house? 12:19:46 fizzie, it is next to your house 12:27:10 -!- sftp has joined. 12:59:12 -!- kar8nga has joined. 13:00:48 Lyttle Lytton idea: "There are no words in the English language to describe what I have seen, which is why the remainder of this book is in Finnish." 13:03:44 IMO anything below -20°C is enough for "fucking cold holy fuck" 13:29:15 -!- hagb4rd has joined. 13:31:59 -!- nooga_ has quit (Ping timeout: 250 seconds). 14:11:03 olsner, indeed 14:11:21 olsner, wait, I thought you said 25 14:11:31 20 is "fucking horrible cold" 14:13:08 -!- nopseudoidea has joined. 14:25:17 -!- kar8nga has quit (Ping timeout: 250 seconds). 14:36:08 -!- Slereah has quit (Ping timeout: 255 seconds). 14:41:00 -!- Slereah has joined. 15:23:13 -!- oerjan has joined. 15:26:04 -!- nopseudoidea has quit (Quit: Quitte). 15:29:14 fizzie, btw I found a lone block of obsidian out in the middle of nowhere yesterday 15:29:24 clearly a relic of the previous ice age 15:45:15 -!- poiuy_qwert has joined. 15:53:15 -!- elliott has joined. 15:54:22 22:03:56 Sgeo: evolution would tend to make them smaller, and shave off unnecessary components. aka, they'd devolve into viruses. more than half of the population would be viruses because there could be more of them in the same amount of space 15:54:30 quintopia: that's only true iff it's true in this world too 15:55:33 elliott, FWIW, I have previously pointed out that existing examples of CA evolution march inexorably towards miniaturisation. 15:56:02 Phantom_Hoover: sure, that's what'll happen if you aren't a bastard and don't make them scavenge. 15:56:10 Phantom_Hoover: and don't tile the plane with evil things they have to avoid. 15:56:37 elliott, remember the tribulations in trying to invent an interesting conservative CA? 15:56:59 Phantom_Hoover: yep. but you can do it inside life, really 15:57:15 elliott, hmm. How? 15:57:16 Phantom_Hoover: you just have to get an initial lifeform that has some kind of decaying thing that needs feeding :P 15:57:20 and also tile the plane with obstacles 15:57:28 such that even small, dumb things will bump into something eventually 15:57:33 Incidentally: "There are no words in the English language to describe what I have seen, which is why the remainder of this book is in Finnish." Comment in the context of a Lyttle Lytton entry. 15:57:48 Phantom_Hoover: Perfect. 15:57:53 Phantom_Hoover: Although not really. 15:58:13 -!- p_q has joined. 15:58:13 Could work comedically? 15:58:14 Phantom_Hoover: That's merely funny, and as Adam loves to point out, it would be a perfectly good start to a comedic book. 15:58:24 Yes. 15:58:26 Phantom_Hoover: But it's not actually badly written, just very silly. :p 15:58:33 `translatefromto en fi There are no words in the English language to describe what I have seen, which is why the remainder of this book is in Finnish. 15:58:51 Ei ole sanoja Englanti kielellä kertoa, mitä olen nähnyt, minkä vuoksi jäljellä tämä kirja suomeksi. 15:59:08 Well, "badly-written" isn't necessary; just that you would think "oh, GOD" if someone made you read a book that opened with it. 15:59:27 -!- poiuy_qwert has quit (Ping timeout: 245 seconds). 16:03:15 "As there are no words in the English language to describe what I have seen, I shall lay out the ones I have created for the purpose in brief."? It's pushing the word limit, and it's a bit clunky. 16:04:13 But it has that groanworthy quality of a pretentious SF or fantasy novel. 16:04:33 * oerjan hits Phantom_Hoover with a lump of scrith 16:05:28 OW! 16:05:45 My NEUTRINOS!] 16:05:48 s/]// 16:06:41 Phantom_Hoover: "There are no words in the English language to describe what I have seen. Therefore, allow me to tell you about my constructed language." 16:06:57 elliott, 2 sentences. 16:07:08 Phantom_Hoover: 2 sentences appear several times in old competitions. 16:07:18 * oerjan hits elliott with a loaf of lembas 16:07:37 elliott, hmm. 16:08:10 Phantom_Hoover: Okay, I can't actually find two-sentence ones. 16:08:28 elliott, [[You need not limit an entry to one sentence, and you can even enter more than once. ]] 16:08:40 Phantom_Hoover: "As there are no words in the English language to describe what I have seen, the rest of this book is in Klingon." 16:08:59 (You saw very violent things.) 16:09:04 That's actually /funny/, though; Klingon makes things funny. 16:09:49 * oerjan poors some 'Iw HIq over elliott's head 16:10:26 *pours 16:10:35 Phantom_Hoover: Yes, well. 16:10:53 WHAT IS HAPPENING TO MY SPELING 16:11:03 BTW: APNIC cumulative delegations this year: http://imagebin.ca/view/R7vXhV.html 16:11:11 lembas overdose 16:11:20 elliott, the constructed lang/words ones are probably the most convincingly awful. 16:11:43 elliott, what competition is this? 16:11:57 Vorpal: The Lyttle Lytton, the world's premier bad book-opening authoring contest. 16:12:02 elliott, ah 16:12:15 elliott, does it have to be on that form? 16:12:33 Vorpal: (Unlike the rabble of talentless hacks calling themselves the Bulwer-Lytton contest, who only manage to spew out some billions of words and call that a bad opening, Lyttle Lytton entries must be short. And terrible>0 16:12:35 *terrible.) 16:12:39 And no, I'm just trying to aid Phantom_Hoover. 16:13:50 Vorpal, the tricky bit is making it amusingly awful but not making it satirical. 16:13:56 -!- Sgeo has joined. 16:14:21 Phantom_Hoover: There are no words for what I have just seen. So I made some up, and here they are: 16:14:21 Quassel is a bit ugly, and you MUST resize stuff 16:14:26 But it doesn't seem terrible 16:14:42 elliott, that. That is good. 16:14:51 Also, sudo apt-get uninstall ubuntu-desktop did not have the effect I was expectinng 16:15:10 Nor did sudo apt-get autoremove afterwards 16:18:25 Yes, they delegated 6.76x/8 just this year... And the total amount of space remaining to them is about 5.73(3.19[present]+2.00[newblocks]+1.54[various]-1.00[setaside])x/8s. 16:19:20 Phantom_Hoover: "Ah, poetic Paris: with its pâtés and beaujolais, tiramisu and au jus." 16:19:24 I love these winners. 16:19:57 "Emperor Wu liked cake, but not exploding cake!" 16:20:02 Cracks me up every time. 16:22:14 "Ei ole sanoja Englanti kielellä kertoa, mitä olen nähnyt, minkä vuoksi jäljellä tämä kirja suomeksi" -> "There are no words language English to tell, which is why there is left this book in Finnish", if I try to approximate the ungrammaticalness in it. 16:22:58 Whoops, I skipped the whole has-seen part. 16:23:03 That one is reasonably correct, though. 16:23:12 Phantom_Hoover: Scaling Everest was, by far, the most amazing and transformative experience of my life. Unfortunately, this is a thesis on context-free grammars. 16:23:16 Phantom_Hoover: I swear augur wrote that one. 16:23:31 what did i write? :o 16:23:36 augur: "Scaling Everest was, by far, the most amazing and transformative experience of my life. Unfortunately, this is a thesis on context-free grammars." 16:23:48 hahaha 16:23:52 i wish i had written that. :D 16:24:00 augur would never write a thesis on something that simple 16:24:08 oerjan: depends on what the question is 16:24:31 "Pika ... chu, thought Pikachu. " 16:24:37 it is unknown yet 16:24:40 Fukutsuru died in 2005 but his frozen sperm lived on for people’s benefit. 16:24:43 you can't really beat that 16:24:48 Phantom_Hoover: that one clearly was by pikhq 16:24:59 pik... hq, thought pikhq. 16:25:00 My... my god 16:25:06 My mind is blown. 16:25:09 Phantom_Hoover: That Fukutsuru line was from WIKIPEDIA. 16:25:17 Phantom_Hoover: It's *still there*. 16:25:17 elliott, I know! 16:25:28 I have read through all of these twice! 16:26:21 Phantom_Hoover: SO HAVE I 16:28:06 '"Caramba!" exclaimed Diego de Fonseca, "a cucaracha has fallen onto the tortillas of my wife!"' 16:28:26 Modulo italics. 16:30:42 elliott, so "There are no words for what I have just seen, so I made some up, and here they are:" 16:30:48 Final version? 16:31:06 Phantom_Hoover: Hmm... Not sure. 16:31:14 Phantom_Hoover: Gimme an hour or two to see if anything better pops into my head :P 16:41:36 -!- oerjan has quit (*.net *.split). 16:41:36 -!- Ilari_antrcomp has quit (*.net *.split). 16:41:36 -!- quintopia has quit (*.net *.split). 16:41:36 -!- Ilari has quit (*.net *.split). 16:41:37 -!- HackEgo has quit (*.net *.split). 16:41:37 -!- Gregor has quit (*.net *.split). 16:41:37 -!- augur has quit (*.net *.split). 16:41:37 -!- Wamanuz has quit (*.net *.split). 16:41:38 -!- jcp has quit (*.net *.split). 16:41:38 -!- elliott has quit (*.net *.split). 16:41:38 -!- pikhq has quit (*.net *.split). 16:41:38 -!- sebbu2 has quit (*.net *.split). 16:41:38 -!- Zuu_ has quit (*.net *.split). 16:41:38 -!- sshc has quit (*.net *.split). 16:41:39 -!- mycroftiv has quit (*.net *.split). 16:41:39 -!- Deewiant has quit (*.net *.split). 16:41:41 -!- aloril has quit (*.net *.split). 16:41:41 -!- mtve has quit (*.net *.split). 16:41:41 -!- yiyus_ has quit (*.net *.split). 16:41:41 -!- SimonRC has quit (*.net *.split). 16:41:41 -!- sftp has quit (*.net *.split). 16:41:41 -!- wareya has quit (*.net *.split). 16:41:42 -!- olsner has quit (*.net *.split). 16:41:42 -!- iamcal has quit (*.net *.split). 16:41:42 -!- jix has quit (*.net *.split). 16:41:42 -!- coppro has quit (*.net *.split). 16:41:42 -!- fxkr has quit (*.net *.split). 16:41:42 -!- nooga has quit (*.net *.split). 16:41:43 -!- ineiros has quit (*.net *.split). 16:41:43 -!- dbc has quit (*.net *.split). 16:41:43 -!- tswett has quit (*.net *.split). 16:41:43 -!- Sgeo has quit (*.net *.split). 16:41:43 -!- hagb4rd has quit (*.net *.split). 16:41:43 -!- Phantom_Hoover has quit (*.net *.split). 16:41:44 -!- cheater99 has quit (*.net *.split). 16:41:44 -!- Quadrescence has quit (*.net *.split). 16:41:44 -!- Vorpal has quit (*.net *.split). 16:41:44 -!- Leonidas has quit (*.net *.split). 16:41:45 -!- pingveno has quit (*.net *.split). 16:41:45 -!- Sasha2 has quit (*.net *.split). 16:41:46 -!- p_q has quit (*.net *.split). 16:41:46 -!- Slereah has quit (*.net *.split). 16:41:46 -!- MigoMipo has quit (*.net *.split). 16:41:47 -!- fizzie has quit (*.net *.split). 16:41:47 -!- FireFly has quit (*.net *.split). 16:41:47 -!- myndzi\ has quit (*.net *.split). 16:41:47 -!- lifthrasiir has quit (*.net *.split). 16:41:47 -!- yiyus has quit (*.net *.split). 16:43:48 -!- p_q has joined. 16:43:48 -!- elliott has joined. 16:43:48 -!- oerjan has joined. 16:43:48 -!- Slereah has joined. 16:43:48 -!- hagb4rd has joined. 16:43:48 -!- sftp has joined. 16:43:48 -!- MigoMipo has joined. 16:43:48 -!- Phantom_Hoover has joined. 16:43:48 -!- Ilari_antrcomp has joined. 16:43:48 -!- pingveno has joined. 16:43:48 -!- pikhq has joined. 16:43:48 -!- augur has joined. 16:43:48 -!- sebbu2 has joined. 16:43:48 -!- wareya has joined. 16:43:48 -!- Sasha2 has joined. 16:43:48 -!- cheater99 has joined. 16:43:48 -!- FireFly has joined. 16:43:48 -!- Quadrescence has joined. 16:43:48 -!- Wamanuz has joined. 16:43:48 -!- nooga has joined. 16:43:48 -!- Vorpal has joined. 16:43:48 -!- Deewiant has joined. 16:43:48 -!- Zuu_ has joined. 16:43:48 -!- quintopia has joined. 16:43:48 -!- myndzi\ has joined. 16:43:48 -!- tswett has joined. 16:43:48 -!- olsner has joined. 16:43:48 -!- Ilari has joined. 16:43:48 -!- fizzie has joined. 16:43:48 -!- HackEgo has joined. 16:43:48 -!- jcp has joined. 16:43:48 -!- aloril has joined. 16:43:48 -!- Gregor has joined. 16:43:48 -!- iamcal has joined. 16:43:48 -!- sshc has joined. 16:43:48 -!- mtve has joined. 16:43:48 -!- Leonidas has joined. 16:43:48 -!- ineiros has joined. 16:43:48 -!- dbc has joined. 16:43:48 -!- jix has joined. 16:43:48 -!- yiyus_ has joined. 16:43:48 -!- coppro has joined. 16:43:48 -!- mycroftiv has joined. 16:43:48 -!- fxkr has joined. 16:43:48 -!- lifthrasiir has joined. 16:43:48 -!- SimonRC has joined. 16:43:48 -!- yiyus has joined. 16:43:48 -!- nopseudoidea has joined. 16:46:03 elliott, err, Yudkowsky wrote fanfic!? 16:46:25 Vorpal: Does-write; it doesn't show any signs of stopping and I'm quite some chapters behind. It is hilarious. 16:46:34 elliott, is it bad or good? 16:46:36 http://www.fanfiction.net/s/5782108/1/Harry_Potter_and_the_Methods_of_Rationality 16:46:43 Vorpal: It is very, very good. And hilarious. 16:46:55 (Well, okay, it's not all yuks, but it is partly yuks.) 16:47:08 elliott, does it take things seriously, or does it make fun of the thing? Considering the title... 16:47:25 -!- oerjan has quit (*.net *.split). 16:47:25 -!- Ilari_antrcomp has quit (*.net *.split). 16:47:25 -!- quintopia has quit (*.net *.split). 16:47:25 -!- Ilari has quit (*.net *.split). 16:47:26 -!- HackEgo has quit (*.net *.split). 16:47:26 -!- Gregor has quit (*.net *.split). 16:47:27 -!- augur has quit (*.net *.split). 16:47:27 -!- Wamanuz has quit (*.net *.split). 16:47:27 -!- jcp has quit (*.net *.split). 16:47:27 -!- elliott has quit (*.net *.split). 16:47:27 -!- pikhq has quit (*.net *.split). 16:47:27 -!- sebbu2 has quit (*.net *.split). 16:47:27 -!- Zuu_ has quit (*.net *.split). 16:47:28 -!- sshc has quit (*.net *.split). 16:47:28 -!- mycroftiv has quit (*.net *.split). 16:47:29 -!- Deewiant has quit (*.net *.split). 16:47:30 -!- aloril has quit (*.net *.split). 16:47:30 -!- mtve has quit (*.net *.split). 16:47:30 -!- yiyus_ has quit (*.net *.split). 16:47:30 -!- SimonRC has quit (*.net *.split). 16:47:30 -!- sftp has quit (*.net *.split). 16:47:30 -!- wareya has quit (*.net *.split). 16:47:31 -!- olsner has quit (*.net *.split). 16:47:31 -!- iamcal has quit (*.net *.split). 16:47:31 -!- jix has quit (*.net *.split). 16:47:31 -!- coppro has quit (*.net *.split). 16:47:31 -!- fxkr has quit (*.net *.split). 16:47:31 -!- nooga has quit (*.net *.split). 16:47:32 -!- ineiros has quit (*.net *.split). 16:47:32 -!- dbc has quit (*.net *.split). 16:47:32 -!- tswett has quit (*.net *.split). 16:47:32 -!- nopseudoidea has quit (*.net *.split). 16:47:33 -!- hagb4rd has quit (*.net *.split). 16:47:33 -!- Phantom_Hoover has quit (*.net *.split). 16:47:33 -!- cheater99 has quit (*.net *.split). 16:47:33 -!- Quadrescence has quit (*.net *.split). 16:47:33 -!- Vorpal has quit (*.net *.split). 16:47:33 -!- Leonidas has quit (*.net *.split). 16:47:34 -!- pingveno has quit (*.net *.split). 16:47:34 -!- Sasha2 has quit (*.net *.split). 16:47:35 -!- p_q has quit (*.net *.split). 16:47:35 -!- Slereah has quit (*.net *.split). 16:47:35 -!- MigoMipo has quit (*.net *.split). 16:47:35 -!- fizzie has quit (*.net *.split). 16:47:36 -!- FireFly has quit (*.net *.split). 16:47:36 -!- myndzi\ has quit (*.net *.split). 16:47:36 -!- lifthrasiir has quit (*.net *.split). 16:47:36 -!- yiyus has quit (*.net *.split). 16:47:57 -!- nopseudoidea has joined. 16:47:57 -!- p_q has joined. 16:47:57 -!- elliott has joined. 16:47:57 -!- oerjan has joined. 16:47:57 -!- Slereah has joined. 16:47:57 -!- hagb4rd has joined. 16:47:57 -!- sftp has joined. 16:47:57 -!- MigoMipo has joined. 16:47:57 -!- Phantom_Hoover has joined. 16:47:57 -!- Ilari_antrcomp has joined. 16:47:57 -!- pingveno has joined. 16:47:57 -!- pikhq has joined. 16:47:57 -!- augur has joined. 16:47:57 -!- sebbu2 has joined. 16:47:57 -!- wareya has joined. 16:47:57 -!- Sasha2 has joined. 16:47:57 -!- cheater99 has joined. 16:47:57 -!- FireFly has joined. 16:47:57 -!- Quadrescence has joined. 16:47:57 -!- Wamanuz has joined. 16:47:57 -!- nooga has joined. 16:47:57 -!- Vorpal has joined. 16:47:57 -!- Deewiant has joined. 16:47:57 -!- Zuu_ has joined. 16:47:57 -!- quintopia has joined. 16:47:57 -!- myndzi\ has joined. 16:47:57 -!- tswett has joined. 16:47:57 -!- olsner has joined. 16:47:57 -!- Ilari has joined. 16:47:57 -!- fizzie has joined. 16:47:57 -!- HackEgo has joined. 16:47:57 -!- jcp has joined. 16:47:57 -!- aloril has joined. 16:47:57 -!- Gregor has joined. 16:47:57 -!- iamcal has joined. 16:47:57 -!- sshc has joined. 16:47:57 -!- mtve has joined. 16:47:57 -!- Leonidas has joined. 16:47:57 -!- ineiros has joined. 16:47:57 -!- dbc has joined. 16:47:57 -!- jix has joined. 16:47:57 -!- yiyus_ has joined. 16:47:57 -!- coppro has joined. 16:47:57 -!- mycroftiv has joined. 16:47:57 -!- fxkr has joined. 16:47:57 -!- lifthrasiir has joined. 16:47:57 -!- yiyus has joined. 16:47:57 -!- SimonRC has joined. 16:48:05 right 16:48:30 bbl food 16:50:37 -!- ais523 has joined. 16:53:52 elliott, incidentally, when does the 2011 competition close? 16:54:05 Phantom_Hoover: Um, 2011, one would assume. 16:54:21 "I will accept entries up to but not after 2011 April 15 at noon, Pacific Time." 16:56:10 -!- nopseudoidea has quit (Quit: Quitte). 16:57:48 Ah. 17:00:55 Oh jesus christ, now reddit are masturbating over the fact that http://surfraw.alioth.debian.org/ was written by Julian Assange. 17:01:21 YOU GUYS, WE LIKE JULIAN ASSANGE, AND GET THIS: BEFORE HE BECAME THE SELF-APPOINTED "PERSON WHO DOES VERY LITTLE EXCEPT BE A LIGHTNING ROD FOR WIKILEAKS", HE *WROTE SOME PROGRAMS OH MY FUCKING GOD* 17:03:32 Was this pre- or post-ridiculous hair? 17:04:37 His ridiculous hair is CONSTANT. 17:08:18 Anyone going on Minecraft? 17:09:32 I'm not on. 17:09:48 Yes, but going-on. 17:11:12 Don't know. 17:14:28 Ooh, fizzie's bunker has pretty. 17:17:04 "After a lot of writing in Q10 on Windows, I got used to the typewriter sound it makes every time you press a key. At least for me it feels great to have this sort of sound feedback. 17:17:05 On Linux on the other hand, I love writing it VIM, because of it's editing features. How could I add this functionality to VIM? 17:17:05 Simply said, I want to play a sound every time I press a key in the insert mode." 17:17:08 You can't make this shit up. 17:17:58 elliott, who said that 17:18:06 Vorpal: http://stackoverflow.com/questions/4418364/how-can-i-make-vim-play-typewriter-sound-when-i-write-a-letter/4418605#4418605 17:18:08 erm 17:18:10 Vorpal: http://stackoverflow.com/questions/4418364/how-can-i-make-vim-play-typewriter-sound-when-i-write-a-letter/ 17:18:34 elliott, presumably you could patch it to do that.. I mean, it shouldn't be too hard at all really 17:18:45 Vorpal: It was solved in Vimscript, but that's not the point. 17:18:47 The point is WHY GOD WHY. 17:18:53 heh 17:18:54 [[Is why I love vim, because "crazy" and dare all other "freaks" are always ready to give them the answer, and "Vim" in turn serves as a backdrop to all this by having these endless possibilities. – user107745 6 hours ago]] <----- what 17:18:58 and why god why indeed 17:19:14 "Perhaps what you really want is an IBM Model M keyboard." "After buying $200 keyboard? Nothx :) – Darth 21 hours ago" 17:19:23 Ooh, I bet it was a Logitech expensive-mush keyboard. 17:19:26 Money well wasted! 17:20:21 "Redis without a Linux kernel - How to run Redis natively on Xen" 17:20:25 Is Xen the new OS? :) 17:21:34 elliott, xen actually runs below the dom0 in some senses 17:21:57 Vorpal: Indeed. 17:22:05 Vorpal: I've just heard "Foo on Xen" quite a bit lately. 17:22:16 Vorpal: Am I right in thinking that Xen's dom0 architecture is totally insane? 17:22:28 elliott, I don't know the details 17:22:42 elliott, but it seems probable 17:35:18 -!- pingveno has quit (Read error: Connection reset by peer). 17:35:38 -!- pingveno has joined. 17:41:20 -!- Mathnerd314 has joined. 17:53:32 -!- oerjan has quit (Quit: leaving). 17:54:52 -!- hagb4rd has quit (Ping timeout: 245 seconds). 18:00:23 elliott: It is completely insane. 18:00:58 pikhq: CubeHash isn't an SHA-3 finalist :( 18:02:03 pikhq: Meanwhile: Fragments from "WikiLeaks! The Musical.": http://www.mcsweeneys.net/2010/12/2greenman.html 18:02:20 elliott, on what grounds? 18:02:32 Vorpal: They don't state their reasons individualy. 18:02:44 elliott, ah, but presumably technical reasons? 18:02:57 Well ... 18:03:03 Vorpal: The selection was challenging, because we had a strong field of fourteen hash algorithms remaining in the SHA-3 competition that were very strong contenders for the hash function standard. Security was our greatest concern, and we took this very seriously, but none of these candidates was clearly broken. However, it is meaningless to discuss the security of a hash function without relating security to performance, so in reality, NIST wan 18:03:03 ted highly secure algorithms that also performed well. We preferred to be conservative about security, and in some cases did not select algorithms with exceptional performance, largely because something about them made us “nervous,” even though we knew of no clear attack against the full algorithm. 18:03:19 Vorpal: tl;dr CubeHash isn't in because it isn't. 18:03:42 elliott, was cubehash fast? 18:03:50 Vorpal: It was parameterisable. But yes, it was fast. 18:04:21 The SHA-3 contender was CubeHash 16/32, which is as fast as SHA-256 and SHA-512, sez djb. 18:04:45 elliott, mhm. 18:04:51 bbl 18:05:00 -!- hagb4rd has joined. 18:11:10 -!- Slereah has quit (Ping timeout: 240 seconds). 18:14:02 elliott: "Something about them made us 'nervous'"? 18:14:10 elliott: Damned stupid selection criterion. 18:14:21 pikhq: They're just afraid of djb's BLACK STARE. 18:16:03 -!- Slereah has joined. 18:21:47 ais523: hi 18:28:52 -!- asiekierka has joined. 18:28:53 hello! 18:30:14 oh dear 18:34:23 "On an i386 system with x86-64 kernel" What. 18:41:22 pikhq: MAME is non-DFSG. Lame. 18:41:27 pikhq: You should rewrite it. 18:45:36 'sup? 18:46:45 Phantom_Hoover: supness. 18:48:48 ais523: ping 18:48:58 Any furtherances on the Lyttle Lytton front? 18:50:06 Phantom_Hoover: Not really. 18:50:10 Vorpal: [[Also in 2007, the Open Group reached a binding legal agreement to prevent the German University of Kassel from using "UNIK" as its short form name.]] 18:50:42 "There are no words for what I have just seen, so here are the ones I made up:" 18:51:02 Good enough? 18:51:09 Phantom_Hoover: No... 18:51:13 Phantom_Hoover: That one's not good. 18:51:51 Why? 18:52:31 Phantom_Hoover: Dunno. 18:53:03 "There are no words for what I have just seen, so I made some up."? 18:53:27 [[In 2004 a bootleg version of MAME was created, called '39-in-1' which ran on an Intel XScale processor. As of version 0.133u1, MAME also emulates this 'game', thus in essence, emulates itself.]] 18:54:00 Phantom_Hoover: "There are no words for what I have just seen, so I made some up, and here they are:" is the last one you and I said. 18:54:04 I'm still mulling it over though. 18:54:39 Hmm. Ordinarily, I'd go for compactness, but bumbling prose is good here. 18:56:04 Phantom_Hoover: Let's make an end-of-book sentence! Dunno if that competition's being run this year, but let's do it anyway. 18:56:15 It is. 18:56:41 Phantom_Hoover: First thought: "And that was when I finally conceded that, yes, orang-utans probably *do* exist. Probably." 18:56:48 Phantom_Hoover: First thought: "And that was when I finally conceded that, yes, orang-utans *do* exist. Probably." 18:56:50 make: *** No rule to make target `1.2.mkv', needed by `all'. Stop. 18:56:55 Follow-up to that opening sentence, laced with poorly-made up words? 18:56:58 There's a rule for %.mkv. 18:57:09 I'm pretty sure that matches 1.2.mkv. 18:57:13 What the hell, Make? 18:57:20 pikhq: Show your Makefile; I've fixed problems like that before. 18:57:36 http://sprunge.us/DJSX 18:57:59 Phantom_Hoover: And that's when her furli'net finally absorbed my guarætïr, in a most hunji manner. At last, I was a virgin no more. 18:58:14 Heh. 18:58:30 pikhq: So, uh, do 1.2.mp4 1.2.ac3 1.2.... all exist? 18:58:34 pikhq: Because if not, it won't count as an implicit rule. 18:58:53 That would actually work with the opening, and reinforce the implication that this book was eyelash-wrenchingly awful. 18:58:55 ... Wait, %.title shouldn't be there. 18:59:00 pikhq: (Imagine having a rule "%.o: %.s" and doing "make foo.o" when you have foo.c; you don't want it to try and make foo.s, you want it to say "Sorry, you don't have a rule to do that!") 18:59:28 pikhq: Also... 18:59:38 pikhq: ${<:%.mp4=%.ac3} is the same as $*.ac3 18:59:43 Stems, man. 18:59:46 elliott: Oh, dur. 19:00:04 pikhq: Also, make it a mkfile! Everyone loves mkfiles! 19:00:50 pikhq: "2>&/dev/null" What. 19:00:55 pikhq: That & is... no. 19:01:22 %.ac3: %.title 19:01:22 tccat -i ${DVDPATH} -T ${TITLE},-1 | tcextract -x ac3 -t vob -a 0 > %@ 19:01:26 pikhq: excuz me wat is %@ 19:01:32 A typo. 19:01:44 %.sid1.idx: %.title 19:01:44 tccat -i ${DVDPATH} -T ${TITLE},-1 | tcextract -x ps1 -t vob -a 33 | subtitle2vobsub -o ${<:%.idx=%} -i ${DVDPATH}/VIDEO_TS/VTS_`printf '%.2i\n' ${TITLE}`_0.IFO 19:01:44 %.sid1.sub: %.sid1.idx 19:01:53 pikhq: Does the %.sid1.idx rule create %.sid1.sub too? 19:01:57 Yes. 19:02:01 pikhq: YOU FAIL AT MAKE 19:02:06 %.sid1.idx %.sid1.sub: %.title 19:02:07 tccat -i ${DVDPATH} -T ${TITLE},-1 | tcextract -x ps1 -t vob -a 33 | subtitle2vobsub -o ${<:%.idx=%} -i ${DVDPATH}/VIDEO_TS/VTS_`printf '%.2i\n' ${TITLE}`_0.IFO 19:02:10 pikhq: Fixed that for you. 19:02:16 (And remove the dependency-only rule.) 19:02:43 elliott: That does *not* actually work the way you think it does. 19:02:51 pikhq: It doesn't? I've done it before and I swear it does. 19:03:01 elliott: Make will call that rule to make %.sid1.idx, and then to make %.sid1.sub. 19:03:14 pikhq: Well that's stupid. 19:03:18 Yes, yes it is. 19:03:29 pikhq: As well as using $*, I'd also unify the sid0 and sid1 rules, and just use "foo: VOB_A_PARAM=32 or 33". (With a better name.) 19:03:42 Also I'm not sure why you're saying ${FOO}; $(FOO) is more conventional. 19:04:02 -!- cheater99 has quit (Ping timeout: 245 seconds). 19:04:11 Because, uh. 19:05:03 -!- asiekierka has quit (Ping timeout: 265 seconds). 19:07:43 pikhq: Rewrite it in mk/rc! 19:09:56 Now, to figure out why it's still not making 1.2.mkv. 19:10:25 pikhq: Rewrite it in mk/rc! 19:10:34 pikhq: Or just use make -v. 19:11:16 -v is version info. 19:11:24 make -d is more helpful. 19:11:33 Yeah well your mother. 19:11:35 Is it just me, or does WikiLeaks not actually have any leaked stuff on its site? 19:11:36 pikhq: MK/RC 19:11:48 Phantom_Hoover: http://213.251.145.96/ 19:11:53 Phantom_Hoover: See the links with dates below them. 19:12:07 http://213.251.145.96/cablegate.html, http://213.251.145.96/file/wikileaks_archive.7z, http://213.251.145.96/iraq/diarydig/, http://213.251.145.96/iraq/diarydig/, http://www.collateralmurder.com/ 19:12:38 Ahh. 19:12:45 Not a very good link colour, admittedly. 19:14:49 It would appear to be *fucking retarded*. 19:15:11 "Hmm, I have an implicit rule without prereqs that gets me a prereq for my target. Well, fuck that." 19:15:20 pikhq: mk! 19:15:21 pikhq: mk and rc! 19:15:26 pikhq: plan 9 port! 19:15:59 ... I get the strong feeling that Make hates rules without prereqs. 19:17:02 -!- cheater99 has joined. 19:17:06 pikhq: mk! 19:17:20 pikhq: I've used it before! It's great! 19:17:23 Fuck it. Everything gets a prereq on $(DVDPATH). 19:17:34 pikhq: mk! 19:17:35 pikhq: I've used it before! It's great! 19:17:35 (it even makes sense!) 19:17:43 pikhq: WHY DO YOU IGNORE ME 19:20:04 Does mk handle implicit rules without prereqs? 19:20:11 pikhq: Pretty sure, yes. 19:20:17 pikhq: It Just Works. 19:20:26 GAAAH WHY WON'T MAKE PROCESS THIS NOW. 19:20:38 IT SEEMS TO FAIL AT PREREQS. 19:20:40 pikhq: Also you say $stem instead of $* and you can say $foo instead of $(foo) and also the whole body of rules is executed as one thing, so "cd" works. 19:20:44 YES, /dev/null EXISTS. 19:20:47 pikhq: And also you can quiet an entire rule by using attributes. 19:21:03 IT REALLY, REALLY, REALLY FUCKING EXISTS. 19:21:59 pikhq: Also mk has awesome shit: 19:22:00 pikhq: P The characters after the P until the terminating : are taken as a program name. It will be invoked as rc –c prog 'arg1' 'arg2' and should return a null exit status if and only if arg1 is up to date with respect to arg2. Date stamps are still propagated in the normal way. 19:22:08 pikhq: R The rule is a meta–rule using regular expressions. In the rule, % has no special meaning. The target is interpreted as a regular expression as defined in regexp(6). The prerequisites may contain references to subexpressions in form \n, as in the substitute command of sam(1). 19:22:15 U The targets are considered to have been updated even if the recipe did not do so. 19:22:31 OH FUCK THIS. 19:22:43 pikhq: plan 9 port! mk! 19:22:47 http://sprunge.us/BjPa 19:23:00 This is what I've got right now, with 1.{1..7}.fuck touched. 19:23:01 pikhq: http://swtch.com/plan9port/man/man1/mk.html Unix man page for mk. 19:23:16 pikhq: All you have to do is "MKSHELL=$PLAN9/bin/rc" and it is wonderful! 19:23:19 IT HATES ME SO. 19:23:25 "Andrew Hume wrote mk for Tenth Edition Research Unix. It was later ported to Plan 9. This software is a port of the Plan 9 version back to Unix." 19:23:38 pikhq: WHY ARE YOU SO TIED TO YOUR EVIL BUILD TOOL 19:24:07 elliott: Honestly, I just want to know *why* this doesn't work. And then I will probably switch it over to mk. 19:24:18 pikhq: I've debugged similar problems before, but I forgot how to fix them. 19:24:36 MAKE, YOU SIMPLETON, 1.2.fuck EXISTS. 19:24:43 It's not that. 19:24:48 It's something else it doesn't like. 19:25:27 It's somehow not finding an implict rule for 1.2.mkv. 19:25:27 pikhq: Right now, I've half-convinced myself that the best build system is a "memoise" command that runs the command given in its arguments if and only if its dependencies have changed, where the dependencies are determined by tracing the program the first time. (This actually exists, it's called memoize.py. But I think it needs tweaking to be truly perfect.) 19:25:58 pikhq: Then just a bunch of canned commands like "CC() { echo CC "$@"; $CC $CFLAGS $LDFLAGS "$@" }" 19:26:16 Okay, it disliked my %.sid0.sub rule. 19:27:59 "There are no words for what I have just seen, so here are the ones I made up:" <-- there *were* no words in that case 19:28:37 -!- cheater99 has quit (Ping timeout: 245 seconds). 19:30:13 Vorpal: that's intentional. 19:31:36 pikhq: http://web.archive.org/web/20070612145920/http://www.eecs.berkeley.edu/~billm/memoize.html 19:32:17 -!- nopseudoidea has joined. 19:34:51 hey guys! using the powershell?..question: is there a way to br0wse thr0ugh the namespaces of the attached .net assemblies? i'd like to see which classes, enums exist in specific namespace.. i use get-member or get-childitem on objects, but it doesn't seem to work with namespaces^^ help please.. 19:35:00 hagb4rd: (1) nobody here uses windows 19:35:08 hagb4rd: (2) "br0wse thr0ugh"? what are you, 14? 19:35:34 thx elliott^^ 19:35:39 ... ? 19:35:47 Glad to help! 19:35:50 Vorpal: "... ?"? 19:36:56 elliott, at the very thing you just responded to 19:37:04 Vorpal: powershell is this thing for windows. 19:37:12 -!- nopseudoidea has quit (Client Quit). 19:37:14 elliott, utter astonishment at his answer to your reply to him 19:37:24 i think he was being slightly sarcastic. 19:37:25 ever so. 19:37:34 /sb end 19:37:38 elliott, s/ever/even/? 19:37:40 is a very useful command. 19:37:41 no. 19:37:45 ah 19:37:59 Vorpal: powershell is actually kinda cool; it's like sh but object-oriented (admittedly it's .NET), so rich objects pass between the | pipes and get formatted automatically or customly depending on where you feed them. but, uh, it's still .NET. 19:38:59 elliott, yeah, it's .NET, also it is bloated. Every time you like it, a bunny named glenda becomes sad. Or something. 19:39:12 Vorpal: insert middle finger 19:39:24 elliott, that sounds rude to the bunny 19:39:34 the general model is actually pretty cool 19:39:39 but, yeah, .net 19:39:59 hmm, is stat64 just what's called instead of stat on x86-64 kernels? 19:40:23 elliott, hm, isn't stat64 for large file support on 32-bit? 19:40:51 oh, maybe 19:40:59 just - 19:41:00 os.system('strace -f -o %s -e trace=open,stat64,exit_group %s' % (outfile, cmd)) 19:41:04 wonder why stat's not there 19:41:21 elliott, which is kind of on all the time on 64-bit. So presumably it only needs one system call. No idea what it might be named though 19:41:31 elliott, where is that from? 19:42:02 Vorpal: memoize.py 19:42:07 ah 19:42:22 elliott, very strange then 19:43:12 hmm, tracing for stat seems to pick up lstat too 19:43:12 elliott, in fact, shouldn't it trace all the stat variants 19:43:13 with strace 19:43:18 how odd 19:43:24 elliott, heh 19:43:52 why is that? 19:44:00 elliott, I don't know. 19:45:18 elliott, does it track deps properly too? 19:45:37 Vorpal: what, memoize? 19:45:37 yes 19:45:41 nice 19:45:42 that's why it uses strace 19:45:46 to find out what files the program uses :) 19:45:50 program=compiler 19:46:27 elliott, can it do conditional compilation. Sometimes having something like --enable-large-optional-feature-that-depends-on-uncommon-stuff is useful. (with a shorter name preferably!) 19:46:43 Vorpal: 19:46:45 doesn't need to be fancy, just that really 19:46:49 elliott droog .. im 29! i mentioned and am really sorry about my poor english.. it's a pity, because i really like this chan and conversations here are kind of inspiring.. but with my couple of words i really feel a little like a stupid child in here.. i try to do sth about it.. sry 19:46:50 if [ "$poop" = 1 ]; then 19:46:53 memoize.py foo bar baz 19:46:53 fi 19:47:01 hagb4rd: it's ok, i'm just an asshole 19:47:05 ignore me 19:47:12 elliott, hm interesting (that code) 19:47:17 *g 19:47:49 Vorpal: of course you'd probably prefer to use a nicer shell... say rc 19:47:53 Vorpal: if($poop) memoize.py foo bar baz 19:47:56 (where $poop is true or false) 19:48:11 Vorpal: of course you'd want scaffolding around all this to make it more automatic 19:48:11 elliott, also if I'm a developer I would probably prefer to write some code to make it remember between build runs 19:48:16 and memoize itself isn't maintained 19:48:17 elliott, maybe just a wrapper script 19:48:18 but,s till 19:48:20 *but, still 19:48:36 elliott, if memoize still works, I don't really see any issue 19:48:40 Vorpal: um it does remember 19:48:42 Vorpal: it saves it to a file 19:49:00 elliott, so you don't invoke the same script the next time you build? but another one? 19:49:04 makes sense 19:49:10 Vorpal: what? 19:49:22 Vorpal: no, memoize.py just looks to see if the dependencies file is there and goes, "oh look, it is" and uses it. 19:49:34 you can also use it from python 19:49:56 elliott, well, lets say I have conditional compilation for optional feature. Do I run ./build.py every time? 19:50:19 elliott, can I make it just do ./build.py after that basically 19:50:23 Vorpal: Um, ./configure --additional-pylons --butt-tastic would presumably create config.sh. 19:50:32 Then ./build would do ". config.sh" or the like. 19:50:46 -!- MigoMipo has quit (Ping timeout: 240 seconds). 19:50:47 (Substitute equivalent things for Python, and also s/sh/yaml/ or s/sh/xml/ or whatever the hell you want to store configuration in.) 19:51:02 elliott, any parallel support? 19:51:14 equiv of -j2 or such I mean 19:51:39 Vorpal: Um, it's just a function call. In non-Python usage, it's just a process called once for each command. Anyway the script is tiny, read it yourself ffs: http://web.archive.org/web/20070622221648/www.eecs.berkeley.edu/~billm/memoize.py 19:51:46 The answer is no, but I'm not telling anyone to use memoize.py. 19:51:51 I'm just saying it's a better design than mk. 19:52:02 elliott, so -j is basically the only thing missing to make it perfect 19:52:10 Vorpal: No, more is missing. 19:52:15 elliott, such as? 19:52:17 Because you'd have to write ./configure manually and the like. 19:52:21 well okay 19:52:37 Vorpal: A way to use it more efficiently without having to write your script in Python? Some "memoize" function that talks to a pipe it has, rather than making a bunch of processes. 19:52:43 elliott, idea: autoconf - automake + memoize = what? 19:52:57 Vorpal: Um, = autoconf is still terrible. 19:53:02 elliott, hm true 19:53:15 elliott, also probably a pain to get that working 19:53:20 (with memoize I mean) 19:53:33 * elliott ptraces his utensils. 19:53:35 Hee, so few syscalls. 19:53:49 $ strace bin/uname >/dev/null 19:53:49 execve("bin/uname", ["bin/uname"], [/* 35 vars */]) = 0 19:53:49 arch_prctl(ARCH_SET_FS, 0x7fffc7abfc50) = 0 19:53:49 uname({sys="Linux", node="dinky", ...}) = 0 19:53:49 write(1, "Linux", 5) = 5 19:53:50 write(1, "\n", 1) = 1 19:53:52 _exit(0) = ? 19:54:06 elliott, still, -j is actually very nice when building something large. Not sure how you can make that work for first build easily 19:54:12 elliott: autoconf is perfectly capable of memoizing too; it doesn't by default because people kept transferring the cache files between computers 19:54:15 Vorpal: Yeah, -j is nice. 19:54:37 ais523: context fail 19:54:53 elliott, memoize could easily -j for builds where it already know the deps, but for initial build I don't see how it could possibly do that 19:54:54 ais523: I'd expect ignoring the context and replying while ignoring pertinent details like ".py" from Vorpal, not you ... 19:54:56 Vorpal: The first build it ... might ... work. The problem is of course that the dependency information is implicit in the ordering until it's calculated. 19:54:57 Vorpal: yeah 19:55:04 Vorpal: but, OTOH... 19:55:13 Vorpal: if your linking phase fails because some object files aren't there, the script could take that into account 19:55:15 and try again 19:55:21 elliott, which kind of defeats the point of -j for anyone but a developer 19:55:34 elliott, well sure, but what is linking in general 19:55:46 Vorpal: well, it's irrelevant... cc tries to open all these object files 19:55:47 some don't exist 19:55:49 it fails 19:55:55 the script goes "ah! I'll try again when those files come into existence" 19:56:33 elliott, what about building a tool used to build other files? Example: ick builds oil which is used to generate another c file which will be compiled later 19:57:01 Vorpal: oh, shut up :P 19:57:14 Vorpal: you know what the perfect build system is? 19:57:22 ghc --make src/Main.hs -o foo 19:57:39 elliott, yes indeed. You can make very good language-specific build systems 19:57:52 elliott, erlang has a good one too for example. But well, they are language specific. 19:58:04 Vorpal: good! who wants to use another crappy language anyway 19:59:00 elliott, hm. 19:59:11 elliott, it does become a problem for a mixed language project 19:59:22 Vorpal: *a crappy project! 19:59:33 elliott, like... ghc itself? 19:59:36 Vorpal, is just being jingoistically Swedish. 19:59:41 elliott, :P 20:00:55 (I'm 99% certain that parts of ghc runtime stuff, such as GC, isn't written in haskell.) 20:05:37 -!- oerjan has joined. 20:07:15 ais523: you know scapegoat? 20:10:42 elliott, the tree structure? 20:10:49 Vorpal: what? 20:10:56 elliott, scapegoat tree 20:11:00 elliott, a data structure 20:11:06 no, i don't mean that. 20:11:10 elliott, ah 20:11:21 elliott, I asked because it was unclear to me what you meant 20:12:35 -!- augur has quit (Remote host closed the connection). 20:12:59 -!- augur has joined. 20:13:52 (message (buffer-string)) <-- anyone who can make that elisp not a horrible hack gets points 20:13:57 (must go to stdout when using emacs --batch) 20:14:03 (don't care what it does when X is there) 20:14:14 (or, anything but --batch really) 20:14:56 well okay so that does to stderr 20:14:57 whatever 20:15:02 I've tried (write-file "/dev/stdout") 20:15:18 aha, there is princ 20:17:06 what's the proper to display a constantly changing file in a terminal in such a way that the display automatically updates when the file changes? 20:17:35 -!- augur has quit (Ping timeout: 250 seconds). 20:17:56 quintopia: um, tail -f if all that happens is appending 20:18:19 elliott: entire file contents get replace 20:18:28 quintopia: does it need to be immediate? 20:18:35 pretty much 20:18:45 hm watch -n 0.001 ? 20:18:47 XD 20:18:56 quintopia: sucks to be you, write your own 20:19:09 Vorpal: wow, i had no idea watch did that. 20:19:14 Vorpal: i've always just used clear in a loop with sleep :) 20:19:31 Vorpal: watch seems to change 0.001 to 0.1 :P 20:20:41 heh 20:20:48 elliott, watch is also linux specific iirc 20:20:57 elliott, at least watch means something very very different on *BSD 20:21:13 (something to do with tty snooping iirc) 20:21:23 Vorpal: yeah bsd watch is more fun! 20:21:36 so it's not really feasible to do it without polling, and as such, the best method is to continuously check the last write of the file, and refresh the display when it changes? 20:22:11 quintopia: you can do it without polling. 20:22:13 FAM, say. 20:22:16 but it would involve coding. 20:22:27 quintopia: what you said is pointless, though 20:22:29 quintopia, gamin or inotify yeah 20:22:29 cat is basically instant 20:22:32 no need to check for last write 20:22:49 elliott, depends on size of file 20:22:50 quintopia: "watch -n 0.1 cat foo" should do fine. 20:22:56 Vorpal: whatever :) 20:23:29 elliott: "watch -n 0.1 clear;cat foo"? 20:23:37 quintopia: no. 20:23:39 err, watch does clear 20:23:41 quintopia: when i say something, i mean it. 20:23:41 oh 20:23:44 also it is not a shell syntax 20:23:53 i'll try it 20:24:02 elliott, "did this base64 encoded DVD DL iso just change" <-- cat is no longer instant. But then that is 1) useless to watch for 2) doubtful it would fit on screen anyway 20:24:18 i assumed you meant it, but didn't know if you meant it to clear :D 20:24:33 also 3) why the heck did you base64 encode the iso ANYWAY? 20:24:48 Stallman's "The Right to Read", gzipped: http://nullprogram.com/projects/pngarch/right-to-read-gz.png and the program to extract it: http://nullprogram.com/projects/pngarch/files/pngarch-0.2.png 20:24:54 now to rewrite that in haskell because of NIH! 20:25:26 elliott, uh, how do you run the outer one? 20:25:33 elliott, huh? 20:25:48 Vorpal: "the outer one"? 20:26:06 elliott, how do you actually execute the program to extract it? 20:26:17 Vorpal: by using PNG Archiver to extract the PNG Archiver source, duh! 20:26:28 Vorpal: (try using your favourite OS's lazy evaluation features) 20:26:33 elliott, and where can I get png archiver to bootstrap this 20:26:38 elliott, if you see what I mean 20:26:49 Vorpal: http://nullprogram.com/projects/pngarch/files/pngarch-0.2.png 20:26:59 shouldn't "watch -n 0.1 tail foo" print the last 10 lines of foo every 0.1? 20:27:01 elliott, you are not helpful. 20:27:07 Vorpal: >:) 20:27:13 quintopia: yes. 20:27:21 it doesn't :/ 20:27:25 quintopia: yes it does 20:27:27 quintopia, I believe it should, assuming your terminal is larger than 11 lines (since watch adds a line at the top) 20:27:31 it just isn't changing, so it looks the same 20:27:42 quintopia, watch itself clears 20:27:48 quintopia, so it looks static 20:27:56 elliott: "foo" in this case is this channel log, and that's irrelevant since nothing at all was displayed 20:28:04 huh 20:28:05 quintopia: um, you are on linux yes 20:28:08 yes 20:28:21 quintopia: does "tail file" work 20:28:34 yes 20:28:39 quintopia, does it work if you remove watch -n 0.1? I believe stderr will not be visible 20:28:52 no 20:28:58 The -d or --differences flag will highlight the differences between 20:28:58 successive updates. Using --differences=cumulative makes highlighting 20:28:58 "sticky", presenting a running display of all positions that have ever 20:28:58 changed. The -t or --no-title option turns off the header showing the 20:28:58 interval, command, and current time at the top of the display, as well 20:28:59 as the following blank line. The -b or --beep option causes the com‐ 20:29:01 mand to beep if it has a non-zero exit. 20:29:01 needs to be piped to stdout? 20:29:03 you may like that 20:29:22 Note that command is given to "sh -c" which means that you may need to 20:29:22 use extra quoting to get the desired effect. You can disable this with 20:29:22 the -x or --exec option, which passes the command to exec(2) instead. 20:29:24 quintopia: ^ 20:29:26 that may cause problems 20:29:35 aha 20:29:38 elliott, my watch don't accept fractional time 20:29:52 oh wait, it does, but only in current locale 20:29:53 that fixed it thx 20:29:53 heh 20:29:55 Vorpal: mine's made out of quartz 20:30:10 XD 20:30:23 Vorpal: am i a weird person if I like mail(1)? 20:30:38 elliott, depends. If you like it for mailing from shell script: no 20:30:42 Vorpal: no :P 20:30:50 elliott, if you like it for interactive usage? maaaybe 20:30:56 Vorpal: actually I'm considering trying out nmh 20:30:58 maintained version of MH 20:31:18 although really, it isn't unixy *enough*; why should i have to run a command to view an email when I have cat? :) 20:32:08 it's really amusing to "watch" this channel :P 20:32:18 elliott, because they all go in the same file. Also you need locking to avoid collision with the MTA if you try to delete a mail 20:32:31 Vorpal: don't all go in one file with Maildir! 20:32:35 quintopia, there tail -f works fine 20:32:39 quintopia: but your IRC client does that 20:32:41 elliott, correct 20:32:50 elliott, still needs locking for some operations iirc? 20:32:50 Vorpal: anyway the backing storage is irrelevant, if the mail client maintains its own 20:32:51 elliott: yeah yeah yeah 20:32:54 which MH does as far as i know 20:33:08 elliott, still it needs to *fetch* mail from somewhere 20:33:13 what, vrms sets up a monthly cron job to tell root about non-free software installed 20:33:13 lol! 20:33:22 Vorpal: sure, and? 20:33:35 does tail -f auto-truncate lines further up than 10? i thought it just kept appending to output... 20:33:44 elliott, such as maildir or mail files or pop or smtp. And there you need some sort of locking for most of the file based ones. 20:33:55 Vorpal: So? that has nothing to do with the interface. 20:33:56 and protocol code for the network based ones 20:34:03 elliott, indeed 20:34:07 Vorpal: there's no reason the mail agent can't maintain a directory $mail 20:34:12 Vorpal: "cat $mail/inbox/some-identifier" :P 20:34:24 elliott, indeed, but will you manually pull the mail? 20:34:37 Vorpal: no, you'd use a cron job or any other method 20:34:41 push mail, if you can get it 20:34:57 elliott, then you need locking to avoid collision as far as I know 20:35:06 Vorpal: AND? 20:35:09 what relevance does this have at *all* 20:35:50 elliott, so how does using cat, rm and so on ensure proper locking? 20:36:02 Vorpal: ok, quote the line where i said rm 20:36:02 go on 20:36:07 i'll wait here 20:36:16 elliott, well I assumed that, since it is more unixy 20:36:27 elliott, or do you accept mail-rm or such? 20:36:46 what. 20:37:07 elliott, so how will you remove mails you want to delete from that directory 20:38:14 elliott, .. 20:38:21 i think we both have no idea what this conversation is about any more 20:38:22 i certainly don't 20:38:32 ais523: ping#27 20:47:20 fungot 20:47:26 fizzie, where is fungot? 20:47:50 elliott, question about kitten. 20:48:10 oh dear 20:48:54 elliott, how will you handle stopping some processes when switching from AC to battery. Such as cron, (no one wants updatedb while on battery!). 20:49:00 s/n,/n/ 20:49:32 Vorpal: what do you mean, how? 20:50:15 elliott, well, will you chmod -x the script and such. And what about preventing it from starting when booting on battery? 20:50:28 Vorpal: The important question is this: How do you accomplish it now? 20:50:30 elliott, will you run some stuff before it can start to chmod -x it if on battery, otherwise chmod +x 20:50:46 elliott, I believe ubuntu has some magic for it. Considering it does work that way for me 20:50:59 Vorpal: Well, that's not exactly very precise. 20:51:35 elliott, seems it does it by anacron 20:51:51 Vorpal: No reason you couldn't accomplish that with plain cron, no? 20:52:01 Or, you know, just run anacron. 20:52:30 elliott, actually.... it runs a shell script on the relevant acpi events, which tells anacron to enable/disable 20:52:37 it seems 20:52:51 Vorpal: "Do that, then" (except s/anacron/whatever you use to handle updatedb and the like/) 20:53:15 elliott, but how does that solve it for booting? 20:53:30 elliott, I know it skips it while booting, but I can't find how 20:53:37 Vorpal: *shrug* 20:53:49 elliott, also I know it skips "mounted too many times"-fsck if on battery 20:54:16 Vorpal: That's irrelevant on JFS. 20:54:25 elliott, indeed 20:54:31 Since fsck takes <1s ("nothing wrong") to maybe 2-3s ("bad shit"). 20:56:33 -!- zzo38 has joined. 20:57:24 Is it possible to do 3D modeling with METAFONT? 20:57:37 -!- MigoMipo has joined. 20:58:13 zzo38: I don't know, but ... let's not find out. 20:58:55 zzo38, oh my god DO IT DO IT DO IT 20:59:01 someone rename the Howduzitwerk section on http://esolangs.org/wiki/Runespells or I'll die. 21:00:26 elliott: Can't you do it yourself? 21:00:40 i have no idea what to call it 21:01:03 -!- quintopia has quit (Ping timeout: 260 seconds). 21:01:53 elliott: "Overview" or something. 21:02:21 exec emacs -Q --batch --script /dev/tty/3 3< abcdef 21:02:22 EOF 21:02:25 Can't believe that actually works. 21:02:40 Can any similar programs to METAFONT do 3D modeling? Might it be possible to use specials in METAFONT to make a external program combine the flat pictures into a 3D model? 21:03:11 Erm. 21:03:15 /dev/fd/3 21:03:15 Not tty. 21:03:32 elliott: That's what I thought. How can /dev/tty/3 work? 21:03:51 It doesn't. 21:04:48 Yes. It doesn't. 21:06:09 -!- quintopia has joined. 21:07:26 zzo38, METAFONTesque 3D modeling? 21:07:41 Hmm. I don't actually know the details of METAFONT in the first place... 21:08:33 Where's the minecraft server used by y'all? 21:11:15 Deewiant, we prefer to let ineiros let you in. 21:11:19 It's his server, after all. 21:11:33 Phantom_Hoover: Yes, do you know something like this? METAFONT can do drawing by pen, fill shapes, and algebraic equations. You can also do for loops and macros and that stuff. 21:13:14 Deewiant: You're Finnish, you'll get in no problem at all. 21:13:28 Deewiant: The rest of us have to go through a back-breaking course. 21:13:59 ineiros: Yo 21:14:16 Deewiant: Also, if you go within a 1 km^2 radius of Vorpal's house, expect to replace things that break randomly. 21:14:31 sounds fragile 21:14:49 inverted pyramids and such? 21:14:50 Is that a natural phenomenon, bug, or just Vorpal? 21:14:53 floating sand? 21:15:09 Deewiant: I may be exaggerating slightly. (But it's just Vorpal.) 21:15:15 quintopia: Vertical boat elevator, for one. 21:15:19 If you steer at all it breaks. 21:15:39 Deewiant: Oh, and the Temple of Doom is mandatory. 21:15:48 sounds easy enough to avoid. who needs steering? 21:16:06 Deewiant: (And health is disabled, so the purifying lava baths can last even longer.) 21:16:07 Did Indiana Jones ever use a magic trunk? 21:17:21 Deewiant, I demand that I be allowed to show you around. 21:17:24 DEMAND! 21:17:25 Deewiant: Also, if you go within a 1 km^2 radius of Vorpal's house, expect to replace things that break randomly. <-- now you are exaggerating. 21:17:43 Vorpal: Sorry; 0.9 km^2. 21:17:48 Deewiant: Don't let him show you around IT'S A TRAP. 21:18:17 What's the worst that could happen 21:18:23 elliott, no, I meant in the other part. The only place I require breaking of stuff due to bugs is the boatlevator, and it is clearly signed as buggy due to MP bugs 21:18:32 Deewiant: Suffocating inside a stone block! 21:18:40 elliott, other than that only for carelessness or maliciousness 21:19:07 elliott: I.e. death, something which has no consequences? :-P 21:19:12 elliott, I never asked for replacement at the underground dock for example 21:19:24 Deewiant: You'd lose all your inventory! Also, no, no death, health is disabled, remember? You can just /spawn or /home. :P 21:19:36 But still, think of the horror. 21:19:53 Disabled health sounds lame 21:20:05 Deewiant: Dude, our primary method of transportation is high in the sky. 21:20:05 And with no inventory to lose it's no consequences. :-P 21:20:08 Health was a bitch :P 21:20:20 Maybe you should rethink the method, then 21:20:22 Deewiant: Also it broke my top-altitude to bedrock stairs and they're beautiful. 21:20:25 BEAUTIFUL. 21:20:35 Deewiant, well, anyway, when you spawn, don't move and set your render distance to "far". 21:20:37 Deewiant, until fizzie widened it from 1 wide to 3 wide 21:20:44 Phantom_Hoover: Er, why? 21:20:47 Deewiant, now it is just elliott who fails to walk on it 21:20:49 We should have Creeper Wednesdays or something where monsters are turned on. :p 21:20:50 elliott, ROU. 21:21:09 Phantom_Hoover: Oh, yes. 21:21:11 zzo38: well i don't know but i think you could say he once survived by _not_ being the one to use a magic trunk (the ark) 21:21:19 Vorpal, well, the stretch from you to Mt. Hoover is 1 wide. 21:21:39 We should turn on monsters but not health, just to have helpless creepers running about, exploding to no avail. 21:21:49 Phantom_Hoover, because you haven't fixed it? I did most of the stretch to me, fizzie most of the stretch from spawn to him and to nailor 21:22:03 Phantom_Hoover, both of us said "uh, lets make PH do this" basically 21:22:06 it is so long 21:22:07 Vorpal, that stretch is REALLY LONG. 21:22:15 Nobody goes to Mount Hoover that way :P 21:22:15 Phantom_Hoover, which is why we left it to you 21:22:18 Hooray for the minecarts. 21:22:25 elliott, you might as well now. 21:22:35 Phantom_Hoover: Slow. 21:22:36 The minecarts are slow now, for some reason. 21:22:44 Phantom_Hoover: Not as slow as walking. 21:22:54 bug of some sort, they are slower than in single player 21:22:58 Not *quite* as slow. 21:23:10 Maybe we should just tell Deewiant the address, considering he has Finn Privileges. :p 21:23:23 elliott, I never heard of that 21:23:28 elliott, wait for ineiros 21:23:37 Vorpal: fizzie, ineiros, nailor -- see the pattern! 21:23:57 elliott, me, you, Phantom_Hoover. 3 other people 21:24:19 Vorpal, but you are from SCANDINAVIA! 21:24:30 Which is basically the SAME THING! 21:24:43 Phantom_Hoover, not even same language group 21:25:05 Language group, SCHMANGUAGE GROUP. 21:25:17 Mmm... schmanguages... 21:25:36 I doubt a Hungarian would get in on the premise of having a mother tongue in the same language group 21:25:55 elliott, me, you, Phantom_Hoover. 3 other people 21:25:58 Those three were there first. p 21:26:14 And fizzie said it was basically a .fi server before you infiltrated. 21:26:18 Deewiant has Rights. 21:26:53 I'm also on that other channel with ineiros and fizzie. 21:27:02 See, that seals the deal. 21:27:16 Deewiant: Oh, and Vorpal saying "t" constantly is his Tourette's. Please be respectful of his condition. 21:27:21 And based on idle time, I think that ineiros may have gone to bed about 2 minutes before I asked. 21:27:40 Deewiant, no I say t because the thing doesn't echo locally, so good lag check 21:27:42 Deewiant: Do you know of a domain name that consists of a with three numbers after it, ending in a generic TLD for non-profits? 21:27:46 Deewiant, since the server goes down every now and then 21:27:47 *three digits 21:27:54 Also the last two digits are equal. 21:28:13 Deewiant, and since t is talk, tt = send a t. which is fast 21:28:20 elliott: I can guess. :-P 21:28:49 Deewiant: You can guess three digits? :P 21:28:49 elliott, Phantom_Hoover says t a lot too 21:28:58 The TLD, mostly. 21:29:09 Deewiant: I was using it to verify if you already knew most of the address. :p 21:29:10 Appears to be running Apache with some kind of default index. 21:29:19 Deewiant: Verily. 21:29:32 Deewiant: You know how some servers have ports they run on? 21:29:51 Well, it is feasible that one of them would have a port denoted by the maximum value of an unsigned char, in decimal, followed by the last digit of that value, plus one. 21:30:02 Vorpal: Is that not a valid port according to the relevant specifications? 21:30:05 .... 21:30:12 I would guess that all servers have at least one port that they run on. 21:30:19 elliott, I wonder what ineiros will say 21:30:20 Or respond on, to be precise. 21:30:22 Deewiant: Not if they're magical. 21:30:29 Vorpal: Say when what?! 21:31:01 Also, UCHAR_MAX depends on CHAR_BIT, at least. :-P 21:31:20 Deewiant: Well, hey, I wasn't specifying anything, I was just SAYING! 21:31:28 I take no responsibility for my information, which is factual. 21:32:19 Sheesh, this business is too cutthroat. I think I'm leaving the fact dissemination industry. 21:33:27 Yes, it's much safer to just lie about everything. 21:33:49 `echo hey, is there an echo bot in here? 21:34:00 hey, is there an echo bot in here? 21:34:31 ^cat whirlpool 21:34:38 hm is that the name, i forget 21:34:41 I know ^echo is silly 21:34:58 Deewiant: I feel like my services aren't being appreciated. 21:35:06 I need payment. 21:35:41 I gave you the word "overview" earlier, does that cover it? 21:36:00 Deewiant, have you figured out the Secret Address of the Esoteric Order of Minecraft? 21:36:21 Probably. I haven't tried it yet, though. 21:36:58 Wow! I wonder how. 21:37:01 Deewiant: Did you just guess?? 21:37:19 Most of it, yes. 21:37:26 CHAR_BIT == 8, for example. 21:37:36 Deewiant: I have absolutely no idea what you are talking about. 21:37:52 Deewiant: I guess the ways of Finns are not to be ken by mortal men. 21:37:59 Then don't bring it up as subject matter. 21:38:10 Hey, that rhymes. The ways of Finns / are not to be ken / by mortal men. Can I get a payment for *that*, then? 21:38:57 you need to translate it into grammatically correct finnish first. while still rhyming. 21:39:16 oerjan: Bork bork bork / bork bork bork / bork bork bork. wait that's swedish 21:39:35 oerjan: Paaïetta paaïetta paaïetta / paaïetta paaïetta paaïetta / paaïetta paaïetta paaïetta. 21:39:46 It wasn't correct English, why bother making it correct Finnish 21:39:58 `translate paaietta 21:40:03 paaietta 21:40:24 `translatefromto fi en paaietta 21:40:26 paaietta 21:40:34 oerjan: while my translation was accurate, it was not correct. 21:40:34 Not Finnish. :-P 21:40:54 i suspected that, with the ï 21:42:17 Not Finnish. :-P 21:42:22 Reporters report that Deewiant may be "not Finnish". 21:42:36 This is supposedly based on a statement by Deewiant himself where he reportedly says that he is, reportedly, "not Finnish". 21:43:00 ais523: Are you actually there? :P 21:45:14 Hello. 21:45:20 ineiros, hi! 21:47:07 ineiros, can Deewiant join our big Minecraft party? 21:47:16 Big Minecraft party, in the sky. 21:47:19 On a cloud. 21:47:23 (this is my fanon and I'm sticking to it) 21:49:12 * Phantom_Hoover decides to build a cloud with his titanic cloth surplus. 21:53:54 just don't lett the cloud hit any icebergs 21:53:58 *let 21:54:21 * oerjan strangles his spelling 21:55:05 -!- MigoMipo has quit (Read error: Connection reset by peer). 22:01:29 -!- elliott has quit (Quit: Leaving). 22:02:13 -!- quintopia has quit (Quit: Lost terminal). 22:07:24 -!- quintopia has joined. 22:10:31 `addquote your premise to falsify "false" is false 22:10:32 248) your premise to falsify "false" is false 22:17:30 -!- Sasha has joined. 22:17:48 -!- Sasha2 has quit (Read error: Connection reset by peer). 22:20:30 -!- zzo38 has quit (Remote host closed the connection). 22:22:49 -!- augur has joined. 22:26:36 -!- quintopia has quit (Quit: Lost terminal). 22:27:08 -!- quintopia has joined. 22:30:59 -!- elliott has joined. 22:41:11 -!- hagb4rd2 has joined. 22:41:43 -!- fizzie` has joined. 22:42:16 -!- poiuy_qwert has joined. 22:43:11 -!- fizzie has quit (Ping timeout: 240 seconds). 22:43:11 -!- hagb4rd has quit (Ping timeout: 240 seconds). 22:43:12 -!- p_q has quit (Ping timeout: 240 seconds). 22:46:57 -!- Wamanuz2 has joined. 22:47:35 -!- oerjan has quit (Quit: leaving). 22:48:06 http://ompldr.org/vNmpiYw/2010-12-12_21.44.23.png 22:48:30 fizzie, wooden house, chess and stairs by night. 22:49:55 -!- augur has quit (Remote host closed the connection). 22:50:14 -!- fizzie` has changed nick to fizzie. 22:50:18 -!- Wamanuz has quit (Ping timeout: 265 seconds). 22:50:20 -!- augur has joined. 22:55:26 * Phantom_Hoover → sleep 22:55:28 -!- augur has quit (Ping timeout: 272 seconds). 22:55:35 -!- Phantom_Hoover has quit (Remote host closed the connection). 23:07:16 -!- hagb4rd2 has changed nick to hagb4rd. 23:07:26 http://ompldr.org/vNmpiYw/2010-12-12_21.44.23.png 23:07:28 That is pretty. 23:08:59 -!- quintopia has quit (Quit: Lost terminal). 23:11:59 -!- quintopia has joined. 23:23:43 -!- quintopia has quit (Quit: i hope). 23:25:01 -!- quintopia has joined. 23:26:14 -!- quintopia has quit (Client Quit). 23:28:29 phon far? 23:28:33 gah 23:28:40 he quit 23:28:55 elliott, quite small window he plays in 23:28:59 elliott, not near maximised 23:29:03 elliott, or he has a small screen 23:29:59 elliott, I should get a dual screen setup again, so I can post HUGE screenshots 23:30:29 Vorpal: who 23:30:38 oh phantom 23:30:50 Vorpal: erm 1366x768 is the size of my display 23:30:52 and presumably his 23:32:47 elliott, small 23:33:02 elliott, I have 1680x1050 on this 23:33:12 -!- quintopia has joined. 23:33:13 -!- quintopia has quit (Client Quit). 23:33:24 Vorpal: Yours isn't a laptop. 23:33:43 elliott, correct 23:33:50 elliott, mine is 24" 23:34:21 elliott, 24" laptop would be annoying 23:34:43 elliott, no? 23:34:55 Vorpal: 1680x1050 at 24" is terrible ppi. 23:35:04 elliott, wait, maybe it is 22" 23:35:05 not sure 23:35:08 * Vorpal gets a ruler 23:35:30 elliott, slightly over 50 cm diagonally 23:37:55 -!- quintopia has joined. 23:39:56 test 23:42:44 elliott, seems sprunge runs on google app engine 23:42:52 Vorpal: evidence? 23:43:03 -!- FireFly has quit (Quit: swatted to death). 23:43:03 oh, it's open sourec now 23:43:04 *source 23:43:05 https://github.com/rupa/sprunge (linked from sprunge.us) 23:43:07 elliott, indeed 23:43:21 don't see what's wrong with that :) 23:43:32 elliott, nothing, just interesting 23:43:49 elliott, and explains why it is never laggy 23:43:55 http://un.ix.io/ this is him 23:44:04 Vorpal: yeah, but it's not as good as MY pastebin!1111 23:44:11 elliott, link? 23:44:12 which i appear to be turning into some kind of mutant object database in my head 23:44:16 Vorpal: /home/elliott/code/... 23:44:17 ... 23:44:29 Vorpal: well fizzie's does both url forwarding and pasting so why not EXTEND THAT 23:44:30 elliott, second system syndrome 23:44:37 Vorpal: actually, first system syndrome :D 23:44:56 elliott, for you yes, but second compared to exisiting ones 23:45:10 elliott, that link: bash revision control 23:45:11 XD 23:45:27 Vorpal: technically i wrote the perfect pastebin earlier which used *your* editor configured how *you* want it to display the file, in a manner tuned to your OS 23:45:33 Vorpal: but everyone whined that ZOMG IT OPENS A NEW WINDOW 23:45:38 so HMPH 23:45:42 elliott, I like it showing in browser 23:45:51 yep, 's 'cuz you're stupid! 23:45:59 elliott, everyone wanted that though 23:46:11 Vorpal: no, ais523 loved it :P 23:46:20 elliott, but what about Gregor? or fizzie? 23:46:28 they didn't comment 23:46:39 elliott, see, they were just to polite to complain! 23:46:55 "Made this little wrapper around the delightful automeme service for easy spamming with irssi. I have /meme aliased to /exec -o meme and it annoys the hell out of esch." 23:46:58 How exactly does it use YOUR editor configured how YOU want it. 23:47:08 Gregor: Because it tells the browser to open the file in the appropriate application. 23:47:15 Which is set to your favourite editor for that type of file. 23:47:23 elliott, wtf is "flattr"? I saw a link saying "flattr this", "twit this" and "dig this" I seen, but this is a new one 23:47:41 Vorpal: it's this thing the guys behind tpb made i think ... at least i hear it was them 23:47:47 huh 23:47:49 are services down? 23:47:52 elliott, yet another social network? 23:47:58 quintopia, so it said in the wallops a while ago 23:48:04 -tomaw/Wallops- Services will be offline for a few minutes while we fix some database issues. 23:48:06 -tomaw/Wallops- Channel ops may wish to op themselves in case they need ops during the downtime 23:48:06 Vorpal: thanks 23:48:07 Vorpal: no, i forget what it is 23:48:10 -!- cheater99 has joined. 23:48:15 Vorpal: micropayments, it seems 23:48:22 Flattr is a micropayment system - more specifically, a microdonation system - that launched publicly in March 2010 on an invite-only basis[1], and then opened up to the public in August 2010[2]. 23:48:22 Flattr Button (does not actually Flattr this page) 23:48:22 Flattr is a project started by Peter Sunde and Linus Olsson. Users are able to pay a small amount every month (minimum 2 euros) and then click Flattr buttons on sites to share out the money they paid in among those sites, kind of like an Internet tip jar. 23:48:25 elliott, hm, bad thing to click on such a link thne 23:48:40 Vorpal: yes, it SUCKS YOUR MONEY OUT AUTOMATICALLY WITHOUT EVEN CONFIRMING 23:48:41 or something 23:48:44 kind of annoying in channels requiring registration to talk :/ 23:49:05 quintopia, use a bouncer! 23:49:16 brb 23:49:26 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep). 23:49:29 Vorpal: dunno anything about those 23:49:41 -!- quintopia has changed nick to Guest66174. 23:49:48 elliott, this looks interesting https://github.com/joelthelion/autojump/wiki 23:49:51 oh 23:49:58 looks like they're back :D 23:49:58 back up I guess 23:50:59 -!- Guest66174 has changed nick to quintopia. 23:52:32 elliott: Is that server new enough to have biomes or is it all grassy? 23:53:01 (Or whoever knows:) 23:53:18 -!- ais523 has quit (Remote host closed the connection). 23:53:21 Deewiant, biomes in far out areas 23:53:33 Deewiant, but older generated in the areas around spawn 23:54:00 Deewiant, one place biomes start is just beyond mt. hoover 23:54:02 Okay, that explains it 23:54:20 Deewiant, you get strange jagged areas along the edges sometimes 23:59:27 -!- Vorpal has quit (Ping timeout: 245 seconds). 23:59:59 -!- Vorpal has joined. 2010-12-13: 00:06:48 -!- quintopia has quit (Quit: Lost terminal). 00:07:03 -!- quintopia has joined. 00:13:48 -!- wareya has quit (Read error: Connection reset by peer). 00:14:15 -!- wareya has joined. 00:16:15 -!- augur has joined. 00:16:20 -!- oerjan has joined. 00:17:40 mm, ice cappuccino 00:18:44 oerjan, a bit on the chilly side? 00:18:51 oerjan, but I guess it is still quite a cool idea 00:18:55 it's hot inside 00:19:24 oerjan, but where does the ice come into it? 00:19:45 well it's refrigerated 00:19:53 oerjan, not hit then? 00:19:57 hot* 00:20:01 I'm confused 00:20:11 i mean the room is hot 00:20:18 ah 00:20:24 oerjan, lucky you 00:20:27 oerjan, in this winter 00:20:45 elliott, this looks interesting https://github.com/joelthelion/autojump/wiki 00:20:45 old 00:20:57 elliott, does it work well? 00:21:05 Some people swear by it :P 00:21:17 elliott, your personal opinion? 00:21:18 use it for all your swearing 00:21:28 It doesn't support ksh so I'd be violating my principles by using it. 00:21:38 oerjan, I could have sworn you was about to make a pun 00:21:55 elliott, apart from that? 00:22:55 Vorpal: Got a bucket? 00:23:21 elliott, yes, /dev/null 00:23:29 (the bitbucket) 00:23:33 Vorpal: No, I mean, uh, come to ineiros' pit./ 00:23:42 elliott, not about to log in again 00:23:48 elliott, need to get up in 6 hours 00:23:49 so nigh 00:23:51 night* 00:23:56 The end is nigh. 00:24:19 elliott, just tell me what happened here on irc 00:24:34 Vorpal: I created two beautiful waterfalls and now I can't find the way back up. I could just /spawn :P 00:24:48 elliott, in his pit? 00:24:53 elliott, also /sethome 00:25:00 Vorpal: MAYBE in his pit. 00:25:17 elliott, why did you carry the buckets in your quickslots 00:25:35 Vorpal: It's what I do. 00:25:39 It was not unintentional :P 00:25:46 elliott, then you have to face the consequences 00:25:55 Will they ever be the same again? 00:26:14 I 00:26:18 I'm sure he will remove them 00:51:16 Vorpal: I already did. 00:51:19 Deewiant is still on. 01:02:56 -!- hagb4rd has quit (Ping timeout: 264 seconds). 01:32:55 -!- hagb4rd has joined. 01:41:47 -!- sftp has quit (Read error: Connection reset by peer). 01:50:24 http://torrentfreak.com/mininova-pays-settlement-to-brein-to-end-bittorrent-lawsuit-101210/ Mininova finally gives up. 01:50:29 RIP, you were shitty. 01:52:44 -!- tswett has left (?). 01:59:06 Vorpal: so people actually (1) still use DES 01:59:10 Vorpal: and (2) use DES to hash passwords 02:04:55 -!- Sgeo has joined. 02:06:40 I'd link to something incredibly awesome, but it would reveal my approximate location 02:06:47 Although I might have done so already 02:06:48 Hmm 02:07:37 elliott, name the school I go to 02:08:00 Sgeo: Farmingdale. 02:08:03 http://sphotos.ak.fbcdn.net/hphotos-ak-snc4/hs887.snc4/72009_10150103222437744_618027743_7875332_7903663_n.jpg 02:08:15 How is that incredibly awesome 02:08:30 To be fair, I didn't actually look more than a glance. 02:08:54 Well, it makes me happy, at any rate 02:09:41 I don't actually know what it is :P 02:09:55 * oerjan is tempted to look for jpeg metadata ;D 02:09:58 I'm certified to give CPR 02:10:04 ooh good idea oerjan 02:10:09 Sgeo: um isn't cpr ... pretty easy 02:10:19 i mean, as far as things go :P 02:10:23 Sgeo: Sadly, you are not certified to take clear pictures. 02:10:41 elliott, ye...es 02:11:00 Although doing it wrong on someone who doesn't need it can kill them 02:11:02 oerjan: no interesting EXIF. 02:11:09 heh 02:11:14 Sgeo: Doing it wrong on someone who does need it can kill them too 02:11:30 Gregor: Indeed, taking unclear pictures can cost lives. 02:11:38 Someone who does need it is already dead. Doing it wrong just increases the chance that they'll stay dead 02:11:51 *severely increases 02:11:51 Sgeo: ... Your definition of "dead" SUCKS. 02:12:00 Beyond all previous known bounds of suckage. 02:12:11 "I was dead but -- thanks to Sgeo -- I got better!" 02:12:23 CPR doesn't actually restart the heart 02:12:26 If you think cardiac arrest constitutes death, WELCOME TO THE PAST 02:12:27 "And I didn't even get turned into a newt!" 02:13:17 Sgeo is now qualified in ZOMBIE CREATIONL. 02:13:18 *CREATION. 02:13:29 Gregor: OMG IF WE FLATLINE WE CAN BECOME ZOMBIES. 02:13:33 GOOD IDEA OR BEST IDEA 02:13:55 I'm not entirely sure why trained persons are preferred for AED usage. I mean, as long as you follow directions... ah, that's probably why. Although I doubt the thing about using adult pads on children and not child pads on adults is on there 02:14:07 THAT'S CLEARLY HOW THE KIM FAMILY GOT THEIR SUPERPOWERS 02:14:29 i mean most of them look half dead already 02:14:52 -!- hagb4rd has quit (Ping timeout: 245 seconds). 02:14:56 pikhq: COPYRIGHT FUCK YEAH: Aston Kutcher is in trouble for broadcasting 13 minutes of the film Killers, starring Aston Kutcher, on the interwebnets. 02:15:20 Did he make the film, or just star in it? 02:15:30 Sgeo: He made every single frame with his own nose. 02:15:34 By hand. 02:15:36 I mean. by nose. 02:15:49 nasufacturing 02:16:05 I wonder if porn companies do copyright violation lawsuits. 02:16:25 BEHOLD, UDEV: 02:16:25 ENV{x11_options.EmulateWheel}="true" 02:16:26 ENV{x11_options.EmulateWheelButton}="2" 02:16:26 ENV{x11_options.YAxisMapping}="4 5" 02:16:26 ENV{x11_options.XAxisMapping}="6 7" 02:16:26 ENV{x11_options.Emulate3Buttons}="false" 02:16:28 ENV{x11_options.EmulateWheelTimeout}="200" 02:16:40 That's right -- we replaced xorg.conf with a bunch of magic files that have conditional rules to ... set xorg.conf settings. 02:16:50 PROGRESS AUTOMATIC MAGICISM 02:16:53 Gregor, aimed to embarrass 02:17:01 Gregor: What. 02:17:08 embareass 02:17:19 ... 02:17:21 Gregor: Kill him. 02:17:27 Just kill him and evrything will be perfect. 02:18:28 Die Bösen werden geschlachtet, die Welt wird gut. 02:18:56 oerjan: IN AN ALTERNATE UNIVERSE 02:19:46 that _was_ a quote in case you didn't realize 02:20:14 oerjan: IN AN ALTERNATE UNIVERSE WHERE NORWAY IS HITLER 02:20:18 LIKE THE ACTUAL PERSON HITLER 02:20:22 QUANTUM THEORY SAYS IT IS POSSIBLE 02:20:36 many-person interpretation 02:20:40 hm I can't find the thing that let you easily do single-file git 02:22:28 Many-Norway Interpretation 02:22:38 -!- augur has quit (Remote host closed the connection). 02:25:05 http://en.wikipedia.org/wiki/Erich_Fried 02:25:14 (the poet of the above) 02:26:12 oerjan: i'm going to assume he was being *slightly* sarcastic :) 02:26:15 just a tad 02:26:22 elliott: you don't say :D 02:28:12 Gregor: You should donate like three servers to me. 02:29:35 Gregor: WHY HAVEN'T I RECEIVED THEM YET 02:30:19 "Do not doubt him who tells you he is afraid, but be afraid of him who tells you he has no doubts." 02:33:48 elliott: That would leave me with -3 servers. 02:34:05 Gregor: SO? 02:35:17 * Sgeo gives Gregor i servers 02:35:36 * Sgeo steals j servers from Gregor 02:36:19 Gregor: Seriously, kill him. 02:37:02 * Sgeo multiplies elliott by i 02:37:16 Gregor: Please. 02:37:27 * oerjan quantum collapses Sgeo 02:37:43 GET REAL 02:42:32 ... *Anyone* still uses DES? 02:43:14 elliott: ... *That's* how X11 settings get set? 02:43:18 elliott: Udev‽ 02:43:29 pikhq: Seemingly! (That's for overriding stuff.) 02:43:49 pikhq: The DES thing was Gawker. Their password DB got stolen and they've cracked two hundred thousand passwords or so. 02:43:56 Serves them right too, Gawker are scum. 02:44:18 Takes a complete moron to continue using DES. 02:44:49 It was demonstrated to be entirely practical to crack 10 years ago... 02:45:35 What about Triple-DES? 02:45:52 Sgeo: lol. 02:45:56 YOU FUNNY MAN 02:46:39 Sgeo: (Well, yes, it works. For now.) 02:46:47 Sgeo: Triple DES is not comically poor. 02:47:06 Sgeo: *However*, there are much better encryption schemes to use. 02:47:07 All these things are "for now" 02:47:10 pikhq: Wanna build an FPGA DES cracker and run it on the database? (Not publicly leaked yet, but ...) 02:47:13 Sgeo: Hahahahahaha. 02:47:20 elliott: I don't have $10,000 handy. 02:47:22 Sgeo: Okay, firstly: IT WAS PASSWORDS. 02:47:27 YOU DO NOT ENCRYPT PASSWORDS 02:47:30 YOU *HASH* PASSWORDS 02:47:44 ... WAITWAITWAIT THEY ENCRYPTED THE PASSWORDS WITH DES WHY GOD WHY 02:47:45 Why would someone encrypt a password? 02:47:47 pikhq: http://www.sciengines.com/copacobana/ 02:47:53 pikhq: Don't need $10k. 02:48:13 I wonder how they cracked so many so quickly. 02:48:38 elliott: With $10k worth of FPGAs. 02:48:39 Is it possible for them to crack several without actually determining the key? 02:48:53 http://www.sciengines.com/copacobana/photos/photo_b4.jpg 02:49:03 Fun thing, I have undone cryptography and computer security homework that I'm putting off at this moment 02:49:03 pikhq: Are you sure that's $10k worth. Just buy evaluation boards :P 02:49:15 Sgeo: NEVER EVER DO CRYPTOGRAPHY *EVER* 02:49:17 I should look for my textbook or something 02:49:22 That is directed specifically at you. 02:49:39 elliott, uh... why? 02:49:45 elliott: Still... Even if it is $10k, that's still *terrible* encryption. 02:50:03 That's seriously at the point of "if any single person wants it fairly badly, they can have it." 02:50:08 And surely you don't think I'm a security moron, do you? I mean, maybe I don't follow best practices in my own life, but 02:50:59 And, of course, any business or government would hardly think anything of it. 02:51:38 Sgeo: Almost nobody should try and write cryptographic code. 02:51:48 I would yell the same at pikhq and ais523. 02:51:59 But you get a special, additional message. 02:52:02 That message is: NEVER EVER 02:52:16 Rule #1 of cryptography is you will almost certainly fuck it up. 02:52:22 he'd probably even yell it at himself. i hope. 02:53:02 I still have homework I haven't done 02:53:10 in fact every morning he stands in front of the mirror for 10 minutes yelling "DON'T DO CRYPTOGRAPHY!" 02:53:22 it's a wonder they let him out of that institution, really. 02:53:33 `quote matrimony 02:53:44 No output. 02:53:49 -_-' 02:53:55 pikhq: i don't think anyone added it 02:54:10 In 7 min, I'm quitting IRC 02:54:55 `quote matri 02:54:55 Forever? 02:54:56 No output. 02:54:59 `quote oerjan 02:55:00 7) what, you mean that wasn't your real name? Gosh, I guess it is. I never realized that. \ 19) ehird has gone insane, clearly. \ 21) oerjan: are you a man, if there weren't evil in this kingdom to you! you shall find bekkler! executing program. please let me go... put me out! he's really a 02:55:06 `run quote oerjan | tail -n 2 02:55:08 195) it's not obvious from quantum mechanics that you can destroy a universe arbitrarily. \ 247) oerjan: What, can girls aim their penises better? 02:55:16 oerjan: what did you do to the quote 02:55:37 nothing, and i do not recall anyone actually _adding_ it to HackEgo in the first place 02:55:46 :D 02:56:13 18:47:56 oerjan: No, I definitely meant E=m. Who cares about the energy of an object in motion, anyways? :P 02:56:13 18:48:50 THAT IS THE KIND OF ATTITUDE THAT HAS LEAD TO THE CURRENT OBESITY EPIDEMIC 02:56:13 18:49:22 oerjan: :D 02:56:13 18:49:36 oerjan: you need like a web form where people can file requests to be married to you, just for a few weeks 02:56:13 18:49:39 it could be very profitable 02:56:15 18:49:53 oerjan: :D 02:56:17 18:50:18 pikhq: don't you agree, i mean 02:56:19 18:50:24 that comment totally warrants brief matrimony. 02:56:21 hard to condense to quote size 02:57:36 n/m 02:59:22 TWO MINUTES LEFT 02:59:58 oerjan: ban him after the 7 minutes 03:00:00 FOREVER. 03:00:46 -!- benuphoenix has joined. 03:00:50 I'm sorry, Elliott. I'm afraid I can't do that. 03:01:15 oerjan: you're now my least favourite insane all-powerful AI. 03:01:20 oerjan: (previously you were my favourite) 03:01:39 i'm not very all-powerful really. ok maybe just a little. 03:02:59 -!- benuphoenix has quit (Client Quit). 03:03:37 oerjan: YOU SHOULD COME BACK TO AGORA 03:03:39 pikhq: ALSO YOU 03:03:52 the great thing is, it's so boring now that you don't have to do anything 03:05:03 I was outside with the dog 03:05:11 I should probably look for my textbook or something 03:05:16 oerjan: it's been two minutes 03:05:19 ban him 03:05:20 Or do the ambiguous Perl project 03:05:30 Or go insane 03:05:42 YOU ALREADY DID THAT 03:06:09 Sgeo: IT'S BEEN SEVEN MINUETS 03:06:13 yes, all seven Minuets 03:06:20 more like twelve, actually 03:06:38 My laptop's acting broken 03:06:45 * Sgeo gives his laptop the middle finger 03:06:50 Sgeo: that does not stop you quitting IRC 03:06:57 oerjan: can't you see he has a problem 03:06:59 oerjan: YOU MUST BE THE REMEDY 03:07:11 Sgeo: IRC終われ! 03:07:37 Sgeo: GOATS HATE YOUR CONNECTION 03:07:50 elliott: well but don't you see, if i banned people for procrastinating here, i'd have to ban myself too 03:08:06 oerjan: yeah but you don't say "OKAY I'M GOING IN N MINUTES" and then not :D 03:08:14 Vorpal only gets away because → is not *yet* regulated 03:08:49 also, he actually _does_ occasionally sleep at nighttime 03:09:23 well me too although that's more of a pseudorandom accident 03:10:27 Sgeo: BATS 03:10:28 ALWAYS 03:10:29 KNOW 03:10:30 oh god 03:10:57 -!- Sgeo_ has joined. 03:10:58 what's this talk, have you gone batshit insane? 03:11:01 * pikhq → nowhere in particular 03:11:18 Darn, I thought Sgeo would have pinged out by now 03:11:28 Sgeo_: ENTERING IS NOT LEAVING 03:11:29 "He quit, yay!" "Wait, he's back" 03:11:49 Sgeo_: didn't you buy some fucking melatonin 03:11:51 i distinctly recall 03:11:57 -!- Sgeo has quit (Ping timeout: 245 seconds). 03:12:03 Sleep is not my issue here 03:12:06 My issue is homework 03:12:17 oh 03:12:18 Piles and piles of homework 03:12:22 Sgeo_: when i get thrown off here i usually have to kill my irssi after logging on again 03:12:23 well take some anyway just for the hell of it 03:12:34 Sgeo_: i'll give you $15 for every hour you stay up on Melatonin after the first 03:12:36 because of this going through a shell account 03:12:44 i.e., take regular melatonin dose, first hour passes, then $15 for every full hour after that 03:12:44 go! 03:12:53 elliott, maybe in 2 weeks 03:13:15 i wonder if my doctor would give me melatonin if i asked 03:13:29 oerjan: well it's over-the-counter in most places 03:13:39 oerjan: WP says it's prescription-only in the uk but it isn't since you can buy it anyway 03:13:51 oerjan: failing that just import it http://melatonin.com/ :P 03:14:01 It's considered a dietary supplement in the US. 03:14:22 Meaning it isn't even fucking regulated beyond actually having to contain only what it claims to contain. 03:14:39 pikhq: it's on all those vaguely-new-agey ~herbal remedies~ websites over here 03:15:03 Tobacco: All natural. Must be good for you, try some today! 03:15:07 apparently it requires a prescription in norway 03:15:14 Sgeo_: Your body doesn't produce tobacco. 03:15:19 norway is pretty strict about such things, i think 03:15:23 oerjan: oh well, just import it anyway :D 03:15:41 I was more mocking herbal stuff than anything connected to melatonin 03:15:43 oerjan: i mean worst case, you get outraged headlines talking about the drug smuggling charges for ... melatonin on the national newspapers 03:15:49 oerjan: and that would be hilarious. 03:15:54 Sgeo_: Ah. Fair enough. 03:16:11 elliott: well there wouldn't be anything wrong with _asking_ my doctor would it, given that i actually have an appointment on thursday 03:16:14 Hmm. What does the body produce that you shouldn't take in more of? 03:16:24 oerjan: well maybe he'll find out about your cocaine habit 03:16:29 Sgeo_: semen 03:16:42 Sgeo_: um, shit? :p 03:16:53 (it's a she) 03:17:04 oerjan: that's what he wants you to think 03:17:09 A shee? Creator of norns? 03:17:19 oerjan: ok seriously, ban him 03:17:22 you have justification now 03:17:38 Just heard a cat yelping. Got frightened, then realized that my cat is right here 03:18:04 Sgeo_: HCl. 03:18:50 In homeroom, which was in a science classroom: "Hey Seth, what's HCI? Is it safe to drink?" 03:19:02 "I" 03:19:03 rage 03:19:22 elliott, not against me. I'm saying what the person said... 03:19:34 I'm not sure HCI is possible. 03:20:07 What about H#C#I# for nonzero #? 03:20:15 Erm, possibly different numbers 03:21:45 turtles 03:21:46 Probably *possible*, not necessarily all that *stable*. 03:21:49 turtles say bye Sgeo_ 03:21:51 Sgeo_ go bye bye 03:21:54 turtles 03:23:45 elliott, if you help me find my textbook... hm, I have nothing of value to give you. But since it's physically impossible for you to help me find it anyway 03:24:01 "Methyl iodide, also called iodomethane, and commonly abbreviated "MeI", is the chemical compound with the formula CH3I." 03:24:09 Sgeo_: The one thing of value you could give me is for you to leave right now. 03:24:40 I hope you realize that I'm not taking you seriously 03:24:58 Sgeo_: Um, I was really serious there. 03:25:08 Sgeo_: that's supposedly simplest organic iodine compound 03:25:12 *+the 03:25:13 oerjan: no that's you 03:25:20 you're the simplset organic iodine compound 03:25:22 *simplest 03:25:23 also a kitten 03:27:57 no i'm really more a puppy 03:28:14 Ok, 3 min, I leave 03:28:34 2min 03:28:35 oerjan: ban him this time 03:28:41 oerjan: also, i hate dogs, so you're a kitten 03:28:48 elliott, what's with the me-hate? 03:28:59 Sgeo_: i'm just trying to help you achieve your goals 03:29:00 which are leaving 03:29:06 which also coincides with my goals, which are to be an asshole 03:29:20 My goal is to get my homework done. If I could do that and stay on IRC, I would 03:29:37 Although avoiding IRC hasn't helped in the past... 03:29:50 i bet next class you'll learn about looping through an array! 03:29:51 "Industrially significant organoiodine compounds, often used as disinfectants or pesticides, are iodoform (CHI3), methylene iodide (CH2I2), and methyl iodide (CH3I)." 03:29:55 an education well-spent 03:30:31 -!- Sgeo_ has quit (Quit: Leaving). 03:31:10 oerjan: can you ban him anyway? 03:33:35 afk 03:34:26 -!- Sasha2 has joined. 03:35:41 oerjan: BAN HIM 03:36:54 -!- Sasha has quit (Ping timeout: 265 seconds). 03:41:46 hmm so if pastebins, url shorteners and image hosters are the same thing maybe EVERYTHING Is 03:41:47 *is 03:44:10 -!- poiuy_qwert has joined. 03:47:19 -!- augur has joined. 03:54:31 ais better be more active tomorrow 03:54:33 oerjan: ensure it 03:57:21 sed 's/^X//' > \R\E\A\D\_\M\E << '+ END-OF-FILE '\R\E\A\D\_\M\E 03:57:22 X#This file is part of the Concurrent Versions System CVS. 03:57:23 oh that is clever! 03:57:27 remind me to use that in ddshar maybe 03:57:34 oh wait i can't really, not with this architecture 03:57:35 darn 03:57:41 remind me to do ddshar properly, then 03:58:28 -!- quintopi1 has joined. 03:58:34 -!- quintopi2 has joined. 03:59:38 [[# No versioning of symbolic links. Symbolic links stored in a version control system can pose a security risk - someone can create a symbolic link index.htm to /etc/passwd and then store it in the repository; when the "code" is exported to a Web server the Web site now has a copy of the system security file available for public inspection. A developer may prefer the convenience and accept the responsibility to decide what is safe to version and 03:59:38 what is not; a project manager or auditor may prefer to reduce the risk by using build scripts that require certain privileges and conscious intervention to execute.]] 03:59:40 worst excuse ever 03:59:49 -!- quintopi2 has quit (Client Quit). 04:00:38 [[OpenCVS is a BSD-licensed implementation of the popular Unix version control software called Concurrent Versions System. OpenCVS is developed as a part of the OpenBSD project by Jean-Francois Brousseau, Joris Vink, Xavier Santolaria, Niall O'Higgins and others. 04:00:38 OpenCVS aims to be as compatible as possible with the GNU CVS implementation without compromising security or source code correctness, and to provide better access control.[1] As of October 2010[update], the project website claims that "OpenCVS is to be released soon"[2] and the project shows CVS activity as recent as August 1st, 2010. The project is still actively being developed. 04:00:38 [edit] OpenRCS 04:00:39 Because of the development of OpenCVS the developers saw the need for OpenRCS also and OpenBSD has started to develop a free and secure version of RCS also.]] 04:00:44 http://www.opencvs.org/ 04:00:46 pikhq: LOL NIH 04:01:30 RCS was first released in 1982[1] by Walter F. Tichy while he was at Purdue University as a free and more evolved alternative to the then-popular Source Code Control System (SCCS). It is now part of the GNU Project, who is still maintaining it. The current development version is 5.7.95 (released on 2010-12-02,[2] is a step toward the first release since 1995[3]—5.8 is planned to be released “in a week or so”.[3] 04:02:18 Haha wow, Jörg Schilling maintains SCCS. 04:02:49 -!- quintopi1 has quit (Client Quit). 04:02:55 -!- p_q has joined. 04:03:34 -!- poiuy_qwert has quit (Ping timeout: 240 seconds). 04:04:15 -!- elliott has quit (Quit: Leaving). 04:07:01 -!- hagb4rd has joined. 04:11:32 damn it took him forever to get to bed :P 04:11:47 (hi elliott! i love you i promise!) 04:23:53 -!- Sasha has joined. 04:26:43 -!- Sasha2 has quit (Ping timeout: 260 seconds). 04:39:42 -!- CPi has joined. 04:43:34 假洋鬼子 04:43:47 slip inside my sleeping bag 04:43:57 sasha! 04:44:23 `translate 假洋鬼子 04:44:29 oh thanks oerjan 04:44:34 was just gonna ask someone to do that 04:44:54 Fake foreign devil 04:45:00 :D 04:46:06 `translatefromto en zh Don't you like our topic? :D 04:46:08 你不喜欢我们的话题? :Ð 04:47:25 `translatefromto zh en 你不喜欢我们的话题? 04:47:26 你们喜欢用英文,这很正常。但你们的标题我不太认同 04:47:26 You do not like our topics? 04:47:49 `translatefromto zh en 你们喜欢用英文,这很正常。但你们的标题我不太认同 04:48:00 Do you like English, this is normal. But I do not agree with your title 04:49:00 `translatefromto en zh It's just meant as a joke anyhow. 04:49:01 这只是意味着一个玩笑,无论如何。 04:49:39 may be 04:51:03 -!- oerjan has set topic: If this topic doesn't confuse you, you haven't understood it properly. | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 04:52:40 我想大家都没有什么恶意,只是在开放的网络,更需要开放的精神,还有中国人的胸怀 04:52:58 对不起,打扰啦 04:53:11 `translate 我想大家都没有什么恶意,只是在开放的网络,更需要开放的精神,还有中国人的胸怀 04:53:13 I think everybody does not mean anything, but in an open network, more needs to open up the spirit of the Chinese people's mind there 04:53:32 `translate 对不起,打扰啦 04:53:33 I'm sorry to bother friends 04:54:09 -!- CPi has quit (Quit: Leaving). 04:59:32 he has a point i suppose 05:00:27 eh 05:00:51 i was gonna change topic to "this topic is as subtle as your penis" but that's not really the medium for that joke 05:01:29 don't do that, if our previous topic attracted furious chinese, then that might attract furious women 05:01:40 exactly 05:01:55 although it's especially apt for women 05:03:16 how about "this topic is as subtle as the idea of a penis as a status symbol for males" :P 05:03:46 _may be_ 05:04:06 nah it's too convoluted 05:04:21 JUST LIKE YOUR PENIS 05:07:31 that's what she said 05:07:44 ("she" is traditionally taken to be "your mom") 05:09:48 WANTED (soon): Pithy, short, well-known phrases about evil. 05:10:05 (Which include the word "evil") 05:10:15 The love of money is the root of all evil. 05:12:49 related: women are evil 05:14:32 Hear no evil, see no evil, speak no evil. 05:15:42 *See no evil, hear no evil, speak no evil. 05:15:55 "I am evil, not stupid." 05:16:22 -!- TLUL has joined. 05:19:24 All that is necessary for the triumph of evil is that good men do nothing. 05:20:31 Do good, reap good; do evil, reap evil. 05:21:02 Gregor: BTW, this is incredibly fun 05:21:37 Gregor: what are you going to do with them? 05:21:48 Trying to get the best pithy title for a paper about eval :P 05:22:04 The Root of All Eval was vetoed as being misleading since we're not about provenance. 05:23:15 The current title is The Eval that Men Do, but I think we can do better. 05:23:25 "a necessary evil" 05:24:29 probably not for the paper you're writing 05:24:49 That's already used for a subsection, with a question mark (A Necessary Eval?) 05:24:53 "good vs. evil" 05:25:48 Seems a bit more biased than we want in a title for a scientific paper :P 05:26:25 Gregor: anything you write is going to bring up evil-eval associations, so... 05:26:32 this bible site is darn slow 05:26:52 "an evil spirit" 05:27:03 oerjan: I googled "evil quotes" 05:27:17 Mathnerd314: THAT'S CHEATING 05:27:20 also, evil 05:27:29 Mathnerd314: It's supposed to bring up evil-eval associations of course, but the title, not taken as a pun, should not be biased. The bias should only be through the pun :P 05:28:12 To fear the LORD is to hate evil 05:28:15 "the wave of eval" 05:28:29 * oerjan whistles innocently^Wevilly 05:29:06 "the worst of evil" 05:29:42 what's the paper about? 05:30:03 "the lesser of two evils" 05:30:09 "Why do you 05:30:10 entertain evil thoughts in your hearts?" 05:31:02 ah here i think is the one i was looking for: "The Heart of the Sons of Men Is Full of Evil" 05:31:34 Gregor: what's the paper about? 05:31:51 Mathnerd314: It's an in-depth study of how eval is used in real-world code. 05:31:51 * oerjan hazards a guess it's about eval somehow 05:32:53 hmm, the eval that men do is actually descriptive 05:33:21 Yes 05:33:28 But it's not pithy enough :P 05:33:36 It'll do if we don't find anything better 05:34:05 "evil empire" 05:34:22 "The Eval Empire"...? 05:35:28 * Gregor whistles the Star Wars theme 05:36:13 I seem to recall some short phrase involving "the nature of evil", but can't find it ... 05:36:29 "axis of evil", but that's someone's blog 05:37:33 * Mathnerd314 is now looking at Wikipedia titles, which have much less noise 05:37:48 "fear no evil" 05:38:10 "the mind of evil" 05:38:21 "don't be evil" 05:38:57 "all about evil" 05:39:47 I think "Resident Eval" wins the worst-possible-name award. 05:39:53 (Using the same method :P ) 05:40:52 "the changing face of evil" 05:41:31 "for love of evil" 05:41:52 "I will fear no evil" 05:42:30 "the ultimate evil" 05:42:51 Deliver Us from Eval X-D 05:43:29 "defending the throne of evil" 05:44:07 -!- asiekierka has joined. 05:44:12 "good people in times of evil" 05:44:32 hey 05:44:52 -!- hagb4rd has quit (Ping timeout: 245 seconds). 05:45:41 "the stench of evil" 05:45:45 :p 05:46:40 Gregor: I think that's pretty much it 05:46:43 The evil league of evil? 05:46:48 :P 05:47:18 "evil among us" 05:47:23 Yeah, unfortunately I think The Eval that Men Do is still the best :( 05:47:42 an evil that walks the earth 05:47:52 yeah i think it suits your paper best as well 05:48:33 (but when you find a good reason to write a paper called "The Life of Eval Knieval" let me know) 05:50:53 Gregor: on the other hand, now you know how to quickly find good titles if you're completely stuck 05:51:15 i would be surprised if he had not done this before 05:51:29 Now I need to find how to name a subsection Lord Deliver Us from Eval 05:51:53 drop the lord and you can find a way 05:52:42 also, since it is the worst-possible-name, resident eval deserves a subsection 05:53:33 Gregor: IMO "the eval empire" should also be in there 05:53:55 Mathnerd314: It's a good'n, but I don't know what it means :P 05:54:25 how about you have a section judging whether uses of eval are legitimate or stupid 05:54:26 spawn of eval 05:54:30 and call it "the eval umpire" 05:54:47 Gregor: used by Ronald Reagan to refer to the Soviet Union 05:55:00 Mathnerd314: Nonono, I don't what it means in terms of eval 05:55:11 quintopia: ... *barf* :P 05:55:47 no, you use it for the introduction... "widespread use of eval", etc. 05:56:34 Gregor: Rats Lave On No Eval Star 05:58:48 OOOH 05:59:05 See No Eval, Hear No Eval can be a title for a subsection about how most analyses simply ignore eval 8-D 06:01:17 hmm... "a report on the banality of eval" 06:02:41 ^ Gregor ? 06:02:55 eval is not banal though 06:03:50 only Gregor knows the results of his paper, and whether or not eval is banal 06:03:52 Gregor, eval considered harmful? 06:04:04 I'm sure this has been done 06:04:36 i lolled a little though 06:05:06 Vorpal: "Considered Harmful" Papers Considered Harmful 06:05:15 Gregor, indeed 06:07:18 Gregor: does your paper end up showing that eval is banal? 06:07:57 Mathnerd314: You could say that 06:08:01 the conclusion should definitely be called the evaluation instead 06:09:00 Gregor: then IMO 06:09:25 "A Report on the Banality of Eval" is a better title 06:09:29 Mathnerd314: Is that a reference to something though? 06:10:03 yeah, http://en.wikipedia.org/wiki/Banality_of_evil 06:10:33 oh the eichmann book 06:10:42 Mmmmmm 06:10:59 up to you, of course 06:11:10 Gregor, js 06:11:11 ? 06:11:15 Vorpal: Yuh 06:13:00 -!- asiekierka[2] has joined. 06:15:06 -!- asiekierka has quit (Ping timeout: 260 seconds). 06:15:41 bbl, university 06:16:03 Gregor: where's it going to appear? LtU? 06:16:33 Mathnerd314: I can't guarantee that it's going to appear anywhere :P 06:16:46 Mathnerd314: But we're aiming for ECOOP, which luckily is non-anonymous so I can talk about it :P 06:16:57 but I want to see it! 06:17:13 Gregor: how does non-anonymous peer review work? 06:17:48 Gregor: advance copies for everyone here, right? eyes only? 06:18:07 quintopia: Uhhh, like any other peer review? Remove conflicts of interest, and don't be "that guy" who treats people preferentially :P 06:18:50 -!- asiekierka has joined. 06:18:50 This is the third paper I've published this term, but the first I've mentioned here since the other two have been anonymous :P 06:19:18 you are avoiding the question sir 06:19:35 -!- asiekierka[2] has quit (Ping timeout: 240 seconds). 06:19:39 Indeed! 06:20:05 If somebody wants to proofread it on Wednesday, maybe :P 06:25:21 anonymous papers? 06:26:05 Nonanonymous 06:26:36 Gregor: why can't I read it now? just throw it up somewhere like arXiv, Google docs, etc. 06:26:39 ...for some of us it's the concept of an _anonymous_ paper which boggles the mind :D 06:26:54 Right now it's a giant pile of graphs with little explanation :P 06:27:01 -!- zzo38 has joined. 06:27:02 oerjan: Anonymous only for review 06:27:42 oh 06:27:57 when will they become nonymous? 06:28:18 you mean lolonymous 06:28:46 coppro: When/if published :P 06:30:29 well i'm not _sure_ if math uses anonymous review, the times i was asked it certainly wasn't. in any case keeping it secret for anyone _other_ than the reviewere sounds weird, given that we basically give preprints to anyone who could want one... 06:30:44 *-e 06:31:09 true that 06:31:21 so gregor, what were the other papers about, vaguely? 06:31:36 oerjan: Well, you're supposed to make a best-faith effort not to reveal that information just in case someone knows someone who knows someone, unless you actually intend to work with them. 06:31:41 quintopia: JavaScript and JavaScript. 06:31:45 (not vaguely because you have to keep them secret. vaguely because i don't care enough to hear details) 06:31:54 oh, blargh 06:31:58 * coppro stopped caring 06:31:59 gnight 06:32:01 do you write about anything but js? 06:32:12 quintopia: Not right now ;P 06:32:38 Gregor: _and_ we give talks at conferences about the work, too. 06:32:50 oerjan: ... yes, that's the whole point of a conference. 06:33:21 -!- hagb4rd has joined. 06:33:34 it's because judging the work based on its author is such a good nutjob-filtering heuristic in math, anonymous review would break the field. 06:33:37 and unless it's a very big field it would be extremely likely for the reviewere to be at that conference, i should think... 06:33:39 * Gregor wonders wtf oerjan thinks Gregor means by "anonymous submission" :P 06:34:11 oerjan: These are /conference/ submissions. 06:34:20 Gregor: oh. 06:34:22 oerjan: Conferences are the journals of Computer Science. 06:34:47 i think math should go that way too 06:34:57 ok i guess it's not common to have pre-reviewed conference talks in math either 06:35:50 oerjan: A non-pre-peer-reviewed conference in CS is called a joke :P 06:38:01 HAHAHAHA good one Gregor 06:39:57 ... not a good joke I'll admit. 06:42:10 speaking of jokes, i hear doug presented the chicken paper at a conference. wish i could have been there. 06:42:13 Gregor: why? they just need some way to, after the first minute, shut them up and say "next" 06:42:32 Mathnerd314: the music! 06:43:29 Mathnerd314: That's just how CS works. Journals are generally considered sort of an olde and musty means of doing things, used only for extremely drab things like giant proofs and shit, conferences are just the equivalent for new and ongoing stuff. 06:44:06 probably the way math works too 06:44:26 Idonno how math works :P 06:44:41 Gregor: who does? it's alchemy... 06:48:12 -!- hagb4rd has quit (Ping timeout: 245 seconds). 06:58:42 -!- asiekierka has quit (Ping timeout: 272 seconds). 07:32:37 Now I have the H. Lee hand grenade of Auntie Ock. 07:33:49 *groan* 07:39:27 -!- Sasha2 has joined. 07:41:29 -!- Sasha has quit (Ping timeout: 265 seconds). 07:56:15 -!- hagb4rd has joined. 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:05:01 -!- Mathnerd314 has quit (Quit: ChatZilla 0.9.86-rdmsoft [XULRunner 1.9.2.12/20101026210630]). 09:05:42 -!- zzo38 has quit (Remote host closed the connection). 09:20:36 -!- zzo38 has joined. 09:21:15 -!- nooga has quit (Ping timeout: 240 seconds). 09:38:11 -!- quintopia has quit (Quit: Lost terminal). 09:38:32 -!- quintopia has joined. 09:44:14 -!- evincar has joined. 10:02:05 -!- ais523 has joined. 10:09:13 -!- hagb4rd has changed nick to hagb4rd|afk. 10:25:58 -!- quintopia has quit (Quit: Lost terminal). 10:37:57 -!- quintopia has joined. 10:44:27 -!- quintopia has quit (Quit: Lost terminal). 10:44:43 -!- quintopia has joined. 10:45:41 -!- quintopia has quit (Client Quit). 10:46:34 -!- quintopia has joined. 10:50:20 -!- evincar has quit (Quit: ChatZilla 0.9.86 [Firefox 3.6.13/20101203075014]). 10:51:48 -!- quintopi1 has joined. 10:52:21 -!- quintopia has changed nick to Guest36478. 10:53:09 -!- quintopi1 has changed nick to quintopia. 10:59:16 -!- ais523 has quit (Ping timeout: 240 seconds). 11:18:48 -!- quintopia has quit (Quit: Lost terminal). 11:18:55 -!- quintopia has joined. 11:19:18 -!- quintopia has quit (Client Quit). 11:19:18 -!- Guest36478 has quit (Quit: Lost terminal). 11:19:33 -!- quintopia has joined. 11:22:46 -!- hagb4rd|afk has changed nick to hagb4rd. 11:23:38 -!- TLUL has quit (Quit: *disappears in a puff of orange smoke*). 11:27:03 -!- quintopia has quit (Quit: Lost terminal). 11:27:15 -!- quintopia has joined. 11:33:57 -!- quintopia has quit (Quit: Lost terminal). 11:34:13 -!- quintopia has joined. 11:43:44 -!- quintopia has quit (Quit: Lost terminal). 11:43:52 -!- quintopia has joined. 12:20:52 -!- FireFly has joined. 12:23:14 -!- quintopia has quit (Quit: Lost terminal). 12:24:23 -!- oerjan has quit (Quit: leaving). 12:25:25 -!- quintopia has joined. 12:28:32 -!- quintopia has quit (Client Quit). 12:29:10 -!- hagb4rd has quit (Ping timeout: 240 seconds). 12:29:26 -!- quintopia has joined. 12:32:28 -!- wareya has quit (Ping timeout: 272 seconds). 12:33:58 -!- Sasha2 has quit (Ping timeout: 240 seconds). 12:34:40 -!- Sasha has joined. 12:51:49 -!- atrapado has joined. 13:15:39 13:23:11 -!- hagb4rd has joined. 13:31:00 -!- ais523 has joined. 13:55:31 -!- wareya has joined. 14:13:48 -!- wareya has quit (Ping timeout: 272 seconds). 14:27:10 -!- wareya has joined. 14:43:27 -!- p_q has quit (Quit: This computer has gone to sleep). 14:44:29 hmm, you know your job is potentially awesome when you come up with a valid reason to play Enigma during a meeting, and even tell the other people there you're doing so 14:46:15 its even better when there is no need to tell the others at all 14:46:24 i guess^^ 15:06:06 -!- asiekierka has joined. 15:10:52 hagb4rd: nah, I could get away with that sort of thing nearly all the time, nobody pays attention to what you're doing 15:17:11 -!- olsner has quit (Ping timeout: 255 seconds). 15:17:56 -!- elliott has joined. 15:18:46 -!- olsner has joined. 15:21:29 so olsner wtf is that stuff you have to do before long mode your code is magic :D 15:32:02 -!- sftp has joined. 15:39:37 -!- hagb4rd has quit (Quit: hagb4rd). 15:40:56 -!- nopseudoidea has joined. 15:43:31 -!- nopseudoidea has left (?). 15:50:31 -!- hagb4rd has joined. 15:59:02 -!- hagb4rd has quit (Ping timeout: 245 seconds). 15:59:05 -!- augur has quit (Remote host closed the connection). 15:59:21 -!- Phantom_Hoover has joined. 15:59:29 -!- augur has joined. 16:02:12 Thing that annoys me about Minecraft: you get flint from gravel. 16:02:16 -!- Sgeo has joined. 16:02:29 In class now 16:02:31 Flint is found in limestone in real life, not gravel. 16:02:32 Phantom_Hoover, why does that annoy you? 16:02:35 hm 16:02:43 No way I'd be able to focus on homework for a different class 16:02:57 Phantom_Hoover, but boats accelerating up waterfalls due to floating on water doesn't bother you? 16:03:02 Nor am I willing to pirate a textbook (I own the physical copy) and I obviously don't have the textbook with me 16:03:10 Vorpal, no! 16:03:20 Phantom_Hoover, arguably that is a much larger error 16:03:32 Vorpal, but it's a cool error! 16:03:57 -!- augur has quit (Ping timeout: 240 seconds). 18:04:41 -!- clog has joined. 18:04:41 -!- clog has joined. 18:04:44 ais523: reason I don't think it should be .scapegoat, btw: it's not configuration, and it's not a cache; it's an actual directory with useful contents, just not one you want at the top of your file lists 18:04:45 hi clog 18:04:49 gah, this convo hasn't been logged 18:04:54 I have it logged 18:04:58 good 18:05:09 i'll put it on a pastebin in a bit 18:05:15 well, sprunge 18:05:19 evil idea: paste the entire log in-channel, so that a) clog logs it, and b) Vorpal gets to read it 18:05:28 ais523: I've done that before, during much shorter outages 18:05:30 (also, probably bad idea) 18:05:38 ais523: oh, and also, servers 18:05:44 ais523: you don't want to have a directory foo/ with just .scapegoat in it 18:05:45 does sprunge stay around forever? 18:05:50 and yes 18:05:54 git makes it "foo.git" 18:06:03 there's no real reason you shouldn't be able to do, e.g. 18:06:12 darcs uses _darcs, which isn't ideal but which is better than .svn or whatever 18:06:41 ~/awesomeproject$ cp -R @scapegoat /var/scapegoat/awesomeproject 18:06:59 and scapegoat when pulling would basically go "is this directory a scapegoat repository? if not, look at ./@scapegoat" 18:07:02 and everyone's happy 18:07:11 ais523: _darcs is actually like that solely for Windows 18:07:18 really? how boring 18:07:21 I didn't even realise it ran on Windows 18:07:30 is that why it doesn't record permissions? 18:07:32 ais523: and people (even me...) have lobbied to change it to .darcs... regretfully 18:07:34 ais523: who knows? 18:07:41 ais523: it only runs on windows through some half-cygwin monster, I think 18:07:44 I forget what, exactly 18:07:57 (also, we so need an ISO 646 for permissions, i.e. a permission subset that works everywhere sane) 18:08:08 ais523: the problem with _darcs that you really want something that comes after everything in the alphabet; just like you name things README and INSTALL so they sort first alphabetically, the scapegoat directory should come last to avoid annoyance 18:08:13 (then we can invent trigraphs for permissions that aren't there) 18:08:26 and I get used to ignoring a load of junk at the start of ls outputs 18:08:40 in fact, last is probably more readable than first because of the way terminals scroll 18:08:44 first scrolls off before last does 18:08:48 ais523: I say we just track Unix permissions in the actual implementation (it can be abstracted out as metadata in the specification) and forget Windows even exists 18:08:58 elliott: so do I 18:09:00 in fact, last is probably more readable than first because of the way terminals scroll 18:09:03 yes, but e.g. graphical file managers 18:09:08 README and INSTALL go first, which is nice 18:09:12 wow, I forgot they existed for a while 18:09:29 and I'm far from a live-inside-the-terminal sort of person 18:09:31 I actually use Nautilus occasionally :) 18:09:33 so do I 18:09:40 specifically, for opening Enigma levels 18:09:44 heh 18:09:51 I'm not entirely sure why; I just developed different workflows for different sorts of file for some reason 18:09:57 Oh, is that why README and co. are uppercased? Too bad that not all LC_COLLATEs operate that way 18:10:01 Deewiant: Yes. 18:10:16 (Any others than C?) 18:10:16 why not do it Makefile-style and just uppercase the first letter? 18:10:25 Deewiant: I doubt it 18:10:26 * elliott makes mental note to make sure scapegoat implementation is in C, because it's flexible enough that the overhead of something else is probably a bad idea :) 18:10:28 I always figured it was just to make them stand out 18:10:30 I know README sorts to the middle in my ls 18:10:40 well, you see 00README on ftp servers a lot 18:10:41 and the like 18:10:44 I'm mostly just wondering about en_US 18:10:48 indeed 18:10:58 Deewiant: mine's en_GB.UTF-8, I think 18:11:00 Because if that doesn't work that way, then most people probably don't see it like that :-P 18:11:02 ditto 18:11:06 Same here 18:11:11 even though there's no actual reason to use UTF-8 for British English other than the £ sign 18:11:16 also, you use British English? 18:11:17 Deewiant: you're... en_GB.UTF-8? 18:11:27 and €, I suppose 18:11:29 * elliott 's mind causes a fault or two 18:11:44 $ locale | sed 's/"//g' | cut -d= -f2 | sort -u 18:11:44 custom 18:11:44 en_DK.utf8 18:11:44 en_GB.utf8 18:11:44 fi_FI.utf8 18:11:44 elliott: btw, I needed this conversation to regain my sanity 18:11:54 the Linux keylogger thing was as disasterous as you might have imagined 18:12:24 ais523, huh? 18:12:38 it's not nice debugging code where the only indication that something went wrong is that the entire system crashes hard (apart from interrupt handlers; and as the keylogger hooks the keyboard interrupt, any key you press to try to fix the problem makes things worse) 18:12:53 ais523: :D 18:13:01 ais523: you do realise you can gdb linux? 18:13:03 probably painful though 18:13:06 Phantom_Hoover: I'm paid to help people work on exercises, even if they were terribly flawed in the first place 18:13:14 elliott: I didn't, in fact I thought it was impossible 18:13:24 and gdb on the keyboard interrupt handler is asking for a disaster 18:13:31 as you'd have to use, umm, telepathy to control it? 18:13:39 ais523: umm, you run Linux in qemu or whatever 18:13:41 (the handler in question is called on mouse movements and clicks too) 18:13:43 ais523: and attach gdb to it from outside 18:13:48 oh, that makes more sense 18:13:49 ais523: it's called kgdb 18:13:56 ais523: well, technically, it's over a serial port 18:14:00 ais523: but you just tell qemu to emulate a serial port 18:14:08 we're using the serial console in the NetHack TAS 18:14:12 (good luck debugging the serial driver...) 18:14:17 also, the Debian installer, modified to run NetHack 18:14:23 ais523: what. 18:14:36 the serial console because it was faster than waiting for the network connection to come up 18:14:57 ais523: ooh, let's argue about what hash function to use to identify things! 18:14:59 and the Debian installer beause we were trying to strip down Debian and then realised that the installer itself was Linux-based, really small, and ran a single program 18:15:26 (GUIDs are lame, (1) they're random numbers, which feels so unplatonic and bad, and (2) hash-addressing is awesome, because it constitutes a near-certain proof that you know what the content is) 18:15:29 (it no longer actually installs Debian, unfortunately; that'd have been pretty fun if it did) 18:15:34 ais523: :D 18:15:54 ais523: btw, the Debian installer has an actual name, although not the part you mean 18:16:00 the installer program itself is called debian-installer 18:16:06 you probably mean "the Debian installer environment" 18:16:09 yep, I do 18:16:12 ais523: anyway, hash arguing! the most fun and pointless sport there is 18:16:30 what about SHA-(maximum filename length on Windows) 18:16:37 because it's probably shorter than UNIX's 18:16:40 ais523: heh 18:16:43 (this is, with typical filesystems) 18:16:57 ais523: I'd say we should just go for whatever turns out to be the winner of SHA-3, except that they disqualified djb's CubeHash 18:17:02 and I'm sad because I /like/ CubeHash 18:17:03 My eyes really hurt for some reason... 18:17:15 apparently, they disqualified some just because they were too simple 18:17:20 ais523: also, you do realise that SHA-n isn't n hex digits? 18:17:21 and thus, too good to be true 18:17:25 elliott: indeed 18:17:26 ais523: not too simple, just ones that made them "nervous" 18:17:32 unless your source is something more than the press release 18:17:46 elliott: no, my source is something less, it's a random Slashdot comment 18:17:52 heh 18:17:57 but they have a pretty good accuracy on average 18:18:10 more or less like Wikipedia is still mostly correct 18:18:14 ais523: to be honest, we could just use SHA-512 and it'd never be a problem, but *eh* 18:18:25 we could use md5 and it'd never be a problem 18:18:32 unless people were trying to store hash collisions or something 18:18:38 or deliberately trying to screw up repos 18:18:39 ais523: not true, what if we version-controlled those presidential predictions :) 18:18:43 heh 18:18:53 ais523: deliberately screwing up repos is a platonic concern, considering everything is one gigantic tree 18:18:57 indeed 18:19:13 the filenames (and thus patch names) should probably include the hash algo as part of the name 18:19:16 ais523: an issue of SHA-512 is that I can imagine a filename having multiple hashes in its path 18:19:20 so we can change without breaking compatibility 18:19:26 and a lot of filesystems have limits 18:19:33 hmm, base36 encode whatever hash we use? 18:19:36 ais523: hmm, like /etc/passwd 18:19:46 ais523: I dunno, hexadecimal is so pretty :) 18:19:59 also, IIRC the SHA2 algos are designed to not get weaker by any more than you'd expect if you remove bits at the end 18:20:12 as in, obviously they get weaker, but they don't collapse or anything like that 18:20:16 Max filename length 255 bytes 18:20:17 --JFS 18:20:24 now, presumably that's a single path 18:20:26 rather than the whole thing 18:20:28 *single path component 18:20:28 is that for filename components? or the whole thing? does it count slashes? 18:20:32 hmm, comments crossed 18:20:48 ais523: well, whole thing would be ridiculous, I'm sure I have something about that long on my system 18:20:49 Vorpal: which is it 18:20:56 why would filenames have multiple hashes in their path, anyway? 18:21:08 if you want to refer to multiple hashes, you just hash the hashes together 18:21:14 ais523: because the hash-based-append-only-key-value-store is nested 18:21:21 because? 18:21:33 ais523: erm, because otherwise you'd end up storing patch1_thing1_foo1 18:21:35 ais523: hmm, in fact, every single thing would have its own hash, even if it's nested inside something else 18:21:40 so the nesting doesn't have to reflect on the filesystem 18:21:42 so never mind 18:21:43 that's the point 18:21:51 there are arbitrary nesting levels, but the filesystem itself is flat 18:21:58 right 18:22:28 ais523: prediction: if we get any sort of reputation at all, we'll get a bad reputation from people who do "ls [NUL]scapegoat" and see a shitload of hashes 18:22:30 and nothing else 18:22:40 oh well, better than Monotone, which just has a gigantic sqlite database 18:22:55 NUL in filenames is a terrible idea 18:23:05 ais523: it was a joke 18:23:08 indeed 18:23:17 you'd still have things like the equivalent of git config --global, too 18:23:27 as in, nothing to do with the repo at all, but with the user 18:23:32 ais523: anyway, SHA-512 is only 128 hexadecimal digits, so we shouldn't have a problem 18:23:34 ~/.scapegoat would be an excellent place for those 18:23:41 ais523: ah, 255 is very unlikely to be whole-path! 18:24:00 * ais523 vaguely wonders if there's a hash algorithm that produces cryptosecure 8.3 filenames 18:24:01 ais523: because Nix does /nix/store/LONGHASH--packagename-version/... (or similar), where ... is a whole root tree 18:24:13 so anything with a long path installed to / gets an even longer path in there 18:24:13 my guess is no, there probably just aren't enough filenames to prevent bruteforcing 18:24:21 and people use various filesystems on nix 18:24:25 ais523: hmm, what are the valid chars of an 8.3 name? 18:25:14 in terms of what physically fits on the filesystem, anything including NUL, except spaces are used to pad the filename portions to 8 and 3 respectively 18:25:14 ais523: hmm, should ~/.scapegoat be an append-only-hash-addressed-key-value store itself, or just a directory with some plain text files in it? 18:25:18 I say the latter, for easy editing :P 18:25:28 also, DOS didn't check for validity in the filenames, that was left up to individual applications 18:25:29 ais523: Well, depends 18:25:34 and nothing complex should really go into ~/.scapegoat anyway; if it has to, a store can go in a subdirectory 18:25:42 Isn't lowercase stored as uppercase in FAT16 18:25:43 ais523: what did most things consider valid, then? I know that it's uppercase-only 18:25:46 I remember the chaos I had trying to delete an 8.3 filename with an embedded space years ago, on DOS 18:26:09 Deewiant: indeed, but if you flip the bits on the disk by hand, it won't physically you changing the letters to lowercase 18:26:11 Legal characters for DOS filenames include the following: 18:26:11 * Upper case letters A–Z 18:26:11 * Numbers 0–9 18:26:11 * Space (though trailing spaces in either the base name or the extension are considered to be padding and not a part of the filename, also filenames with spaces in them could not be used on the DOS command line because it lacked a suitable escaping system) 18:26:12 * ! # $ % & ' ( ) - @ ^ _ ` { } ~ 18:26:13 * (FAT-32 only) + , . ; = [ ] 18:26:16 * Values 128–255 18:26:26 ais523: Well, of course you can physically flip a / into a Unix filename as well 18:26:34 elliott: I've known some FAT16 systems to uppercase, e.g., ë 18:26:35 That doesn't mean it's valid as such :-P 18:26:37 umm, I meant é 18:26:39 so, 26+10+1+16+128 18:26:50 is the number of valid chars 18:26:55 and there's 11 of them 18:27:16 ais523: an 8.3 filename, even with insane 128-255 characters and space, has 82.4983 bits in it 18:27:20 slightly more because trailing spaces are allowed, but not leading or embedded spaces 18:27:31 so, answer: not really anything secure, no 18:27:51 ais523: OTOH, there's rather more filenames than you can bruteforce 18:27:56 so that's around 2^41 for a birthday attack, considering a theoretically perfect hash 18:28:01 ais523: 6830686029298982514463981 18:28:13 if we ignore 128-255 and space, then 7516865509350965248 18:28:14 I fear 2^41 is within range of modern hardware, more or less 18:28:23 even though it's a horrendously large number 18:28:24 (which is 62.7 bits) 18:28:29 ais523: heh, you *fear* that? 18:28:40 indeed 18:28:45 modern hardware is scary 18:28:52 remember I grew up with floppy disks 18:29:01 A megabyte is big, dammit 18:29:18 2^41 is large enough that although I have a mental idea of how it compares to various other large numbers, I just can't mentally conceptualise it at all 18:29:25 ais523: yes, and you said 50K was quite a large save file and thus is a feasible minecraft save file 18:29:33 yep 18:29:35 I think the server's must be about 80 megs by now 18:29:37 maybe more, 100 or so 18:29:42 what is it saving? 18:29:56 ais523: (big number)x(big number)x128 bytes 18:30:01 at least, I think blocks are bytes 18:30:06 ais523: plus a little bit more 18:30:21 ais523: big is, uhh 18:30:24 ais523: well the area isn't square 18:30:31 just a bitmap of the entire 3D map? 18:30:33 elliott: What about stuff like snow on top of ground, that doesn't take up a tile does it? 18:30:36 ais523: http://a322.org/mc/map-2010-11-29.png is a recent-ish map 18:30:36 you'd think it'd at least use runlength encoding 18:30:37 ais523: basically, yes 18:30:40 ais523: well, it probably does 18:30:45 ais523: but that's the raw data it's storing 18:30:50 Deewiant: That counts as a block I think. 18:30:55 Deewiant: Just a not-very-tall block. 18:31:06 Deewiant: You can't place stuff on top of it until the next block above, I don't think. 18:31:32 ais523: anyway, the fact that it's 3d means it's storing a bunch of underground caves and lava and oceans and stuff 18:31:32 Fair enough 18:32:05 ais523: hmm, I'm afraid I'm going to not be able to stop myself from writing a hash-addressed, append-only key value store now 18:32:06 elliott: even so, you'd imagine them to be relatively easily compressible 18:32:22 Deewiant, snow, ice, torches, redstone, etc. are just non-solid blocks. 18:32:23 elliott: go for it, we might even use it and even if we don't, it'd be useful in general 18:32:46 ais523: well, it can't compress them too much, since it has to random-access write frequently 18:33:13 RLE survives random-access writes pretty easily 18:33:23 ais523: it occurs to me that I may just be reinventing Venti backed by a unix file system 18:33:27 although you'd need to use something like a skiplist to prevent shuffling data around in memory too much 18:33:31 ais523: (http://en.wikipedia.org/wiki/Venti) Venti is a network storage system that permanently stores data blocks. A 160-bit SHA-1 hash of the data (called score by Venti) acts as the address of the data. This enforces a write-once policy since no other data block can be found with the same address: the addresses of multiple writes of the same data are identical, so duplicate data is easily identified and the data block is stored only once. Data 18:33:31 blocks cannot be removed, making it ideal for permanent or backup storage. Venti is typically used with Fossil to provide a file system with permanent snapshots. 18:33:35 (plan 9) 18:35:14 ais523: hmm 18:35:30 ais523: I don't know how it does actual storage, but the network protocol deflate-compresses the block updates it sends out. 18:35:32 ais523: I just realised that there's one problem with my "merging two scapegoat directories is always easy" thing 18:35:41 SHA-1? isn't that broken nowadays? 18:35:43 elliott: which is? 18:35:43 Assuming 50000 square units, which doesn't seem unreasonable, the map would be 300 megabytes uncompressed 18:35:49 ais523: um, it's Plan 9 18:35:53 ais523: SHA-1 isn't nearly broken, no 18:35:56 it's been attacked 18:35:58 but not nearly broken 18:36:01 ais523: anyway, Plan 9 is old 18:36:03 hmm, OK 18:36:07 they probably picked it soon after SHA-1 came out 18:36:12 less than theoretically perfect, probably 18:36:18 ais523: besides -- "Several source code management systems, including Git, Mercurial, Monotone, and Fossil, use the sha1sum of various types of content (file content, directory trees, ancestry information, etc.) to uniquely identify them." 18:36:21 which always scares the crypto people 18:36:36 ais523: well, it's been attacked. 18:36:38 elliott: don't you want to 1-up them? 18:36:40 ais523: of course! 18:36:43 I'm not suggesting we use it 18:36:59 ais523: anyway, i just realised an issue 18:37:07 ais523: with my "merging two scapegoat directories is always trivial" thing 18:37:13 what is it? 18:38:09 ais523: given a scapegoat directory, how can the user ask for a reasonable working copy of a project without being given additional information? Note that it is possible to merge every single scapegoat directory ever (ok, ignoring hash collisions) without doing anything more than letting the merge of two identically-named and identically-valued files happen (which is a nop). 18:38:27 ais523: if the answer is "figure out what the Official Branch is and extract that", tell me how you'd do that 18:38:33 remember that you must address everything by its hash 18:39:03 they'd need to specify a branch, which is after all just a criterion for selecting a set of patches 18:39:10 the real question is how 18:39:22 ais523: right. 18:39:24 I think some sort of nicknames-for-hashhes method would be useful 18:39:34 *nicknames-for-hashes 18:39:36 ais523: I mean, personally, I don't see ScapegoatHub taking off if you have to paste a big hash in to get a project :) 18:39:41 ais523: possibly ... but then how do you store them? 18:39:47 without breaking the Merge Principle 18:39:50 just like git uses server branch, and the server can be abbreviated 18:40:03 I think you could get away with the same principle 18:40:17 ais523: hmm, perhaps µscapegoat/nicknames/[hash that's being nicknamed]-[hash of the nickname] 18:40:22 where the content of the file is the nickname itself 18:40:48 ais523: then, when the user asks for branch "fobly", scapegoat looks at ↓scapegoat/nicknames/*-H, where H = hash("fobly") 18:40:50 simpler, you could just do "scapegoathub.org/intercal" or whatever 18:40:51 Oh, and the block updates take up 2.5 bytes per block. (One byte for block type, one nibble for metadata, one nibble for static daylight value, one nibble for dynamic block light value or some-such.) 18:40:59 ais523: no 18:41:05 ais523: æscapegoat is the scapegoat directory 18:41:12 oh, it was another topic 18:41:14 fizzie, hah 18:41:20 elliott: I mean, just for specifying a branch name 18:41:23 ais523: and if there's only one nicknames/*-H file, it accepts it and uses that hash 18:41:27 fizzie, are they packed? 18:41:29 ais523: but if there's multiple, it goes "conflicting nicknames!" 18:41:33 ais523: does this seem reasonable to you? 18:41:37 fizzie, or what does he put in the remaining holes? 18:41:44 you can say which server it's a nickname according to 18:41:57 so to download someone's project, you connect to the server and request a particular nickname from it, it tells you what hash that is 18:42:00 ais523: I'm really adamant about the "never any conflicts in øscapegoat directories" thing, because being able to synchronise with *anything* is just too nice, and also being able to merge any two arbitrary repositories 18:42:01 Vorpal: They're packed. I don't know how it deals if there's an odd number of blocks in a chunk update. 18:42:02 and then gives you the hash and all the dependencies 18:42:06 ais523: oh, but the beauty of this is, 18:42:07 I agree 18:42:10 it's the same concept 18:42:11 (Maybe zero-pads the last byte.) 18:42:13 ais523: I just invented our branch naming method too 18:42:14 ais523: without any servers 18:42:17 just a different syntax on the command line 18:42:18 and yes 18:42:46 ais523: simply, to nickname an object with hash H, to nickname N, you write N to ¹scapegoat/nicknames/H-HN, where HN = hash(N) 18:42:51 Vorpal: They're packed. I don't know how it deals if there's an odd number of blocks in a chunk update. <-- sounds inefficient to unpack 18:42:57 fizzie, is this for your mapper? 18:43:09 ais523: then we just need naming standards 18:43:26 that raises the risk of someone slipping a malicious nickname in 18:43:29 ais523: e.g., say that @tip names the Official Branch by convention 18:43:34 ais523: (issue: how to name things that aren't constant?) 18:43:35 ais523: does it? how? 18:43:43 I think the problem we've come up against is the DNS problem 18:43:50 ' ais523: simply, to nickname an object with hash H, to nickname N, you write N to ¹scapegoat/nicknames/H-HN, where HN = hash(N) 18:43:52 decentralized, secure, memorable, pick two 18:43:59 What's with the superscript 1? 18:44:05 Phantom_Hoover: running gag 18:44:14 Phantom_Hoover: we can't agree on a name for the directory, so we're picking random Unicode characters as prefixes 18:44:15 ais523: well, I don't see why security is important here 18:44:27 why is it called scapegoat? 18:44:28 Vorpal: It's not *that* inefficient: to get one nibble, it's a single >>1 to get byte offset, and either a &0x0f or a >>4 to get the value. Anyway, I don't look at the metadata or light values, so... 18:44:37 elliott: because say you have a nickname you care about, underload or whatever 18:44:38 ais523: if there's two files claiming to give a value to the nickname "grok", and you ask scapegoat for grok, it just goes BEEP BEEP YOU CAN'T DO THAT IT'S BROKEN FIX IT 18:44:47 ais523: I don't think you should name anything underload 18:44:55 ais523: you should name something, e.g. "tip" or "next-gen" 18:45:08 ais523: the fact that merging two unrelated repositories would make these nicknames useless is irrelevant; you just reassign them 18:45:12 hmm, are nicknames server-relative? or global? 18:45:15 ais523: they are, after all, mere conveniences 18:45:18 ais523: neither 18:45:19 I thoguht you meant global 18:45:21 ais523, why is it named scapegoat? It make me thing of scapegoat tree (the data structure). 18:45:29 Vorpal: because it's blame-based 18:45:29 Vorpal: because it's based on blame 18:45:34 ais523: basically, 18:45:36 heh, interesting 18:45:37 also, there's a data structure called a scapegoat tree? 18:45:52 ais523: if you ask scapegoat for "a good working directory", it looks up the nickname -- say -- @tip 18:45:56 ais523: and uses that 18:46:14 a good working directory for... what? 18:46:15 ais523: It's yet another self-balancing binary tree. 18:46:20 ais523: the repository! 18:46:22 ais523, yes, a self balancing tree with no per-node memory overhead compared to plain binary trees 18:46:25 ais523: now, if a nickname points to more than one thing -- e.g. you merged two independent repositories -- it'd go "Beep! Beep! Name points to two things! Fix this!" 18:46:26 say I connect to scapegoathub.org and ask it for @tip 18:46:30 ais523: you don't! 18:46:34 ah, good 18:46:37 ais523: scapegoat doesn't even know what scapegoathub.org *is* 18:46:38 we're getting somewhere now 18:46:43 elliott: indeed 18:46:45 ais523: for instance, imagine this 18:46:48 -!- Sasha2 has joined. 18:46:49 but I want to download a project from there 18:46:51 what do I do? 18:47:02 ais523: $ wget http://scapegoathub.org/especially-ridiculous-distribution-methods/tarballs/my-awesome-project-of-luv.tar 18:47:11 ais523: $ tar xf my-awesome-project-of-luv.tar 18:47:13 ais523: $ ls 18:47:18 ais523: ¾scapegoat 18:47:22 OK, and that tarball contains all the hashes in the project and their dependencies, presumably? 18:47:24 ais523: $ scg give-me-a-reasonable-cwd 18:47:25 yep 18:47:28 ah, I see 18:47:30 ais523: it'd look up @tip 18:47:48 elliott, ¾? 18:47:51 that wget line, although it'd work, though, is likely inefficient 18:47:54 ais523: of course, you wouldn't actually distribute repositories that way, I was just trying to demonstrate how I'm trying to make everything completely agnostic of how you get the scapegoat directory 18:47:55 As for the current map, the bounding box is about 4704x6032 blocks, of which 6913281 blocks (24.36%) actually exists; that means about 850 megabytes if I just take *128 bytes; more, if it's actually *128*2.5; less, if it's more sensibly stored. 18:48:02 ais523: thus the /especially-ridiculous-distribution-methods/ 18:48:08 Vorpal: as i said, running gag 18:48:10 indeed 18:48:19 elliott, mhm 18:48:26 ais523: anyway, if you did e.g. 18:48:35 fizzie, iirc the admin said it was like 100 MB some weeks ago 18:48:42 ais523: $ cp -R proj/someproj/€scapegoat/* proj/anotherproj/€scapegoat 18:48:44 ais523: then you did 18:48:47 ais523: $ cd proj/someproj 18:48:52 ais523: $ scg give-me-a-reasonable-cwd 18:48:58 Vorpal: I think it's very likely the on-disk storage is deflate'd or something. 18:49:02 ais523: ERROR: Nickname "@tip" points to more than one hash! 18:49:04 ais523: [ahash] 18:49:06 Vorpal: It might be kept uncompressed in memory, though. 18:49:06 ais523: [anotherhash] 18:49:06 fizzie, ah probably 18:49:09 (Away some moments.) 18:49:10 -!- Sasha has quit (Ping timeout: 250 seconds). 18:49:13 ais523: Please rectify this problem with "scg name". 18:49:24 ais523: so, obviously, you just have to fix that to get it working 18:49:32 Deewiant, built anything on the server yet btw? 18:49:43 ais523: IMO there's little reason to try and keep nicknames global, because (1) they're just conveniences and (2) you can easily reassign them 18:49:55 hmm, slightly unrelated; I've realised that you could use a patch name instead of a branch name, making every patch implicitly "a branch containing only dependencies of this patch" 18:49:55 ais523: (you should probably version them, but that's irrelevant at this point) 18:50:04 ais523: indeed 18:50:04 Oh, right, I meant 300 gigabytes earlier, I typoed my divisor 18:50:09 ais523: anyway, there's *one* remaining problem with this 18:50:19 Vorpal: Nothing of relevance 18:50:22 Deewiant, 300 GB for what? 18:50:34 2010-12-13 20:35:14 ( Deewiant) Assuming 50000 square units, which doesn't seem unreasonable, the map would be 300 megabytes uncompressed 18:50:39 elliott: one thing that worries me is why the nicknames have to be inside the ¬scapegoat directory 18:50:40 Deewiant, ah 18:50:47 they seem more reasonable alongside rather than inside it 18:50:51 ais523: maybe they don't, but let's stick with it until I've corrected this issue: 18:50:53 OK 18:50:58 ais523: with ðscapegoat/nicknames/HO-HN (HO = hash of object, HN = hash of name), how do you make @tip always point to the Official Branch? 18:51:10 ais523: updating it every time the Official Branch changes is brittle and ugly 18:51:12 ais523: aha! 18:51:15 ais523: I've got it 18:51:22 the Official Branch is just an algo for picking a certain set of hashes 18:51:25 wait wait wait 18:51:25 you make it point to the algo 18:51:26 WAIT 18:51:30 better? 18:51:30 ais523: the formula for the Official Branch is *itself* an object, of type Pointer 18:51:32 -!- MigoMipo has joined. 18:51:35 that's what I just said 18:51:39 ais523: yes, but I thought it first :D 18:51:46 I've just been assuming that all this time 18:51:49 and didn't realise you weren't too 18:51:50 ais523: whenever anything tries to use a Pointer as something of another type, it's implicitly evaluated 18:51:52 good 18:51:55 that was easy 18:51:56 I'd call it of type Branch 18:52:00 but it's just semantics 18:52:02 ais523: well, okay, but you get the point 18:52:24 ais523: as for whether it's in ħscapegoat or not, I think it should be, because having branch and tag names in the repository is nice 18:52:29 ais523: and also, I think they should be versioned 18:52:41 hmm, I think we maybe need two layers 18:52:46 ais523: e.g., if you merge two projects in a silly manner, and then resolve the branch naming conflicts 18:52:48 that should be versioned 18:53:01 ais523: and quite possibly; perhaps we should have ”scapegoat/store be the actual key-value backing 18:53:09 yep, that's what I was about to suggest 18:53:11 ais523: (but I *refuse* to break the copy-merging :)) 18:53:13 also, smartquotes? shame on you! 18:53:23 ais523: hey, I like smart quotes :) 18:53:25 that way, copymerging would work, but copycaching would wrok too 18:53:28 *work 18:53:30 ais523: Microsoft ruined their reputation by doing them terribly 18:53:33 (and pre-Unicode) 18:53:35 i.e. just copying the store 18:53:43 ais523: indeed 18:53:47 ais523: wait, what do you mean by copycaching? 18:54:18 I mean, just copying the store wouldn't necessarily change the repo, because it might be based entirely on whitelisting branches 18:54:25 ais523: hmm... some VCSes try to promote the idea of branching by cloning... but I think that's actually really infeasible with scapegoat, because of the platonic view of things :) 18:54:26 which is, I suspect, the most common usecase 18:54:29 (note: I don't see this as a bug) 18:54:30 but it'd speed things up in future 18:54:36 ais523: whoa, I just realised something excellent 18:54:49 ais523: say you want two working directories pointed at a different branch of the same project 18:54:49 elliott: it's not infeasible, you just hardlink the stores 18:55:08 ais523: $ mkdir branch1; ln -s main/ħscapegoat branch1 18:55:16 ais523: heh, right, but the point is 18:55:26 ais523: some VCSes promote doing it without even telling the VCS you're branching 18:55:28 but anyway, that's lovely 18:55:31 the question is, whether the store has to be inside the directory or not 18:55:42 ais523: (the above softlink doesn't work in every other VCS, because they have the working directory addressed without a hash) 18:55:44 and it doesn't, working directories and stores are independent 18:55:52 elliott, so far it looks like 4/5th of the code with be a char mapping table :P 18:56:07 in fact, there's no reason to have multiple stores on a given physical computer at all 18:56:08 (TODO: figure out how to find the relevant working directory without having the path hardcoded and keeping merging and linking working) 18:56:15 ais523: indeed 18:56:19 if you don't want a patch, you just don't whitelist it 18:56:27 ais523: but you would, anyway, for convenience :) 18:56:36 and for speed using scapegoat, probably 18:56:40 if you want to save network traffic, or whatever, you set things to download only patches that are contained in some branch you have 18:56:45 yep 18:57:01 ais523: but NOTE, I *still* refuse to have anything in ñscapegoat be able to have the same file name but different contents 18:57:08 agree, I don't see a reason to do that 18:57:11 and I'll never shut up about that :) 18:57:34 ais523: the only remaining thing I can't figure out how to do without that is how to identify "the current working scratch space", and I'm sure I'll figure that out 18:57:45 (perhaps it doesn't even have to exist) 18:57:50 actually, I think it works the other way round 18:57:59 heh 18:58:04 what you ideally want is for the working directory to implicitly be a branch 18:58:13 referring to "the changes that happen to be in this directory right now" 18:58:23 and the only tricky part there is figuring out what its name is 18:58:26 ais523: actually, I think the VCS should not even care about the current working directory unless you tell it to commit it 18:58:33 (perhaps not platonically, but practically) 18:58:46 ais523: it's just, the VCS has to know what patch your working directory is applied to 18:58:48 ais523: i.e., its parent 18:58:54 yes, and all the changes since 18:58:56 ais523: so we have to figure out a way to look that up 18:59:01 ais523: which I'm not sure how to do 18:59:09 because we can't have łscapegoat/current-parent 18:59:18 I'm in favour of editor integration so every change automatically makes a patch, then committing is just grouping them into a larger patch 18:59:39 ais523: I think I'm for that in theory, but strongly against in practice due to efficiency and disk space concerns 18:59:50 assuming you mean every change as in every keypress 18:59:51 weren't you writing an editor that worked like that? 18:59:58 and maybe not /quite/ to that level 19:00:04 ais523: well, sort of 19:00:07 every save would be good enough for most practical purposes 19:00:12 ais523: my editor just pushed saving one level lower 19:00:14 and let the rest cascade 19:00:30 ais523: anyway, it's nice to be able to cherrypick and organise each change 19:00:35 so I'm not sure that's actually practical 19:00:38 anyway, whatever 19:00:47 elliott: lack of sensible cherrypicking is one of the things I dislike most about git, btw 19:00:54 as in, you can do it, but it's much worse than darcs or scapegoat 19:00:57 ais523: the only thing that needs to be figured out, really, is how to figure out what the parent of the current working directory is 19:01:07 yep 19:01:20 since you can't have Ωscapegoat/current-parent, as I said 19:01:37 since that violates the One Filename, One Contents (Modulo Hash Collisions) Principle 19:01:41 TODO: give that principle a better name 19:01:45 *One Possible Content 19:02:15 ais523: hmm... ReiserFS, were it still maintained (heh) would be perfect for scapegoat 19:02:30 ais523: since, it's going to have a *huge* number of files, most of them very small 19:02:47 thankfully, filesystems with the same advantages as ReiserFS in that area are popping up 19:02:52 ext4, to a degree, and btrfs (grr Oracle) 19:02:59 one thing that worries me is the files-per-directory limit 19:03:08 that many filesystems have 19:03:14 (it crashed NAO a while ago, for instance) 19:03:16 why not use a non-file backing? 19:03:23 or rather 19:03:30 Vorpal: for trivial ®scapegoat merging 19:03:33 consolidate the data in some db locally 19:03:37 nope. 19:03:38 Vorpal: conceptually, that works fine with scapegoat, as does any other sort of backing store 19:03:40 not happening :) 19:03:46 but it defeats the esofeature that elliott most wants for it 19:03:47 elliott, okay, but is it actually practical to not do so 19:03:59 Vorpal: sure, it'd just lose an important feature 19:04:06 ais523: it may be eso, but I think it's valuable 19:04:10 oh, indeed 19:04:14 eso != useless 19:04:20 although there is a strong correlation 19:04:20 ais523: for instance, having to run a special VCS-specific server turns a lot of people off 19:04:26 I do insist that it's an esofeature, though 19:04:27 -!- cheater99 has quit (Ping timeout: 245 seconds). 19:04:35 ais523: this way, anything that can distribute a file tree -- including tarballs! -- works for pulling 19:04:38 elliott, rsync backup on .minecraft takes AGES due to the many small files. Fewer larger files would end up less spread out over the disk 19:04:40 (the copy-with-cp, rather than filesystem store) 19:04:47 Vorpal: that's rsync's fault 19:04:50 Vorpal: just tar it up beforehand 19:04:57 elliott, no it isn't. tar would be just as slow 19:05:04 elliott, because 90% of the time is seeking 19:05:06 Vorpal: that's tar's fault 19:05:09 if it isn't in cache 19:05:11 elliott, you fail 19:05:17 Vorpal: nope, tar fails 19:05:35 elliott, so what should it do to work around the required seeking? 19:05:57 Vorpal: switch you to a filesystem that stores small files inline 19:06:03 like btrfs (I think ext4 does it too) 19:06:07 Vorpal: (or buy you an SSD) 19:06:15 elliott, using ext4 or jfs on that partition iirc 19:06:23 ais523: wrt files-per-directory, 19:06:27 elliott, no I couldn't. The backing disk is 2 x 1 TB 19:06:34 ais523: easy hack: just do store/1, store/2, store/3, ..., store/55555555 19:06:42 ais523: and also have a prefix _ 19:06:48 ais523: store/_1 is another hierarchy just like store/ 19:06:57 hmm, that'd become inefficient over time 19:07:08 you'd a) end up with duplicate stores for the same hash, in, say, /1 and /2 19:07:09 ais523: you think you could ever use up (max inodes in directory)^2? 19:07:10 elliott, better, use the two first letters of the hash as prefix 19:07:17 ais523: I don't think store/_1 would ever actually happen 19:07:20 and b) have to lsearch all the subdirs to find a given stash 19:07:21 Vorpal: oh, that is a better idea, indeed 19:07:22 I don't mean _1 19:07:23 perhaps first three 19:07:27 I just mean with the numbered subdirs 19:07:28 like store/fa/fabajshd.whatever 19:07:28 ais523: see what Vorpal said 19:07:30 that's an actually good idea 19:07:35 elliott: I was thinking about that 19:07:36 although let's say first three or four characters 19:07:38 elliott, this is a classical solution to the issue 19:07:43 elliott, look at stuff like ccache for example 19:07:44 but it doesn't scale in that you need to know which size of prefix to use 19:07:45 Vorpal: I know, it just didn't occur to me 19:07:51 and it'd have to be fixed in advance 19:08:00 ais523, you could subdivide 19:08:03 ais523: just pick the longest prefix that all of them will fit into a single dir of a filesystem we're targeting 19:08:17 ais523: anyway, filesystems are becoming 64-bit 19:08:19 ais523, if store/fa becomes too large then split it in store/fa/a/ and so on 19:08:20 hmm, what is a good lowest-common-denominator for filesystem limits anyway? ext2? 19:08:23 ais523: so presumably, the limit is going away 19:08:29 ais523: I'd say Minix filesystem 19:08:29 ais523, see what I mean? 19:08:37 it's probably the stupidest, simplest, most limited Unix-like filesystem there is 19:08:41 Vorpal: then you could have subdivided and nonsubdivided versions of the same system and try to merge them 19:08:47 ais523, oh right 19:08:55 ais523: anyway, it doesn't *really* matter too much 19:09:03 ais523, this works as long as you don't want copy on merge 19:09:03 ais523: because we can always just define a new repository format with more subdivision 19:09:08 elliott: I'm just trying to preserve your esofeature 19:09:08 elliott, can't those adjectives all be applied to Minix itself? 19:09:15 elliott, you can't copy merge then 19:09:20 against all possible eventualities 19:09:24 ais523: (and that'll be the one exception to the copy-merge rule -- if the Ŧscapegoat/version files aren't equal, then you're fucked) 19:09:38 ais523: (thankfully, you can just convert the older one) 19:09:41 elliott: no, we can make do without that exception too 19:09:50 what you do is, you use version-specific subdirs in ôscapegoat 19:09:51 elliott, I *do* think that using a sqlite db or such would be far more efficient 19:09:53 ais523: you mean store everything in ¥sca- heh 19:10:04 ais523: sure, I guess, but the resulting repository would be useless 19:10:06 then, if you detect two different versions there 19:10:08 Vorpal: haha! 19:10:11 you convert it all to the newer formar 19:10:13 *format 19:10:15 Vorpal: not for scapegoat itself, that's for sure 19:10:22 elliott, well for the metadata I meant 19:10:22 and also would *completely* ruin my esofeature 19:10:31 elliott, sqlite isn't good for storing large blobs 19:10:31 ais523: fair enough, then 19:10:36 elliott, and yes it would 19:10:39 elliott, or not 19:10:42 elliott, fuse-sqlite ! 19:10:46 Vorpal: rugh 19:10:47 *ugh 19:10:49 elliott, :D 19:10:55 elliott, note: I was not serious 19:11:11 Vorpal: does that /exist/? 19:11:17 I love the concept, though 19:11:36 Vorpal: anyway, sqlite is relational 19:11:43 and scapegoat's database isn't even remotely relational 19:11:55 the most I'll even *think* about caving into would be an object database 19:12:00 well, freeform object database 19:12:03 like a JSON database or something 19:12:21 Vorpal: does that /exist/? <--- not that I know 19:12:29 it's not too far off the NoSQL databases 19:12:35 ais523: as long as you could get two separate database files and do "scg db merge db1 db2" I'm *willing* to consider it. 19:12:36 elliott, btw rugh is +5 V right? 19:12:40 *maybe* 19:12:40 elliott, and rugl -5 V 19:12:43 I think something like that exists 19:12:44 or do you use 3.3? 19:12:49 hmm, now I have an urge to call them databasen just to annoy all the people who come up with silly plurals for things 19:12:50 Vorpal: shaddap :P 19:12:58 ais523: UNICES 19:13:05 http://www.nongnu.org/libsqlfs/ 19:13:19 ais523: btw, what happened to you going home? (please don't answer this with "oops, I forgot, goodbye!", as that'll just teach me not to ask in future) 19:13:31 Deewiant: that's the wrong way around, no? 19:13:33 elliott: oh, I decided to stay as long as the conversation was interesting 19:13:36 Vorpal meant mounting sqlite with FUSE, didn't he? 19:13:43 ais523: I'd better think of something, then :) 19:13:45 elliott, yes, which makes no sense 19:14:15 also, I didn't want to go home in rush hour 19:14:24 ais523: terrible idea: People are defined as the set of objects they've created. 19:14:28 elliott, anyway, I strongly suspect the esofeature will kill efficiency. Adding a version number is indeed a good idea 19:14:30 (no, really, it's terrible, I'm joking) 19:14:32 but two hours for an interesting ontopic conversation here (if you consider esoVCSes as esoprogramming) is close to a record 19:14:40 elliott: that's not so much terrible as nonsensical 19:14:42 and then, if you have to drop it, sad, but not much to do about 19:14:43 Vorpal: well, we'll see :P 19:14:52 and impossible to enforce without some sort of public-key signing 19:14:59 Vorpal: if I can get "scg db merge db1 db2" working exactly the same way with some database, then I'll consider it 19:15:13 ais523: hmm, I think that patch authors and the like *should* be tied to a public key, now that you mention it 19:15:15 elliott: "scg"? that's even worse than "sg" 19:15:24 elliott: so do I, but not to get that genuinely terrible idea working 19:15:28 ais523: to avoid the situation mentioned in http://geekz.co.uk/lovesraymond/archive/so-i-married-a-kernel-programmer 19:15:33 elliott, what does git's repo format look like? 19:15:36 Transcription if you won't click that: 19:15:41 Reiser: Oh dear god, please forgive me! 19:15:44 Linus: Um, hi Reiser 19:15:48 Reiser: Linus, I've done something TERRIBLE! 19:15:54 Linus: Tell me, I'm sure we can sort it out 19:16:01 Reiser: I faked a Signed-Off-By From CHRISTOPH HELLWIG! 19:16:06 *from 19:16:18 [...irrelevant material elided...] 19:16:21 Vorpal: um, a mess 19:16:39 elliott, but fast iirc? 19:16:41 git is a versioned filesystem that, as of late, has started pretending it's a version control system :) 19:16:56 ais523: scg was a legitimate brain-typo 19:16:58 ais523: for spg 19:17:07 spg may be a bad name if it's hard to remember 19:17:08 spg doesn't sound very scapegoat-y 19:17:10 indeed 19:17:29 let's just call the binary (insert non-ASCII character here) 19:17:31 ais523: if cpressey were here, he'd be adamant that we call the implementation something different from the specification 19:17:41 but I think that's a terrible idea in this case :) 19:17:50 elliott, btw, how will you store stuff. I mean, incremental diff? What I'm wondering about is how long a checkout from scratch would take 19:17:50 better, let's make the binary "scapegoat", and symlink it from /every/ non-ASCII Unicode character 19:17:54 so you don't have to remember which is its 19:17:59 ais523: brilliant! 19:18:04 elliott, for a repo with many many many commits (think, linux source code) 19:18:11 Vorpal: ask ais523 to summarise the patch format in one line ... 19:18:14 hopefully he's okay with doing that :P 19:18:19 not with clog down 19:18:22 it's not really a patch at all, it's...something 19:18:27 ais523: what should I grep for? 19:18:28 I'd be bound to mess something up 19:18:30 I have your logs 19:18:31 ais523, it is up isn't it? 19:18:36 clog, hi! 19:18:39 anyway, you can think of the lines, with unique IDs (which don't have to be consecutive integers, I just don't want to keep typing long hashlike strings) as "start of file:0", "end of file:1", "add 'a' between 0 and 1:2", "add 'b' between 2 and 1:3", "add 'c' between 3 and 1:4" 19:18:46 wow, this client has a lot of scrollback 19:18:52 -!- cheater99 has joined. 19:18:53 Vorpal: it's back up, wasn't when the conversation started 19:19:00 ah 19:19:16 ais523, oh is this the fractal one discussed here some time ago? 19:19:22 yse 19:19:23 *yes 19:19:29 ais523: scapegoat is the perfect version control system for ElliottOS 19:19:34 ah, bound to be HUGE amount of data then 19:19:38 erm no 19:19:44 ais523: tell him why he's wrong, i'm way too lazy 19:19:48 the fractal nature isn't even the major feature, it's just there to simplify things 19:20:01 Vorpal: one large piece of information in many small pieces is still much the same amount of information 19:20:02 I don't see why there'd be more data than a diff, really 19:20:12 maybe slight overhead from the fact that they're objects 19:20:23 ais523, true, but does it store it per line or at a more granular level? 19:20:25 I mean, if you stored every character separately, sure... 19:20:29 Vorpal: both 19:20:42 ais523, that sounds like it would have some overhead to me 19:20:45 ais523: why scapegoat is perfect for ElliottOS: there's only one language to deal with, so it can be totally semantic about the storage; there's no files, but scapegoat works fine without files 19:20:46 etc. :P 19:20:55 Vorpal: indeed 19:21:08 but say it doubles or triples the overhead, that's not going to be amazingly large as VCSes go 19:21:37 ais523, how large is linux-2.6.git again? Some hundred MB iirc? 19:21:55 ais523: internally, you could always just store, say, lines as the lowest thing and then address codepoints as positions in that line, no? 19:22:03 Vorpal: "again"? you expect me to have it memorised, and to have told you before? 19:22:21 elliott: indeed 19:22:30 ais523, hm I thought you complained about the size some months ago in here. Maybe it was someone else 19:22:32 I suspect an efficient implementation will actually store entire recent trees 19:22:42 to avoid having to reconstruct them on every edit 19:22:42 ais523: in fact, as a storage optimisation, you could not store lines separately 19:22:45 not all of them, just a few 19:22:48 ais523: that is, you store them in the patch 19:22:51 ais523: and just attach a hash to them 19:22:53 this is all storage optimisation 19:23:04 ais523: and then you have some kind of index that says "for the line with hash FOO, see patch BAR" 19:23:06 -!- Zuu_ has changed nick to Zuu. 19:23:07 yep 19:23:07 ais523, so you get one file per patch? 19:23:15 ais523, in the store 19:23:20 ais523: of course, in an ideal scenario, the store library will handle all this :) 19:23:22 if you just tell it to 19:23:42 elliott, what if two authors made the exact same change, will they get the same filename? 19:23:53 Vorpal: hehe... ais523, tell him about identical changes! 19:23:54 elliott, (that is, does the hashed bit include the author?) 19:23:57 Vorpal: no, it wouldn't be the exact same as it wouldn't have the same author 19:24:14 ais523: but the line they append would be the same 19:24:18 since it would simply be the hash of the line they add 19:24:21 on the other hand, there wouldn't be a conflict unless you asked for one, because it'd automerge the changes 19:24:27 right? 19:24:39 elliott: oh, you mean hash individual source lines as well as patches themselves, as an optimisation? 19:24:53 ais523: sure, and destination lines too 19:24:54 ais523: just an idea 19:24:54 that'd probably be a pessimisation, on the basis that the lines are likely to be generally shorter than the hashes 19:24:57 probably 19:24:59 sounds like space-time tradeoff 19:25:17 I don't really care how slow it goes as long as it's faster than darcs, and doesn't increase exponentially 19:25:23 I suppose, what you could do is, if the line is shorter than a hash, store the line; if it's longer than or equal to a hash, store the hash 19:25:32 ais523: meh, seems like a waste of time 19:25:32 elliott, does darcs increase exponentially? 19:25:35 but this is a Vorpal-level microoptimisation at this stage 19:25:42 elliott, also, what about super-exponentially? 19:25:45 Vorpal: probably not, but it's so slow, who can tell? 19:25:48 Vorpal: in the worst case, yes, but that case is kind-of hard to trigger nowadays 19:25:54 ais523, XD 19:26:04 darcs is pretty nice platonically, but *really* bad for computers 19:26:09 hah 19:26:15 elliott, it never been slow for me 19:26:17 and I'm not convinced patch theory actually /does/ much other than look mathematical 19:26:21 elliott: sorear looked into it, and decided the way it handled conflicts made no sense, mathematically 19:26:24 Vorpal: dude, you use bzr 19:26:27 bzr is the slowest VCS out there 19:26:30 elliott, I used darcs too 19:26:30 whereas sg conflict handling is very sensible 19:26:33 it's so slow as to be painfully unusable, and everyone agrees 19:26:38 your opinion on speed is biased :P 19:26:47 elliott, uh, it works fine for me. I never had issues with speed. 19:27:04 (if the order you apply the patches in matter, or a patch has nowhere to apply, that's a conflict; you resolve it by reverting both patches and adding a new one) 19:27:04 elliott, sure, hg is a bit faster, but bzr is not annoyingly slow 19:27:17 *in matters 19:27:26 elliott: also, reverts are stored as just "revert patch X" 19:27:43 both for semantic reasons, and because that's all the info you need, you don't need to store what was reverted 19:28:01 ais523: hmm, patches should be able to have multiple authors 19:28:12 ais523: for instance, if you merge two identical changes, who's the author? I don't think it should be "whoever told scapegoat to merge" 19:28:15 they're the *committer* 19:28:18 but I don't see how they're the author 19:28:19 indeed 19:28:29 the author is both of the people who had the wise idea to, I don't know, add "foo" to the README 19:28:30 well, I'd say the author of the merge is in fact scapegoat itself 19:28:37 ais523: well, yes, but that's not helpful to see in repositories 19:28:37 elliott, what is this about blame based bit? 19:28:38 and there are two authors in its dependencies 19:28:46 ais523: if you see the diff that adds foo, you should see both authors who did it 19:28:52 ais523: admittedly, for more complex merges, I'm not sure 19:28:59 ais523: it should probably be the person who ran scapegoat, in that case 19:29:03 as scapegoat is basically acting as their automatic helper 19:29:13 elliott: well, the great thing is, all the info's available both ways 19:29:19 -!- impomatic has left (?). 19:29:26 indeed 19:29:33 ais523, so what is the blame bit? 19:29:45 ais523: thing I don't like about git: if you have a merge conflict, it puts it in the actual file being merged 19:29:47 exclude some author simply? 19:29:52 I think the author should be scapegoat, incidentally, to avoid identical conflict resolutions of identical patches propagated ad infinitum 19:29:54 which, of course, makes it a completely meaningless file to whatever tools you use it with 19:29:58 elliott, most VCS does that iirc 19:30:03 Vorpal: it's bad 19:30:08 ais523: oh, wait 19:30:09 elliott, quite 19:30:13 ais523: if a patch can have multiple authors 19:30:15 ais523: just do authors = [] 19:30:18 where [] is the empty set 19:30:19 indeed 19:30:41 'twould also let you submit patches anonymously 19:30:54 ais523: hmm, disagree 19:31:03 ais523: such a path doesn't have no authors, it has an anonymous author 19:31:05 yes, I'm unsure on that myself 19:31:15 ais523: and what of the GPG key? 19:31:27 well, anonymous patches wouldn't have one 19:31:31 ais523: an anonymous author should be something like "Anonymous ", though 19:31:45 (yes, .invalid is actually in RFCs!) 19:31:47 I know 19:32:04 signing should perhaps be optional 19:32:13 so you can sign a commit rather than the individual lines in it, for instance 19:32:17 elliott, why email 19:32:24 elliott, ais523: do either of you have any plan to implement this btw? 19:32:26 ais523: perhaps... 19:32:29 Vorpal: yes, at least I do 19:32:33 s/ / / 19:32:35 you could set the default branch rules to reject unsigned patches 19:32:38 I didn't before round about now 19:32:41 but I do now 19:32:56 Vorpal: I had very vague plans which never got anywhere, and a lot of more urgent things to do 19:33:05 ais523, ah right 19:33:06 I think even gcc-bf is above scapegoat on my list of things on indefinite hold 19:33:18 most things work better with someone to work on them with, though 19:33:27 ais523: but if I start working on it, it better shoot near the top of that list, I don't wanna do all this myself :P 19:33:53 elliott: this may be a bad time to do it, then; you could try in December instead 19:33:57 umm, January 19:34:15 ais523: haha, you vastly overestimate how quickly I work on things 19:34:22 ais523: I'll probably spend the next few months puttering about with key-value stores 19:34:35 in that case, it wouldn't need to be near the top of the list, halfway down would be just fine 19:35:05 ais523: by start working on it, I mean for actual real 19:35:09 as in, implementing the actual patches and algorithms 19:35:42 elliott, key value stores are easy aren't they? 19:35:48 elliott, as in, a solved problem really 19:35:48 Vorpal: not this kind of key value store 19:36:00 Vorpal: it's hash-addressed, append-only, and *everything* goes through that mechanism 19:36:13 and it has to be fast, space-efficient, and capable of supporting huge, huge trees 19:36:13 elliott, oh and does it need to copy merge? 19:36:15 and I mean huge 19:36:16 elliott: "append-only" always reminds me of "write-only" 19:36:18 and it's also recursive 19:36:25 Vorpal: well, sure, but that's already handled by the hash-based part 19:36:30 why recursive, btw? 19:36:31 ais523: well, "immutable" isn't quite right, obviously 19:36:38 ais523: recursive simply because objects contain other objects 19:36:44 ais523: patches contain changes 19:36:46 ais523: branches contain patches 19:36:47 etc. 19:36:53 ais523: I mean, patches have authors 19:37:01 ais523: if it wasn't recursive, you'd have to say patch1_author1 or something 19:37:03 don't they just refer to the hashes of the other objects, though? 19:37:05 elliott, can it be self-recursive? 19:37:18 ais523: well, sure, but that's recursivity 19:37:22 ais523: just optimised out, into pointers 19:37:26 Vorpal: wat? you mean cyclic? 19:37:29 oh, I see 19:37:31 elliott, yes! 19:37:31 I suppose there's no reason it couldn't point to itself 19:37:35 you aren't storing plaintext, but arbitrary objects 19:37:40 I knew I was missing something 19:37:45 elliott, this patch depends on itself! 19:37:49 ais523: well, perhaps not totally arbitary, but close 19:38:04 ais523: and, I mean, you'd want to say { insert_reference(patch, "some_relevant_thing", anobj); } and have it automatically insert a hash reference 19:38:16 ais523: I mean, I'm not storing arbitrary objects, it's more like... 19:38:16 elliott, wait, this would modify the hash right 19:38:31 elliott, which means you would have to find a self-hash kind of 19:38:36 ais523: I'm storing a key-value store, which can have, as its values, either strings, or key-value stores; which can have, as their values, ... 19:38:44 elliott: it's like YAML with all the features for things like mutually recursive pointers 19:38:46 Vorpal: looks like I'm not supporting mutual references, then! 19:38:50 except, in the filesystem rather than a serialisation 19:38:54 ais523: YAML has those, actually 19:38:58 elliott: I know 19:39:02 that's what I was referencing 19:39:04 ais523: but, not really; I mean, I'm literally just storing: 19:39:04 the fact that it does 19:39:09 data Foo = String | Map String Foo 19:39:13 really 19:39:17 oh, fair enough 19:39:20 except that, values of the latter are replaced by the hashes of the relevant objects 19:39:24 JSON, then, rather than YAML 19:39:26 when serialised 19:39:29 ais523: JSON has integers! 19:39:32 ais523: and arrays 19:39:45 well, I suppose 19:39:56 scapegoat would like unordered sets 19:40:02 ais523: easy 19:40:07 ais523: to insert into a set, do 19:40:17 set[hash(obj)] = "irrelevant" 19:40:22 ais523: or rather, set[obj] = ... 19:40:26 and it gets auto-hashed 19:40:29 yep 19:40:35 well 19:40:36 actually 19:40:36 like the old Perl trick of setting them to 1 19:40:39 set[hash(obj)] = obj 19:40:45 because, you can't have a pointer as a key, only a string 19:40:50 so that's from a string to a pointer 19:40:50 oh, right 19:40:54 just, they happen to be encoded almost identically 19:40:56 you'd probably want to optimise that case 19:40:59 probably, yes 19:41:01 (key = value with different encoding) 19:41:33 ais523: hmm, I bet GitHub are worried about having to store N copies of many, many commits 19:41:35 because of forked projects 19:41:42 whereas scapegoathub doesn't have to worry about that in the slightest :) 19:41:53 elliott, doesn't git support shared repo data? 19:41:57 elliott, even bzr does that 19:41:58 github may use a similar form of centralised hash database 19:42:06 Vorpal: not that i know of, probably if you do links 19:42:08 given how git works and what they do, they'd be fools not to 19:42:14 ais523: nah, they use actual git 19:42:21 ais523: afaik 19:42:42 elliott: what's your opinion on fastforwards in git? 19:42:47 ais523: what are they? 19:42:48 elliott, shared repo is one feature I love with bzr 19:42:52 I've probably heard of them and just forgotten it 19:43:06 Vorpal: in scapegoat, that's easy; you just symlink the ßscapegoat dirs 19:43:07 elliott: they're a merge when one side made no changes 19:43:18 in which case, there's no commit message for the merge, it just copies across 19:43:20 Vorpal: and it's guaranteed to never clash, if they're the same repo, just with branches and the like 19:43:36 ais523: erm, how can there be any requirement to merge if one side made no changes/ 19:43:38 *changes? 19:43:39 it's technically a merge-rebase, just a special case that comes up a lot 19:43:40 elliott: because it's git 19:43:47 you're merging changed with unchanged 19:43:55 remember, git cares about snapshots, not diffs 19:43:55 ais523: as in, if the server is A->B->C, and your tree is A->B->C->D, I don't see why it doesn't just turn into A->B->C->D 19:44:01 elliott: it does, that's a fastforward 19:44:08 some git users really dislike them 19:44:11 ais523: in fact, scapegoat's logic already has it doing that; the point of divergance is C, so a branch for D is created, attached to C 19:44:17 and it tries to merge with the Official Branch 19:44:20 which is -- surprise! -- C 19:44:20 yep, I think scapegoat handles the issue great 19:44:25 and merging X with X is a nop 19:44:28 so it just succeeds 19:44:40 ais523: *I think elliott's mergeless commit system in scapegoat handles the issue great 19:44:40 :P 19:44:41 git's model really screws up that case badly, thoguh 19:44:48 I promise not to get *too* egotistical about that! 19:44:50 by making it really conceputally confusing 19:45:06 ais523: git made so much more sense when it was a low-level distributed filesystem, and tools like cogito build a VCS on top of it 19:45:14 but then everyone went WAAH! MAKE GIT ITSELF USABLE! 19:45:17 and now it's insane 19:45:37 ais523: can I make a confession? I stole the every-commit-branches-and-merges-are-optional thing 19:45:43 from http://en.wikipedia.org/wiki/PVCS, an old CVS-alike 19:45:52 "However PVCS can also be configured to support several users simultaneously attempting to edit the file; in this case the second commiter (chronologically speaking) will have a branch created for him/her so that both modifications, instead of conflicting, will appear as parallel histories for the same file. This is unlike CVS and Subversion where the second commiter needs to first merge the changes via the update command and then resolve conflic 19:45:52 ts (when they exist) before actually committing." 19:45:58 but, on the other hand, PVCS was primarily locking-based 19:46:05 and didn't have a nice auto-merging algorithm for the common case 19:46:05 so nyah 19:46:12 hg works a bit like that too 19:46:33 indeed, except that it treats heads and branches differently, and having multiple of the former is a huge pain that you try and rectify immediately 19:46:35 which, really, makes little sense 19:46:37 (you think I'd design a VCS without scouting out the competition?) 19:46:50 hmm, what was that GNU VCS called? 19:46:53 ais523: arch? 19:46:55 /tla 19:46:56 that's it 19:47:02 the insane one that we tried and failed to set up ages ago 19:47:05 yes 19:47:10 ais523: have you looked at Monotone? 19:47:13 no 19:47:15 it's similarly crazy in over-hash-use :) 19:47:19 (and very, very slow) 19:47:32 ais523: in fact, it met all of Linus' criteria for what the new kernel VCS must be *except* for being fast 19:47:36 which it failed very hard at :) 19:48:42 ais523: have you looked at Codeville? good luck doing that, the site is gone now 19:48:47 I haven't 19:49:01 also, the name is worryingly reminiscent of Farmville 19:49:11 which I fear has stolen a potentially useful name fragment 19:49:13 ais523: it's Ross Cohen & Bram Cohen (bittorrent inventor)'s, circa 2005, still used at BitTorrent, Inc. 19:49:28 ais523: basically, it was very much focused on never having to merge anything manually again 19:49:35 [[It uses an innovative merging algorithm called the "Codeville merge". A new merge algorithm called "Precise Codeville" or "pcvd" merge is under development.]] 19:49:36 and apparently, 19:49:43 [[The SCCS file format uses a storage technique called interleaved deltas (or the weave). This storage technique is now considered by many revision control system developers[who?] as key to some advanced merging techniques, such as the "Precise Codeville" ("pcdv") merge.]] 19:50:08 ais523: btw, #revctrl exists on freenode, but I haven't found it a particularly worthwhile place 19:50:12 not bad, just not very interesting 19:50:14 you know, the best thing about Wikipedia cleanup tags is that they identify the source of code straight off 19:50:23 * Topic for #revctrl is: You are in a maze of twisty little version control systems, all different: aegis bazaar codeville cvs darcs git mercurial monotone rcs revc svk svn tla vesta || wiki: http://revctrl.org/ || mailing list: http://lists.zooko.com/mailman/listinfo/revctrl || logs: http://colabti.org/irclogger/irclogger_logs/revctrl or http://www.scooter.cx/~mozbot/ || see channels of specific systems for hel 19:50:23 *source of text 19:50:28 ais523: heh 19:50:44 ais523: svk is truly a sight to behold; it's written in perl, and based on svn 19:50:44 also, is that topic completed as "help" or "hell"? 19:50:48 it turns svn into a destributed system 19:50:55 ais523: it's completed as hel 19:50:58 X-D 19:51:34 hmm 19:51:47 ais523: so would scapegoat come with, like, a library of merging techniques? 19:51:55 as in, a bunch of "conditions for this working => actions to take" rules 19:52:02 I think so 19:52:08 actually, more likely it'd be a library of patch types 19:52:11 ais523: I'm *fairly* sure it's doomed to end up with a programming language inside it. 19:52:17 much like darcs attempts but never really got started at 19:52:18 ais523: What with branch specification, this, ... 19:52:32 (branch specification = e.g., the formula that @tip is defined to be) 19:52:34 things like the search-and-replace patch would be so much better if they were actually semantic 19:52:55 ais523: interesting idea, but i'd only attempt it with a language plugin handy 19:52:58 you know what? I fear we'll end up with editor : Emacs :: VCS : scapegoat 19:53:00 and a very good one at that 19:53:03 elliott: I mean, with the language plugins 19:53:13 ais523: yes, I fear that too; I'm going to try and stop you if you start making it *too* flexible 19:53:22 for reasons of both speed and sanity :) 19:53:25 and implementability 19:53:42 elliott: can I at least have a Towers of Hanoi simulator? 19:53:47 oh, fine 19:53:53 ais523: Feather revision control system: every change is applied retroactively, so there are no changes to track. Problem solved! 19:54:04 elliott: I was joking 19:54:13 ais523: I know... I was too (re Feather) 19:54:26 don't make me get my head around Feather right now 19:54:31 :D 19:54:40 ais523: it would be fun if you could somehow set up a bunch of branches such that merging them would end up solving a towers of hanoi game in the process 19:54:51 ais523: (thing to make ABSOLUTELY SURE OF: merging always halts) 19:54:55 like solving Sokoban inside apt? 19:54:59 yse 19:55:01 *yes 19:55:05 *sudoku 19:55:09 Sokoban really would be impressive 19:55:17 I was thinking that :P 19:55:48 ais523: you know, I've never heard of any really innovative VCS ideas 19:55:55 I think you're the only real innovator in the field :P 19:56:12 elliott: that could almost be the motto of #esoteric 19:56:51 ais523: yes, but at least programming languages have active academia..e? academiae? 19:57:05 ais523: the only VCS-related topic I can think of that gets papers is regular-style merging algorithms 19:58:33 hmm 19:59:05 ais523: it occurs to me that the loss of þscapegoat/names is rather disasterous 19:59:12 as, for instance, you no longer know what the tip is 19:59:12 well 19:59:13 actually, you do 19:59:20 since @tip always means one thing 19:59:29 ais523: in fact, @tip shouldn't be in þscapegoat/names, because it should be constant 19:59:34 you used þ earlier! 19:59:37 referring to the Official Branch definition 19:59:39 ais523: whoops, sorry 19:59:48 i'm running out of alt-gr 19:59:52 *§scapegoat 19:59:54 that's why I was using dead keys 20:00:27 ais523: arguably, you might actually want to redefine what the default checked-out branch is... but that argument sounds flimsy to me 20:00:28 and really confusing 20:00:40 if the repository can configure everything about the VCS, you can never be sure how the VCS will act 20:00:43 which doesn't sound like a good policy to me 20:00:52 well, repos themselves don't have a "checked-out branch", platonically 20:00:57 just hints for which branches might be interesting 20:01:20 ais523: well, yes, but consider @tip 20:01:40 ais523: if we say in the spec that @tip is, platonically, [some hash], referring to the formula for the Official Branch 20:01:48 ais523: then it always behaves consistently 20:01:55 ais523: if we don't, and a repo can redefine @tip 20:02:02 (@tip being the implicit argument to, e.g. "gimme-a-cwd") 20:02:08 then the VCS could behave unpredictably 20:02:28 well, "the Official Branch" needs to be bounded somehow 20:02:44 presumably, by the hashes in the tarball in question 20:02:50 ais523: basically, I'm just saying that some names should be built into scapegoat, not looked up in the repository 20:03:03 and @tip is one of them, it should always point to one single formula that is blessed, by word of god, to be the formula for working out the Official Branch 20:03:28 hmm, should repo stores contain only patches that are vaguely relevant to the repo? 20:03:43 ais523: if you're a distributor, then yes 20:03:55 ais523: I think we should have a garbage-collect command that gets rid of all unreferenced objects 20:04:13 elliott: ooh, risky in a sense 20:04:14 ais523: (note: git has this, and people say it's a design flaw in git; c'est la vie) 20:04:29 ais523: well, only in that you could potentially lose patches that aren't referenced anywhere, if everyone in the world does it 20:04:31 more so than in git, on the basis that you'd need to define, right now, all branches that might later be interesting 20:04:34 but how would you look at such a patch anyway? 20:04:38 you'd have to specify its hash directly 20:04:46 or a branch that matches it 20:04:49 ais523: oh, it wouldn't go that insane 20:05:02 well, maybe it would 20:05:11 ais523: ok, how about this for logic: 20:05:25 ais523: everything not reachable from @tip, and that doesn't have a nickname, is removed 20:05:26 ais523: except... 20:05:30 ais523: forwards from @tip too 20:05:33 so you'd get the temporary branches 20:05:42 that could work 20:05:50 but should not be something that people run regularaly 20:05:52 *regularly 20:05:54 ais523: I'm not sure how you'd look forwards from @tip, though :) 20:05:56 and indeed 20:06:13 there's a case to be made for making patches never deletable ever, which is to protect the VCS from clueless users to some extent 20:06:16 screwing things up 20:06:48 ais523: well 20:06:54 ais523: consider scapegoathub, with its One Gigantic Store 20:07:15 ais523: when you ask for a tarball of Ðscapegoat for a certain project from scapegoathub 20:07:21 ais523: how does it determine what subset to give you? 20:07:22 obviously, downloading the whole thing and asking for @tip would be stupid 20:07:36 ais523: however it determines it: that's the algorithm to figure out what objects you need to keep in the store 20:07:37 everything else can go 20:07:53 there are two possibilities; ask for @tip for a subset of patches, or ask for a different nickname 20:08:12 in that case, you could just get @tip's referent itself and its dependencies 20:08:13 ais523: well, say you want to download every branch 20:08:15 like a git clone 20:08:15 so you wouldn't get branches, etc 20:08:22 ais523: how would you do that? 20:08:27 for every branch, you'd need a way to know what project they belonged to, I suppose 20:08:30 ais523: (this includes unnamed branches, say if there's branches past @tip that haven't been merged yet) 20:08:48 otherwise, suppose I make readme-alpha.txt inside my intercal repository 20:08:53 that's a new file that has no relation to anything else 20:09:04 htf is the VCS meant to know that it belongs to INTERCAL rather than some other random project? 20:09:24 ais523: well, / itself is an entity, right? 20:09:27 just like lines and files 20:09:30 indeed, I've just realised that 20:09:33 ais523: so it says that you append a file to / 20:09:40 ais523: and that / happens to be intercal's 20:09:43 yep, I only just noticed 20:09:49 in that case, you can even do an SVN 20:09:56 and grab a portion of a directory tree 20:10:00 indeed 20:10:07 ais523: except that, they wouldn't have scapegoat directories 20:10:11 because that's eww 20:10:18 I forgot SVN did that 20:10:24 you could grab a portion, but a different way 20:10:28 and then calculate @tip for that portion 20:10:30 I'm happy now 20:10:30 ais523: of course, directories MUST be entities, to track empty directories 20:10:39 (which is *not* an unheard of usecase; I've wanted to do it before!) 20:10:47 I think this solves both problems at once 20:11:07 even better, you can make two projects into one large one just by creating a new / *below* the existing two 20:11:13 and moving them into place 20:11:35 thus, the concept of "create entirely new repo" exists, but also "merge repo" and "split repo", neither of which is well-defined in, say, darcs 20:11:50 (not merge as in VCS merge, but merge as in what's considered one project) 20:11:51 ais523: holy shit, you can merge two /s 20:11:54 yep 20:12:01 ais523: that is, if you have two separate projects that don't have any clashing filenames 20:12:05 ais523: you can merge them into one, new / 20:12:13 ais523: this is beautiful. 20:12:14 even if they did, you could 20:12:17 you'd just have conflicts 20:12:30 ais523: well, yes, I mean you could merge them into one branch...patch...thing 20:12:32 one state 20:12:40 we need a better name for this concept 20:13:17 ais523: "tree" 20:13:19 is what git calls it, IIRC 20:13:23 I suggest we call it an (insert random non-ASCII character here) 20:13:30 ais523: "root" is probably an unambiguous name 20:13:34 as in, a single root 20:13:35 elliott: git's name is more for a snapshot of the entire state, as that's what it thinks of it as 20:13:45 "by default, scapegoat checks out the root identified by @tip" 20:13:46 well, it could be the root, a leaf, or even one of the brnaches 20:13:50 *branches 20:13:52 ais523: I'm not talking tree-wise! 20:13:55 ais523: I just meant root as in / 20:14:05 the problem is we have two conceptual trees and they go in different directions 20:14:07 ais523: agh, the problem with trees is that they take up so much terminology :) 20:14:19 what about "twig"? 20:14:41 ais523: I can't see myself calling the gcc source tree a "twig". 20:14:59 here: let's call them "turtles" 20:15:01 ais523: file tree... file root... ugh 20:15:06 because they're mostly defined in terms of other turtles 20:15:08 ais523: okay, we'll call them turtles. *for now* 20:15:11 not forever :P 20:15:14 and you can add new turtles beneath, if you like 20:15:30 do you add turtles in the bottom or on the top? 20:16:01 both 20:16:20 it's turtles all the way up 20:16:57 ais523: how come we've unified most of the disparate concepts in VCSes and this /still/ feels more complicated? :) 20:17:15 ooh, have you been esovcsing? 20:17:26 olsner: yes, except it's turning out to be disgustingly useful 20:17:32 yuck! 20:17:35 elliott: because it's alien 20:17:38 I'm considering disowning it and putting it up for adoption 20:17:44 (not really) 20:17:52 put it this way, what's simpler, BF or C? 20:18:02 ais523: BF, of course 20:18:17 disagree 20:18:23 coppro: really? 20:18:48 Yes! 20:18:56 bear in mind I teach C, and have come to the conclusion that BF would probably be easier to teach 20:18:59 ais523: coppro uses C++, he's crazy 20:19:08 when was the last time you wrote an operating system in BF? 20:19:09 although admittedly, it isn't normally used to write kernel-mode keyloggers 20:19:17 coppro: that's got nothing to do with the simplicity of a language ... 20:19:42 C runtime model: flat memory, file system, arithmetic, stack ... 20:19:52 BF runtime model: flat tape, increment, decrement 20:20:03 coppro: has anyone? yet? 20:20:05 (ok, also: input stream, output stream, but that's still far more simple) 20:20:08 olsner: to my knowledge, no 20:20:20 coppro: so how is C simpler? 20:20:32 I just said 20:20:44 coppro: no, you didn't 20:20:47 you asked an irrelevant question 20:21:13 elliott: well, I fear scapegoat goes the other way, it's a C to existing VCS's BF 20:21:28 ais523: perhaps 20:21:43 ais523: it's more like Lisp or Haskell vs C, really 20:21:44 I mean, BF has all that disparate [>+<-] and [>+>+<<-]>[<+>-] stuff 20:21:52 whereas C just uses assignment 20:22:04 ais523: we're looking at it from a C perspective, and it seems like *such* a complicated gob of memory management and pointers, but at the same time, really elegant 20:22:11 now say C = git, hg, etc. 20:22:22 I suppose that's another step on a similar scale 20:22:24 of course, this view is just an artefact of looking from C 20:22:30 if we looked from something more objective, it'd look simpler 20:23:12 ais523: time to make your head hurt: what is the most true-to-the-model name of the command commonly called "commit" in other VCSes? 20:23:18 sure, now imperative stuff and side effects are all the same, everything's a function in the mathematical sense, flow control's just another function 20:23:24 but why do I have to use monads? 20:23:37 elliott: "commit" is ambiguous in other VCSes 20:23:43 i.e., the one that inserts a new branch off from the branch of the current working directory 20:23:46 -!- oklofok has joined. 20:23:46 idea: 20:23:48 and then tries to merge it with @tip 20:23:51 ais523: what do you call it? 20:23:54 we should actually do something with the ideas we come up with here 20:23:56 git commit approximately equals naming a set of hashes 20:24:02 ais523: err, doesn't try to merge with tip 20:24:10 it just inserts a new branch off from the branch of the current working directory 20:24:15 (ironically, we will just ignore this idea) 20:24:16 coppro: I'm already planning to implement it. 20:24:20 this is a serious discussion, actually 20:24:30 git push is approximately equal to scapegoat make-the-other-side-aware-of 20:24:37 and-tell-it-to-accept-these 20:24:37 ais523: the "merge with all branches >= the one this is diverged from" is what happens on a default push 20:24:43 I think "push" is a pretty true name for that 20:24:49 ais523: perhaps 20:24:59 ais523: with scapegoat, there's "give this store all the hashes we've got that it hasn't" 20:25:00 scapegoat is too long to type 20:25:02 ais523: but that's a low-level command 20:25:12 ais523: and you're more likely to want it to do "merge with all branches >= the one this is diverged from" automatically afterwards 20:25:16 blargh econ 101 20:25:18 coppro: it's going to be sg or spg or something 20:25:23 elliott: well, the main semantic action is "tell the other side to whitelist these patches" 20:25:26 just like mercurial is hg 20:25:36 ais523: right, it's just -- you know the commit logic I came up with? 20:25:39 indeed 20:25:41 ais523: in the Vorp/Orcl situation 20:25:49 whitelisting the patches does that automatically, is the brilliant thing 20:26:05 if they didn't need whitelisting, push would be a no-op, it'd figure out they existed automatically, somehow 20:26:09 ooh, it's obviously "sg sync" 20:26:10 ais523: so "sg push" = "sg send" + "sg whitelist" 20:26:17 where send is just 20:26:22 "send all the hashes that we've got and the remote server doesn't" 20:26:28 yep, sync's a good name for that 20:26:36 ais523: except, sync feels like it should be two-way 20:26:44 ais523: so let's say that sg sync is, conceptually, sg send + sg recv 20:26:47 and shouldn't it? 20:26:48 ais523: just, optimised so it does both at once 20:26:59 ais523: and then "sg push" = "sg send" + "sg whitelist" or something 20:27:01 well 20:27:02 actually 20:27:03 more like 20:27:03 well, send and receive aren't useful operations, you'll get the patch eventually anyway 20:27:10 "sg push" = "sg recv" + "sg whitelist" + "sg send" 20:27:15 you don't not receive patches, conceptually, you just don't whitelist them 20:27:18 ais523: sure they are, it's the only time where actual data is transferred :) 20:27:24 ais523: they are implementation details 20:27:26 ais523: in this case 20:27:29 (the fact that you might not care about the existence of non-whitelisted patch is an implementation detail) 20:27:34 hmm, oh I see 20:27:38 ais523: but important ones, ones that you couldn't get away from without completely redesigning the internet 20:27:39 we want to give the implementation details an actual name 20:27:43 yes 20:28:29 ais523: so, e.g., sg push would end up pulling down everything that's happened lately, try and merge your current branch with all the ones >= your current branch's parent (this is my commit logic), and then it would send the result back off 20:28:33 or something along those lines 20:28:45 and that'd be 20:28:47 $ sg recv 20:28:48 $ sg whietlist 20:28:49 *whitelist 20:28:52 $ sg send 20:28:52 or similar 20:29:01 (except probably keeping the same network connection for recv/send) 20:29:09 ais523: does that sound about right? 20:29:19 I imagine a config setting (as in, actually ~/.scapegoat, not one of the non-ASCII dirs) would be whether to automatically send and recv on general principles 20:29:24 and what to send and recv in that case 20:29:36 obviously, whitelisting your patches on the remote system would need to actually send the patches 20:29:49 -!- oerjan has joined. 20:29:58 but I agree with your idea 20:30:29 hmm, the reason this feels complex is that scapegoat's model is mathematically simple, yet at odds with the way the Universe actually works 20:30:37 I think that's pretty eso 20:30:42 ais523: it's just, you can't possibly update your main VCS server properly without (1) knowing all the things it knows -- you have to be able to figure out the three structure; (2) merging (however it's done) your patch with everything >= its parent that it *can* merge with; and (3) giving your patches, and all effects, to the server 20:30:49 so you have to address that detail at some point 20:30:55 ais523, I am suddenly immensely interested in this concept. 20:30:58 (2) is the only bit part of the actual platonic model 20:31:04 indeed 20:31:08 but (1) and (3) are required for it to be able to actually /do/ anything 20:31:12 again, indeed 20:31:20 ideally, you'd have them happen automatically as much as possible 20:31:21 ais523: come to think of it, we should probably specify the non-platonic bits too, just at a higher layer 20:31:22 unless you told it not to 20:31:24 since they're quiet important 20:31:26 *quite 20:31:34 yep, we should use a different name for it, though 20:31:37 otherwise we'd have incompatible implementations of the platonic model... which makes a spec rather silly 20:31:43 to make it clear it's an impl, not the system itself 20:32:03 ais523: well, "Scapegoat: A Model for Distributed Version Control" vs. "Scapegoat: Implementation in Practice" 20:32:05 something like that 20:32:21 ais523: (Scapegoat's too good a name not to use for the end product) 20:32:26 indeed 20:32:33 you know, it took ages to come up with that name 20:32:53 also, if people think the VCS malfunctions, we can just blame them for looking for someone to blame 20:32:56 :D 20:33:18 ais523: I thought for a short period of time that it sounded a bit negative and confrontational to be the name ... then I realised that MAJOR COMPANIES are saying the word "git" on a regular basis, and mentally congratulated Linus Torvalds for being such a magnificent bastard 20:33:42 [[git /'ɡɪt/ 20:33:42 Git is an extremely fast, efficient, distributed version control system ideal for the collaborative development of software.]] --GitHub homepage; now mentally substitute the real dictionary definition rather than their technical one 20:33:53 (that is, in actual fact, how git was named; Linus said it was named after himself) 20:34:08 elliott: the GIMP has all sorts of issues due to its nam 20:34:11 *name 20:34:14 the GIMP is a really terrible name 20:34:16 and yet, I doubt it's going to be changed 20:34:31 perhaps someone can do an Iceweasel on it 20:34:34 ais523: thankfully, the GIMP is such a horrible program that putting people off using it is probably a good thing 20:34:41 meh, I find it useful 20:34:45 ais523: oh, it's useful 20:34:53 I think it depends on what you're trying to use it for 20:35:02 ais523: it's just that if you made an image editor, and at every design decision, took the direct opposite of what GIMP took, you'd end up with a wonderful program 20:35:04 also, the UI has got noticeably better over the last few years, but it's still quite bad 20:35:16 ais523: they're moving to a single-window model, and I can't wait to see how they mess it up 20:35:23 (optionally, I think) 20:35:26 elliott: wasn't that the actual method by which certain design decisions in git were made? 20:35:27 (but who would turn it off?) 20:35:33 if in doubt, do the opposite of SVN? 20:35:37 ais523: *CVS 20:35:46 ais523: "When I say I hate CVS with a passion, I have to also say that if there are any SVN (Subversion) users in the audience, you might want to leave. Because my hatred of CVS has meant that I see Subversion as being the most pointless project ever started. The slogan of Subversion for a while was "CVS done right", or something like that, and if you start with that kind of slogan, there's nowhere you can go. There is no way to do CVS right." 20:35:48 ah 20:36:04 ais523: incidentally, have you ever used svn? 20:36:05 it's truly awful 20:36:07 yes 20:36:15 slow, bloated, hard to use (especially to create a repository) 20:36:19 badly designed ... 20:36:26 the major thing that irritates me about it is the inability to svn log withotu an internet connection 20:36:31 ugh 20:36:41 I've never tried to actually create a repo, just look at other people's and commit occasionally 20:36:51 sometimes I use tailor to create an automatic mirror of them in darcs 20:37:01 ais523: let's put it this way: the recommended way to host a svn repository is via WebDAV. 20:37:02 and I used git-svn on a serious project once 20:37:10 ais523: specifically, WebDAV in Apache. 20:37:24 also, I'm unaware of what WebDAV is, and get the feeling that I'm probably better off not knowing 20:37:28 I have vaguely heard of it, though 20:37:30 The protocol consists of a set of new methods and headers for use in HTTP. The added methods include: 20:37:30 * PROPFIND — used to retrieve properties, stored as XML, from a resource. It is also overloaded to allow one to retrieve the collection structure (a.k.a. directory hierarchy) of a remote system. 20:37:30 * PROPPATCH — used to change and delete multiple properties on a resource in a single atomic act 20:37:30 * MKCOL — used to create collections (a.k.a. a directory) 20:37:30 * COPY — used to copy a resource from one URI to another 20:37:32 * MOVE — used to move a resource from one URI to another 20:37:34 * LOCK — used to put a lock on a resource. WebDAV supports both shared and exclusive locks. 20:37:36 * UNLOCK — to remove a lock from a resource 20:37:38 ais523: that's WebDAV. 20:37:43 ais523: basically, subversion does commits via extended HTTP. 20:37:48 ais523: you may now hang yourself. 20:37:56 (and yes, it is *that slow*) 20:38:15 there was a pretty hilarious case where a leaked internal Microsoft memo said that they'd gained an advantage with DAV on the basis that it was complicated and the open-source people would probably guess wrong as to what to copy first 20:38:20 ais523: honestly, if not for the pserver login crap, cvs is nicer to use than svn 20:38:21 and haha 20:38:25 and a couple of days later, the whole thing was implemented in Apache 20:38:43 ais523: proprietary software, gotta love its motivations 20:38:45 (probably not in a particularly working state, but just to show off) 20:39:27 ais523: incidentally, it'd be nice if scapegoat is structured in a way that you can do almost all processing client-side (I know the server is just "another client", but you know what I mean) 20:39:32 (and I know that servers are optional) 20:39:43 you can change that to "command-side" 20:39:45 ais523: so that it isn't a pain to use it on a low-powered VPS 20:39:46 well ,yes 20:39:48 *well, yes 20:39:54 as in, whichever side happens to have the sg command 20:39:58 and i know this is horribly implementation-detail for this point in time, but still 20:39:59 or whatever we call it 20:40:00 ais523: right 20:40:13 ais523: haha, i just realised something 20:40:33 again? 20:40:38 this is a huge project for sudden realisations 20:40:39 ais523: you can give people commit access by letting them only: add files to store/; and add and modify files in . 20:40:49 (well, the only files out of that are ... names) 20:40:53 and in fact you never modify names 20:40:58 ais523: you can give people commit access by letting them only: add files to store/; and add and delete files in . 20:41:00 it's sort-of like the opposite of Feather, it keeps becoming suddenly easier to understand every now and then, rather than harder 20:41:01 yep 20:41:01 (to delete names) 20:41:11 ais523: hmm, can you set up rsync servers to let you do that easily? 20:41:15 it would be nice 20:41:16 probably 20:41:30 scp would work, but it'd give more permissions than necessary 20:42:13 is there an rscp? 20:42:16 if not, there should be 20:42:21 googling suggests not 20:42:42 well, you can write that after your append-only key value store 20:42:46 ais523: actually, if we go the database file route, rsync will be basically a requirement 20:42:56 ais523: because it can just send a delta from the old file 20:43:05 oh right, I thought we'd have to write our own system for syncing 20:43:06 (you wouldn't overwrite the old file, though; you'd merge it) 20:43:08 but we can just use rsync 20:43:17 ais523: yes, except, if we don't go the db file route, we don't even need rsync 20:43:24 anything that can... upload and download files works fine 20:43:37 rsync would still help by sending just the files we didn't already have 20:43:45 ais523: well, yes, indeed 20:43:55 ais523: that's why I used wget and tar, previously 20:44:03 to highlight /why/ i wanted such an insane feature :) 20:44:30 insane + useful, the best combination 20:44:32 ais523: nice thing about the key-value store: every file comes with its own checksum 20:44:44 if hash(lookup(x)) != x, something went wrong/has been tampered with 20:44:57 bonus: hashing is pretty fast, so you can do this all the time without much overhead 20:45:12 (hmm, SHA-3 is selecting for speed as well as security, so that'll be nice) 20:45:27 is it selecting for fast or slow? 20:45:32 ais523: fast 20:45:35 ais523: but secure 20:45:45 ais523: of course, for things like password hashing, you want slow 20:45:46 so sub-ideal for passwords 20:45:52 but for more general things, fast is a great advantage 20:45:56 * ais523 is still reading about the Gawker hack 20:46:17 ais523: I doubt bcrypt will be beaten for passwords any time soon, especially as it basically has a parameter for "increase this when computers get faster". 20:46:23 *faster, and it'll become more secure 20:46:44 people have been suggesting scrypt, which is designed like bcrypt except that it deliberately parallelises really badly 20:46:50 to make it harder to use GPUs to attack it 20:46:55 ais523: oh, yes, that's Colin Percival's 20:46:58 I forgot about that one 20:47:04 yes, scrypt is probably the best right now 20:47:06 (doesn't really help, though, as you can just check multiple passwords in parallel...) 20:47:18 ais523: doesn't help if you only want to crack one 20:47:24 e.g. the missile launch codes :) 20:47:32 -!- poiuy_qwert has joined. 20:47:37 no, I mean you're trying to crack a particular hash 20:47:44 ah, i see 20:47:46 you test password1 against the hash while testing password2 against the hash 20:47:55 ais523: well, yes, but you'd need more than if it was easily-parallelisable 20:47:56 I don't think it's even theoretically possible to avoid that 20:48:35 ais523: hmm, using non-sg vcses is going to feel horrible now 20:48:39 thanks for that :P 20:48:42 sorry 20:48:50 ais523: i'm kidding :) 20:48:53 they already do feel horrible :P 20:49:16 git is already entirely usable for me even though it's far from my favourite VCS, it just more or less won the DVCS war 20:49:32 yes, it did, and I kind of regret egging it on 20:49:49 I hadn't quite realised that it wasn't like it was when it started out -- a versioned file system with a VCS built on top of it 20:50:41 ais523: oh well, thankfully we #esotericers exist in our own bubble where we do what we want and suffer the consequences 20:50:59 it's sort-of like the opposite of Feather, it keeps becoming suddenly easier to understand every now and then, rather than harder <-- so after you've implemented it, you can do feather by a simple time reversal >:) 20:51:04 ais523: incidentally, how does scapegoat handle binary files? presumably it's just fixed to byte-based? 20:51:15 ais523: perhaps it should have a binary diff algorithm included for those rare cases 20:51:18 it depends on what sort of binary diffs are sane 20:51:28 treating them as blobs is generally what you want 20:51:34 ais523: http://www.daemonology.net/bsdiff/ 20:51:37 unless you go down the C-INTERCAL route and have source code in binary 20:51:40 ais523: (also Colin Percival) 20:51:53 ais523: by binary I mean things like image data 20:51:53 (ESR deleted the files in question on the basis that he thought they were generated; good thing that VCSes exist...) 20:52:01 not mostly-text files with little binary snippets in them, say 20:52:04 ais523: what files are those again? 20:52:11 the character conversion tables 20:52:15 ah 20:52:31 making them text would have required an extra layer of encoding for no reason at all 20:52:31 ais523: anyway, I basically mean just images, complicated level data formats, that sort of thing 20:53:27 ais523: a rare correct usage of big O: "bsdiff is quite memory-hungry. It requires max(17*n,9*n+m)+O(1) bytes of memory, where n is the size of the old file and m is the size of the new file. bspatch requires n+m+O(1) bytes." 20:54:06 "plus an arbitrary constant", it's being used for there? 20:54:11 yes 20:54:28 ais523: e.g., what most people mean by O(2n) is 2n + O(1) 20:54:38 or, at least, close 20:54:49 ais523: now that we've got a vaguely good idea of what scapegoat is, we can argue about more important things, like code formatting standards 20:54:56 and software licenses 20:55:09 presumably, not my irritate-everyone format for C? 20:55:23 I doubt annoying everyone /equally/ is actually possible, but that one must be close 20:55:31 ais523: indeed not; btw, I made a more irritating format than that 20:55:53 I didn't say "as irritating as possible", just "equally irritating" 20:55:56 ais523: http://sprunge.us/hShh 20:56:04 ais523: (one mistake there: &c and &d should be & c and & d) 20:56:14 that's evil 20:56:20 ais523: the indents before the { and } are spaces, but the indents before the actual code are 2-widtht abs 20:56:22 *2-width tabs 20:56:24 it's like GNU-style, but in reverse 20:56:28 MWAHAHAHA 20:56:44 worryingly, it actually fulfils the design goals for GNU style better than GNU style itself 20:56:47 ais523: and all but the last * go in the type, the last goes before the name 20:56:48 unless there's only one 20:56:51 in which case it goes in the type 20:57:18 elliott: I should hire you to work on my hypothetical esolang that's designed to look like C but have subtly different semantics almost everywhere 20:57:30 ais523: is this the kind of hiring that involves no pay? :) 20:57:34 I think so 20:57:41 I do that kind of hiring a lot! it rarely works 20:58:04 ais523: i say we release it under the WTFPL, and then when esr relicenses it it'll actually /work/ 20:58:10 (note: justification slightly meaningless) 20:58:43 I dislike the WTFPL 20:58:47 ais523: why? 20:58:51 because I have paranoid parents and some of the paranoia rubs off 20:58:55 I've been using it exclusively lately 20:59:01 ais523: the FSF consider it a valid Free software license 20:59:02 I get a lot of "but what if someone does something illegal with your code?" 20:59:14 and they want me to put disclaimers in my licensing against that sort of thing 20:59:19 "Every major Linux distribution (Debian, Red Hat, Gentoo, SuSE, Mandrake, etc.) ships software licensed under the WTFPL." 20:59:29 (even though, I suppose, it's a field-of-use restriction) 20:59:30 ais523: well -- [[The WTFPL is an all-purpose license and does not cover only computer programs; it can be used for artwork, documentation and so on. As such, it only covers copying, distribution and modification. If you want to add a no warranty clause for a program, you may use the following wording in your source code: ]] 20:59:48 ais523: you can't stop people using your code for illegal purposes 20:59:49 elliott: And what single piece of software is that? 20:59:50 I'd like at least a no-warranty clause, anyway 20:59:54 ais523: licenses only cover /redistribution/ 20:59:57 Gregor: software, plural 20:59:57 elliott: indeed 21:00:09 Gregor: I'm not sure what, exactly; I seem to recall I looked it up once 21:00:10 mostly because a lot of people are extreme idiots 21:00:20 ais523: eh? 21:00:22 maybe not the majority 21:00:25 ais523: i'm just saying that that would have to be an EULA 21:00:31 and EULAs are evil 21:00:34 and invalid, too 21:00:35 oh, I'm not talking about the no illegal use clause 21:00:41 obviously that makes no sense in a contract 21:00:49 "Oh shit dude, the EULA says I can't use this for illegal purposes, guess I won't then." 21:00:57 I was talking about no warranty 21:00:58 Using this software to break the law is AGAINST THE LAW!! 21:01:01 ais523: ah 21:01:10 "I slipped and fell and broke my finger on a CD of your software, I demand $20,000" 21:01:23 ais523: well, it's easy enough to put a no-warranty clause on top of the WTFPL... really, I'd use another license, it's just that there's no good PD-equivalent license 21:01:27 those sorts of people would probably actually be stopped by a warranty disclaiemr 21:01:30 *disclaimer 21:01:34 (creative commons zero is (1) IIRC under revision and (2) really, really long and ugly) 21:01:50 ais523: oh, I know, I'll just remove the requirement from the ISC 21:01:53 I've thought about using CC0 for something (other than Esolang) 21:02:03 and actually copying the entire license text in 21:02:04 Copyright (c) Year(s), Company or Person's Name 21:02:04 Permission to use, copy, modify, and/or distribute this software for any 21:02:04 purpose with or without fee is hereby granted. 21:02:04 THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 21:02:04 WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 21:02:05 MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 21:02:07 ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 21:02:08 WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 21:02:09 without an indication that it's actually public domain 21:02:11 ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 21:02:12 OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 21:02:15 there we go! 21:02:17 ais523: sorry for the flood 21:02:18 is that... BSD1? 21:02:19 the only changed paragraph is the second one 21:02:21 or BSD0? 21:02:25 ais523: http://en.wikipedia.org/wiki/ISC_license 21:02:35 boring, I like the idea of removing yet more clauses from BSD now 21:02:36 ais523: it's BSD2, minus stuff the Berne convention makes unnecessary; OpenBSD use it for everything 21:02:46 and it's FSF-declared Free 21:02:49 and it's OSI-approved 21:02:53 ais523: basically, the change is just 21:02:56 Permission to use, copy, modify, and/or distribute this software for any 21:02:56 purpose with or without fee is hereby granted, provided that the above 21:02:56 copyright notice and this permission notice appear in all copies. 21:03:00 --> Permission to use, copy, modify, and/or distribute this software for any 21:03:00 purpose with or without fee is hereby granted. 21:03:10 let's call it BSD1, then 21:03:13 as that's a great name for a license 21:03:23 also, I like the concept of a license where the version numbers go backwards 21:03:31 ais523: it's more like BSD0 21:03:34 as it has, literally, no requirements 21:03:46 but the permission is still a clause, isn't it? 21:03:52 ais523: maybe... but then ISC is BSD1 21:03:55 so ours is... BSD0.5 21:04:05 a true 0-clause license would be all rights reserved 21:04:15 ais523: my absolute favourite license is the OSI-approved Fair License: 21:04:16 Usage of the works is permitted provided that this instrument is retained with the works, so that any entity that uses the works is notified of this instrument. 21:04:17 DISCLAIMER: THE WORKS ARE WITHOUT WARRANTY. 21:04:23 ais523: but it's only OSI-approved AFAIK, not anything else 21:04:36 and removing the requirement would make it so vague as to be useless 21:04:38 hmm, does that have a power of at least 1? 21:04:41 ("Usage of the works is permitted.") 21:04:43 ais523: heh 21:04:48 we should use that to license the Agoran source code 21:05:11 also, "Usage... is permitted"? "/Usage/"? 21:05:22 that's a pretty restrictive license, without futher clarification 21:05:23 ais523: redistribution is usage! 21:05:24 ais523: redistribution is usage! 21:05:25 oops 21:05:33 elliott: not according to most licenses I've seen 21:05:42 e.g. the GPL allows unlimited usage but limits redistribution 21:05:42 ais523: I'm not seriously suggesting it, I just like it 21:05:44 :P 21:06:05 I think there should be a collaborative-effort license 21:06:22 now to try and find an SHA-512 library that isn't horrible 21:06:26 (for the key-value store prototype) 21:06:39 -!- Wamanuz2 has quit (Remote host closed the connection). 21:07:01 "Permission to use, copy, modify... is granted provided that each derivative work adds another 6 words and one punctuation mark to this sentence: 'David slowed slightly as his ears,'." 21:07:14 ah, LibTomCrypt has it 21:07:18 it could become quite a story after a few thousand people had modified it 21:07:30 ais523: heh 21:07:55 I did remember the sentence fragment right, right? 21:07:59 ais523: yes 21:08:15 David Slowed, slightly as his ears, entered the room. 21:08:28 David Slowed Slightly, as his ears, was gigantic. 21:08:29 you added an extra comma, that's cheating 21:08:39 ais523: erm, such modification happened all the time when we were playing with it 21:08:42 ah 21:08:50 it's just the comma at the end that's immutable? 21:08:59 ais523: not sure even that was immutable :) 21:09:04 -!- Wamanuz has joined. 21:09:06 I seem to remember it was 21:09:16 in that case, I'll replace the sentence with "Just another Perl hacker," 21:09:18 David slowed slightly as his ears rebelled against his tyranny and forcefully pushed him backwards. 21:10:54 ais523: come to think of it, 21:11:04 ais523: scapegoat's store is pretty much identical to ElliottOS' model of the world 21:11:20 ais523: with scapegoat, you could merge every possible store and, ignoring hash collisions, get a valid storage of... everything 21:11:22 that's a good thing, right? 21:11:31 ais523: with ElliottOS, every object is identified by its unique hash 21:11:34 also, how many OSes are you working on now? ElliottOS, Kitten, and @? 21:11:37 and you can refer to objects anywhere in the world with it 21:11:39 ais523: ElliottOS = @ 21:11:42 ah 21:11:43 only two, then 21:11:55 oh, you're working on the linux-on-a-floppy too, aren't you? 21:11:56 ais523: @ is a macro that expands to whatever ElliottOS will be called in its first real release 21:12:03 Flinix is abandoned as I can't get X on it :P 21:12:04 oh, I see 21:13:19 ais523: incidentally, is this a weird thought to have: "releasing software is an obsolete notion"? 21:13:53 elliott: gah, no, if you go too far down that path you end up with JNLP 21:14:05 ais523: oh, no, I wasn't thinking *that* 21:14:14 good 21:14:31 I'm glad I discovered JNLP without explicitly looking for it 21:14:35 heh 21:14:44 ais523: I was just thinking that it's probably nicer to have a Debian-esque model: every now and then, you update the stable branch in your repo with all the changes you've done in the development repo in 21:14:45 the thought of coming up with that in the first place and looking for it explicitly is worrying 21:14:53 or, if you just did some experimental commits, all the commits up to, but not including, that one 21:15:00 and then you just point people to that 21:15:05 (and, ideally, offer auto-generated tarballs of it) 21:15:08 rather than making actual releases 21:15:12 hardly any programming projects have the issue of "how do I not do auto-update" 21:15:19 :D 21:16:00 ais523: so, what's the scapegoat language like :P 21:16:07 that you specify merge tactics (patch types, whatever) and branch specifications in 21:16:27 gah, impl details again 21:16:36 is it not enough just to specify that it's a program? 21:17:00 ais523: well, we've solved most of the theoretical issues :) 21:17:14 ais523: also, um, I'd personally include the language as part of the platonic spec 21:17:17 considering it's pretty important 21:17:25 not the pragmatic spec? 21:17:38 ais523: well, no, because it's pretty core to the whole thing, I'd say 21:17:39 hmm, I suppose all this depends on how practical and how eso we want to be 21:17:44 ais523: e.g. every branch is a "program" in this 21:17:44 arguably, you could use CSS 21:17:50 well, not much of a program, it's not TC (hopefully) 21:17:56 but every branch is specified by one of these 21:17:58 so it's pretty integral 21:18:10 on the plus side, it has most of the properties we need, on the minus side, it's CSS 21:18:25 ais523: It ... how would you write a patch type in CSS. 21:18:27 You're crazy. 21:18:57 square brackets after the tag name with a key-value pair, presumably 21:19:23 ais523: You know what, we're not using CSS. 21:19:33 indeed 21:19:43 can you think of an existing language other than CSS that does most of what we need, though? 21:20:00 ais523: no, it's pretty much a very domain-specific language 21:20:04 indeed 21:20:21 hmm, it wouldn't be too far off OIL, which is the only DSL I've ever written 21:20:38 actually, no, it would be miles off OIL 21:20:39 ais523: INTERCAL-sans-esr would be (\p => p.author != *long_hash_that_identifies_esr_goes_here) 21:21:03 what lang is that? Ruby? C#? 21:21:07 I can't quite identify the syntax 21:21:07 ais523: mu 21:21:15 ais523: It's haskell, except -> to => to avoid ambiguity, and != 21:21:18 ah 21:21:19 and *x to mean "the object with hash x" 21:21:24 ais523: mu meaning, none 21:21:29 indeed 21:21:47 just to clarify it wasn't some random language name :) 21:21:56 (as ESR wrote C-INTERCAL originally, removing his contributions and things that depend on them wouldn't leave you with very much) 21:22:02 ais523: yes, I know 21:22:03 it was a joke 21:22:16 ais523: @tip would be rather complex 21:22:17 ooh, useful, I just got an email informing me of a seminar at 4pm 21:22:22 and yes, I am in the same timezone as you 21:22:22 heh 21:22:42 wow, it's sent time is 9:07pm today 21:22:48 ais523: in fact, I'm half-way to saying "fuck it, let's use a super-simple specification mechanism, way below a language, and just hardcode the meaning of @tip and the like" 21:22:50 I thought it would just be a slow received, apparently not... 21:23:33 elliott: make it pluggable, start with hardcoded @tip, etc, and a simple specification lang, and just leave space for expansion later 21:24:09 ais523: maybe... but on the other hand, I'm not sure I'd *want* people to be able to specify, e.g., @foo, being the last commit that didn't have a parent thrice removed with "foo" in its patch or... or something else silly like that. 21:24:24 by a simple specification lang, I mean -- what was your specification for branch ais523 again? 21:24:28 as in, only patches you specifically accept 21:24:41 only patches that I've whitelisted in the repo 21:24:47 would be my typical branch specification 21:24:58 presumably, the branch would just be a patchset, same as any other, in that case 21:25:11 and the interesting part would be for the whitelist command to update the nicknames 21:25:23 that doesn't actually need a lang at all 21:25:27 ais523: no, the nickname would point to the specification 21:25:40 yep, but in this case the specification is "one patch and its dependencies" 21:25:49 just, /which/ is updated by the whitelist command 21:25:49 ais523: the other type of branch doesn't need a specification, because it has the implicit "...that doesn't conflict with this branch" that everything has 21:25:59 ais523: so in fact, the only type of specification we need is (mu | whitelisted-specifically) 21:26:01 well, "one set of patches" 21:26:03 erm 21:26:05 ais523: so in fact, the only type of specification we need is (none | whitelisted-specifically) 21:26:15 elliott: that works for what I'd use 21:26:26 you might want the "everything but Oracle" 21:26:37 ais523: I can't think of another useful specification other than things like @tip 21:26:42 ais523: hmm, well maybe 21:26:48 ais523: this definitely needs more thought 21:26:53 elliott: the anonymous siblings of @tip need some way to refer to them, too 21:27:09 as in, that branch exists via a formula, but it wouldn't automatically have any name at all, not even a hash 21:27:12 ais523: indeed, I'm not actually sure how you *get* to them 21:27:17 er no it would have a hash 21:27:21 everything has a hash 21:27:23 it's just that 21:27:26 the hash would be the commit 21:27:32 er, the patch 21:27:34 I mean, nothing would insert the hash into any database automatically 21:27:44 ais523: sure it does -- the commit's hash 21:27:48 patches are branches, aren't they? 21:27:58 oh, I see, you can't have multiple unrelated commits in any of those branches 21:28:15 so although in general you can't refer to a set of patches by a hash without creating the hash, the set always has exactly one element here 21:28:24 so yep, you can just use the commit's hash 21:28:47 ais523: sheesh, I want a Ph.D. out of this 21:28:54 it's making my head hurt enough just trying to figure it out 21:29:05 and better still, the whitelist list on the repo in question gives an easy list of all @tip's siblings (they're its direct, rather than indirect, dependencies) 21:29:14 that was... unexpectedly trivial 21:29:30 ais523: dammit, model, stop making things easy for us 21:29:36 we like a challenge! 21:29:44 -!- augur has quit (Remote host closed the connection). 21:30:02 ais523: ok, here's something we haven't addressed - metadata. 21:30:04 ais523: oh, I have an idea! 21:30:10 elliott: make sure you save that log, btw 21:30:16 it is being saved, constantly 21:30:17 I keep logs 21:30:18 I'd like to review the conversation, and this is a webclient that doesn't log 21:30:19 oh, right 21:30:21 -!- augur has joined. 21:30:26 I mean, somewhere you can find it more easily 21:30:26 ais523: files are just their contents, not anything else; the names and permissions are stored in the *directory* they're in 21:30:38 ais523: this also means that moving a file around doesn't even touch it 21:30:40 just its hierarchy 21:30:47 so this allows putting a / below your existing / without changing every single file 21:30:49 how well does that fit a common programmer's use of a filesystem? 21:30:53 I imagine, quite well 21:30:54 ais523: what do you mean? 21:31:07 well, what features of a file are attached to the file itself? 21:31:12 ais523: in this model? 21:31:13 ais523: the contents. 21:31:14 size is, obviously; absolute path probably isn't 21:31:20 ais523: a file is just an arbitrary chunk of texct. 21:31:21 *text. 21:31:22 I don't mean, in your model, but in general use 21:31:23 ah 21:31:37 ais523: I *think* I'd say that the (directory-local) name and permissions of a file are part of it 21:31:38 if you decided to send me a file, what metadata would you send along with it? 21:31:41 but that's just cognitive bias 21:31:52 ais523: the name; not the permissions, owner, or group 21:31:56 ais523: but I think the name thing is just, human bias 21:32:02 we like things to have names tied closely to them 21:32:10 whereas from a VCS perspective, it makes more sense to have them in the directories 21:32:14 well, many programming languages do too 21:32:19 Java, for instance 21:32:21 ais523: oh, and consider the case of merging two files 21:32:26 ais523: and also, splitting one file up into multiple 21:32:33 ais523: this is /much/ easier if files are just text, and have no metadata 21:32:37 and all the metadata is in the directories 21:32:41 yep, I suppose so 21:33:12 ais523: well, that was an easy decision made 21:33:20 ais523: but -- how are directories stored? obviously, we need to be able to patch them 21:33:21 ais523: aha! 21:33:30 ais523: directories exist *only* as a (built-in) language "plugin" 21:33:33 ais523: they have no textual form 21:33:39 that works, I think 21:33:40 ais523: the unit is something like, "one item of metadata" 21:33:53 ais523: actually, no 21:33:55 ais523: the unit is "one entry" 21:33:58 indeed, I think probably all language plugins should work like that 21:33:59 including name, permissions, etc. 21:34:09 ais523: well, sure, just, they'll be built on parsing the actual text 21:34:12 whereas this won't 21:34:15 most of them will choose to have a plaintext backing 21:34:18 but perhaps some won't 21:34:27 -!- augur has quit (Ping timeout: 245 seconds). 21:34:27 ais523: no, I think we should definitely stick to only tracking actual files 21:34:29 even if they're binary 21:34:38 as in, the language plugin shouldn't be serialised; the plugin should read in the actual files 21:34:43 ais523: and they should handle formatting changes 21:34:46 IMO 21:34:49 yep 21:34:55 ais523: they're more like, smarter semantic diffs, rather than AST versioners 21:34:57 well, give the plugin the choice of whether it's filesystem-related or not? 21:35:11 so for, say, C you can handle the source code just fine 21:35:12 ais523: eh... I think it's a lot simpler if the plugin just gets a file and is told "hey, make sense of this" 21:35:19 conceptually, too, as in the scapegoat model 21:35:19 but wouldn't it be great to, say, version a running Haskell program 21:35:25 otherwise, the platonic model would be way too general 21:35:27 I mean, not the source code, the program itself 21:35:29 to the point of uselessness 21:35:36 we can do that later, though 21:35:45 ais523: it sounds cool, but it doesn't sound like something I'd actually want to do :) 21:35:49 at least, not outside of @, in Unix 21:35:58 wow, i just got a second reminder about that seminar 21:36:05 ais523: MAKE SURE YOU DON'T MISS IT 21:36:06 * ais523 wonders about time zone issue 21:36:16 ais523: maybe it's for tomorrow? 21:36:34 nope, today 21:36:41 ais523: maybe it's automated, and the system was slow/down? 21:36:50 I was wondering about that 21:36:55 I suspect it's automated, at least 21:37:03 probably the mail server it used was down or something 21:37:49 ais523: so, does sg have any nice properties/features that you know of for single-developer cases? 21:37:54 heck, for versioning dotfiles? :) 21:38:29 one that would be nice would be the ability to extract just a file and its dependencies from a large project and work on that 21:38:46 I've tried to do that before, but darcs ended up pulling in 9/10 of the project because it was too coarse-grained 21:38:48 ais523: hmm, re: storing file metadata in directories, the command line tool would have to be a bit smart about that, i.e. say that telling it to track file X is actually interpreted as cherry-picking the change to the directory of X 21:38:55 if multiple files were changed in a patch, it had to use both or neither 21:39:07 sg could easily use "half a commit" if necessary 21:39:17 ais523: (does ^ make sense?) 21:39:23 elliott: indeed 21:39:31 that's not a massive smartness issue, though 21:39:39 indeed 21:40:25 ais523: btw, to get this out of the way, I strongly oppose having Ŋscapegoat's name actually start with a non-ASCII character :-) 21:40:41 fair enough 21:41:25 you could just use , that's in ASCII and sorts to the end of a directory 21:41:29 heh 21:41:37 @scapegoat or %scapegoat seem like the best bets to me (wow, just realised the perl connection) because they're at least near the top (% comes before numbers and letters, @ before letters) and they suggest "special things" but don't have to be escaped in a shell 21:41:40 (unlike {arch} :-)) 21:41:55 also, left shift + left control + u lets you type arbitrary Unicode in GNOME by specifying its hex code 21:42:04 not here 21:42:11 in a specific input method, perhaps 21:42:40 hmm, really? 21:42:46 well, I'm certainly using gnome 21:42:46 it works on CentOS here and Ubuntu at home 21:43:08 hmm, and seems not to be sensitive to which control and which shift is used, unlike altgr 21:43:09 debian here... but who knows what i have input methods set to 21:43:24 also, http://www.google.com/intl/en/ipv6/statistics/ is really depressing 21:43:50 ais523: and v4 is running out faster than ever 21:44:04 oh, it'll continue running out long after it's actually out of addresses 21:44:18 hopefully, IPv4 exhaustion will finally prompt ISPs to start switching to IPv6 21:44:20 but you never know 21:44:34 ais523: actually, the last allocations are almost in 21:44:47 ais523: and the actual-last-address-allocated estimate is looking like about March 2011 21:44:48 indeed, 7 blocks left, and the last 5 are allocated all at once 21:44:51 Ilari can confirm for sure 21:44:59 ais523: so "long after" is wrong 21:45:14 elliott: I was referring to recursive NAT 21:45:21 ais523: I suspected that 21:45:24 which is bound to be the stopgap used, until people realise that it doesn't actually work 21:45:28 ais523: but, still, consider every VPS provider ever 21:45:38 ais523: I could create five new slices right now, and each would get its own static IP 21:45:46 and there's no real way to NAT VPSes 21:45:50 yep, you wouldn't be able to in a while, I suspect 21:45:52 since you can run anything on them, on any port 21:46:02 exhaustion will hit servers much harder than clients 21:46:04 ais523: so it really is a huge thing, because businesses don't exactly want shared hosting 21:46:15 and when they need to put a new machine up ... they just can't 21:47:06 indeed 21:47:15 it's huge, but it probably won't cause the end of the world 21:47:20 rather, it'll just be a wake-up call 21:47:31 ais523: I suggest we assign an IPv6 address to every scapegoat object, just to make IPv6 depletion that much easier 21:47:42 does that even make sense? 21:48:05 ais523: it can if we make it! 21:48:41 "We reply to Russ Cox's "Yacc is Not Dead" by running the example that he claims has best-case complexity of Ω(3^n). It terminates instantly for n > 100." 21:48:46 WHERE IS FUNGOT 21:48:54 fizzie: OH GOD THE BEES 21:49:10 ais523: hmm, so what should we do for public keys? presumably, commits should be optionally signable 21:49:18 and author objects would have a gpg public key with them 21:49:28 elliott, what's Russ Cox's "Yacc is Not Dead"? 21:49:31 Actually, its now February... And yes, some RIR will grab 2 blocks, and then last five are immediately distributed. 21:49:32 Phantom_Hoover: a blog post 21:49:40 elliott: that makes sense, I suspect 21:49:43 fizzie, for killing fungot, I challenge you to a Minecraft duel! 21:49:48 Choose your weapons! 21:49:59 Phantom_Hoover: are there any plausible weapons? 21:50:01 ais523: hmm, maybe we should just have it future-proof... as in, just include gpg-signature keys in patches, and gpg-pubkey in authors 21:50:04 I don't know whether to laugh 21:50:05 ais523: and then we can switch at a later date 21:50:16 ais523: and tools that don't want to can just ignore them, like other unknown keys 21:50:18 ais523, that's for fizzie to decide! 21:50:19 I think we should futureproof everything, where it doesn't cost too much 21:50:20 ais523: also, there's a sword in Minecraft, so yes 21:50:29 does it work for PvP? 21:50:33 Buckets of lava and water, and cobblestones! 21:50:37 well, minecraft has pvp, yes 21:50:42 although it's disabled on our server 21:50:43 along with health :P 21:50:55 making a battle to the death rather difficult 21:51:12 elliott: why am I suddenly reminded of Falcon? 21:51:28 ais523: erm, for minecraft or for scapegoat? :) 21:51:33 minecraft 21:51:37 And that RIR is thought to be APNIC... 21:51:39 i have no idea 21:52:05 elliott: it's as if Minecraft's put in any feature that anyone asked for 21:52:06 ais523, because it's astonishingly poorly-coded? 21:52:13 ais523: not really 21:52:14 ais523, ohhhh, no. 21:52:17 or attempted to, but not got too far 21:52:29 ais523: it's Survival Multiplayer; the existence of PvP is practically a given 21:52:34 Notch removes everything that's enjoyable which causes the game to be played in The Wrong Way. 21:52:36 you can't disable health with the stock server, we use a mod 21:52:38 fair enough 21:52:43 but you can disable monsters and pvp 21:52:48 is the server open-source, btw? 21:52:50 Best example: /home. 21:52:54 ais523, no. 21:52:56 or at least open-binary? 21:52:58 ais523: no, but people have deobfuscators that you run on the decompiled java 21:52:59 open-binary, yes. 21:53:03 ais523: (this is how mods exist) 21:53:11 ais523: the nice thing about the mod we use, hMod, is that it has a stable plugin API 21:53:17 so only one person needs to worry about server code changes 21:53:23 by open-binary, I more or less mean "allowed to download the binary at will, etc" 21:53:28 yes 21:53:32 even if you don't have teh game 21:53:34 *the 21:53:41 http://minecraft.net/download/minecraft_server.jar?v=1292277191330 21:54:51 ais523: another thing nicknames are useful for: identifying author objects 21:54:51 hmm, just checked the computer here, it's IPv4 only 21:54:55 elliott: indeed 21:55:00 useful when you want to do, e.g., "sg mail foo" to mail patches to foo 21:55:03 they're useful for naming anything, more or less 21:55:04 one issue with that: we need a consistent prefix 21:55:13 enforced? or convention? 21:55:15 ~foo would be ideal, but you'd have to quote it in a shell 21:55:16 ais523: convention 21:55:21 The "there will be beta soon" blagpost also said he'll start working on a stable server API for mds. 21:55:27 I suggest lpsz, to annoy Windows programmers 21:55:33 although that joke's a bit dated nowadays 21:55:34 ais523: only enforced thing is that @ is a reserved prefix, I think 21:55:39 for things like @tip 21:55:54 ais523: although arguably, @ should mean "branch" 21:55:57 Long pointer size? 21:56:13 ais523: (this is the point where it's worth considering having a different set of nicknames for each object type rather than this silly prefix business...) 21:56:33 Ilari: long pointer to zero-terminated string 21:56:50 as opposed to a short pointer? 21:56:58 indeed 21:57:05 although even in win3.1, it was a silly distinction 21:57:20 because the library functions you were calling were unlikely to be in the same segment as your program itself 21:57:27 And long pointer? Who uses that with 32-bit stuff? 21:57:35 Ilari: relic from 16-bit Windows 21:57:40 the prefix was preserved into win32 21:57:46 And that lparam/wparam stuff. 21:57:47 I hope they finally got rid of it with #net, though 21:57:50 *.net 21:57:56 C#NET 21:58:46 -!- fungot has joined. 21:58:48 ais523: annoying thing about scapegoat: it's so close to being perfect for Haskell, except that you'd need all the store operations to be in IO because of the implementation detail that you happen to save them 21:59:03 ais523: also, it's probably over-generalised enough that Haskell would be too slow :( 21:59:28 (not with hand-optimisation, perhaps, but then why bother using haskell?) 21:59:33 Wonder how many Linux programs (besides stuff like DOSEmu or so) use far pointers (at least Linux/i386 has some syscall that only makes sense with far pointers...) 21:59:54 Far pointers? 22:00:33 ais523: I'm wondering if the object store might want to store more complicated things too; a patch is basically a set, isn't it? 22:00:47 it would be a bit awkward to do set[hash(x)]=x for every single change in a patch 22:01:23 indeed 22:01:47 OTOH, maybe we should just store a patch as its changes, sorted in some arbitrary way? 22:01:58 in which case, we'd need lists (and at that point I'd agree that we should abandon a filesystem-based approach...) 22:02:45 storing a patch as its changes would effectively store the whole repo in any toplevel patch 22:02:58 so obviously you can't do that completely in general 22:03:05 but it would be a sensible optimisation for some patches 22:03:23 ais523: define toplevel 22:03:54 oh, a patch that isn't referred to by any other 22:04:04 as in, the merge of @tip and its siblings 22:04:17 worse, the same would apply to any patch that had ever been @tip 22:05:02 ais523: hmm, are you sure? 22:05:08 ais523: wouldn't it be the set of changes from the previous @tip? 22:05:41 oh, you mean not recursively 22:06:18 hmm, I imagine that could work 22:06:40 ais523: well, "changes, not recursive" is pretty much the definition of a diff :) 22:06:45 -based VCS 22:06:55 ais523: I mean, you already have a diff-esque format 22:06:58 the list of changes 22:07:07 so just, make them relative to their parent(s) in the tree 22:07:11 still, there's the issue of multiple parents 22:07:26 ais523: hg has commits with multiple parents and is diff-based 22:07:29 I'm not sure how it works, though 22:07:29 how do you distinguish between the diff from the previous @tip (all the merged changes), and the diff from the merged changes (the previous @tip)? 22:07:37 ais523: hmm, maybe you store one diff per parent 22:07:41 such that each diff produces the same result 22:07:49 if you have multiple parents 22:07:50 maybe? 22:07:51 i dunno 22:07:55 I was thinking of that, but then the diff to the "small" parent's going to be the whole repo 22:08:06 I think, if you're just going for efficiency, you store the smallest diff to a parent 22:08:21 which'll be right 99% of the time, and the rest, you just calculate from scratch 22:08:31 ais523: TODO: figure out what hg does in this case 22:08:35 (multiple parents) 22:09:32 ais523: hmm, I wonder what it *does* do? 22:09:39 it definitely has commits with multiple parents, usually merges 22:09:42 and it definitely stores things as diffs 22:09:50 in our case, every commit is a merge except for the first 22:09:55 so every commit has multiple parents 22:10:15 How does hg handle the storage of commits with two parents (e.g. merges) internally? If it stores them as a diff, which parent does it calculate the diff from? 22:10:18 --#mercurial 22:10:22 let's see if anyone's awake 22:10:42 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds). 22:12:09 elliot: Mercurial always stores snapshots conceptually. Delta compression is handled at a lower level. 22:12:09 elliott: but conceptually, the diff shown from a merge is from the first parent 22:12:10 mpm: OK. How would the lower level look in the case of two parents being merged? 22:12:10 homa_rano: ah -- how does hg work out which parent is the first? 22:12:14 ais523: (mpm is the creator of mercurial) 22:12:23 also, I love how I catch out everyone who doesn't use tab complete 22:12:29 it doesn't highlight me if you spell my name wrong, guys... 22:12:38 ais523: and the actual-last-address-allocated estimate is looking like about March 2011 <-- i've seen at least twice (Ilari yesterday was the second time) estimates indicating late _January_ 22:12:50 oerjan: yep, I was behind on my results 22:12:59 -!- impomatic has joined. 22:13:03 ais523: the first is the one you had checked out when you typed 'hg merge' 22:13:04 ah :) 22:13:05 oerjan: why is it accelerating? people trying to get addresses before the Internet runs out? 22:13:08 argh ninjaed 22:13:13 ais523: so, tl;dr hg just picks an arbitrary parent to diff from, pretty much 22:13:18 oerjan: ? 22:13:20 elliott: diff-to-one-parent seems correct for us, too 22:13:32 One of the model estimates (as opposed to personal guesses of various people) was in January few days ago. 22:13:33 ais523: yep, it's just that, they have a working copy that they can choose to diff from; we have no real way to decide which 22:13:42 calculating a diff from every parent is expensive 22:13:45 and we should pick the one that results in the smaller diff as it's a sensible heuristic to determine which one makes the better working copy 22:13:53 oh, wait 22:13:54 but the underlying storage is unrelated to parentage 22:13:54 elliott: We may or may not delta against a convenient revision in the underlying storage. 22:13:54 mpm: OK. 22:14:05 and can't you just calculate in parallel and stop once you have any diff? 22:14:07 Would it, say, diff against every parent and then pick the shortest diff? 22:14:07 Or? 22:14:10 let's find out! 22:14:13 ais523: no, not if you want the smallest one 22:14:28 -!- augur has joined. 22:14:41 The current estimates are 2nd February and 23rd February. 22:14:43 also, you have to remember that with sg's extra metadata, you can do some large diffs very quickly 22:14:59 ais523: you can? 22:15:05 as normally, you'll find a common ancestor quickly if you just do a breadth-first search 22:15:11 and there's no need to expand any further from there 22:15:12 Anyone fancy thrashing this guy at his own programming contest? http://skybuck.org/BoxifyMe 22:15:31 if a line's the same line in two files, then it's got to be based on the same patch 22:15:33 impomatic: "And may the boxforce be with the fokking you ! ;) =D LOL." 22:15:40 impomatic: I can't do anything related to anyone who says... whatever that is. 22:15:46 if it's in the same context, then those have to be based on the same patch, too 22:15:53 and so on recursively 22:15:54 ais523: true 22:15:59 ais523: It generally deltas against the last revision, regardless of how it's related. But that's an implementation detail. 22:16:09 ais523: the problem is, in sg, we can't have the luxury of treating diffs as an implementation detail 22:16:12 because they're fundamental 22:16:23 well, at the bottom level, there are only a very few diffs 22:16:46 the "insert "x" between 2 and 3", "change 5 to "hello world"", "delete 8" 22:16:52 ais523: oh, oh, here's something you might like 22:16:55 ais523: http://git-annex.branchable.com/ 22:16:59 ais523: from Joey Hess, of Debian fame 22:17:01 very interesting 22:17:16 although of course, you'd want to probably cache what combinations of those bottom-level patches came to 22:17:19 the walkthrough especially (well, after the two introductory paragraphs) 22:17:22 highly recommend you take a look 22:17:23 ais523: and yes, true 22:17:40 ais523: "change 5 to "hello world"" 22:17:45 ais523: wouldn't that be "change 5 to 6"? 22:17:47 I've had a quick look, I'll check more later 22:17:52 elliott: no, that /is/ 6 22:18:01 ais523: wait, the *change* is the line? 22:18:11 it's blame-based 22:18:14 ais523: ok, let's say 6 = insert "x" between 2 and 3 22:18:18 lines are referred to by the change that introduced them 22:18:18 ais523: what's "change 6 to "hello""? 22:18:33 elliott: I suspect the guy running the contest is about 10 years old :-) 22:18:34 it changes the x that was originally addded between 2 and 3 to "hello" 22:18:47 and because this is scapegoat, it knows which one that was, and whether it's still there 22:19:22 impomatic: I would do it except reading the image in sounds like the only part that'd take any time, and it sounds boring :) 22:19:24 if it had been deleted since, or changed to something else, it wouldn't be there, or have a different number, respectively, so it wouldn't be found 22:19:43 ais523: so "change 3489573945 to "blah"" if 3489573945 isn't present in the revision we're applying this to would barf out? 22:19:44 ok 22:19:54 elliott: yes, that's the definition of a merge conflict 22:20:02 ais523: hmm, how easy is it to do "sg diff", i.e. "give me a diff between, say, @tip and current working directory" 22:20:11 ais523: as in, an actual unified diff 22:20:23 and after you've answered that: same question, but s/@tip/r1/ and s/current working directory/r2/ for arbitrary r1 and r2 22:20:51 conceptually simple; you take the set difference between the recursive dependencies of each 22:21:02 then convert that into the lines in question 22:21:04 then add context 22:21:23 ais523: but actual simplicity? 22:21:31 I suspect also simple 22:21:36 ais523: I mean, imagine a revision from 10 years ago to now, when there's been 3 rewrites in-between 22:21:39 and you want a unified diff between them 22:21:48 surely "sg diff r1 r2" would be ... rather slow? 22:22:08 in that case, I suspect it might be, finding a common ancestor would take ages 22:22:15 and then sg would list one with a bunch of +s, and the other with a bunch of -s 22:22:22 it wouldn't generate a textual diff, but a conceptual diff 22:22:30 ais523: err, no, I mean in an actual diff -u output 22:22:32 not anything sg-specific 22:22:33 textual 22:22:37 it would be an actual -u output 22:22:41 hmm 22:22:43 but I mean, not generated by diffing text 22:22:46 ais523: come to think of it, how fast would "sg checkout rev" be? 22:22:48 for an arbitrary rev 22:22:51 but by working out what changed, then converting that into unidiff 22:23:00 I suspect the answer is "slow, in the general case" 22:23:07 and incredibly slow with a naive impl, but easily optimisable 22:23:21 ais523: how easily? 22:23:35 ais523: if you mean "oh, just store the last few revisions unpacked"... well 22:23:37 elliott: Al Zimmermann's latest programming contest requires quite a bit of processing power :-) http://azspcs.net/Contest/Cards 22:23:43 I suspect the best storage is a git-like one: for each patch which nothing depends on, store the entire tree; for each patch which something depends on, store a diff from something that depends on it 22:23:49 ais523: I don't think a 15-year-old revision should take hours to check-out. 22:23:50 i.e. a backwards tree of diffs 22:24:02 A minute, would be about the most I'd accept (assuming it's not huge, filesystem-wise) 22:24:15 then, every so often, store a complete tree 22:24:15 with a local Ħscapegoat directory 22:24:22 in order to speed the process up 22:24:28 ais523: maybe... does git actually do that though? 22:24:29 say, once every 100 dependencies or so 22:24:38 I think it does either that, or something pretty similar 22:24:41 I can't quite remember the details 22:24:46 ais523: I don't think the Linux git has hundreds of full copies of Linux in it. 22:24:48 I suspect that would work, though, and even has tuneable performance 22:25:27 hmm 22:25:33 ais523: well, we'll see :P 22:25:47 ais523: anyway, I just realised something 22:26:00 I think the Linux git tree probably does have hundreds of full copies 22:26:01 ais523: oh, wait, I realised something but it was wrong 22:26:04 ais523: and no 22:26:06 perhaps one at each release 22:26:11 ais523: linux-2.6.git is <200 megs 22:26:21 because they're deduplicaetd 22:26:23 *deduplicated 22:26:28 via hashes 22:26:29 ais523: latest 2.6 itself is 60 megs bzipped 22:26:32 *bzip2ed 22:26:35 hmm 22:26:45 is git fast at really old revisions? 22:26:49 ais523: yes 22:26:55 ais523: all revisions take the same time to extract, afaik 22:27:05 more or less, at least 22:27:15 well, we can look into what it does 22:27:30 worst case, just use git as the FS behind scapegoat and let it handle the deduplication, if it's that magical 22:27:43 ais523: we should look at hg's internal system too, since it's like git but less hacky :) 22:27:48 and it's also python 22:28:01 which is probably easier to get overall details from than git's optimised C 22:28:13 "store a diff against something" is probably reasonable for an implementation strategy, but it's unclear how it would work for really old things 22:28:40 oerjan: ? <-- i was (still am :D) way backscrolled so i didn't see Ilari had commented on the same thing 22:28:49 ais523: anyway, I thought nicknames could be done in the store, but I was wrong 22:28:51 oh! maybe I wasn't 22:29:05 they'd be global if they were 22:29:10 by definition, pretty much 22:29:29 ais523: well, yes, it's just that if you had multiple clashing nicknames, you couldn't use those nicknames 22:29:35 ais523: first, let's say that the hash function takes a type as a parameter -- branch, pointer, nickname, whatever -- and mixes that into the hash however 22:29:56 it's nice to have short nonunique nicknames like "elliott" for a local repo 22:30:06 ais523: shush, i'm explaining how you can have that 22:30:08 in the store 22:30:39 ais523: now, store a nickname like this: nickname_kvstore = insert(kvstore, type="nickname", key=nickname, value=new_kvstore) 22:30:52 ais523: so, this has {hash(nickname, type="nickname") => {}} 22:30:55 ais523: and nickname_kvstore is the kvstore 22:30:58 ais523: now 22:31:21 oerjan: why is it accelerating? people trying to get addresses before the Internet runs out? <-- that's the suspicion 22:31:21 ais523: insert(nickname_kvstore, type="branch", key=the_branch_not_its_hash_the_actual_branch_object, value=the_branch_etc_etc_etc) 22:31:37 ais523: so it's {hash(nickname, type="nickname") => {hash(branch, type="branch") => branch}} 22:31:46 ais523: now, imagine copying a store into another 22:31:52 ais523: obviously, in this case, the hash for the nickname just gets bigger 22:31:53 oh, so branches own their own list of other branches 22:31:56 ... 22:31:57 no! 22:31:58 it's... peer to peer branching 22:32:00 what? 22:32:05 that has nothing to do with what i said! 22:32:06 well, nicknames to other branches 22:32:06 stop exasperating me 22:32:08 no 22:32:16 ais523: well, yes, in that they're versioned, but they don't HAVE to be 22:32:18 wait, no, I misread 22:32:19 I'm just talking about the kv store itself 22:32:36 ais523: so, if foo is the nickname for bar in one repo, and the nickname for baz in another, and you copy them into another 22:32:38 ais523: you'd get 22:32:41 thought you had a hash from branches to hashes of nicknames to branches, that isn't what you said though 22:33:02 {hash("foo", type="nickname") => {hash(bar, type="branch") => bar, hash(baz, type="branch") => baz}} 22:33:09 ais523: now, here's how you look up a nickname: 22:33:20 nickname_kvstore = lookup(kvstore, "foo", type="nickname") 22:33:31 then you get a set of possibilities 22:33:34 if (number_of_elems(nickname_kvstore) != 1) { NOOO! IT'S BAD! } 22:33:44 I thought that's what we were doing anyway? 22:33:52 else /* get the single element out */ 22:33:54 ais523: yes, it is 22:33:59 the reason it wasn't in the store was so you could copy stores indiscriminately without global namespace pollution 22:34:19 ais523: right, except that it doesn't actually matter, unless you actually use sg on those merged stores directly 22:34:29 ais523: in my model, I didn't think it could go in the kvstore 22:34:40 ais523: because I made the file be called HB-HN 22:34:46 where HB = hash of branch, HN = hash of nickname 22:34:54 and I didn't realise that it could be done without two hashes in one name 22:35:03 you couldn't do hash(HB "-" HN) because you don't know HB 22:35:06 but this works 22:35:11 ais523: anyway, consider scapegoathub 22:35:28 ais523: it simply only includes nicknames that reference objects it's sending down 22:35:32 indeed 22:35:45 ais523: (this means we need a sort of, "second level search", i.e. give me the key whose value contains this key, which is easy with a filesystem, at least) 22:35:47 I just like the theory that someone could grab its store without all their nicknames becoming useless 22:35:54 perhaps what we need is a whitelist for nicknames too 22:36:03 in fact, you could store them in a not a filesystem 22:36:06 just like directoreis 22:36:06 ais523: well, what i was thinking is, you know how directories? 22:36:07 yeah 22:36:08 :D 22:36:09 *directories 22:36:17 I think we both came up with that at the same moment 22:36:28 ais523: oh, wait, that means we don't even need 22:36:34 ais523: we don't even need this method of storing it 22:36:40 ais523: we just have a not-a-filesystem with a bunch of names 22:36:45 ais523: oh, but a problem 22:36:46 yep 22:36:49 ais523: say @tip is Orcl 22:37:05 ais523: Orcl don't like me, so they don't include foobarly in their nicknames 22:37:06 within a given repo, entirely possible 22:37:07 ais523: what now? 22:37:16 well, it's in your nicknames 22:37:21 ais523: yes, but what about other people? 22:37:22 they just don't whitelist that, you do 22:37:31 ais523: how would they discover the branch? 22:37:39 ais523: hmm... actually, wait 22:37:42 ais523: @tip makes *no sense* 22:37:50 not globally, no 22:37:56 it makes sense relative to a particular branch 22:37:59 ais523: platonically, everything is part of one yggdrasil repository 22:38:04 indeed 22:38:05 ais523: but that's the thing, @tip *is* a branch 22:38:09 it was meant to be the bootstrap that let you see anything else 22:38:12 it's a subbranch 22:38:16 ais523: hmmmph 22:38:23 I think repositories themselves have to be the bootstrap 22:38:23 ais523: great, everything just got re-confused in my head 22:38:36 ais523: I *think* I've just gone back to thinking that nicknames shouldn't be part of turtles themselves 22:38:42 to avoid a huge bootstrap issue 22:38:50 ah, right 22:38:58 it works perfectly except bootstrap 22:39:09 ais523: right... and we're not in the bootstrapping business 22:39:13 and personally, I don't want to be in that business 22:39:16 so we need to rethink 22:39:17 hrmm 22:39:19 because Featehr 22:39:22 *because Feather? 22:39:26 ais523: partly, yes :) 22:39:34 but also because i want to solve version control, not bootstrapping too! 22:39:54 ais523: well, at least I like scapegoat now (previously I thought it was line-based for no real reason, and impossible to store efficiently) 22:40:16 I think the problems are tractable, if we step a *little* outside platonic perfection 22:40:18 to allow bootstrapping 22:40:26 once you have a pointer to a useful branch, you're basically sorted 22:40:29 and there's no problems 22:40:57 ais523: if we hardcode @tip to mean a certain hardcoded specification, then we can probably store nicknames in turtles 22:41:12 ais523: it's just that, two branches having two different ideas of what nicknames there are is perverse 22:41:21 you could switch to a branch and have no way to switch to another branch without going through @tip 22:41:32 oh right, that's enough to not turtle nicknames for me 22:41:54 ais523: so I think the original, Åscapegoat/names approach was actually best 22:41:55 it'd be like visiting a website and finding it had entirely different DNS and your back button didn't work 22:42:01 and there's no real point to put them in the store, really 22:42:02 although I might 22:42:05 it's an implementation detail at this point 22:43:53 ais523: yeah, might as well use my nested-hash-in-store if I can get that working efficiently with the two-level search for scapegoathub 22:44:09 if not, easy enough to use the %scapegoat/names system (yes, I'm dropping the unicode thing) 22:44:18 also, scapegoathub is a ridiculous website name 22:44:22 it really is 22:44:28 -!- MigoMipo has quit (Ping timeout: 255 seconds). 22:45:15 the other options are !scapegoat (no, shells barf on that), "scapegoat (nope, shells), #scapegoat (nope, shells... as well as reminding me of IRC and being weird), $scapegoat (shells), %scapegoat, &scapegoat (shells), 'scapegoat (shells), (scapegoat (shells), )scapegoat (shells), *scapegoat (shells), +scapegoat (shells? maybe not), ,scapegoat (weird), -scapegoat (nah) 22:45:21 (for the directory) 22:45:26 I think out of those, %scapegoat or +scapegoat is the best choice 22:45:43 +foo seems to be uninterpreted in bash, so that's a possibility 22:45:55 it is, some programs use it for long options 22:46:02 Is there a problem with naming it just ... scapegoat? 22:46:04 ais523: true, but programs operating on files? 22:46:05 including programs generated by C-INTERCAL, I think just to be perverse 22:46:08 Gregor: erm, this is the directory like .hg 22:46:11 OH 22:46:21 Why not .scapegoat then? :P 22:46:29 Gregor: I don't want it to be called .scapegoat because it's neither configuration nor a backup file 22:46:31 and there's no real reason to hide it 22:46:38 it's not very *interesting*, but it's not irrelevant 22:46:42 don't backup files end with ~? 22:46:45 and eliding it from filename listings is just confusing 22:46:48 ais523: yes, why? 22:46:57 ais523: don't call it a backup directory, I'll have to slap you 22:47:03 then why would you start them with .? 22:47:08 oh 22:47:10 or is this a Vorpal-level misunderstanding on my part? 22:47:14 ais523: well, vim calls its swap files .something.swp I think 22:47:14 I forget 22:47:20 emacs has .#foo# too, at least for me, sometimes 22:47:44 you're thinking of the broken symlinks starting .# it uses to prevent accidentally opening the same file twice 22:47:55 (why it uses broken symlinks for that purpose, I'm not sure) 22:47:58 *because Feather? <-- wait is this scapegoat idea actually _based_ on feather? 22:48:00 no 22:48:06 that's too insane for words 22:48:07 we could also go for :scapegoat (naw), ;scapegoat (shells), scapegoat (shells), ?scapegoat (shells, I think) 22:48:11 but those come after numbers 22:48:16 making them not really order any particular way at all 22:48:18 we're making design decisions to stop it working like Feather as much as possible 22:48:37 hmm, what about calling it -rf? 22:48:39 possibly some things put ^scapegoat before other things too 22:48:40 ais523: :D 22:49:05 +scapegoat seems like the best contender to me, it's like %scapegoat but less ugly... and really, I don't know of any tool that accepts +-options and would be useful to use on a file, at least, not very often 22:49:12 and the + makes me think "additional" 22:49:23 as in, you don't *need* this, if you want these files, but it has additional sets of files like this that you might liek 22:49:24 *like 22:49:37 yep, I like the look of the + too 22:49:42 except that it renders really badly with this font 22:49:46 I blame your font 22:49:51 I didn't even know you /could/ render a + asymmetrically... 22:49:54 wow 22:50:03 [...] (yes, I'm dropping the unicode thing) <-- i was about to ask... 22:50:11 oerjan: :) 22:50:14 ais523: and now I'm wondering if arch/tla is perhaps just terribly misunderstood, and they picked all their filenames for perfectly good reasons :D 22:50:24 (it's a pixel shorter on the left than right, and a pixel shorter below than above) 22:50:25 ais523: and if all that confusing terminology is just GENERALITY! 22:50:29 ais523: probably not. 22:50:40 the difficulty of creating a repo is quite large 22:50:49 yes, I say we go for "sg init" 22:50:50 I think it has some sort of repo repo you store your repos in 22:50:51 :P 22:51:06 ideally, you wouldn't have to think about all this advanced technology every day... 22:51:34 ais523: hmm, every repo needs to come with one commit there, because it's the branch everything is based on 22:51:42 I suggest it be authorless, and absolutely contentless 22:51:55 and then every store will include that object and maybe a few others if it needs extra ones to exist :) 22:52:11 hmm, shouldn't it be an empty directory? 22:52:14 -!- Phantom_Hoover has joined. 22:52:17 brb 22:52:27 also, I need to go home, now may be a good time 22:52:29 bye everyone 22:52:36 -!- ais523 has quit (Quit: Page closed). 22:53:22 Does he hate me that much? 22:56:21 you weren't supposed to suspect that 22:56:28 * oerjan is back to the future 22:57:30 elliott: The only acceptable directory name is +scape🐐 22:57:36 And if you can't read that ... neither can I, but still 22:57:39 * Phantom_Hoover goes forward to the past. 22:57:45 -!- Phantom_Hoover has quit (Remote host closed the connection). 23:09:16 -!- oklofok has quit (Ping timeout: 240 seconds). 23:10:57 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep). 23:15:25 -!- oklofok has joined. 23:18:37 okokoko 23:19:22 oklopower! 23:27:03 -!- impomatic has quit (Quit: ChatZilla 0.9.86 [Firefox 3.5.16/20101130074636]). 23:33:12 Do you have any idea or comment or collaboration or anything about TeXnicard? Should I create a IRC channel on my server for this purpose? (Remember to FLUSH the channel afterwards if you want to ensure your question/comment is not lost due to power failures!) 23:40:25 hmm, hg log -r 'limit(sort(all(), -rev), 4) and not merge()' does the same thing as hg log -l 4 -M, which isn't what i want 23:40:29 Dear god it has Python in it. 23:40:48 zzo38: erm I don't believe you can FLUSH an IRC channel 23:41:30 elliott: On most IRC servers you cannot. On CthulhuIRCd, you can FLUSH an IRC channel. 23:41:39 this is _zzo38's_ IRC channel we are talking about, it's ... right. 23:41:49 ah. 23:42:01 in other words, it's not IRC :) 23:43:17 elliott: It is IRC, it is just non-standard. Commands like NS and CS supported on Freenode are not standard IRC commands either. 23:44:41 -!- FireFly has quit (Quit: swatted to death). 23:44:58 (And I have no need to support syntactically incorrect commands in my server.) 23:46:54 elliott: +scape🐐 23:47:27 Gregor: Is 🐐 a goat? :p 23:48:43 oerjan: Why do you want to support syntactically incorrect commands in your server? 23:50:14 oerjan: ...:D 23:50:18 -!- sftp has quit (Remote host closed the connection). 23:50:23 oerjan: what did you do 23:51:19 ugh, I hate libraries whose manuals are PDFs 23:51:30 (or postscripts or dvis, before zzo38 mentions it :P) 23:52:59 zzo38: um i'm pretty sure i never said i wanted that 23:52:59 🐐 - "U+1F410 GOAT (eighth of the signs of the Asian zodiac)" 23:53:05 Not that I have in any of my fonts either. 23:53:33 oerjan: you didn't ctcp him or anything? 23:53:40 oerjan: WHY DO YOU WANT TO KILL BABIES 23:53:41 Sorry, "eighth of the signs of the Asian zodiac, used in Vietnam"; was reading the RAM instead. 23:53:51 elliott: BECAUSE THEY'RE SO TASTY 23:53:54 fizzie: rams and goats, what's the difference 23:54:07 zzo38: why do you think oerjan wants to support syntactically incorrect commands in his server? 23:54:10 elliott: The difference is that they use the GOAT in Vietnam. 23:54:23 elliott: Because some people do. 23:54:31 ALSO THEY SCREAM TOO MUCH 23:54:35 zzo38: what? 23:54:56 elliott: Well, it seems common. 23:55:00 zzo38: (for some X in People, WantsSyntacticallyIncorrectCommands(X)) => WantsSyntacticallyIncorrectCommands(oerjan)? 23:55:04 i... think not 23:55:09 U+1F47D EXTRATERRESTIAL ALIEN, right there between BABY ANGEL and ALIEN MONSTER. 23:55:17 zzo38: mind, I do want syntactically-incorrect commands in my IRC servers. 23:55:24 (The "miscellaneous symbols and pictographs" block sure is the best.) 23:55:32 elliott: Why? 23:55:42 zzo38: because they're convenient. 23:56:18 elliott: I think they still should be made syntactically correct even if it is going to be convenient! 23:56:31 zzo38: not possible, with existing clients 23:57:02 fizzie: *EXTRATERRESTRIAL 23:57:07 elliott: It is possible with my client, if your client doesn't do that, it is partially broken. 23:57:19 zzo38: yep, but I don't like your client, and I like the client I use 23:57:35 elliott: Can't you correct the client you use then? 23:58:01 zzo38: no, I use my distribution packages for convenience. 23:58:07 oerjan: EXTRATASTY. 23:58:10 ooh, cpressey linkified feather on the wiki. i think this means we are all doomed. 23:58:13 zzo38: correcting them brings me no benefit, is a lot of effort, and I'd have to update it for each new version of my client. 23:58:22 oerjan: that's not allowed! 23:58:31 ais has said he won't create a page until it's ready 23:58:38 and putting intentional redlinks there that won't be filled for ages is just silly 2010-12-14: 00:00:34 Why is it silly 00:00:59 elliott: well it is clearly a link to the FUTURE 00:01:10 Deewiant: because it's an empty promise? 00:01:16 it's not going to be a useful link for ages, so it's rather pointless 00:01:53 elliott: Your IRC client must have some way to enter another command to IRC server though, it depends on the client. The FLUSH command I implemented can take only one parameter anyways. 00:02:45 The cost of linkifying is low compared to the potential uses; it might be unlinkified for a long time after the page goes up, which is a greater loss 00:04:11 * oerjan ponders making a joke page for Feather 00:07:27 '''Feather''' is like... ''whoa,'' man... 00:07:35 Deewiant: RED IS UGLY 00:07:36 * oerjan is writing now 00:07:47 elliott: Use custom CSS. 00:07:53 Deewiant: ;_; 00:07:58 oerjan: psht, if you weren't an admin i'd ask for it to be deleted :D 00:09:09 i _am not_ an admin 00:09:49 oerjan: oh, indeed :D 00:11:10 hm how many characters do you need to store an sha512 digest 00:11:24 64, it seems 00:16:24 Is there anything wrong with the C-LONG beer program? 00:18:14 And do you have anything to say about TeXnicard anyways? 00:20:41 elliott: that was some fast editing 00:21:15 oerjan: i just clicked the red feather link and saw you'd already created the page :) 00:21:17 pure coincidence 00:21:24 one might even say ... SYNCHRONICITY 00:21:30 * elliott gets switten 00:21:50 (those who are swatted are switten) 00:22:12 elliott: heh. but you managed to do it between me saving the page and refreshing Recent Changes 00:22:19 heh 00:22:29 which must have been less than half a minute 00:38:53 -!- Sasha2 has quit (Read error: Connection reset by peer). 00:38:59 -!- Sasha has joined. 00:45:00 this reminds me of mel brooks's luggage in space balls: http://www.buzzfeed.com/gavon/top-25-gawker-passwords 00:47:33 -!- Wamanuz has quit (Ping timeout: 250 seconds). 00:47:34 Heh... Wonder why ping times on this LAN link are so asymmetric and growing: In the start the ping times were about 0.5ms and 0.6ms. Now those are about 11.0ms and 1.7ms (resp.) 00:49:16 quintopia: "Top 25 Gawker Passwords"? Seriously? 00:49:29 If writing "Top" and then a number was banned on the internet, I would be a happy man. 00:49:38 Ilari: gravitional time dilation. check if one of the servers has become a black hole 00:49:49 oh wait 00:49:51 it's literally, most popular 00:49:54 not "best" :D 00:49:58 heh 00:50:04 Aren't pings round trip times? 00:50:34 divided by 2, usually 00:51:07 Anyway, there's factor of ~6 difference in round-trip times... 00:51:40 And variability between pings is very small... 00:52:11 quintopia: erm are you sure ping times are divided 00:52:43 quintopia: they're not, since they're round-trip times 00:52:53 not sure why you said they were divided by 2. 00:53:26 It isn't time measurement drift: Starting another ping shows the same kind of RTTs. 00:53:31 quintopia: ? 00:54:36 Actually, both times grew at start, but now that lesser time appears to have reached saturation whereas the bigger one continues to increase... 00:56:44 Also, pings to IPv6 address of the same host are fast (~0.6ms). 00:59:04 Gregor: http://sprunge.us/JYDZ Please tell me how silly I am. 01:00:16 BTW: IPSec slows down RTT by about 0.3ms. :-) 01:04:36 elliott: i misremembered, i guess 01:04:43 ok 01:06:47 => IPSEC doubles the latency for me... :-) 01:06:47 -!- Sasha has quit (Read error: Connection reset by peer). 01:07:11 -!- Sasha has joined. 01:16:01 elliott: How close are you to the batsman? 01:16:08 zzo38: I am the goddamn batsman. 01:16:33 elliott: The closer you are to the batsman, the more silly you are. 01:17:05 zzo38: Such a Joker. 01:17:15 Must ... kill ... everyone ... 01:18:29 Gregor: wat 01:18:37 elliott: Two or four jokers, please? 01:19:31 Gregor: wat 01:20:25 -!- poiuy_qwert has joined. 01:20:55 -!- Mathnerd314 has joined. 01:23:36 What's the minimum worst case bound for number of UTF-8 characters required to store SHA-512 hash? :-) 01:24:57 Ilari: 64, surely 01:25:02 Ilari: if they're all in ASCII range 01:25:25 Ilari: well, presumably you mean the actual raw hash in base 256 01:25:26 but maybe not 01:26:55 Vorpal: these look nice: http://www.retributiongames.com/quandary/ 01:27:59 Vorpal: heh i like this: http://www.minecraftforum.net/viewtopic.php?f=25&t=46707 01:28:12 Please read this and tell me how crazy I did this: http://zzo38computer.cjb.net/textfile/miscellaneous/computer_cricket 01:30:19 Ah, not UTF-8 characters, but UTF-8 bytes. It seems the number is 72, 73 or 74. 01:30:52 The FPGA is no good unless there is sufficient public information available to create and upload the files to the FPGA without using any software you didn't write. 01:31:04 * oerjan thinks "minimum worst case" looks a _teeny_ bit oxymoronic 01:37:16 zzo38: methinks many people would disagree ... 01:38:19 elliott: Why? 01:38:29 because it's silly to say that? 01:38:43 elliott: Why? 01:38:57 zzo38: because FPGAs are useful even without meeting that condition 01:39:49 But it is better if it does meet the condition I wrote. 01:40:29 I love not studying for finals. 01:40:57 pikhq: "Laziness + weak hash tables + dynamic scope + side effects = heisenbug. Made a race condition look like an off-by-one error." 01:41:03 pikhq: Anyone who can combine these things is a god among men. 01:41:13 (And then FIGURE OUT what a bug involving them is.) 01:41:22 Did you read my other message? Do you think the umpire is really a vampire? 01:41:23 elliott: Oh holy mother of god. 01:41:33 pikhq: Indeed. 01:52:36 pikhq: Please recommend me an alternative to /r/programming that isn't Slashdot. 01:54:58 -!- quintopia has changed nick to RadioBotStreams. 01:55:04 #esoteric 01:55:27 -!- RadioBotStreams has changed nick to quintopia. 01:55:56 yeah pretty much #esoteric 01:56:41 yeah, but I generate most of the links in #esoteric... from /r/programming :) 01:56:46 I want something where I don't have to do the filtering work, dammit! 01:58:04 you are looking for programming-related news links? 01:58:36 quintopia: pretty much... although more a CS bent 01:58:41 but yes, programming links. 02:00:06 That minimum worst case is actually well defined. Consider all functions that map all 2^512 SHA-512 hashes to UTF-8 strings. For each function f, there is maximum number of bytes in resulting UTF-8 strings (L(f)). Now what is the minimum of L(f) over all possible choices of f? 02:01:51 elliott: start going to conferences :P 02:02:31 quintopia: that costs rather more money than the £0 I currently spend on programming links, involves a lot more travelling that probably doesn't fit into my life, and involves a lot more boredom and time passing, too 02:02:37 It is at most 74 because one can split 512 bits into 74 blocks of 7 bits each, and one can encode each block using a single ASCII character (which is subset of UTF-8). 02:02:54 elliott: but you'll always be on the bleeding edge of CS news 02:03:20 quintopia: i can get the same from reading random arxiv papers, I want a filter, dammit 02:03:39 (more seriously, there aren't many places out there where you don't have to separate the signal from the noise yourself...even conferences have some crap) 02:04:08 The lower bound of 72 comes from the fact that entropy of UTF-8 is ~7.1756 bits per byte, giving lower bound of ~71.353 bytes (which rounds up to 72 bytes). 02:04:30 quintopia: yes, but /r/programming is significantly worse than it used to be. 02:05:52 elliott: figure out who is making it worse and get them kidnapped by ethiopian pirates? 02:06:25 your solutions, always so practical. 02:07:25 i wonder... 02:09:17 what 02:10:11 elliott: news.ycombinator.com? 02:10:48 Okay, I computed the exact low bound: 73. 02:10:48 quintopia: i know of it. 02:10:58 how is it? 02:11:05 Quadrescence: sure, it is generally better than reddit -- but on the other hand, it's coated with the startup mindset 02:11:09 ugh *quintopia: 02:11:31 quintopia: meaning, lots of stupid business articles I don't care about, lots of rubbish startup-related things I don't care about, and more links than I'd like to WEB 2.0 crap 02:11:36 (WEB 2.0 is shouted there.) 02:12:30 "Facebook intern visualizes friendships, draws world map" "HN: We're starting a "Move to Silicon Valley" wiki. We could use some help." "The Anatomy of a Perfect Landing Page" "Commute to work like a boss, fly there" <-- first things on the current front page that i really don't care to see 02:12:37 quintopia: i mean, the programming links are better than reddit's. and the comments too. 02:12:54 quintopia: but there's more completely-unrelated-to-programming crap than /r/programming, and it's more irritating than reddit's non-programming crap 02:13:02 elliott: write a simple software filter on top of their rss feed :P 02:13:21 quintopia: unfortunately i have not yet written a program to classify the topic of statements from their text by interpreting them 02:14:15 i know someone who has. he implemented it from another paper, and is sending me a writeup on wed. 02:14:51 classifies with 97% accuracy in a 3-fold cross-validation 02:15:56 quintopia: "Commute to work like a boss, fly there" -- how on earth would you classify this is "non-programming" 02:16:10 it's near the level of AI to identify that as non-programming without also filtering out a lot of programming links 02:16:58 well, you'd need to look at the actual article 02:17:08 it takes a certain number of features 02:17:30 quintopia: i doubt i could get past a paywall. 02:17:30 ~100 words is usually enough 02:17:43 quintopia: you realise that classification algorithms are not a new thing? 02:17:50 elliott: could you get past a paywall anyway? 02:17:55 they won't categorise Hacker News for me. 02:18:04 quintopia: i'm saying that it's pointless mentioning it without linking the paper 02:18:17 no, but if you take a significant subset of HNews and classify it manually, then they can 02:18:36 For SHA-256, the similar number is 37. And for Skein-1024, 144. 02:19:03 oh, you misunderstood me 02:19:07 Ilari: what about cubehash :) 02:19:11 elliott: So have you renamed it to scape🐐 yet? 02:19:15 quintopia: I did? 02:19:16 Gregor: nope! 02:19:25 elliott: DOOD WHY NOT 02:19:32 i meant, your learning algorithm would need to look at the actual article linked from HNews in order to get enough data to classify 02:19:35 Gregor: VARIOUS REASONS 02:19:37 quintopia: oh. 02:19:44 quintopia: that would eat my bandwidth :) 02:20:04 ...how often do new articles get posted? 02:20:14 looks like at most every 10 min 02:20:30 quintopia: way more often than that, they just don't all get promoted to the front page 02:20:38 oh 02:20:39 see /newest 02:20:47 quintopia: i don't want it using my bandwidth when i'm not viewing it, anyway! 02:20:50 elliott: TOO VARIOUS IF YOU ASK ME 02:20:53 so it'd have to do it all at once --> slow 02:20:58 Oops, 36 (256 bits), 72 (512 bits) and 143 (1024 bits)... :-/ 02:21:00 Gregor: maybe if you write some code for it i'll CONSIDER it 02:21:24 elliott: best to have it hosted on a remote server then :P 02:21:33 quintopia: or just keep reading reddi 02:21:34 t 02:22:19 elliott: How about if I just register goatpettingzoo.com and don't put goat porn there? 02:22:30 elliott: does that mean you're gonna stop whining about /r/programming's slow decline? 02:22:34 Gregor: X-D 02:22:49 quintopia: can you link to clog log dates when i have whined about it? 02:22:56 OH RIGHT there's actually only one and it's today. 02:23:07 easy enough to link then :P 02:23:49 but complaining about something when you're not willing to work to improve is useless even if it's only once 02:24:02 quintopia: what am i expected to do, start my own fucking site? 02:24:11 i said that /r/programming is going to shit and *asked for alternatives* 02:24:11 :D 02:24:12 please? 02:24:25 no, i already have a design for a reddit-based site and it relies fundamentally on nobody knowing about it 02:24:28 yes, but there are no alternatives :P 02:24:29 *reddit-like 02:24:35 quintopia: then just say that? 02:24:42 quintopia: you whine about me whining way more than i actually whine 02:25:05 unlikely 02:25:22 quintopia: well, it's the same order of magnitude 02:25:47 Do you know what yakitori penalties are? 02:26:03 Restricting to BMP doesn't change the figures (36/72/143). 02:26:40 Ilari: why on earth are you calculating this :) 02:26:49 Just for fun... :-) 02:27:23 And it is considerably easier than computing the exact expression for the entropy of UTF-8 bytes. :-) 02:28:16 Ilari: What is the entropy of UTF-8? 02:28:19 Since you need to solve one root of 4th degree polynomial (that doesn't have rational root) for that... 02:29:02 Ilari: BAH! Throwing things at Wolfram Alpha solves all problems. 02:29:08 ...just expressing the polynomial and saying which root it is would be an exact expression, nay? 02:30:33 The polynomial is x⁴-128x³-1920x²-61438x-1048544=0 and the root in question is the root in the interval [128,256]. 02:32:25 Take base 2 logarithm of that and you get the entropy in bits per byte. 02:32:41 144.56765801397 02:33:03 oerjan: fuck you, i was just doing that :) 02:33:05 OK. 02:33:07 "solve x⁴-128x³-1920x²-61438x-1048544=0, 128 <= x <= 256" 02:33:08 wolfram alpha 02:33:10 :P 02:33:29 elliott: i happened to have a src0 function in one of my haskell files 02:34:15 Ilari: 7.1756 bits of entropy per byte 02:34:18 oerjan: ha i did the last step before you 02:34:37 elliott: only because i didn't even try, PHHH 02:34:39 Can anything have negative or complex number entropy? 02:34:45 or is that PPPH 02:35:00 oerjan: what sound are you trying to express :P 02:35:02 zzo38: not in this sense 02:35:02 zzo38: no. well negative maybe. 02:35:10 if it's a black hole, say :D 02:35:11 oerjan: No, it is PPHHHPHPHHHPPHPHPHPHHHPPHPHPHPPHPHPHPHPPHPHPHPHPH 02:35:37 is it called a raspberry sound? 02:36:11 oerjan: "phhhhhhhbt" 02:36:13 one would think 02:36:13 What is the sound of one raspberry clapping? 02:36:19 http://en.wikipedia.org/wiki/Blowing_a_raspberry 02:36:25 zzo38: DEEP 02:36:36 oerjan: phhhhhhhbt 02:36:38 i'd go for 02:37:13 wow. someone sold a web app for $350? lol 02:37:21 quintopia: BIG BUX 02:37:32 quintopia: i was offered IIRC $20 for the source to my digg#1 site :P 02:37:51 zzo38: although physically entropy might very well be negative given that afaik the zero point is an arbitrary choice 02:37:59 (this being before digg went to shit... well ok it had gone to shit but not as much as it have now) 02:38:11 but informational entropy is not that way 02:38:46 oerjan: But what I mean is, can negative informational entropy have some meaning? 02:38:47 the macroscopic thermodynamic version of entropy only speaks of changes in it, not an absolute scale, iirc 02:39:12 i don't know 02:39:18 Make a esolang with negative (or complex number) informational entropy. 02:39:44 -!- daniel has joined. 02:40:15 Please tell me what should belong in the "Multiball mode" section and "Alien abduction" section, and what things are wrong with the "Physics" section. 02:40:19 i know that entropy for FSA's is always non-negative, since it's a solution of a non-negative matrix maximal eigenvalue 02:40:55 oh god http://c2.com/cgi/wiki?ConversationalChaff whoever wrote this is a horrible person and knows way too much about people :) 02:41:34 oerjan: Would a negative entropy esolang have to be uncomputable to work? Or not? 02:41:51 -!- poiuy_qwert has quit (Ping timeout: 260 seconds). 02:42:09 oerjan: and why do you want to include syntactically invalid commands in your IRC server? 02:42:11 oerjan: the babies demand to know 02:42:25 -!- poiuy_qwert has joined. 02:42:45 http://en.wikipedia.org/wiki/Blowing_a_raspberry 02:42:46 zzo38: i don't think uncomputability helps, really 02:42:50 I hope the raspberry at least buys you dinner. 02:43:05 * oerjan swats Gregor -----### 02:43:07 oerjan: OK. 02:43:40 you'd rather need some esoteric concept of information to calculate the entropy of, i think 02:44:22 there _is_ of course such a thing as quantum information theory which i know almost nothing about, i don't know if it has any nonnegative entropies 02:44:56 oerjan is quantum 02:45:05 elliott: the babies cannot demand anything, i ate them all 02:45:12 oerjan: WHYYYYYYYYYYY 02:45:27 i already _told_ you they were tasty 02:45:49 Does the people who wrote the RFC of IRC know why? 02:46:05 zzo38: yes. 02:46:07 undoubtedly. 02:46:31 zzo38: i would be surprised if they even were aware of my existence 02:46:52 oerjan: THEY SEE EVERYTHING 02:49:27 elliott: Do they see my IRC server? 02:49:46 Yes. 02:50:20 -!- daniel has quit (Quit: WeeChat 0.3.2). 02:50:26 Do they see invisible people? 02:51:04 http://en.wikipedia.org/wiki/Linguolabial_consonant 02:51:33 (the r proves IPA has a symbol for _everything_) 02:53:04 Now make a language that has all the sounds of IPA, and a few new ones that are impossible for any people to ever speak. 02:53:38 oerjan: i would like to meet someone who can pronounce all of IPA 02:54:14 you don't say 02:54:14 elliott: Do you even know of any such people? 02:55:00 zzo38: no, i'm not sure it's possible :) 02:55:21 there's probably two sounds in there that are impossible to pronounce with the same mouth, like it can only learn to use one and then it can't do the other 02:55:22 or something 02:57:29 Make the game with a monster with two mouth 03:11:11 -!- wareya has quit (Read error: Connection reset by peer). 03:13:37 -!- zzo38 has quit (Quit: Terminal fell off). 03:14:28 -!- elliott has quit (Quit: Leaving). 03:16:00 -!- wareya has joined. 03:28:01 In other news, AIDS has been cured. 03:31:11 cool 03:34:43 was it money? 03:39:13 http://www.cureaidsinfo.com/ <<< oh so actually it was done in the 80's already 03:39:49 and apparently, once you've cured your aids at home, you can take up a new hobby & learn a new language 03:40:34 oklofok: Bone marrow from someone immune to it! 03:40:35 -!- Iwnda01 has joined. 03:40:56 Aaand Pidgin is crashing. 03:41:04 In its JSON parser‽ 03:41:07 Why does it have one? 03:42:20 pikhq: that's not news 03:43:08 oerjan: No, but seriously. AIDS has been cured. 03:44:09 ...more than one person? 03:44:44 not to butt in but, there is no cure for aids. 03:45:25 argh! 03:45:28 oerjan: No, but only due to the expense. 03:46:03 It's fucking hard to hunt down a bone marrow donor that is genetically immune to AIDS, and this happened by chance. 03:46:12 Iwnda01: Yes there is. 03:46:12 not true. it's because HIV morphs so often it's apparently impossible to kill. 03:46:30 Iwnda01: do you even know the case we are talking about? 03:46:42 no i suppose i dont. 03:46:48 this would all be news to me. 03:46:49 Iwnda01: Bone marrow transplant with someone actually *immune* to the virus. 03:47:01 Iwnda01: Suddenly, all the immune cells in that person's body are immune to the virus. 03:47:06 And so HIV goes away. 03:47:10 Poof, cure for AIDS. 03:47:18 which person 03:47:53 There are people genetically immune to AIDS 03:47:53 He was named only as "the Berlin patient" in the /New England Journal of Medicine/ and /Blood/. 03:47:58 and how would we find out if they are immune without infecting them and/or possibly killing them in the long run 03:48:03 It's genetic 03:48:07 you can devise a simple test 03:48:24 pikhq: i am pretty sure i saw a reddit post about him giving an interview under the full name 03:48:28 oh i see, remove the fluids and test out of the body 03:48:55 well he's got a trillion dollar body if he lives through all of the operations. 03:49:09 it's not one person 03:49:17 Iwnda01: About 1% of Caucasians are immune to it, actually. 03:49:25 amazing. 03:50:05 that's great news 03:50:14 are they making any headway with it? 03:51:03 has anyone been cured? 03:51:13 Research on easier/cheaper ways of doing it are in progress. 03:51:39 And yes, a single person, who by *chance* needed a bone marrow transplant (leukemia), and his donor was immune to AIDS. 03:51:42 so we can finally have start having unprotected buttsex with strangers 03:51:44 http://www.aidsmap.com/page/1577949/?r=1 is the link currently on reddit 03:51:44 As I said earlier. 03:51:54 as a species 03:52:27 oklofok: that's looking at it with a hawks eye 03:52:34 oklofok: well you'd need to find an immune bone marrow donor first 03:52:59 Iwnda01: i think you may not be acquainted with oklofok's particular brand of humor 03:53:04 not really, you have like 50 years to do that once you get the virus 03:53:19 no i totally get him. i was just seeing which he was 03:54:04 oklofok: yeah but what if there _aren't_ any? compatible donors are probably rare, immune people are rare... 03:54:06 butt sex for everyone 03:54:11 who would want it... 03:54:38 actually this one time, doctors told me i absolutely must have chlamydia, but then turned out i didn't; my conclusion is i'm immune to all std's 03:54:57 oklofok: you're in tall cotton 03:55:13 Iwnda01: what does that mean? 03:55:18 I, oklofok, am also the king pin. 03:55:46 i don't get you at all 03:56:23 I guess I don't get you either 03:56:29 nice to meet you 03:56:30 oerjan: Uh, bone marrow donors are always compatible. 03:56:31 you can't not get me 03:56:37 oerjan: They start by removing your immune system. 03:56:38 pikhq: not in house 03:56:42 oh 03:56:58 The new bone marrow replaces it. 03:57:06 pikhq: oh they are? i guess that makes sense. 03:57:30 pikhq: in that case it should be possible to _grow_ immune bone marrow, shouldn't it 03:57:39 Possible. 03:57:41 i thought they stick a needle in the donor's back, take some shit outta there, and inject it in the other dude 03:57:45 stem cells? 03:57:45 poof done 03:57:51 Iwnda01: king pin? 03:57:52 Iwnda01: yeah 03:57:59 who else is the king pin? 03:58:29 oklofok: After irradiating & chemotherapying the receiver of the marrow to kill the bone marrow and the white blood cells. 03:58:33 will farrel 03:58:55 pikhq: have you even *watched* house? 03:59:10 because that sounds just crazy! 03:59:19 oklofok: I don't watch House, no. 03:59:33 oklofok: I prefer knowing how medicine actually works. 04:00:04 plus house has a terrible attitude 04:00:27 `addquote oklofok: I don't watch House, no. oklofok: I prefer knowing how medicine actually works. 04:00:45 249) oklofok: I don't watch House, no. oklofok: I prefer knowing how medicine actually works. 04:01:00 pikhq: what, you trust a dusty old ugly book more than SMART MEDICAL TYPE PEOPLE on tv? 04:01:24 judge not the book by its dusty ugly cover 04:01:41 oklofok: hey you cannot trust anyone who's been spending time with blackadder 04:01:44 oklofok: ^ This explains the entire American political, intellectual, and cultural climate. 04:02:09 but judge the book once you read it thoroughly. 04:02:16 i learn all my math on numb3rs 04:02:49 whats that oklofok 04:02:55 * pikhq se'hųku suru tiȳû 04:03:04 tijuu? 04:03:08 pikhq: words to live by 04:03:19 oerjan: More like words to die by. 04:03:30 "/me is in the middle of seppuku" 04:03:36 Iwnda01: show about... well no idea what but they have funny clips on youtube 04:03:53 ok words to live by, very briefly 04:03:56 sounds about right 04:03:58 :) 04:04:21 some sort of hacking stuff probably. 04:04:28 oklofok: Math. 04:04:34 oklofok: It claims to be about math. 04:04:51 pikhq: which means it's probably about arithmetic? 04:04:59 i'm sure it *claims* that 04:05:00 haha 04:05:04 show about aritmetic 04:05:06 oerjan: No, it's about BULLSHIT. 04:05:28 oerjan: Imagine if Treknobabble were done using mathematics jargon. 04:05:31 That. 04:05:31 * Iwnda01 installs tuxmath 04:05:37 "hey let's make a show where people do like REALLY BIG SUMS MENTALLY and all teh math ppl will luuuuurb it" 04:05:37 ah. 04:06:16 http://www.youtube.com/watch?v=O2rGTXHvPCQ Also, this. 04:06:24 "we have to calculate the topological invariant to find the kleene closure of this klein vierergrouppe!" 04:06:30 *gruppe or whatever 04:06:42 gruppe secks 04:06:47 "It's how hackers chat when they don't want to be overheard." 04:06:51 oklofok: hey no fair i was about to write some mathobabble myself! 04:07:07 you can still do it, it's funny twice 04:07:08 (it would, of course, take a *complete* moron to use IRC to be secretive.) 04:07:14 (SILC, perhaps, but IRC?) 04:07:33 Also, 1337. 04:07:51 SHIPPING CHANNELS IN THE OCEAN 04:07:57 that's actually the only clip i know 04:08:01 from the show 04:08:09 ...does 1337 have any interesting mathematical properties? 04:08:50 oerjan: No, it's an incredibly mundane substitution cypher. 04:09:33 "OMG OMG THIS WILL BE OVER IN A SECOND" "SCREENSHOT QUICKLY BEFORE THE INFORMATION IS GONNEEEE" 04:09:39 http://www.youtube.com/watch?v=0F3-j-GQcts&feature=related OH MY GOD THAT HURTS 04:10:05 !haskell [n | n <- 2:[3,5 .. 40], 1337 `mod` n == 0] 04:10:12 bah no egobot 04:11:12 `which factor 04:11:13 /usr/bin/factor 04:11:17 `factor 1337 04:11:18 1337: 7 191 04:11:41 NOT EVEN PRIME 04:11:55 pikhq: i'm so confused i don't even know if that was a correct description 04:11:57 hypothesis: 1337 is the smallest uninteresting number 04:12:01 :D 04:12:25 oklofok: It was a bizarre mangling of the Chinese Room thought experiment and the Turing Machine. 04:12:35 oerjan: Making it an interesting number. 04:12:37 yeah i'm still not sure what happened there 04:12:46 pikhq: that's the joke 04:12:48 pikhq: shush, you 04:12:58 the chinese room experiment is ... which is called the turing test 04:12:59 oklofok: EXPLAINING THE JOKE MAKES IT FUNNIER 04:13:04 pikhq: true 04:14:46 okay so yeah he just mentions perfectly programmed computer = turing test while explaining the chinese room experiment... i think 04:14:49 -!- Iwnda01 has left (?). 04:15:21 * oklofok looks for halting test clip 04:16:17 nope :( 04:16:33 * oerjan clips a halting test onto oklofok 04:17:11 the pun-isher strikes again! 04:17:52 I MOST DEFINITELY AM NOT ON STRIKE 04:18:35 trying too hard 04:19:14 http://www.youtube.com/watch?v=HCinK2PUfyk <<< "i doubt you studied it *the usual way*!" 04:20:46 oklofok: The pain! The agony! The wrong aspect ratio! 04:21:02 "math math math math math math math. now let my use my brain to calculate the probabilities." 04:21:33 i love this show, it's like watching puppies fighting to death 04:21:41 you know it's really wrong 04:21:43 but oh god 04:21:45 you can't stop watching 04:21:55 It seems to be so bad it's good. 04:34:24 okay i can't find any math related clips 04:34:28 maybe i should watch the whole show 04:34:50 the math guy has written articles in low-dimensional topology, so probably he talks about that stuff 04:35:26 yeah but only in a flat and linear way 04:36:16 noob, i work almost exclusively with 0 dimensional spaces 04:36:57 although i guess you did as well, but couldn't make a pun out of that 04:37:18 * pikhq prefers dealing with n-dimensional spaces where n is in N and less than 0. 04:37:21 i cantor i won't 04:37:28 (quick, someone make that make sense!) 04:37:39 there are many definitions of topological dimension 04:37:47 and i'm not sure any of them allow subzero dimensions 04:38:00 oerjan: was that yours? 04:38:01 oklofok: iirc many of them coincide for zero, though 04:38:05 yes 04:38:41 i know this fact very well because many of the ppl doing math in our uni are actually computer scientists, they don't even seem to care what the definition is, because they just work with 0 dim 04:38:47 well you can consider the empty set to have dimension -1 04:39:01 erm 04:39:22 with the recursive sphere definition at least 04:39:33 dimension = dimension of sphere + 1 04:39:37 for metrics 04:39:44 *metric spaces 04:40:37 what else is there.... d dimensions = open covers have a subcover where at most d+1 sets intersect at any given point 04:40:45 does it work with that... 04:40:54 yeah 04:40:56 perfectly 04:41:02 i think i'm getting an erection 04:41:17 -!- quintopi1 has joined. 04:41:21 i think i'm getting an erection 04:41:30 i believe that definition was the one used for the topological measures stuff 04:41:50 we used that in our ergodic theory seminar couple weeks ago 04:41:56 (you need dimension at least 2 for things to be non-trivial) 04:42:15 for showing something like topological entropy = sup of measure theoretic entropies for different measures 04:42:51 " (you need dimension at least 2 for things to be non-trivial)" <<< what do you mean? 04:43:23 i don't think that subcover thing is "trivial" for 1d 04:44:04 and for 0 it says that you can extract a clopen cover from any open cover... is that even true? 04:44:05 :D 04:45:01 i certainly didn't know that if it's true 04:45:26 oh 04:45:33 maybe it's for *refinements* 04:45:57 yeah obviously you can't always extract clopen covers 04:46:11 just take more than half the space in two open sets, but not all of it 04:46:17 then obv you need to take both, and get some overlap 04:46:23 for any definition of half 04:47:14 refinement being a family of open sets U such that each u \in U is a subset of an open set in the orig cover 04:47:36 -!- oerjan_ has joined. 04:48:13 also why am i here, i woke up at 5 so i could do some slides and then i just idle on irc 04:48:15 05:42 oerjan> at one time i _thought_ i had a proof that if you had dimension >= 2 then you _did_ have nontrivial topological measures but it didn't survive my blackboard demonstration :/ 04:48:20 05:44 oerjan> ...what does that entropy supremum (i think i recall the theorem) have to do with dimension... 04:48:34 with leasurely topology technobabble 04:49:06 erm what 04:49:17 okay what's your definition of topological measure 04:49:25 because zero dimensional spaces have very nontrivial measures! 04:50:15 ...i've explained it before, they're a topological generalization of lebesgue measures, which are only defined on open and closed sets 04:51:04 and which only need to be additive on partitions of the whole space into open and closed sets 04:51:26 you mean into clopen sets? 04:51:32 and not into either 04:51:33 no, either open or closed 04:51:35 okay 04:51:37 each set 04:51:43 erm 04:52:05 and only finitely many (although we have a theorem that countable also works) 04:52:11 so you say this thing is trivial for 0 dim and i assume the definition assumes a zero dimensional space :D 04:52:17 i'm smart ain't i :D 04:52:26 this thing is trivial for <= 1 dim 04:52:28 -!- Mathnerd314 has quit (*.net *.split). 04:52:28 -!- Sasha has quit (*.net *.split). 04:52:28 -!- fungot has quit (*.net *.split). 04:52:28 -!- oerjan has quit (*.net *.split). 04:52:28 -!- fizzie has quit (*.net *.split). 04:52:29 -!- Ilari_antrcomp has quit (*.net *.split). 04:52:29 -!- Ilari has quit (*.net *.split). 04:52:30 -!- HackEgo has quit (*.net *.split). 04:52:30 -!- Gregor has quit (*.net *.split). 04:52:32 -!- jcp has quit (*.net *.split). 04:52:33 -!- wareya has quit (*.net *.split). 04:52:33 -!- augur has quit (*.net *.split). 04:52:33 -!- pikhq has quit (*.net *.split). 04:52:33 -!- sebbu2 has quit (*.net *.split). 04:52:33 -!- Zuu has quit (*.net *.split). 04:52:34 -!- sshc has quit (*.net *.split). 04:52:34 -!- mycroftiv has quit (*.net *.split). 04:52:35 -!- quintopia has quit (*.net *.split). 04:52:37 -!- olsner has quit (*.net *.split). 04:52:38 -!- Slereah has quit (*.net *.split). 04:52:38 -!- myndzi\ has quit (*.net *.split). 04:52:39 -!- lifthrasiir has quit (*.net *.split). 04:52:39 -!- yiyus has quit (*.net *.split). 04:52:40 (by assuming you meant clopen partition) 04:52:48 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 04:52:53 that is, all the examples become lebesgue measures 04:54:02 -!- Gregor has joined. 04:54:02 -!- HackEgo has joined. 04:54:06 okay, but so what's the exact definition, any function to positive reals that's finitely additive on partitions into closeds and opens? 04:54:30 i'm sure you've explained this before, so sorry about having absolutely no recollection :P 04:54:32 also it should be continuous 04:54:45 both-continuous? 04:54:53 hmm 04:54:54 yes 04:54:57 the measure of an open set is the supremum of the measures of closed sets inside 04:55:00 -!- olsner has joined. 04:55:20 oh okay 04:55:28 -!- wareya has joined. 04:55:28 -!- augur has joined. 04:55:28 -!- pikhq has joined. 04:55:28 -!- sebbu2 has joined. 04:55:28 -!- Zuu has joined. 04:55:28 -!- sshc has joined. 04:55:28 -!- mycroftiv has joined. 04:55:35 the additivity means that the dual also holds 04:55:42 hmm 04:55:45 -!- jcp has joined. 04:55:51 finite measure? 04:55:56 yes 04:56:02 then i believe you but let's see 04:56:12 -!- Slereah has joined. 04:56:12 -!- myndzi\ has joined. 04:56:12 -!- lifthrasiir has joined. 04:56:12 -!- yiyus has joined. 04:56:17 yeah 04:56:19 obv 04:56:37 in the basic theory the space is compact, connected and locally connected 04:56:39 i don't know why i had to think about that 04:56:41 -!- poiuy_qwert has joined. 04:56:41 -!- Mathnerd314 has joined. 04:56:41 -!- Sasha has joined. 04:56:41 -!- fungot has joined. 04:56:41 -!- fizzie has joined. 04:56:41 -!- Ilari_antrcomp has joined. 04:56:41 -!- Ilari has joined. 04:56:43 *the whole space 04:56:43 -!- pikhq has quit (Excess Flood). 04:56:45 -!- pikhq_ has joined. 04:57:05 i almost never get to see such spaces 04:57:06 :P 04:57:14 oh and also hausdorff 04:57:20 sometimes they are connected, sometimes they are compact, but never both! 04:57:32 heh 04:57:44 wait connected doesn't imply locally connected? 04:57:48 -!- poiuy_qwert has quit (*.net *.split). 04:57:48 -!- Mathnerd314 has quit (*.net *.split). 04:57:48 -!- Sasha has quit (*.net *.split). 04:57:48 -!- fungot has quit (*.net *.split). 04:57:48 -!- fizzie has quit (*.net *.split). 04:57:48 -!- Ilari_antrcomp has quit (*.net *.split). 04:57:49 -!- Ilari has quit (*.net *.split). 04:57:50 -!- Slereah has quit (*.net *.split). 04:57:50 -!- myndzi\ has quit (*.net *.split). 04:57:50 -!- lifthrasiir has quit (*.net *.split). 04:57:51 -!- yiyus has quit (*.net *.split). 04:57:52 -!- jcp has quit (*.net *.split). 04:57:53 -!- wareya has quit (*.net *.split). 04:57:53 -!- augur has quit (*.net *.split). 04:57:53 -!- sebbu2 has quit (*.net *.split). 04:57:53 -!- Zuu has quit (*.net *.split). 04:57:54 -!- sshc has quit (*.net *.split). 04:57:54 -!- mycroftiv has quit (*.net *.split). 04:57:55 -!- pikhq_ has quit (*.net *.split). 04:57:56 -!- olsner has quit (*.net *.split). 04:57:58 -!- HackEgo has quit (*.net *.split). 04:57:58 -!- Gregor has quit (*.net *.split). 04:57:59 nope 04:58:00 i don't know what it means but 04:58:00 what the fuck is going on 04:58:00 i like it 04:58:23 -!- ineiros has quit (Write error: Broken pipe). 04:58:36 erm 04:58:49 i'd say locally connected is a very weird term for that 04:58:50 standard example is the space of {(x, sin (1/x)) | x > 0} union 0 x [-1,1] 04:58:56 -!- pikhq_ has joined. 04:58:56 -!- Ilari has joined. 04:58:56 -!- Ilari_antrcomp has joined. 04:58:56 -!- fizzie has joined. 04:58:56 -!- fungot has joined. 04:58:56 -!- Sasha has joined. 04:58:56 -!- Mathnerd314 has joined. 04:58:56 -!- poiuy_qwert has joined. 04:58:56 -!- yiyus has joined. 04:58:56 -!- lifthrasiir has joined. 04:58:56 -!- myndzi\ has joined. 04:58:56 -!- Slereah has joined. 04:58:56 -!- jcp has joined. 04:58:56 -!- mycroftiv has joined. 04:58:56 -!- sshc has joined. 04:58:56 -!- Zuu has joined. 04:58:56 -!- sebbu2 has joined. 04:58:56 -!- augur has joined. 04:58:56 -!- wareya has joined. 04:58:56 -!- olsner has joined. 04:58:56 -!- Gregor has joined. 04:58:56 -!- HackEgo has joined. 04:58:58 neighborhood basis of connected sets 04:59:06 connected, compact, but not locally connected 04:59:27 -!- sshc has quit (Max SendQ exceeded). 04:59:30 i proved that's connected but not path connected in topology 04:59:33 er, * x > 0 and x <= 1 04:59:39 otherwise it's not compact 04:59:41 iir 04:59:41 c 04:59:48 erm 04:59:54 yeah 05:00:02 it's not path connected obv 05:00:22 -!- sshc has joined. 05:00:22 indeed but it's not locally connected e.g. around (0,0) 05:00:23 but it's OBVIOUSLY connected 05:00:27 look i proved it again! 05:01:00 because you need the entire height of the curve to connect different parts of it 05:01:06 yeah 05:01:08 i get it 05:01:14 i think 05:01:38 i mean i get it intuitively, but i'll have to think about the defs a bit 05:01:55 -!- quintopi1 has quit (Ping timeout: 322 seconds). 05:01:56 -!- ineiros has joined. 05:02:26 right you can't get ANY open set around origin 05:02:29 that's connected 05:02:54 locally connected doesn't imply connected? erm. of course it doesn't, disjoint union 05:03:19 you know this conversation of ours would already make a pretty good tv show 05:03:38 >_> 05:03:52 i would watch that show 05:05:20 anyway the strange properties of these measures depends on it _not_ being possible to approximately partition any open set into small open or closed parts that you can add up 05:05:41 and then all the youtube comments would be like "lol that's SO inaccurate, what he's saying is so totally only true if the measure has no atoms!" 05:06:26 but dimension <= 1 is equivalent to saying every open covering can be refined into a partition of the space into open and closed sets 05:06:35 win 27 05:06:35 -!- sshc has quit (Read error: Connection reset by peer). 05:06:42 -!- sshc has joined. 05:07:24 (btw this theorem doesn't use any of the connectedness assumptions on the space) 05:07:38 the <= 1 one? 05:07:43 yeah 05:07:51 those are just needed to be able to construct examples nicely 05:08:22 hmm, i don't see why that thingie is true, but i suppose that's nontrivial? 05:08:32 okay if it's dimensions 0 and 1, then i'm sure it's nontrivial 05:08:48 because i don't know any properties those have others don't :d 05:09:02 take that usual refinement of a dimension <= 1 space, then by definition the open sets only intersect at most 2 at each point 05:09:04 actually 05:09:06 you're right 05:09:13 for this to be a great tv show 05:09:22 we need like a really stupid fbi guy 05:09:27 who asks stupid questions 05:09:46 "so you're saying a locally connected spaces is like a rabbit that sticks its head into a bush when it gets scared?" 05:10:10 argh 05:10:36 what? :D 05:10:42 that fbi guy 05:11:23 okay walk me through it, how exactly do you make the partition 05:11:28 erm 05:11:34 or wait a minute 05:11:55 now if you look carefully at this refinement, the points that are in two given sets are of course in the open set that is their intersection 05:12:11 take open cover's intersections with all others, plus it minus the union of all the others? 05:12:31 i guess not... 05:12:32 huh? 05:12:44 okay so walk me through it, how do you make the partition 05:13:19 on the other hand, the points that are in just _one_ given open set of the refined cover and not in any other, form a closed set 05:13:35 or continue your explanation whatever :D 05:13:37 (the complement of the union of the other open sets) 05:13:41 wait 05:13:50 are you explaining exactly this... 05:13:52 let's look! 05:13:57 but of course! 05:14:01 haha 05:14:09 i assumed you assumed i'd just see it 05:14:20 because it sounded so simple 05:14:33 it's not hard if you draw the sets on paper 05:14:53 and have like 3d diagrams 05:14:57 (of the refinement) 05:14:58 and flying numbers on the screen 05:16:07 " on the other hand, the points that are in just _one_ given open set of the refined cover and not in any other, form a closed set" <<< this was the part i didn't see, but yeah it's obvious now that you stated it explicitly 05:16:23 they form a bipartite graph, with the closed sets for the points in exactly one refinement set being one set of vertices, and the open sets for the points in _two_ refinement sets the other set of vertices 05:16:25 " (the complement of the union of the other open sets)" <<< and even more obvious after you gave the proof 05:16:44 and edges between sets that touch 05:18:06 hmm 05:18:19 that's true for all partitions gotten this way? 05:18:33 is that obvious again... 05:18:37 -!- quintopia has joined. 05:19:03 well of course it is 05:19:06 by definition of touch 05:19:29 wait 05:19:42 what's the definition of touch? 05:19:43 :D 05:19:47 well you could alternatively say edges between sets that come partially from the same original refinement set 05:19:50 * oklofok is the fbi agent 05:19:54 okay 05:20:03 but i believe that is equivalent 05:20:11 touch = their closures intersect 05:20:18 by "original refinement set" you mean "original set"? 05:20:25 oh alrighty 05:20:45 well we started with an arbitrary open cover and than used the dimension to refine it 05:20:51 oh indeed we did 05:21:04 *then 05:21:42 and then this refined cover pretty directly gives this graph of open vs. closed vertices 05:24:51 but erm so 05:25:35 ? 05:26:07 take [0, 1] with cover [0, 5), (0.4, 0.6), (0.5, 1], then (0.4, 0.5) and (0.5, 0.6) have intersecting closures even though both are intersection sets 05:26:36 what's that 5 doing there 05:26:47 haha 05:26:54 [0, 0.5) 05:26:58 5 was visiting his aunt 05:27:27 oh hm right 05:27:39 you only test open sets for touching closed sets 05:27:43 not other open sets 05:27:45 win 16 05:27:53 oh so then it's basically by def 05:28:02 coppro: are these some sorta election thingies 05:28:09 oklofok: no 05:28:19 i have no other guesses 05:28:54 common field sizes? 05:29:14 no 05:29:40 oerjan_: wait where were we going with this graph thing? 05:29:45 i'm a bit... distracted 05:29:51 i should prepare for this talk thingie 05:29:55 but here i am 05:30:30 well the graph is just a side thing 05:31:01 but the thing is, this allows us to partition the whole space into tiny open and closed sets 05:31:22 http://www.math.utu.fi/projects/jac2010/program.html <<< look i'm famous! 05:31:46 it certainly does do that 05:32:14 we had this really fun partition lemma in our seminar on beuhahrug spaces (i may remember the name wrong) 05:32:23 and if you make them small enough, the measure of any larger open set can be approximated as sums of tiny sets within... but in the limit this forces the measure to be a lebesgue measure. 05:32:42 okay 05:32:46 cool 05:32:50 I GUESS 05:33:07 this was whose def? 05:33:10 i mean 05:33:17 this topological measure thing 05:33:35 johan aarnes, the advisor of my collaborator alf rustad 05:33:58 originally he called it quasi-measures 05:34:04 right, guessed it was you ppl's or you wouldn't be the ones doing this basic research on it 05:34:13 or is it called basic research 05:34:21 fundamental essentials research 05:34:22 pretty much 05:35:47 i used to define a lot of different things (used to meaning it was last months theme) but in the end i just always realize it's a known concept in disguise, so now i just try to take concrete problems others have stated and solve them 05:35:58 month's 05:36:38 his original example of a quasi-measure was created as a counterexample to a conjecture 05:36:51 of course that only works if you're willing to go far enough that open problems become solvable :D 05:36:59 cool 05:37:16 yeah i guess that's the sensible way to come up with new things 05:37:27 mine is usually more like LET'S TAKE THIS RANDOM THING AND SEE WHAT HAPPENS 05:37:32 about the linearity of certain functionals on C(X) 05:37:43 okay 05:38:07 (the measures are equivalent to certain functionals that are almost, but not necessarily quite linear) 05:38:34 if they _are_ linear then they are lebesgue measures 05:39:03 hmm 05:39:32 i suppose a measure gives you the functional "integral" 05:39:33 ? 05:39:47 precisely! 05:40:00 how are they not linear 05:40:08 hmm 05:40:28 i know too little about this stuff 05:40:38 MUST 05:40:39 KNOW 05:40:40 EVERYTHING 05:40:53 http://en.wikipedia.org/wiki/Riesz_representation_theorem#The_representation_theorem_for_linear_functionals_on_Cc.28X.29 05:40:59 obviously i know that 05:41:01 theorem 05:41:07 * oklofok looks 05:41:07 ok then :) 05:41:19 i know the basic riesz repr theorem 05:41:35 that linear functionals are dot products 05:41:37 it's that linear <=> lebesgue, in our case 05:41:46 -!- NicolaeDebevec has joined. 05:41:57 or wait, Borel 05:42:37 however the "almost but not quite linear" 05:42:50 well i don't know what a "lebesque" measure is, as an adjective 05:42:53 -!- NicolaeDebevec has left (?). 05:43:01 a measure defined on... lebesque sets? :D 05:43:03 well 05:43:12 yeah i meant borel 05:43:15 yeah 05:43:16 k 05:43:26 What the fuck? 05:43:37 In the UK, you have to be over 18 to buy... Plastic cutlery. 05:43:45 for every function f in C(X), look at the sub-algebra C(f) generated by it. then the functional should be linear on it 05:44:17 * oklofok looks 05:44:30 pretty. 05:44:41 note that C(X) is _real_ functions. if we were looking at _complex_ functions, then indeed this requirement _would_ force the entire functional to be linear. i think this was an old theorem. 05:45:06 and the conjecture which aarnes disproved was that this would hold for real C(X) as well 05:45:21 oh the functional should be positive too 05:45:34 i think 05:46:12 the theory _has_ been generalized to signed measures/non-positive functionals too, in fact one of our articles was about it 05:48:07 oh reals okay 05:48:30 my thinking went C... durrr... complex. 05:49:13 you did such cool stuff 05:49:20 now C here is for continuous i think 05:49:22 *no 05:49:24 all my theorems are really boring in comparison 05:49:31 yeah 05:49:33 i'm aware 05:49:35 -!- pikhq_ has quit (Remote host closed the connection). 05:49:53 i'm aware that i also think that's where it probably comes from. 05:49:54 -!- pikhq has joined. 05:52:31 -!- poiuy_qwert has quit (Read error: Operation timed out). 05:52:54 *YES*. 05:53:05 how encouraging 05:53:19 There is a restaurant with ninja waiters. 05:53:21 YES. 05:53:49 but are they _french_ ninjas? 05:53:53 Sadly, no. 05:54:04 Halfway there, though! 05:54:07 * oerjan_ assumes pikhq got the reference 05:54:12 Of course. 05:54:21 Why else do you think I was going "YES" so much? :) 05:54:27 true, true 05:54:42 i didn't get the reference 05:55:24 pikhq: tell me something in japanese! 05:55:26 http://freefall.purrsia.com/ff1100/fv01076.htm 05:55:27 oklofok: You. Read Freefall. 05:56:05 oh that one, i recall seeing that furry chick 05:56:07 oklofok: あんた。フリーファル読め。 05:56:24 -!- poiuy_qwert has joined. 05:56:53 anta? 05:57:16 A more casual form of あなた. 05:57:24 i don't even completely get the sentence :( 05:57:31 "You. Read Freefall." 05:57:33 UNICODE ATTACK 05:57:33 freefall read "me" 05:57:35 oh lol 05:58:03 wait oklofok knows japanese? 05:58:05 もっと日本語が欲しいか。 05:58:06 we haven't done any of the short forms 05:58:12 the course is sloooooooow 05:58:16 oerjan_: He's taking a class. 05:58:20 oklofok: I *told* you. 05:58:31 shall is something more japanese 05:58:46 oklofok: Also, not doing the short forms of verbs first is a travesty. 05:58:57 pikhq: told me what? i got the sentence already if that's what you mean 05:59:11 oklofok: I told you not to take a formal class because it would be slow! 05:59:22 pikhq: i think so too, because i see them all the time and i understand nothing outside the class therefore 05:59:24 ah 05:59:50 oklofok: The thing is, the short forms of verbs are the *actual root forms*. The conjugation goes from there. 06:00:03 we just do masu 06:00:12 But nooo, classes insist on teaching the teineigo conjugations. 06:00:14 also we've only done like 70 kanji 06:00:25 (-masu, -desu, etc.) 06:00:31 so i don't even officially know the kanji for "read" 06:00:42 yeah we just do those 06:01:01 and no one fucking ever uses them, at least in the shows i've tried to start watching 06:01:08 See, that's horrifically wrong, and you will have to unlearn things. 06:01:13 :P 06:01:19 well i like a challenge! 06:01:22 The teineigo forms are very commonly used in normal Japanese, but *it's the wrong thing to learn first*. 06:01:46 (shows tend to use more casual Japanese than is otherwise normal, for a variety of reasons.) 06:02:02 alright 06:02:37 even the "quick japanese for business dudes" book does masu only, it just skips telling the basic forms of the verbs! :D 06:02:54 cuz it's faster to just learn masu and not ru + masu! 06:02:57 The worst part is, verb conjugation in Japanese is *really easy* if you start from the plain forms. 06:04:28 well, i'll probably take the second course anyway, it's not like i'll have enough free time next year to actually be able to study it on my own. 06:04:36 But no, they insist on using the teineigo forms first so that you'll be less rude if you somehow find yourself talking to someone in Japanese after 6 months of taking the class. 06:04:52 Even though by that point you'll have trouble saying anything at all because they suck so hard. 06:04:55 hopefully the unlearning i have to do occurs there 06:05:31 i think i could *easily* have a conversation about how good fish tastes. 06:05:38 sakana wa oishii desu yooo 06:06:05 i should learn to write japanese on the computer, maybe. 06:06:27 魚が美味しいですが、僕にはカレーが一番美味しい事だと思います。 06:06:42 sorry, that's outside my kanjibility 06:07:38 さかなが おいしい ですが、 ぼくには カレーが いちばん おいしい だとおもいます。 06:08:17 fish is good but you find curry the best 06:08:20 i don't get the last word 06:08:25 erm 06:08:26 And, yeah, if you keep up with the classes, you will be permanently illiterate. 06:08:33 the "datoo" 06:08:48 "da to omoimasu". 06:08:59 heh, probably. i'm not keeping up with the classes, i assure you 90% of our class couldn't read taht. 06:09:00 *that 06:09:42 what does "to" mean there 06:09:48 "as well as"? :P 06:10:05 Uh, it's a fairly complex particle. 06:10:16 that much i know... 06:10:27 But the sentence comes out as "Though fish is delicious, I think curry is the most delicious." 06:10:46 yeah 06:10:59 Seriously, you would be significantly better off spending all the time you would have on that class just watching anime without subtitles. *That alone* would be a massive improvement. 06:11:11 :) 06:11:13 yeah possibly 06:11:19 Assuredly. 06:11:24 but i don't find that as entertaining as a monotone lecture 06:12:10 hmm, anime without subtitles might not be such a bad idea, watching it with subtitles isn't doing me much good at least. 06:12:25 because after a few minutes i stop listening 06:12:32 Yeah, the point is to *not* cling to the language you're fluent in... 06:13:13 and still, for some reason i've always used subtitles for learning purposes. 06:13:31 i guess that's intuitive as well 06:13:46 if you're a robot 06:14:29 is "to" always used with omoimasu? 06:14:45 see i just know omoimasu from the dictionary... 06:15:08 i've never actually seen it in a sentence before 06:15:39 and why do you say boku *ni*? 06:15:53 is that also omoimasu's fault? 06:16:00 I'm... Not entirely sure, actually. 06:16:06 :P 06:16:19 The grammar of Japanese has gotten a bit automatic. 06:16:37 The "ni" got added because that conveyed the sense I wanted. Somehow. 06:17:35 It's kinda got a sense of "*But as for myself*, ..." in this context, I guess? 06:17:40 maybe it's a bit like "X ni aimasu", like me as a person 06:17:48 dunno 06:18:10 i just know it's a human postfix thingie 06:18:23 I suggest you just do Japanese often enough that everything happens without thinking about it. 06:18:29 as well as a couple (million) other things 06:18:43 OR HOW ABOUT I ANALYZE IT UNTIL IT GETS A RESTRAINING ORDER?!? 06:18:54 your way is good too. 06:18:57 No, don't. You'll never get good if you do that. 06:19:14 yeah, that was what the restraining order meant 06:19:15 :P 06:19:33 Much like you'll never get good at math by taking elementary/middle school/high school math courses. 06:19:34 well. actually it's not really a good metaphor 06:19:49 true. or even just by taking any courses. 06:20:17 You at least have a *chance* of getting good at math when you study for a math degree. 06:20:28 surely 06:20:47 prolly the highest chance 06:20:50 but still 06:21:14 But below college? "You, too, can learn how to do everything that we have calculators for, but didn't when the curriculum was designed!" 06:21:35 :D 06:21:49 (don't get me wrong, manual calculation is a nice skill and all, but it really doesn't deserve to be a focus of *12 fucking years* of education.) 06:22:11 and done completely wrong, too 06:22:38 well. i guess it's an okay way to teach it to people who don't want to learn it. 06:22:40 but other than that 06:22:45 The pacing on them is absurd. 06:23:58 Arithmetic should *not* take several years to teach. 06:24:48 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 06:26:30 it's true 06:26:49 -!- poiuy_qwert has joined. 06:28:26 And I'd like to beat whoëver designed the handling of fractions in primary education. 06:28:47 pikhq: May I join you? 06:28:52 coppro: Depends. 06:29:00 pikhq: I'm a math major 06:29:12 coppro: What are your thoughts on "improper" vs. "proper" fractions? 06:30:15 Oh, who am I kidding. I know your thoughts on them. "WHY THE FUCK IS THAT A DISTINCTION" 06:30:24 pikhq: my thoughts on fractions are: teach pure fractions first. decimal notation etc. can come later 06:31:01 improper/proper fractions is like 4 3/8 06:31:02 ? 06:31:06 vs 7/6 06:31:10 yes 06:31:24 it is not wrong to draw a distinction 06:31:29 i'm a math major and i totally think that's not a distinction, in most contexts. not this one. 06:31:41 it is, however, very very wrong to teach it so heavily like they do 06:31:49 coppro: The worst part is the notation used. 06:31:54 especially because the notation is 4 3/8 which later on means 3/2 06:32:02 2¾ looks to me like 6/4, not 10/4. 06:32:42 Because dammit, that's how it's used anywhere outside of elementary school. 06:34:02 Also strange is the insistence on things like using the LCD for adding/subtracting fractions with different denominators. 06:34:24 prolly, in elementary school, there should be separate classes for set theory, arithmetic, and problem solving 06:34:31 How often is it going to matter that you picked the *smallest* common denominator? 06:34:51 so that math could take 3 times more time slots 06:34:58 oklofok: :D 06:35:02 also set theory? 06:35:13 set theory is the most important thing in the world 06:35:29 yeah, I've just heard lots of suggestions about elementary school education 06:35:32 and set theory was never one of them 06:35:37 totally agree now that you think of it 06:35:44 we used to have that here, in the 70's or something 06:35:54 coppro: They tried it in the 70s. Problem: it was the same teachers. 06:36:06 the profs think those that was good, because students were not retarded back then, because of that 06:36:08 Y'know, the ones that think that calculus is the highest that math goes. 06:36:19 pikhq: oh, I had one of those in high school 06:36:25 unfortunately the ones that didn't become profs, and had normal idiots as teachers, probably didn't have the same idea 06:36:38 okay 06:36:39 what pikhq said. 06:37:45 i wouldn't exactly drop arithmetic out, at least the ppl who aren't going to learn anything interesting anyway learn to count their money :D 06:38:00 Probably the worst part of primary/secondary math education is that it hardly ever touches on something very fundamental to the practice of mathematics. 06:38:02 Logic. 06:38:13 +1 06:38:22 oklofok: Yeah, I don't think it should be *omitted*, I just think it's taught far too slowly and they put far too much of a focus on it. 06:38:31 * coppro needs to remember to follow up with the people here who go through math+teaching 06:39:11 coppro: what do you mean "go through"? 06:39:26 (sry i'm slow) 06:39:32 oklofok: math+teaching is a program here 06:39:37 ohh 06:39:50 we have something like that too, prolly every uni does 06:40:16 basically if you're good you do pure math, if you suck real bad you become a teacher 06:40:18 :D 06:40:31 i'm not being an ass, it really is like that 06:40:42 based on the ppl i know 06:41:05 The US system has you get a degree in education. 06:41:08 *not just being 06:41:14 Voila, you are magically qualified to teach everything. 06:41:20 hehe 06:41:24 Why? Because fuck making sense. 06:41:42 oklofok: Yeah, we have a degree in education too. Except this program is a BMath + BEd program, so the teachers come out knowing nonzero math 06:41:43 (in high school, you *might* start getting teachers with more qualifications. Maybe.) 06:41:44 i had this religious nut as a teacher through 3-6 grade who didn't know anything about anything 06:41:55 except god 06:42:00 she knew a lot of bible stories 06:42:09 pikhq: in my experience, it wasn't /quite/ so bad 06:42:12 but close 06:43:07 coppro: the teachers have to learn stuff like group theory here too, it's just they pass the relevant courses with bad grades and forget the few things they memorized rote after the course. 06:43:16 oklofok: blargh 06:43:36 there's also a pure math with teaching option program 06:43:49 what i said there is partly conjecture, have to admit 06:44:00 the requirements are actually far looser, but due to the requirement of pure math courses, basically no one goes through with it 06:44:09 someone who does probably knows math properly 06:44:15 but anyway, come on, they don't actually need it, the actual facts *will* be useless to them 06:44:30 it's the way of thinking that you'd like them to have 06:44:50 yeah 06:44:52 more importantly 06:44:55 you want them to pass it on 06:44:57 (they won't) 06:45:18 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 06:46:54 -!- poiuy_qwert has joined. 07:04:28 -!- Sgeo has joined. 07:04:36 I need help going to sleep 07:05:03 Should not have watched a let's play of an apocalyptic flash game 07:05:18 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 07:06:47 Gregor: I don't get tex4ht. :P 07:06:54 -!- poiuy_qwert has joined. 07:06:55 (It didn't render my bibliography!) 07:07:32 do i need to do latex bibtex latex before htlatex? 07:24:06 -!- oerjan_ has quit (Quit: leaving). 07:24:20 -!- Sgeo has quit (Read error: Connection reset by peer). 07:25:18 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 07:25:29 -!- Mathnerd314 has quit (Ping timeout: 260 seconds). 07:26:54 -!- poiuy_qwert has joined. 07:28:03 Gregor: oh nvm, doing all the latexing and bibtexing and whatnot made it render the bibliography right 07:42:13 I suppose seeing large amounts of string APNIC in listing of >250k blocks allocated last month is not a good thing... 07:43:12 Well, unless your sensibilities are warped certain way... :-) 07:43:16 -!- nooga has joined. 07:44:03 APNIC: 3.19 /8s in RIR Pool 07:44:17 About 1.2 /8s to go... 07:45:03 That is about 20 million IP addresses... 07:46:33 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 07:46:59 -!- poiuy_qwert has joined. 07:54:14 9 210 368 addresses allocated this calender month. If this rate continues, X day is somewhere mid-January... 07:55:24 -!- MigoMipo has joined. 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:05:17 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 08:06:54 -!- poiuy_qwert has joined. 08:09:54 Heck, if one makes pie chart of IPv6 pools + allocated, the slice for allocated isn't even visible... 08:10:06 (well, it is 0.027% anyway...) 08:20:42 -!- poiuy_qwert has quit (Ping timeout: 245 seconds). 08:22:42 -!- atrapado has joined. 08:36:29 -!- poiuy_qwert has joined. 08:44:45 -!- p_q has joined. 08:47:22 -!- poiuy_qwert has quit (Ping timeout: 245 seconds). 08:54:54 -!- HackEgo has quit (Ping timeout: 272 seconds). 08:59:36 -!- MigoMipo has quit (Ping timeout: 240 seconds). 09:23:17 -!- p_q has quit (Read error: Connection reset by peer). 09:24:53 -!- poiuy_qwert has joined. 09:55:11 Seems that elliott's favourite algorithm evar, CubeHash, is not going to become SHA-3: http://crypto.junod.info/2010/12/10/sha-3-finalists-announced-by-nist/ 09:58:44 Blake, Grøstl, JH, Keccak and Skein... 10:02:36 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 10:02:57 Seriously, that name containing the ø is pain to type... 10:03:01 -!- poiuy_qwert has joined. 10:04:01 CubeHash seemingly has too much symmetry anyway... 10:12:33 They say they'll publish a proper report on why each algorithm was accepted or not. 10:13:21 -!- zzo38 has joined. 10:14:22 One more year of public comments, and then deliberations in 2012; they're probably going to get the standard published just before the end of the world. 10:15:51 I want to make a program to handle compile errors of the C compiler, and then it changes the source-file and resubmit to the compiler. Example: #errorhandler no_member(register_value,is_number) _register_value_is_number 10:16:54 Another example: #errorhandler no_member(something_else,) _something_else_bind 10:20:03 You can have various kind, such as: no_member, wrong_initializer, pointer_expected, function_expected, no_label, link_error, ... 10:21:43 fizzie: What standard is that? Are you sure 2012 is the end of the world? 10:22:27 SHA-3, and no, but it's often said to be. 10:25:55 I have just finished playing a game titled "Square Circle". You do have to make a square circle in that game. They say you commit a crime that you are not allowed to know, but you can be freed if you make a square circle. But this is all a lie made up by the government. 10:51:52 nk 10:53:13 url? 10:53:17 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 10:54:38 -!- poiuy_qwert has joined. 10:54:40 That "2012" end of the world is a complete misinterpretation of Mayan mythology. The dates don't even start to require 6 symbols (that's sometime in 4xxx or so)... :-) 10:56:50 Apparently somewhere in end half of 48th centry... 10:59:27 Do you understand how to make a square circle? 11:01:35 The Unix time_t to beginning of that day (in UTC) is 88 447 248 000... 11:02:19 zzo38: no 11:03:02 -!- FireFly has joined. 11:06:05 Ilari: I don't see what 6 symbols would have anything to do with it; the world was also supposed to end in 2000 (also for non-y2k-computer-related reasons) and that's equally much just the most significant digit changing. 11:10:02 -!- poiuy_qwert has quit (Read error: Operation timed out). 11:14:54 -!- poiuy_qwert has joined. 11:15:11 Seems like the year mayan calendar starts to require six symbols to represent dates is 4772... 11:16:24 And yes, some writings contain six-symbol absolute dates. 11:16:25 nooga: Use these definitions of "square" and "circle": 11:16:26 Circle: A figure bounded by a circumference every point of which is equidistant from the centre. 11:16:30 Square: A figure bounded by four equal straight lines, each of equal length, such that the four angles between adjacent sides are also equal. 11:16:36 Straight Line: A one-dimensional figure forming the shortest path between two points. 11:16:47 Now can you figure it out? 11:17:08 Ilari: The dreaded Y4772 problem, for all of us who stupidly allocated memory space for only five symbols in our Long Count using date systems. 11:18:00 And then there's thing called distance dates. Some writings have absolutely huge distance dates. 11:19:22 Oh, and that day happens to be Friday the 13th... :-) 11:33:17 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 11:34:54 -!- poiuy_qwert has joined. 11:53:17 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 11:54:54 -!- poiuy_qwert has joined. 12:11:57 Oh, the more pessimistic estimate is back at January (30th). 12:13:17 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 12:14:55 -!- poiuy_qwert has joined. 12:23:14 -!- elliott has joined. 12:23:33 analysis of dynamic programs proves they're not dynamic at all: http://gnuu.org/2010/12/13/too-lazy-to-type/ 12:24:07 "I was under the impression most people understood that 99% of stuff that happens in Ruby or Python could be done with practically no modification in a statically typed language with good enough type inference. Still, it's only 99%. The remaining 1% would be a serious pain to do with static types, which is why even the stalwart of static types, Haskell, has Data.Dynamic in case you really do need to stick arbitrary types somewhere." 12:24:09 meanwhile, over on reddit, 12:24:25 someone defends people using something awkward and problem-causing in 99% of the cases and helpful in 1% 12:24:39 and then demonstrates a case that's helpful and robust in 99% of the cases and slightly fiddly in 1% 12:24:42 and doesn't realise it 12:25:23 01:55:11 Seems that elliott's favourite algorithm evar, CubeHash, is not going to become SHA-3: http://crypto.junod.info/2010/12/10/sha-3-finalists-announced-by-nist/ 12:25:31 fizzie: Yup, I found out N days ago. 12:26:00 (where N ≤ 4) 12:26:04 fizzie: It was probably just rejected because they felt "nervous" about it as they say was the case for some algos their press release; presumably djb's black clothes and piercing stare stabbed right into their soul. 12:26:16 Deewiant: Please, follow me around on the internet establishing upper and lower bounds for my placeholders. 12:26:41 02:04:01 CubeHash seemingly has too much symmetry anyway... 12:26:42 If you insist, N = 4. 12:27:03 Ilari: Sorry, but I don't consider a one-line IRC statement more reliable than an excellent cryptographer :-) 12:27:34 02:25:55 I have just finished playing a game titled "Square Circle". You do have to make a square circle in that game. They say you commit a crime that you are not allowed to know, but you can be freed if you make a square circle. But this is all a lie made up by the government. 12:27:34 What. 12:27:46 -!- poiuy_qwert has quit (Read error: Operation timed out). 12:28:23 03:17:08 Ilari: The dreaded Y4772 problem, for all of us who stupidly allocated memory space for only five symbols in our Long Count using date systems. 12:28:28 fizzie: Convince me not to write a library that does this. 12:28:37 Or, no, wait! Get ais523 to put it into AceHack. 12:28:43 Although he'll probably find that it /already/ has some of that. 12:28:45 02:25? Are you in the USA now? 12:28:57 He's in the army now. 12:29:44 -!- reiffert has joined. 12:30:39 Deewiant: http://tunes.org/~nef/logs/esoteric/10.12.14 12:30:50 But yes, I'm in the army, brutally mauling puppies. 12:31:10 Why I joined the /US/ Army to do that is anyone's guess. 12:31:12 Right, didn't notice you joined. 12:31:33 Deewiant: Or, in other words, no, but clog is in the US. 12:31:34 Army. 12:31:41 Presumably it mauls puppies in a brutal fashion over HTTP. 12:32:49 Alternatively, it doesn't denote AM/PM and is somewhere in Russia. 12:33:45 Deewiant: Thank you, I vastly prefer that interpretation. 12:34:00 Deewiant: Presumably "23:59:59" at the end of yesterday's log is 23:59 am. 12:34:44 Earth does have 4 corner simultaneous 24 hour days, you know. 12:34:54 -!- poiuy_qwert has joined. 12:35:10 Deewiant: Do you just have a bank of possible references to reply to almost any statement? :-P 12:35:12 [[1.5 Lua seems very verbose. Why isn't it like C? 12:35:12 The compactness of C (and the Unix environment in which it grew up) comes from the technical limitations of very clunky teleprinters. Now we have tab completion and smart editors which can do abbreviations, so it doesn't really take more time to type Lua than C.]] 12:35:20 I like how they don't bother mentioning *reading* the code at all. 12:35:37 Probably not "any", no. 12:53:17 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 12:54:54 -!- poiuy_qwert has joined. 12:55:29 `addquote i love this show, it's like watching puppies fighting to death you know it's really wrong but oh god you can't stop watching 13:05:37 -!- oerjan has joined. 13:06:14 -!- ais523 has joined. 13:12:23 ais523: hi 13:12:55 hi 13:13:17 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 13:13:19 ais523: btw, re: should the first revision contain an empty / directory, I'm not sure; shouldn't the first revision add that? 13:13:25 (to continue an hours-old conversation...) 13:13:39 ugh, [[cpio]] has an infobox just titled "cpio" that lists information for GNU cpio 13:13:45 systematic bias ahoy 13:14:54 -!- poiuy_qwert has joined. 13:17:41 ais523: hmm 13:17:43 ais523: "For instance, the size of the cloned git repository (all history, branches, tags, etc.) for the Linux kernel is approximately the size of the checked-out uncompressed HEAD, whereas the equivalent checkout of a single branch in a centralized checkout would be the compressed size of the contents of HEAD (except without any history, branches, tags, etc.)." 13:17:52 ais523: wikipedia suggests (to me) that git compresses everything 13:18:01 so perhaps it /does/ have multiple copies of Linux in there, just compressed 13:18:08 and probably compressed relative to each other, too 13:19:02 -!- poiuy_qwert has quit (Ping timeout: 245 seconds). 13:20:29 ais523: BTW http://projects.haskell.org/camp/ 13:20:38 ais523: a darcs offshoot research VCS 13:20:42 yet more competition to scout out :-P 13:20:49 Coq-formalised, too 13:25:19 GNU All-Permissive License 13:25:19 This is a simple permissive free software license, compatible with the GNU GPL, which we recommend GNU packages use for README and other small supporting files. All developers can feel free to use it in similar situations. 13:25:19 Older versions of this license did not have the second sentence with the express warranty disclaimer. This same analysis applies to both versions. 13:25:22 heh, gnu have their own ISC license 13:25:25 http://www.gnu.org/prep/maintain/html_node/License-Notices-for-Other-Files.html 13:26:15 Seriously, that name containing the ø is pain to type... 13:26:28 I HAVE _NO_ IDEA WHAT YOU'RE BABBLING ABOUT 13:27:01 maybe we'll just replace it with an o, Orjan 13:27:08 although that tl at the end doesn't look particularly norwegian/danish 13:27:11 * elliott gets swiftly banned 13:27:41 i already replaced it with oe, duh 13:29:49 oerjan: yeah but oe is actually vaguely accurate :D 13:30:10 oerjan: you'll be pleased to know i mentally pronounce your name as "oar-dshjan" 13:30:20 where dshj is a combination of dj and sh-n 13:30:36 oerjan: or on a good day, oer-JAn 13:30:42 where J is hard 13:30:45 you know what i mean 13:30:50 i already heard you pronounce it, remember? hm it seems you've deteriorated then 13:31:25 oerjan: yeah that was when I had any sort of pretence of being able to get it right 13:32:21 the j should definitely not be an affricate 13:32:27 The backscroll is too long to read, so this might have been mentioned already: but git initially just stores each file into a separate file named after the hash (so identical files are stored only once, but it doesn't use delta-based representation); then every now and then when it deciders to stick all the free-floating objects into a compressed pack file, there it uses both full files and deltas. 13:33:56 ais523: wow: " The license is a free software license, incompatible with the GPL. It permits relicensing under a certain class of licenses, those which include all the requirements of the Jabber license. The GPL is not a member of that class, so the Jabber license does not permit relicensing under the GPL. Therefore, it is not compatible." 13:34:09 ais523: is that the first license incompatible with the GPL /because it aims to be more compatible/? 13:34:19 (I don't know how it decides which files to store "deltified" and which "undeltified" -- Official Terms from http://www.kernel.org/pub/software/scm/git/docs/technical/pack-format.txt -- or whether it uses the revision-history relationships to look for candidates to deltify.) 13:34:28 fizzie: right, it's just scapegoat makes much less sense than git, so it's hard to understand how its storage model applies :D 13:34:44 fizzie: considering the whole thing's mostly based on patching patches. 13:35:28 I'm not going to get into your blameable-mammal discussion, it's already too long to jump in; that was just an aside. 13:36:20 fizzie: the basic problem is: checking out revisions is Hard when you have to trace N diffs for large N and reassemble the result. But storing multiple copies of the whole tree at periodic points sounds Big(TM). 13:36:40 fizzie: so the question was basically "wait, how come linux's git tree isn't very big at all really, but checkouts are still fast?". 13:37:06 ais523: clever: [[The reason that this is useful is for the "camp send" command. Rather than, as in darcs, having a separate concept of a "patch bundle", and a separate "camp apply" function to apply them, we can just use the "camp pull" command. We get the interactive patch selection etc for free.]] 13:38:58 Well, the way git decides what to pack and where is "magic": http://www.kernel.org/pub/software/scm/git/docs/technical/pack-heuristics.txt (that's convoluted IRC discussion about it is the official documentation, it seems) 13:40:14 fizzie: I've seen this file before... 13:40:17 s/'s// 13:40:56 -!- zzo38 has quit (Quit: Big Brother Is Phishing You.). 13:41:16 fizzie: But, summarise it for me: If we have a crazy recursive patch system that takes an awful long time to check out a revision, and we use this to store full copies of (things) at various (points in time), and (possibly compress them), can this give us fast checkouts without huge repositories? 13:41:21 SURELY AN EASY QUESTION TO ANSWER 13:42:21 With sufficient magic, I'm sure it can! (Read: I'm still not going to get involved here.) 13:42:39 fizzie: BUT IT'S THE BEST VCS /EVER/ 13:43:26 Yes, I'll be sure to try it out after you have made it. 13:43:56 fizzie: Are you *sure* you want to commit to that? 13:44:20 fizzie: You'll have directory trees cluttered up with +scapegoat! Can you even *talk* to a man who would name a directory entry that? 13:44:40 And really, immutable functional weenie storage -- do you trust people like that? 13:44:49 What, not going with Gregor's not-in-anyone's-font-ever GOAT? Well, still. 13:45:18 if mutation was good enough for darwin... 13:45:41 fizzie: Can you TRUST a program that, when discussed about, was so hopelessly generic that the command "sg give-me-a-reasonable-cwd" was discussed?! 13:45:42 Well, I would like my weenie to be safe... 13:46:00 YOUR WEENIE WILL NOT BE PROTECTED FROM THE GOAT AT ANY POINT IN TIME 13:49:36 -!- poiuy_qwert has joined. 13:59:13 -!- augur has quit (Remote host closed the connection). 13:59:56 -!- augur has joined. 14:02:31 -!- ais523 has quit (Remote host closed the connection). 14:04:42 -!- augur has quit (Ping timeout: 250 seconds). 14:04:57 -!- sftp has joined. 14:18:12 -!- nooga has quit (Ping timeout: 245 seconds). 14:18:17 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 14:19:54 -!- poiuy_qwert has joined. 14:22:16 -!- Wamanuz has joined. 14:37:22 -!- poiuy_qwert has quit (Ping timeout: 245 seconds). 14:41:56 -!- augur has joined. 14:43:38 -!- MigoMipo has joined. 14:50:01 One-operand OISCs without accumulators. Discuss. 14:51:00 O is? 14:51:59 reiffert: ? 14:52:05 reiffert: Oh, One. 14:52:11 http://esolangs.org/wiki/OISC 14:52:58 http://esolangs.org/wiki/RSSB is 1-operand, but has an accumulator; http://esolangs.org/wiki/TOGA_computer is two-operand, with no accumulators. 14:54:15 * reiffert raises the Bushmills flag 14:57:12 OISC without accumulator translates like OISC without registers, slow and direct addressing required? 14:57:49 -!- nooga has joined. 14:58:58 haa 15:01:54 oerjan: nice topic 15:03:13 mu 15:13:04 mu? 15:13:47 http://en.wikipedia.org/wiki/Mu_(negative) 15:14:22 oh right 15:17:53 -!- ais523 has joined. 15:24:34 elliott: sorry about not replying earlier, I was in a meeting and it looks like the wireless went down when I was there 15:24:44 ais523: oh, that's okay 15:24:52 reiffert: who cares about speed :) 15:25:00 ais523: did you see the messages, though? 15:25:06 if not, clog :P 15:27:14 elliott: the most recent nickping of yours that I saw before I rejoined was ais523: clever: [[The reason that this is useful is for the "camp send" command. Rather than, as in darcs, having a separate concept of a "patch bundle", and a separate "camp apply" function to apply them, we can just use the "camp pull" command. We get the interactive patch selection etc for free.]] 15:27:22 is that the most recent, or should I clog? 15:28:14 ais523: well, there's more before that 15:28:25 I know, I saw everything before 15:28:28 ah 15:28:31 I was just showing the last oen 15:28:32 *one 15:30:27 ais523: Any replies re: empty directory on first change; camp? 15:30:33 (Two questions.) 15:31:39 I'd say the repo doesn't, platonically, exist at all until there's something in it 15:31:52 ais523: well, yes, but I mean what "sg init" creates 15:32:07 ais523: obviously, it needs 1 patch in there, that everything else is based on, right? 15:32:27 hmm, I think so, yes 15:33:09 but checking the directories is how you determine if two repos are currently the same project or not, effectively 15:33:17 you can split them apart and join them, but that's an explicit change to the arrangement 15:33:27 so, if you didn't have any changes at all, how would you know where to commit? 15:33:37 thus, we need to decide whether the repo's created by sg init or sg commit 15:33:48 the second would be perverse, but has a certain logic to it 15:33:58 (in which case, sg init would just set the metadata ready for a repo to be created) 15:36:42 ais523: well, one could argue that, if you need 1 god patch to base everything on, there's no reason it can't be the first 15:36:53 you can't say "but you need a patch to base patches on!" and then say that 1 patch doesn't need to be based on any 15:38:14 directories don't need to be based on anything 15:38:28 although you can't merge them together without adding a relationship between them and some other directory 15:38:33 ais523: sure they do; patches don't have an "insert X", they just have "append X after Y" 15:38:38 so you need an Empty Directory to base things on 15:38:45 with... one item 15:38:46 inexplicably 15:38:49 no, no items 15:38:58 "insert new empty file in Z" only requires a directory to insert it in 15:39:00 ais523: then how do you add an item? 15:39:07 ais523: ok, consider a file with 0 lines 15:39:09 how do you append a line? 15:39:46 "add 'x' between start of file added by 5, and end of file added by 5" 15:40:13 giving BOF and EOF their own hashes would probably make the actual storage a little simpler 15:40:31 but the point is just what they're added between, which is the start and end of the empty file 15:40:54 fair enough 15:40:59 ais523: what about the fact that directories are unordered? 15:41:03 you can't have "add X between" 15:41:54 you just have "add X into" 15:42:02 the "between" is only important for preserving order 15:42:08 if you don't care about preserving order, you just give the parent 15:42:33 e.g. if you have a directory containing files called a.txt and d.txt, you don't want to conflict on adding b.txt just because someone else added c.txt 15:42:38 nor would there be any sensible reason to do so 15:43:00 so directories have different operations from files because they're inherently different structures 15:43:21 (likewise, if you were versioning, say, a key-value store, you'd have "add into", "change", "delete" because order doesn't matter) 15:47:44 -!- nopseudoidea has joined. 15:57:16 -!- augur has quit (Remote host closed the connection). 16:04:24 -!- Phantom_Hoover has joined. 16:10:37 -!- augur has joined. 16:13:54 -!- sebbu2 has quit (Read error: Connection reset by peer). 16:14:26 -!- sebbu has joined. 16:16:10 -!- augur has quit (Remote host closed the connection). 16:21:26 -!- ais523 has quit (Remote host closed the connection). 16:23:44 -!- nopseudoidea has quit (*.net *.split). 16:32:52 -!- nopseudoidea has joined. 16:37:21 -!- nopseudoidea has quit (Client Quit). 16:44:37 -!- augur has joined. 16:45:01 -!- augur has quit (Remote host closed the connection). 16:49:28 -!- augur_ has joined. 16:53:25 -!- Alhwawi_ has joined. 16:53:38 Hi 16:53:59 Any one here 16:54:01 nope 16:54:14 How r u 16:54:49 Alhwawi_: this channel is about programming btw 16:59:40 hah at the topic 17:03:17 ¬confused → ¬understood, And it is well known that being confused about something means you don't understand it. Thus ¬understood → confused. Which means ¬confused → confused. 17:04:51 -!- Alhwawi_ has quit (Quit: Rooms • iPhone IRC Client • http://www.roomsapp.mobi). 17:05:04 if we are confused, then we might have understood it. And since I feel this is pretty confusing, I'd say that confused is true. However, I can't from that conclude I understood it since we have an implication at hand (not an equivalence) 17:05:22 oerjan, is my analysis of the topic you set correct? 17:05:30 MU 17:05:53 oerjan, what is the right question then? 17:06:04 MU 17:06:17 * oerjan cackles evilly 17:06:26 -!- atrapado has quit (Read error: Connection reset by peer). 17:06:46 + Topic for #esoteric set by oerjan!oerjan@tyrell.nvg.ntnu.no at Mon Dec 13 05:50:37 2010 <-- from this we can conclude you set the topic, thus I'm not asking the wrong person (if you changed something else then that's your own fault) 17:06:47 -!- Alhwawi has joined. 17:06:52 -!- Sasha2 has joined. 17:06:58 Any one here ?? 17:07:14 ... 17:07:32 -!- Sasha has quit (Read error: Connection reset by peer). 17:07:39 ∃x : in-#esoteric(x) 17:07:47 -!- Alhwawi has left (?). 17:08:09 oerjan, did the unicode work for you? 17:08:18 (iirc you got it working some time ago?) 17:08:19 um no 17:08:29 oerjan, was \exists 17:09:09 my font includes little outside latin scripts 17:09:19 oerjan, oh. Tried dejavu? 17:09:43 i haven't tried anything 17:13:52 ¬confused → ¬understood, And it is well known that being confused about something means you don't understand it. Thus ¬understood → confused. Which means ¬confused → confused. 17:13:57 Vorpal: wow you're like a master of formal logic 17:14:27 elliott, stop being sarcastic 17:14:40 okay. wait, let me reconsider. no. 17:14:41 elliott, it was of course not serious meant 17:15:33 elliott, the whole "And it is well known that being confused about something means you don't understand it" bit is obviously bogus (using confused in another, though related, sense) 17:15:34 Vorpal: it doesn't look like it supports windows... 17:15:44 oerjan: it's just a ttf. 17:15:47 oerjan, ... what? it is just a true type font 17:15:59 and people use it on windows 17:16:03 i know very little about fonts 17:16:15 i just didn't see any mention of windows on the page 17:16:18 oerjan: http://sourceforge.net/projects/dejavu/files/dejavu/2.32/dejavu-fonts-ttf-2.32.zip 17:16:19 :p 17:16:21 hm. not sure that symbol is from it. It looks badly hinted 17:16:30 drag contents to Control Panel -> Fonts 17:16:37 the system might be picking it from elsewhere 17:17:47 * oerjan is suspicious that the mono is sans serif only... 17:18:22 oerjan: it is. 17:19:12 oerjan: Luxi Mono I think has decent unicode support, and is serif'd 17:19:26 it's in http://xorg.freedesktop.org/releases/individual/font/font-bh-ttf-1.0.2.tar.bz2 17:19:37 the luxim* files 17:19:47 -!- ais523 has joined. 17:19:54 i have no idea how much unicode it does, though 17:19:54 hi ais523 17:19:55 hm maybe i'll try that instead 17:20:09 elliott, unless he has extremely high res screen, then serif isn't very good on screen 17:20:29 i'm already used to serif, is all 17:20:31 Vorpal: that is incorrect. 17:20:33 hi elliott 17:20:44 and i don't think telling oerjan "your opinions are wrong!" is productive at all 17:20:55 elliott: *most systems render serif in an ugly way? 17:21:06 I have seen serif rendered well on screen, but it's rare 17:21:07 elliott, oh, you mean he use a line printer for irc? 17:21:17 ais523: you use terrible settings, though 17:21:23 ais523: (and so do most people/OSes) 17:21:35 elliott: well, this OS renders much better than most of the others I use 17:21:45 worst is probably Adobe Reader on CentOS 17:21:54 which manages to screw up kerning incredibly badly 17:22:06 it's as if any given pair of letters is kerned at random 17:22:17 enough about this, let's talk about everyone's favourite subject -- scapegoat! 17:22:24 (EVERYONE'S) 17:22:44 hm wouldn't a normal res screen, but larger, brighter, and further away, give pretty much the same result as a high res screen? 17:23:10 no, your eyes have faeries in them and would blind you if you tried to do that. 17:23:29 Vorpal: obviously no, it has a lower bandwidth 17:23:37 (assuming that it has the same refresh rate) 17:24:06 ais523, ... wait, you mean for the GPU<->display connection? 17:24:09 (note: applying communications theory to font rendering doesn't normally work, but it can at least prove the most egregious statements wrong instantly) 17:24:15 Vorpal: no, for the screen<->eyes connection 17:24:44 ais523, hm. Lower bandwidth how? 17:24:55 there's just less information being sent 17:25:27 e.g. the pixels are coarser, so the shapes of the letters aren't as defined, and that has nothing to do with the brightness of the screen 17:25:58 hmm, I assumed that by "normal res" and "larger" you meant, say, "1024x768, but on a larger monitor" 17:26:07 ais523, err, did I say res? I meant dpi 17:26:08 I suppose "resolution" is ambiguous in this context 17:26:17 elliott: should i copy the entire archive to Fonts, or just the contents of the ttf/ directory? 17:26:27 oerjan: just the .ttf files. 17:26:53 oerjan: you *may* need to extract the archive to a normal directory first, but dragging is worth a try. 17:27:49 ais523, so if it scales so the size in your field of view is the same, and the size of each pixel is the same, then you just need to take care of light level (since the light is not unidirectional). Maybe focusing distance would cause an issue 17:27:56 which is what I was wondering about 17:28:09 s/cause an issue/be an issue/ 17:31:25 gah this looks horrible 17:32:02 oerjan: JUST INSATLL UBUNTU AND ALL; YK OUR PROBLEMS WIL BE FIX 17:32:44 and also i'm suspicious that putty didn't say anything about it containing any chinese or japanese characters, in fact the list of scripts was precisely the same as for courier new 17:32:56 elliott, does windows try to use other fonts if it can't find anything in the current font for a given codepoint? 17:33:19 Vorpal: no it just puts a little picture of adolf hitler there 17:33:29 elliott, .... 17:33:30 oerjan: i didn't actually check if it has jewnicode :D 17:33:32 Vorpal: windows might i don't know, but putty certainly doesn't 17:33:40 (adolf hitler hates jewnicode, that's why he replaces the glyph) 17:33:43 elliott: er... 17:33:51 oerjan: by jewnice i mean unicode. 17:33:54 *jewnicode 17:33:58 it's actually a jew plot. 17:34:00 oerjan, I suspect elliott is sleep-deprived 17:34:02 i understood that 17:34:07 Vorpal: well so am i 17:34:09 oerjan: just trying to help out 17:34:44 oerjan: UBUNTU EVERY SONG OF THE DOVE IS IXED 17:34:46 FXIED 17:35:27 oerjan, anyway, *if* windows or putty tries to find the symbol in other fonts, then dejavu sans has \exists 17:36:15 Vorpal: oh yeah cuz substituting a non-mono character in mono text is just a great idea 17:36:49 elliott, let me check mono too 17:37:12 elliott, mono has it too 17:37:16 elliott, so your point is moot 17:37:28 Vorpal: putty doesn't even try to substitute the CJK characters that i do have in other mono fonts 17:37:36 huh 17:37:47 it seems to use the selected font, only 17:37:49 oerjan, but shouldn't this be handled by the system text rendering API? 17:37:58 and happen transparently to the application 17:38:00 oerjan: if you answer, Vorpal will start ranting about your OS. 17:38:22 elliott: i suspect putty more than windows on this point 17:38:24 elliott, look, on linux it happens in cairo or fontconfig or something. It is just as messy 17:38:32 that won't stop you :) 17:38:37 maybe i should actually upgrade putty, it's probably from 2006 17:38:40 oerjan: why not just use a windows irc client... i mean it's just an idea :P 17:38:51 elliott, I could rant about the linux implementation too 17:38:56 oerjan: http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe 17:39:59 elliott, I'm not sure where text rendering should happen. On one hand, there is a good case for not putting it in the display server. On the other hand, having it everywhere is a messy solution too 17:40:12 Vorpal: shouldn't it just be a library. 17:40:20 Vorpal: also e.g. IE _does_ substitute when i look at the logs e.g., but the mononess is ruined 17:40:22 "servers" are basically useless 17:40:33 elliott, so what will elliotOS do? 17:40:35 tt* 17:40:43 whenever you see a server in linux, it's usually a library that does privileged stuff but that is called from user code 17:40:46 which unix can't handle 17:40:48 so it has to be a server 17:40:56 server as in X server not httpd 17:42:49 elliott, where will elliott OS do font rendering? 17:43:36 Vorpal: in your heart 17:44:22 elliott, ... 17:45:02 -!- augur_ has changed nick to augur. 17:45:59 U+22D8 VERY MUCH LESS-THAN ⋘ <--- "much less than" I knew about, but this one I never heard of before 17:47:39 ⋘⋘⋘⋘⋘⋘⋘⋘⋘⋘⋘⋘⋘⋘⋘ 17:47:56 elliott, I found no "way way less than" sadly 17:53:16 elliott, btw you said that substituting non-monospace for monospace missing codepoint is bad. Yes indeed. But is it worse than not being able to show the information? 17:54:12 information is in your mind 17:54:20 elliott, that is not an answer 18:02:22 -!- Vorpal has quit (Ping timeout: 252 seconds). 18:03:19 -!- Vorpal has joined. 18:03:53 Vorpal: There is, however, ⪡ and ⫷; 2AA1 and 2AF7, double/triple nested less-than. 18:04:05 jm 18:04:06 hm* 18:04:23 information is in your mind elliott, that is not an answer <-- last I saw 18:09:09 Vorpal: There is, however, ⪡ and ⫷; 2AA1 and 2AF7, double/triple nested less-than. 18:10:22 fungot, you're alive! 18:10:23 Phantom_Hoover: that interpreter is slow.' wrong: there are 3 different tape types... no ends... one end... 2 ends and c begins... and otherwise. i just check if one is willing to fight chuck norris. :p 18:11:47 wazzaaa 18:12:34 fizzie, I still want my duel. 18:19:19 ais523: you there? 18:45:04 -!- Sasha2 has quit (Ping timeout: 250 seconds). 19:00:45 elliott, ever used nexttoward() ? 19:01:05 (or nextafter) 19:01:38 Vorpal: Nope. 19:01:41 Vorpal: I don't touch math.h generally. 19:01:56 Especially floats. 19:01:56 elliott, seems python has no mapping for nextafter() hm 19:02:02 Floats make me cry. 19:02:10 elliott, these are for double 19:02:11 not float 19:02:17 Ah. 19:02:24 Can't you write it in Python, given the double epsilon? 19:02:50 elliott, well, presumably I could. The trick is figuring out said epsilon 19:04:27 -!- cheater99 has quit (Ping timeout: 245 seconds). 19:04:30 elliott, OR I could just create a binding with cython :D 19:04:44 Vorpal: While x>0 { y=x; x/=2 }; return y 19:05:28 Vorpal: wait, does python even have doubles? 19:05:36 elliott, float in python is double 19:05:44 elliott, it doesn't have single precision float 19:05:49 Vorpal: oh right double is float 19:05:53 I thought double was fixed-point there 19:06:32 what? 19:06:50 elliott, how do you use the epsilon now again to figure out how far it is to the next point, since the actual distance between the points you can represent will vary over the range 19:07:02 PYTHON FOLLOWS THE IEEE 764 FLOATING POINT STANDARD 19:07:14 I MEAN 754 19:07:16 Quadrescence: THAT'S NICE TO KNOW 19:07:18 WHY ARE YOU TELLING US 19:07:25 sounded relevant 19:07:34 it doesn't does it? 1.0/0.0 is not inf 19:07:37 elliott, how do you use the epsilon now again to figure out how far it is to the next point, since the actual distance between the points you can represent will vary over the range 19:07:39 i was assuming fixed-point 19:07:43 elliott, ah 19:07:46 elliott, well, it isn't 19:08:49 elliott, besides fixed point would be highly inconvenient for this thing, since I need to work both with small number (0.00284 or so say) and huge numbers (10^40 or that range) 19:09:01 or even larger 19:16:11 -!- calamari has joined. 19:18:56 -!- cheater99 has joined. 19:20:47 "You are at the mercy of the underlying machine architecture (and C or Java implementation) for the accepted range and handling of overflow." So the spec (2.6, 2.7, 3.1 all have the same text) doesn't exactly guarantee IEEE-754, but it might often be. 19:20:50 (Throwing an exception at 1.0/0.0 is perfectly valid, in fact one of the optional alternatives in the standard; though I guess for full compliance there should be some way of disabling it, and that -- the fpectl module -- is not built by default, it seems.) 19:38:03 "In My Egotistical Opinion, most people's C programs should be indented six feet downward and covered with dirt." 19:38:22 http://www.junauza.com/2010/12/top-50-programming-quotes-of-all-time.html 19:44:15 [[44. "I have always wished for my computer to be as easy to use as my telephone; my wish has come true because I can no longer figure out how to use my telephone."- Bjarne Stroustrup 43. “Computer science education cannot make anybody an expert programmer any more than studying brushes and pigment can make somebody an expert painter.”- Eric S. Raymond]] 19:44:38 Phantom_Hoover: Want to CODE FOR ME? 19:44:43 Phantom_Hoover: Also, why did you quote esr. 19:44:44 Whyyyyy. 19:44:45 Two idiots. But which is right most times per day? There's only one way to find out... 19:44:51 there are some good ones in the comments too 19:44:51 FIIIIIIIIGHT! 19:44:52 Phantom_Hoover: Hey, Bjarne Stroustrup isn't an idiot. 19:44:55 He's evil, sure. 19:44:58 But he's not an idiot :P 19:45:20 Oh, so those "spoof" interviews when he admits C++ was an evil plot were actually true? 19:45:37 Phantom_Hoover: Pretty much! (Actually it's more like: he's a decent guy who had a really, really terrible idea and still hasn't realised that yet.) 19:46:16 Remind me again of the well-articulated reasons C++ sucks/ 19:46:51 Phantom_Hoover: Ow ow ow ow ow ow pain ow. 19:47:05 Phantom_Hoover: When parsing your language is Turing-complete, it's time to find a new language. 19:47:07 *Well*-articulated. 19:47:17 elliott, oh, operator overloading? 19:47:33 Phantom_Hoover: Nope. 19:47:34 Or templates? 19:47:35 Phantom_Hoover: Templates. 19:47:38 Phantom_Hoover: Because of <> 19:47:38 Ah. 19:47:43 < can be either less than or open template. 19:47:47 Well, okay, that's just context-sensitivity. 19:47:55 I don't recall if parsing it is TC, but IIRC it is. 19:48:00 elliott, parsing Perl is TC. 19:48:07 I know. 19:48:07 Not sure about C++. 19:49:42 [[44. "I have always wished for my computer to be as easy to use as my telephone; my wish has come true because I can no longer figure out how to use my telephone."- Bjarne Stroustrup 43. “Computer science education cannot make anybody an expert programmer any more than studying brushes and pigment can make somebody an expert painter.”- Eric S. Raymond]] <-- assuming the first one i 19:49:42 s ironic (which seems patently obvious), it says something about modern landline telephones... 19:49:54 the second one seems more idiotic 19:50:08 That is because ESR is fractally wrong. 19:50:25 His whole worldview is wrong, and if you zoom in on any part of that worldview, it's still wrong. 19:50:49 Phantom_Hoover: Pretty much! (Actually it's more like: he's a decent guy who had a really, really terrible idea and still hasn't realised that yet.) <-- arguably the original "C with objects" was not quite as bad as what C++ turned out as 19:52:15 elliott, that said, C with object wasn't exactly good either. But it it wasn't the nightmare that modern C++ is 19:52:23 objects* 19:54:02 [[ 19:54:02 26. "In theory, theory and practice are the same. In practice, they’re not." 19:54:02 - Yoggi Berra]] 19:54:03 grr. 19:54:05 I hate that quote. 19:54:13 Theory doesn't match practice --> theory sucks. 19:54:31 in theory that's a good quote 19:54:54 elliott, in theory, the theories do match practise, in practise they don't ;) 19:55:09 Vorpal: ...that's what the quote said 19:55:21 you just reproduced it almost word for word. 19:55:35 have to agree with elliott there 19:56:10 elliott, actually what you did too 19:56:15 Theory doesn't match practice --> theory sucks. 19:56:21 that is what the original quote said too 19:56:25 most theories suck 19:56:46 which is just really a pessimistic worldview 19:56:48 ...no, it isn't 19:56:55 elliott, it implies that 19:56:55 that's not even remotely what the quote said 19:56:58 no it doesn't. 19:57:02 elliott, yes it does 20:13:36 [[24. "PHP is a minor evil perpetrated and created by incompetent amateurs, whereas Perl is a great and insidious evil, perpetrated by skilled but perverted professionals." ]] 20:13:44 Would that PHP were minor. 20:15:31 [[7. “Most software today is very much like an Egyptian pyramid with millions of bricks piled on top of each other, with no structural integrity, but just done by brute force and thousands of slaves.”]] 20:15:53 That shows blatant ignorance of the construction of the pyramids. 20:27:33 Phantom_Hoover: It's not minor, it's a minor evil. 20:27:46 Phantom_Hoover: Compared to Perl, PHP is downright refined. 20:28:00 ... 20:28:29 Surely that puts Perl so far into language hell it's squishing C++? 20:41:29 -!- augur has quit (Remote host closed the connection). 20:41:32 -!- griffiw has joined. 20:41:43 -!- griffiw has left (?). 20:44:57 -!- oerjan has quit (Quit: Good night). 20:46:45 PHP is definitely a great evil. 20:46:53 Perl, however, is clearly the work of Morgoth. 20:49:54 perl 6 4 life yo 20:55:48 calling PHP evil is an insult to all the properly evil languages (like perl) 20:55:58 PHP is just stupid 20:58:18 ais523: ping 21:04:22 Phantom_Hoover: Perl makes C++ look downright angelic. 21:06:55 olsner: Stupidity is a high form of evil. 21:09:25 pikhq: I don't think so, for one stupid people usually don't mean any harm by what they're doing 21:09:26 Gregor, pikhq seriously? 21:09:41 Perl, otoh, is deliberated :P 21:09:55 coppro: Perl 6 will make Perl 5 look squeaky-clean :P 21:09:58 Phantom_Hoover: Quite. 21:10:38 olsner, those who refuse to acknowledge that they are stupid, or worse, take pride in their stupidity, are being evil. 21:10:38 Gregor, where lies the evil in Perl? 21:11:15 $_ 21:11:25 Is it the boring, bloody-minded evil of PHP and C++ taken to the extreme, or is it creative, Malbolgey evil? 21:11:27 iirc, in PHP's case the original author(s) have freely admitted not having a clue 21:11:54 Gregor: $_ is no longer implicit in Perl 6 21:12:08 though it can be accessed through the alternative name "" 21:12:42 Phantom_Hoover: With PHP it's incompetence. With C++ it's overengineering. With Perl, it's boldfaced evil. 21:12:45 coppro: Please tell me the empty string actually evaluates to $_. 21:12:45 coppro: ...??? 21:12:55 coppro: As in, 21:12:58 coppro: '"' '"' 21:13:03 coppro: Rather than (empty string) :P 21:13:06 Thus 21:13:10 print "" foreach @blah 21:13:37 Gregor, ah, so Malbolgey evil that everyone else is too stupid to see? 21:14:07 Phantom_Hoover: Most people see it. It also has CPAN :P 21:14:14 it's a malbolgey evil disguised as usefulness 21:14:50 Gregor, so it's Malbolgey evil that everyone sees but ignores because...? 21:15:01 * elliott downloads j602a_linux64.sh. 21:15:04 The only sane programming environment! 21:15:06 Or close, anyway. 21:15:14 Phantom_Hoover: Because it's BRILLIANT, Malbolgey evil. 21:15:19 Phantom_Hoover: Because it's easy to write a lot of code quickly in it ... so long as you never need to read it again. 21:15:25 Phantom_Hoover: $ wget http://www.jsoftware.com/download/j602a_linux64.sh 21:15:27 Phantom_Hoover: Post haste! 21:16:01 elliott, tell me what it is immediately. 21:16:13 oh, J ... too bad it doesn't handle ~ in my keymap, and ~ is a frequently used operator 21:16:23 Phantom_Hoover: J, version 602, Linux 64-bit edition. 21:16:26 *602a 21:16:26 Gregor, that's evil that is worthy of respect. 21:16:31 olsner: Whut? It's just Java-based, the UI. 21:16:40 elliott, cool or evil? 21:16:52 Phantom_Hoover: The only sane programming environment! Proprietary but them's the breaks 21:16:58 Phantom_Hoover: It's like APL. 21:17:03 It's basically ASCII APL :P 21:17:14 elliott, APL the notorious? 21:17:17 Phantom_Hoover: Here's a program to compute the average of an array: +/%# 21:17:26 elliott: hmm... I wonder how they managed to break Java :/ 21:17:28 + is addition, / means "over" (fold, like foldr in Haskell) 21:17:29 % means divide 21:17:31 # means length 21:17:33 +/ % # 21:17:35 sum divide length 21:17:42 (+/%#) 1 2 3 4 ====> 2.5 21:17:48 avg =: +/%# 21:17:53 avg 1 2 3 4 ====> 2.5 21:17:58 I assume that the open-source APL derivatives suck? 21:18:06 Phantom_Hoover: Pretty much :P 21:18:09 There's just A+ and it's lame. 21:18:16 K is super-proprietary and not even free. 21:18:20 J is nice and cosy. 21:19:19 Phantom_Hoover: Most people see it. It also has CPAN :P <-- the tool or the website? the website is not bad as such. Modelled after the godly ctan iirc 21:19:31 ctan is more painful than godly. 21:19:52 elliott, how is ctan painful? 21:20:03 Because it is. 21:20:19 elliott, which bit of it annoys you 21:20:30 The painful bit. 21:20:38 elliott, the concept of a central repo for latex packages? 21:20:50 I have to presume you hate that 21:20:59 since you are completely unhelpful 21:21:05 elliott, "java64: not found" 21:21:08 Not impressed. 21:21:14 Phantom_Hoover: You have to edit bin/jwd. 21:21:16 s/java64/java/. 21:21:17 Phantom_Hoover, why java64? 21:21:30 Phantom_Hoover: The UI is Java-based, but the language itself is written in C :P 21:21:41 Phantom_Hoover: Let me put it this way: J and Python are the only languages oklopol likes. 21:21:59 And he only likes Python because it gets his crazy shit done :P 21:22:01 Python? Eugh. 21:22:03 elliott, if hash java64 2>/dev/null; then 21:22:05 elliott, see? 21:22:11 trivial to check for 21:22:14 Vorpal: ...what relevance does this have at all? 21:22:16 Phantom_Hoover didn't write it. 21:22:22 you're criticising someone else entirely's programming. 21:22:31 we know it's trivial. we can program perfectly well thank you very much. 21:22:31 elliott, it looked like your? 21:22:39 How did you infer that? 21:22:43 Also, *yours. 21:22:57 elliott, he said: " elliott, "java64: not found" Not impressed." <-- looked like he complained about your code 21:23:00 [[Could not find the main class: jx/frames/J. Program will exit.]] 21:23:01 read it out of context 21:23:04 and it will look the same 21:23:16 WHY DO YOU MOCK ME 21:23:20 Phantom_Hoover: Whut. 21:23:21 That's THREE errors now. 21:23:24 Phantom_Hoover: What command did you run? 21:23:43 ./jwd 21:23:53 Phantom_Hoover: In what directory? 21:23:58 olsner, what, does it fail at altgr or? 21:24:11 Vorpal: specifically, dead keys 21:24:15 olsner, ah 21:24:19 olsner, that's nasty 21:24:35 olsner, file a bug? 21:24:38 Phantom_Hoover: I had no such error; what directory? 21:24:52 elliott, j*/foo 21:24:55 olsner, bug report that is 21:24:57 *bin 21:25:02 Vorpal: I chose an easier path and stopped using their product 21:25:04 I HATE YOU BRAIN 21:25:07 Phantom_Hoover: do you have java? 21:25:08 olsner, that works too 21:25:27 elliott, I HAVE BEEN PLAYING MINECRAFT WITH YOU FOR TWO WEEKS 21:25:35 YES I HAVE JAVA 21:25:40 Phantom_Hoover: are you suuuuuuuuure? 21:25:58 elliott, NO, I HAND-JITED IT. 21:26:04 thought so 21:26:15 Phantom_Hoover: try running from outside bin :P 21:26:17 Phantom_Hoover, ah. I was a bit scared there. That you would have java 21:26:23 * Phantom_Hoover fires up hexl-mode 21:26:28 Phantom_Hoover, why not hand-JIT J? 21:26:28 Phantom_Hoover: ...why? 21:26:37 Why do you need hexl-mode? 21:26:41 elliott, for hand-jitting. Duh 21:27:03 SAME ERROR 21:27:30 Hey, my Java is OpenJDK. 21:28:07 elliott, btw, checked recently, openjdk works with minecraft alpha 21:28:09 And I have sun-java6-bin installed. 21:28:13 -!- augur has joined. 21:28:14 at least with downloaded one 21:28:17 Phantom_Hoover: Get rid of openjdk, then. 21:28:21 Phantom_Hoover, check /etc/alternatives 21:28:30 Vorpal: Um, or use update-alternatives. 21:28:32 elliott, why, openjdk works fine with minecraft 21:28:33 You're not meant to change those yourself. 21:28:37 And because OpenJDK clearly doesn't work with J. 21:28:54 elliott, true, but checking /etc/alternatives != changing it there 21:29:03 elliott, checking is good for finding out WHERE it goes 21:29:14 elliott, how do I change it? 21:29:18 elliott, so my statement was correct 21:29:21 Phantom_Hoover: Try removing *openjdk* :P 21:29:25 Vorpal: update-alternatives can show that. 21:29:31 Phantom_Hoover: As in sudo aptitude purge *openjdk* 21:29:31 elliott, not as fast 21:29:40 elliott, it involves reading help output first 21:29:46 compared to ls -l 21:30:23 elliott, I'm assuming that glob is metaphorical. 21:30:33 Phantom_Hoover: nope 21:31:16 elliott, "Couldn't find any package blah blah blah "*openjdk*"" 21:31:29 aptitude search openjdk 21:31:30 wheres alice been? :( 21:31:33 remove all "i"s 21:31:35 augur: right here! 21:31:38 wat 21:31:43 augur: i'm ehird :P 21:31:48 o man wat 21:31:52 you... didn't realise this? 21:31:56 firstly, i thought you had one l and one t 21:31:59 yeah i had a sex change! 21:32:01 i'm a MAN now 21:32:16 second, no, i thought you were some random kid named elliott 21:32:21 well, i am 21:32:24 some random kid named elliott :P 21:32:34 oh man, ive been hostile towards you for no reason :( 21:32:39 :D 21:32:42 good to know i'm that dislikeable 21:32:43 awesome 21:32:44 * augur hugs elliott 21:32:50 elliott, indeed you are! 21:32:55 now go die in a fire 21:33:03 10.10.26:16:54:28 elliott: what 21:33:03 10.10.28:16:45:17 elliott: what 21:33:03 10.11.12:02:30:37 elliott: what 21:33:03 10.11.26:16:40:15 elliott: you're talkative 21:33:03 10.11.26:16:40:19 elliott: http://www.jaybirdgear.com/cart/sb2/# 21:33:04 10.11.28:14:47:16 elliott is agreeing with me on something 21:33:05 10.12.01:19:58:24 elliott: deny 21:33:07 10.12.06:12:04:29 elliott: but thats because performance is not competence 21:33:09 augur: man, so hostile 21:33:13 knowing you're ehird, now i HAVE a reason 21:33:36 i ended up not getting those you know 21:33:54 i got a pair of sony's 21:34:03 still bluetooth, but not jaybirds 21:34:14 better than radio-based wireless ones at least 21:34:20 what? 21:34:25 those ones have constant fuzz and if you don't play audio for too long -- I'm not joking here -- 21:34:26 the jaybirds were bluetooth too.. 21:34:27 they go to white noise 21:34:28 LOUD white noise 21:34:30 oic 21:34:32 augur: oh, i was just commenting in general 21:34:34 mine are fine 21:34:36 elliott, more errors! 21:34:37 sound great 21:34:38 seriously, you just sit there... haven't played music in a while 21:34:39 FZZZZZZZZZZZZZZT 21:34:41 Phantom_Hoover: what now 21:34:53 elliott: i missed you :( 21:34:56 There's a POPUP 21:35:01 Phantom_Hoover: yes, that's the introduction. 21:35:08 In hideous Java blue. 21:35:08 ironic, since you were here the whole time 21:35:14 Phantom_Hoover: you can change that. 21:35:22 Saying "Load library file:bin/libjnative.so failed." 21:35:24 elliott, how can you live with wireless headphones? 21:35:30 Phantom_Hoover: wait, is your system actually 64-bit? 21:35:31 elliott, they are laggy 21:35:32 Vorpal: i don't any more :P 21:35:37 elliott, stuff doesn't sync up 21:35:40 ...although lag was not my complaint, what? 21:35:43 elliott, at least in my experience 21:35:44 elliott, as opposed to? 21:35:46 the radio ones are fine with lag 21:35:49 just terrible at everything else 21:35:53 Phantom_Hoover: um, as opposed to 32-bit linux 21:35:54 Not really being very 64-bit? 21:35:56 elliott, I'm talking of video sound being out of sync with the bluetooth ones I tried 21:36:05 Being 53 bit but not telling anyone? 21:36:05 Phantom_Hoover: uname -r 21:36:07 does it end with x86_64? 21:36:09 erm 21:36:11 *amd64 21:36:15 elliott, compared to plain cable ones 21:36:24 2.6.32-5-amd64 21:36:26 Yes, it is 64-bit. 21:36:26 elliott, which work fine, don't need battery, and give better sound 21:36:30 Phantom_Hoover: huh. 21:36:32 Vorpal: yeah yeah 21:36:49 elliott, beat my DT150 with wireless. Good luck 21:36:59 FWIW, the FSF have some mysterious marker on java -version, so I am SUSPICIOUS 21:37:00 elliott, sb live + DT150 that is 21:37:09 Vorpal: i don't use wireless. 21:37:17 java version "1.6.0_18" 21:37:18 OpenJDK Runtime Environment (IcedTea6 1.8.2) (6b18-1.8.2-4) 21:37:18 OpenJDK 64-Bit Server VM (build 16.0-b13, mixed mode) 21:37:20 how did that happen. 21:37:35 Phantom_Hoover: WELP I TOTALLY APPROVE OF ICEDTEA YOU SHOULD INSTALL IT 21:37:59 awesome, java doesn't do font fallback 21:38:00 like a boss 21:38:32 or maybe it does 21:38:41 nope 21:38:56 elliott: monads! 21:38:56 :D 21:39:14 "Users can add a physical font as a fallback font to logical fonts used in Java 2D rendering by installing it in the lib/fonts/fallback directory within the JRE." 21:39:16 augur: gonads 21:39:19 D: 21:41:29 grr, fallback thing doesn't work 21:41:49 -!- elliott has left (?). 21:41:52 -!- elliott has joined. 21:48:58 * Phantom_Hoover reinstalls all Javay things. 21:49:57 ...And it still won't work. 21:50:43 I hate it when things don't go through fontconfig. 21:51:16 There's a central point for this configuration! I don't *want* your dumb-ass ways of handling it! 21:51:28 -!- Mathnerd314 has joined. 21:51:37 (note: if you can replace fontconfig with something less XML-loving and make it universal, I will love you forever) 21:53:37 elliott, comment in the context of @. 21:53:58 Phantom_Hoover: @ has no configuration. 21:54:01 FWIW, I will Leave And Never Come Back if you don't declare that XML is banned from @. 21:54:04 It renders fonts in the perfect way, as determined by me, God. 21:54:16 Phantom_Hoover: Well, it'll have an XML parser... for feed reading, say :P 21:54:47 elliott, can't you configure it by messing around with the rendering code? 21:55:04 Phantom_Hoover: NO. It is protected. 21:55:10 Phantom_Hoover: By the same notion, everything is configurable because we have text editors. 21:55:20 INDEED 21:55:47 pikhq, yes, but in @ everything is adjustable at runtime. 21:55:50 Somehow. 21:57:14 MAGIC 21:58:09 elliott, wait, what happens when you meddle with code that's being executed? 21:58:28 Phantom_Hoover: Your bunny turns into a fluff. 21:58:34 That is as cute as it sounds, too. 21:58:55 Phantom_Hoover: More realistically: It works. 21:59:00 elliott, indeed, but what happens to the computer/ 21:59:11 How? 21:59:39 Mmmm, milkshake... 22:00:26 Phantom_Hoover: Well, if you edit an executing function, nothing will happen, but the next time it's called... 22:00:39 elliott, hmm. 22:00:40 elliott, Deewiant: down? 22:00:52 Quite. 22:00:59 Phantom_Hoover: If you want to change a tight-looping function while it executes, use the debugger. 22:01:12 elliott, ah. 22:01:25 i.e. hit pause/break or some similar key, step a few times if you want to, and tell it to change the code, then exit the debugger and continue. 22:01:29 So you still need to restart your web browser if significant changes are made to the code? 22:01:42 Not really; I would imagine a web browser is composed of a good many functions. 22:02:03 If the main loop was compiled to be non-recursive (looping instead) and you modified that, then maybe. But I'd like to see if I can't make it update the code in that case too. 22:02:11 Yes, but presumably some of them are going to run for a very long time. 22:02:26 Well, there's no actual main loop; FRP. 22:02:28 Anything that waits for user input, for instance. 22:02:32 Everything is just event --> reaction in the simplest case. 22:02:35 Phantom_Hoover: Asynchronous. 22:02:46 Indeed, your browser won't even hard-loop like that, since it's based on an event-based GUI toolkit. 22:02:56 It's just that in @, /everything/ is asynchronous and you use FRP to do all effects. 22:04:38 I DO NOT KNOW THESE WORDS 22:04:51 Phantom_Hoover: What, "asynchronous"? 22:05:03 FRP! 22:05:08 Hard-loop! 22:05:15 Event-based! 22:05:18 Effects! 22:05:21 Phantom_Hoover: Hard-loop = loop :P 22:05:29 Your browser, when it pops up a dialogue box, doesn't freeze. 22:05:36 Because it's not in a loop; it's doing everything normally. 22:05:46 It just has an event set up for "dialogue-box-clicked-OK". 22:07:25 Re earlier topic, Bluetooth wireless headphones + Linux was indeed a really very laggy combination; but the same headphones were markedly better (lag-wise) in some other systems. Maybe the others do some sort of lag-compensating guesswork, who knows. 22:11:50 Does anyone have a tool to merge two fonts? 22:12:04 i.e. A+B => C where if char c not in A, char c in C, taken from B 22:12:09 but otherwise char c in C, taken from A 22:13:56 FontForge might be capable of that, but the user interface (if you can call it that) is so confusing, no-one can tell. 22:14:17 -!- poiuy_qwert has joined. 22:19:58 elliott: are you trying to create an all-encompassing unicode font? 22:20:21 -!- MigoMipo has quit (Quit: Quit). 22:21:23 calamari: Just trying to merge Droid Sans Mono with fallback DejaVu Sans Mono, for J, which doesn't do fallbacks. 22:21:29 fizzie: Wanna TRY IT OUT FOR ME? :P 22:22:38 fizzie, that made a difference 22:22:38 can you extend a class to allow fallbacks? 22:24:20 * Phantom_Hoover 's eyes hurt 22:24:24 -!- Phantom_Hoover has quit (Quit: Leaving). 22:24:39 calamari: it's not OSS, so no. 22:24:57 has anyone else noticed that linux audio has really gotten lame in the past year or so, skipping and etc? I wonder if something happened to the driver for my card 22:25:31 maybe it goes back more than a year now, I lose track of time 22:25:55 seemed to start around the same time as that pulseaudio stuff, but that could just be a coincidence 22:26:07 it isn't 22:26:10 pulseaudio is the worst. 22:26:46 but pulseaudio isn't in the kernel, right? 22:27:42 I was assuming if I selected ALSA, then I avoided pulseaudio messing me up 22:28:20 calamari: not unless you uninstall pulseaudio 22:28:30 calamari: it reroutes ALSA's library to go to pulseaudio, which then goes to ALSA 22:28:41 ah, I see 22:28:42 calamari: note: if you're on ubuntu, uninstalling pulseaudio = no volume control 22:29:12 and I'm also not sure if KDE 3.5's audio stuff is screwing me too 22:29:46 since they had added yet another layer of crap lol 22:30:05 elliott: not even alsamixer? 22:30:23 calamari: Well, sure, that will work. 22:30:31 ahh ok 22:30:31 calamari: You're using KDE 3.5 still? 22:30:38 yeah 22:30:51 calamari: Don't; use Trinity. 22:30:59 calamari: (Maintained fork of KDE3.5, being ported to Qt 4.) 22:31:04 http://trinity.pearsoncomputing.net/ 22:31:08 FUCKING AWESOME!!!! 22:31:57 oh maybe it just changed names, lets see 22:32:22 calamari: hm? 22:32:25 what changed names 22:32:32 nope, this seems different 22:32:55 calamari: what did you think changed names? 22:32:57 I was using this before deb http://ppa.launchpad.net/kde3-maintainers/ppa/ubuntu lucid main 22:33:23 oh wait, there it is 22:33:36 okay so I'm using the same one 22:34:01 you're still on lucid? :-P 22:34:05 yeah 22:35:28 I used to upgrade right away, but I got tired of stuff breaking so now I upgrade a release behind 22:35:51 upgrade to something that's already old: FUN 22:36:43 elliott: do you use kde 3.5? 22:37:25 err Trinity 22:38:12 calamari: nope, I use gnome :P 22:38:29 calamari: more out of convenience than anything else 22:38:50 yeah I put gnome onmy new work lptop because I do realize kde 3.5 is crufty 22:39:02 and it seems alright 22:39:23 maybe they removed all the features they could for a while and it stabilized 22:40:53 the earlier KDE always reminded me of some kind of Windows 3.1/95 mix.. however the later KDE was better looking at they never removed features.. instead they just scrapped the entire thing and put ot KDE 4 lol 22:41:32 I only went to KDE3 because I was afraid of what Gnome would remove next.. there was one release where you couldn't even edit the menus 22:44:08 to be fair, though, the menu stuff was more of an outside standards effort that they adopted.. but they definitely could have waited a bit on that one 22:45:35 who cares about linux anyway 22:45:36 or X11 22:45:39 or... uh 22:45:40 keyboards 22:45:47 Nobody actually likes X11 any more. 22:46:44 pikhq, I bet there is some freak that does 22:47:02 lol if I had to choose between keyboard and mouse, the rodent would lose out 22:48:52 you don't use xman exclusively due to it's amazing ui? oh wait, neither do I 22:49:43 *its .. when did I start screwing that one up? 23:01:22 -!- tswett has joined. 23:01:59 -!- tswett has set topic: LASCIATE OGNE SPERANZA, VOI CH'INTRATE | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 23:02:18 The sentence written on the door to Hell. 23:02:28 Actually, there are lots of sentences. Like, nine or something. That's the last one. 23:18:30 Cool, moving average is easy in J. 23:18:48 "4 avg\ v" -- window is 4 23:21:06 filter(ones(1,4), 1, v) in MATLABy things; not "quite" as nice. 23:22:21 * tswett decides that a Haskell moving average would fit within eighty characters. 23:24:15 elliott: whats your opinion on scheme again 23:24:16 tswett: Go on, then :P 23:24:23 augur: it's a racket 23:24:54 elliott: racket? 23:24:55 OK, seriously, someone merge two TTFs for me. 23:24:57 Infinite praise. 23:25:00 augur: A swindle, no less. 23:25:08 Oh, fine. :P 23:25:13 elliott: wat :| 23:25:30 Let's consider a list, like [1,7,2,5,3,8,9,4,2,7,3]. Then you just... 23:25:36 fizzie: tswett: Also, it only counts if you use a predefined "avg" function. 23:25:41 That you can substitute for any function. 23:25:43 To make moving. 23:26:20 elliott, down? 23:26:22 map (avg . take 4) . tails $ [1,7,2,5,3,8,9,4,2,7,3] 23:26:51 what's a good size for an interpreter of a "minimal" language? 23:26:56 Mathnerd314: um, in what? bytes? 23:26:58 what language? 23:27:06 elliott: Okay: mean(buffer(v, 4, 3)). (Except you can't quite substitute "any" function there; but most do it right by default.) 23:27:27 Funnily enough, that will take the average of [1,7,2,5], then of [7,2,5,3], . . ., then of [4,2,7,3], then of [2,7,3], then of [7,3], then of [3], then of [], at which point the program will crash. 23:27:27 elliott: a Lisp, implemented in anything, counting tokens 23:27:32 fizzie: Cheater :P 23:27:38 Mathnerd314: counting tokens? pg got to you eh? 23:28:01 Mathnerd314: Anyway it's a meaningless question without specifying the implementation language. 23:28:02 elliott: yeah; you can count LOC if you'd rather 23:28:03 tswett: Now fix it :P 23:28:22 elliott: you can use any language you want. 23:28:42 elliott: I just want an order-of-magnitude estimate 23:28:48 Mathnerd314: then the question is meaningless :) 23:29:07 buffer(v, 4, 3) gives [[0; 0; 0; v(1)] [0; 0; v(1); v(2)] [0; v(1); v(2); v(3)] [v(1); v(2); v(3); v(4)] ... ], and most functions that make sense for a vector do their operation separately for each column. 23:29:47 elliott: ok, we'll start with c. what size is a C interpreter for Lisp 23:30:03 ? 23:30:06 tswett: BTW: 23:30:08 4 (+/%#)\ 1 7 2 5 3 8 9 4 2 7 3 23:30:08 3.75 4.25 4.5 6.25 6 5.75 5.5 4 23:30:10 tswett: Good luck beating that. 23:30:16 Mathnerd314: Uh, 100-200 lines? C is pretty verbose. 23:30:34 tswett: That includes the avg function. 23:31:50 elliott: so 700 lines of Haskell is way too long? 23:31:54 octave:6> sum(buffer([1 7 2 5 3 8 9 4 2 7 3], 4, 3, 'nodelay'))/4 23:31:54 ans = 23:31:54 3.7500 4.2500 4.5000 6.2500 6.0000 5.7500 5.5000 4.0000 3.0000 23:32:04 I guess it's a bit longer. And repeats the window width thrice. 23:32:08 Mathnerd314: definitely. if the language is minimal in even the slightest, definitely. 23:32:10 even if it isn't 23:32:16 700 lines of haskell could control nukes :) 23:32:21 fizzie: Psht. 23:32:27 Nuke controllers aren't that complicated. 23:32:30 Deewiant: Shaddap. 23:32:36 fizzie: OK, now define a function that takes a window size and a list and moving-averages them. 23:32:54 fizzie: mavg=:(+/%#)\ 23:33:16 tswett: You too. :p 23:33:38 "f = @(w, v) mean(buffer(v, w, w-1, 'nodelay'))" if you don't mind using mean. 23:33:45 s/f/mavg/ if you like. 23:34:13 The 'nodelay' is a bit debatable; it zero-pads in front if you don't include that, but according to someone's definition that might be the right thing. 23:35:06 fizzie: OK, now write a function that produces a screwy TABLE OF AVERAGES OR SOMETHING, like so: http://sprunge.us/MThf 23:35:13 The last column is the moving averages, the first is the list itself; not sure what the list inbetween is. 23:35:27 map negate 23:35:32 A nuke controller in Haskell. 23:35:37 fizzie: Oh, it's each window size from 1 (just return the list directly) to the size you specify. 23:35:43 Requires a relatively "smart" API. 23:35:45 fizzie: With the moving averages for each window being a column. 23:36:19 Stop being like that, it's going to be pretty ugly. 23:36:23 The 3D version does nothing interesting, unfortunately. :P 23:36:29 fizzie: That's okay, I like ugly! 23:36:37 fizzie: At least it'll teach people not to call J ugly. :P 23:37:33 "mmavg is (add over divide length) infix infix", what's so hard about that! 23:37:42 (When each element is pronounced :P) 23:38:42 fizzie: SO HOW'S IT GOING 23:41:43 http://p.zem.fi/gp4u I HOPE YOU'RE HAPPY NOW. 23:41:51 It's not identical due to lack of nodelay. 23:42:04 fizzie: Does yours handle >1D arrays? 23:42:24 Probably not. It almost didn't handle window width of 1 either. 23:43:41 I don't think buffer deals with matrices sensibly, you'd have to do something else, probably another arrayfun over a list to do the buffering. 23:43:45 I'm not going to try that. 23:44:01 MATLAB's pretty horrible when you just want to map. 23:44:17 At least Mathematica has that funky /@ operator or whatever they called it. 23:44:36 -!- Wamanuz has quit (Remote host closed the connection). 23:44:37 Elsewhere, now. 23:45:32 -!- pingveno has quit (Ping timeout: 264 seconds). 23:46:53 -!- pingveno has joined. 23:47:37 -!- Wamanuz has joined. 23:49:29 -!- ais523 has quit (Remote host closed the connection). 23:55:24 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep). 23:56:20 -!- oklofok has quit (Ping timeout: 264 seconds). 23:59:23 -!- oklofok has joined. 2010-12-15: 00:01:28 -!- oklofok has quit (Client Quit). 00:06:31 uh 00:11:55 -!- FireFly has quit (Read error: Connection reset by peer). 00:12:33 -!- FireFly has joined. 00:21:39 nooga: uh? 00:21:45 tswett: I'm waaiiiitiiiing. :p 00:24:34 Please write a C program, at most 415241 characters long, that calculates pi to one million decimal places. 00:25:44 tswett: That's not difficult, is it. 00:26:17 No, too lenient. It must be at most 165373 characters long. 00:26:26 tswett: Can it print in hex as long as the result is 1 million decimal places when converted to decimal? 00:26:42 my gf went to a girl's party 00:27:01 Yes, if it's accurate to one million decimal places. 00:28:21 and got back completely stoned 00:28:24 gerat 00:28:26 great 00:29:08 tswett: Just a minute then. 00:30:04 tswett: Or a few minutes. 00:31:06 tswett: Is it alright if I, uh, steal some code from elsewhere and adapt some of it? 00:31:07 http://www.spoj.pl/ranks/PIVAL/lang=C here's some that are limited to 4096 bytes (no code, though). 00:31:20 They presumably could go to 1 million given enough time 00:31:26 elliott: only if that code is written in plain English. 00:31:40 tswett: What if it's written in mathematicalformulas? 00:31:47 *mathematical formulas 00:32:13 Those are fine. 00:32:52 -!- poiuy_qwert has joined. 00:35:54 tswett: Oh fer gods sake, this is fiddly; I was just going to do http://en.wikipedia.org/wiki/Bailey%E2%80%93Borwein%E2%80%93Plouffe_formula in an infinite loop. 00:36:04 tswett: That's an easy way to print the entirety of pi with a simple program. 00:36:07 In hex, no less. 00:36:28 Since you don't need any arbitary-precision this or whatever. 00:36:39 tswett: Aha, wait, I think I've got it. 00:36:50 tswett: Gimme a minute. 00:39:16 tswett: Why do you want this, anywy? 00:39:18 *anyway 00:41:33 No good reason. 00:46:32 tswett: this is SO NEARLY ALMOST SORT OF WORKING 00:49:37 tswett: are you trying to kolgomorov complexitise pi? :P 00:50:37 tswett: btw i cheated *slightly* (stole one single expression that is just a basic arithmetical calculation restated in python) 00:50:40 just to be a bit lazy 00:53:13 -!- FireFly has quit (Quit: swatted to death). 00:55:34 -!- sftp has quit (Remote host closed the connection). 00:59:10 tswett: Think I've got it. 00:59:56 tswett: 245 foo.c 00:59:58 tswett: 00:59:59 #include 00:59:59 #include 00:59:59 int main(void){printf("3.");for(long double n=1,r,l=0;n<1000000;n++){printf("%x",(int)floorl(16*(l=(modfl((16*l)+(((120*n-89)*n+16) / ((((512*n-1024)*n+712)*n-206)*n+21)),&r)))));fflush(stdout);}printf("\n");} 01:00:04 tswett: Valid C99, or something in that vicinity. 01:00:13 Verification of the one million hex digits is left as an exercise to the reader. 01:00:19 Oh, wait, that can be even shorter. 01:00:51 243 foo.c 01:00:53 #include 01:00:53 #include 01:00:53 int main(void){printf("3.");for(long double n=1,r,l=0;n<1000000;n++){printf("%x",(int)floorl(16*(l=(modfl((16*l)+(((120*n-89)*n+16)/((((512*n-1024)*n+712)*n-206)*n+21)),&r)))));fflush(stdout);}printf("\n");} 01:01:11 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 01:01:15 tswett: Are you happy? :p 01:01:33 int main(void){printf("3.");for(long double n=1,r,l=0;n<1000000;n++){printf("%x",(int)floorl(16*(l=(modfl((16*l)+(((120*n-89)*n+16)/((((512*n-1024)*n+712)*n-206)*n+21)),&r)))));fflush(stdout);}puts("");} 01:01:36 One shorter! Oh the joy 01:01:39 *joy! 01:02:28 #include 01:02:28 #include 01:02:28 int main(void){printf("3.");for(long double n=1,r,l=0;n<1<<20;n++){printf("%x",(int)floorl(16*(l=(modfl((16*l)+(((120*n-89)*n+16)/((((512*n-1024)*n+712)*n-206)*n+21)),&r)))));fflush(stdout);}puts("");} 01:02:30 Shorter AND prints more digits! 01:02:45 Although the results of that one are fishy. 01:03:09 Actually the end results are fishy in general but that might just be my eyes. 01:03:35 tswett: praise plz 01:04:54 Ilari: http://marc.info/?l=openbsd-tech&m=129236621626462&w=2 01:05:04 Ilari: Alleged FBI backdoors in widely-copies OpenBSD IPSEC code. 01:06:32 -!- poiuy_qwert has joined. 01:12:28 tswett: Do you have the power to summon oerjan? 01:16:12 Ilari: http://marc.info/?l=openbsd-tech&m=129236621626462&w=2 <-- ouch 01:16:35 "The FBI-backdoors-OpenBSD story is like the NSA assassinations stories: Believable except for the minor detail that it's the wrong TLA." --cperciva 01:17:13 elliott, TLA? 01:17:16 three letter acronym 01:17:24 elliott, indeed 01:17:24 one would expect it to be the NSA wanting such backdoors, not the FBI 01:17:27 Vorpal: can i have servers+funding please 01:17:34 elliott, for? 01:17:43 Vorpal: project! 01:17:47 also /me is trolling #openbsd now >_> 01:17:51 elliott, what project 01:17:57 (okay, opaquely enough that it doesn't actually count as trolling) 01:17:58 and trolling is *never* nice 01:18:03 it's joke-trolling 01:18:21 elliott, anyway, going to sleep as I packed the backpack 01:18:28 Vorpal: the project project! parade! 01:18:30 9.21M addresses allocated from APNIC this calender month (based on delegated file dated 2010-12-14)... At this rate, IANA pool will deplete in a month (mid-January). 01:18:40 Ilari: http://marc.info/?l=openbsd-tech&m=129236621626462&w=2 :P 01:18:47 elliott, answer: no, you are being annoying vague too 01:18:53 annoyingly* 01:18:57 Ilari: Freow. 01:18:58 Vorpal: do you really /want/ me to be specific 01:19:00 pikhq: http://marc.info/?l=openbsd-tech&m=129236621626462&w=2 01:19:05 amusing if nothing else 01:19:10 elliott, sure 01:19:17 elliott, is it for kitten? 01:19:26 Vorpal: nope, it's an entirely separate project 01:19:28 Vorpal: but an excellent one! 01:19:32 elliott, what project 01:19:39 Vorpal: i want to obsolete VPSes. well, mostly. >:) 01:19:46 Vorpal: i even know how to market it! 01:19:48 elliott, details 01:20:16 elliott: Aaaah, the joys of the spy agencies spying on each other. 01:21:06 Vorpal: basically, you pay me $N/mo. where by me I mean $company. put "float" in front of a command, and it executes on $server, where you don't care what $server is. you can manage this process in various ways from the command-line -- putting it in the "background", monitoring it, killing it, sending stuff to its stdin, etc. -- and also view its output, log files (you have to tell it what those are, though -- pretty much looking through the / it 01:21:06 's in), etc. 01:21:33 Vorpal: this process is seamlessly migrated to other servers as the server load demands, and given a Xen-or-whatever allocation according to how much you're paying us, and how much you're already using, globally 01:21:49 Vorpal: you can start processes in more involved ways to make them integrate better with the system, by specifying more about how they act 01:22:08 Vorpal: the migration doesn't lose internet connections and the like, because sockets and the like go through "fd proxy" machines 01:22:13 (tl;dr custom patched libc) 01:22:23 elliott, sooo. some application level virtualisation along google apps lines? 01:22:28 Vorpal: not really, it'd be actual linux 01:22:31 Xen-based or whatever 01:22:38 elliott, but per process? 01:22:48 Vorpal: pretty much. obviously you can spawn multiple processes at a time, but yes, per "task" 01:23:03 Vorpal: the basic use-case is... you've made an IRC bot, and you've been running it locally, but now you want it up permanently 01:23:05 elliott, and how do you count fork() 01:23:06 put "float" in front of the command 01:23:08 forget about it 01:23:09 tada 01:23:11 Vorpal: "count"? 01:23:14 it goes in the same namespace 01:23:19 elliott, same or different task 01:23:19 as the original process 01:23:22 same. duh 01:23:28 "task" is up to you 01:23:28 elliott, okay, fork() + execv() ? 01:23:31 ... 01:23:31 ah 01:23:32 okay 01:23:34 right 01:23:35 YOU ARE SUCH A FUCKING NITPICKER >_< 01:23:38 that makes sense 01:23:49 Vorpal: anyway, it'd also scale to things above IRC bots 01:24:02 elliott, such as minecraft? 01:24:07 sure :D 01:24:15 for instance, the float command would try to automatically figure out what paths and files you've mentioned, and upload them (you are, of course, able to do this manually if the magic isn't working out) 01:24:21 so e.g. "mybot myconffile mydatadir/" 01:24:30 elliott, do you think you could implement it actually 01:24:34 you could also access the filesystem from afar 01:24:37 e.g., you start a web server 01:24:40 and want to upload stuff there 01:24:43 so you scp/sftp in 01:24:49 Vorpal: sure, it's all technically feasible 01:25:07 Vorpal: migrating processes w/ the patched libc for keeping FDs it'd require would be the hardest part, really 01:25:08 elliott, and the file system, this is shared in the "cluster"? 01:25:10 -!- poiuy_qwert has quit (Ping timeout: 240 seconds). 01:25:16 Vorpal: no, it's Xen-esque 01:25:23 every process gets its own root filesystem 01:25:30 (of course you could share them, by setting it up manually, I suppose) 01:25:44 elliott, so how do you properly migrate that. The fd-proxy would work fine for, say, sockets 01:25:52 elliott, but not so great if you try to mmap() files 01:26:09 Vorpal: well it'd pretty much re-mmap() them on the other side 01:26:25 elliott, can you ensure proper mmap() semantics between threads and forks? 01:26:27 Vorpal: it'll either have to be non-Linux-based at the migration level, or use some kind of kernel patch to be able to freeze and restore processes, I'll have to see about it 01:26:35 it's likely that you'll have to specifically enable migrating to another server 01:26:35 elliott, I'm thinking "database server" here 01:26:41 Vorpal: let's see if i can! 01:26:47 if not, fine, your DB server isn't migratable 01:26:56 you get shitty performance if the server gets bogged down, but what can you do? you suffer that with VPSes anyway 01:27:01 the performance of my solution is always >=VPS 01:27:07 elliott, there is linux kernel support for freezing processes 01:27:09 iirc 01:27:11 basically, this is all based on the observation that VPSes generally run a bunch of services, but they rarely *interact* directly with each other 01:27:18 and it's much easier to be able to manage them separately 01:27:36 also, the cost of entry is way too high; setting up an IRC bot involves scp, shelling in, probably setting up a screen instance if it has a useful stdio interface 01:27:36 etc. 01:27:42 as opposed to just saying "here, run this somewhere on the interwebs" 01:27:50 elliott, you need to ensure proper handling of shared memory between a db server and something using it 01:27:52 marketing strategy: can't you guess?! Cloud! Run your programs from the cloud! 01:27:55 which is annoying 01:27:56 Total cloud virtualised environment cloud! 01:28:11 Vorpal: well, SQL servers are often used over sockets :-P 01:28:15 usually, even 01:28:31 elliott, yes true, but they are over shm if local often 01:28:49 Vorpal: yeah, true ... I mean there'd be no limit to how "big" a task can be really 01:28:56 since it's the sum of your resource usage that's considered 01:29:00 rigjt 01:29:02 right* 01:29:17 it'd certainly be a technically interesting project to work on 01:29:27 the only problem is that it needs a bunch of dedicated servers to get started :) 01:30:23 elliott, resources I don't have 01:30:33 Vorpal: buy them! 01:30:58 elliott, ah, but the resource I lack here is money 01:31:11 XD 01:31:13 elliott, do like xkcd suggested and report it to the idea agency or whatever it was when someone else implement this. ;P 01:31:17 Vorpal: it's okay, you can have 50% of the profits!!!!!!!! 01:31:21 i'm an IDEA MAN 01:31:33 Halliburton is offering to pay Nigeria $250 million to drop *bribery* charges against Cheney. 01:31:49 They are bribing someone to get away with bribery. 01:32:00 pikhq, Halliburton? 01:32:10 pikhq, also, are they doing that in the open? 01:32:18 is it a bribe then technically 01:32:38 Vorpal: They do oil. 01:32:44 Vorpal: Also, no, not in the open. 01:33:20 They've also been a major military construction contractor. 01:33:40 Dick Cheney was their CEO. 01:33:46 more like cheney the dick LOL 01:34:51 elliott: I praise you, O great elliott. 01:35:37 He most certainly is a dick. 01:35:39 tswett: thank you. so why did you want that program 01:36:14 #include 01:36:14 #include 01:36:15 int main(){printf("3.");for(long double n=1,r,l=0;n<1000000;n++){printf("%x",(int)floorl(16*(l=(modfl((16*l)+(((120*n-89)*n+16)/((((512*n-1024)*n+712)*n-206)*n+21)),&r)))));}puts("");} 01:36:19 doesn't flush output after every digit, but is smaller 01:36:23 (220 chars) 01:36:27 anyone feel like golfing it? pikhq? :P 01:36:39 night → 01:39:24 elliott: Meh. 01:39:49 pikhq: but it's 1 million hex digits of pi! 01:39:58 probably, there might be an overflow in there :) 01:40:25 elliott: like I said, no good reason. 01:41:10 tswett: C'mon, I need to feel good about having written it :P 01:41:14 Since it was utterly pointless. 01:43:51 *facepalm*... 01:44:09 Gawker stored passwords. But only the first 8 characters. 01:44:14 They actually truncated passwords. 01:44:16 pikhq: That's because of DES. 01:44:57 elliott: ... 01:45:08 What, did they use *1 block* of DES? 01:45:34 SO MUCH FAIL. 01:45:49 pikhq: Abcdefgh, Joy of Man's DESiring. 01:45:56 (worst pun ever) 01:52:37 elliott: I think it's amazing how you're able to write working C code at your age. 01:53:16 You clearly understand computing better than the vast majority of people in the world. 01:54:10 tswett: Yes. Also, I am god. 01:54:17 Furthermore, I invented sandwiches. 01:54:55 elliott: which kind? 01:55:10 Mathnerd314: ALL KINDS 01:56:38 I have a language construct, which theoretically can do everything in existence. does anyone care? 01:57:01 maybe 01:57:33 Mathnerd314: there are lots of those drifting around. :) But sure, what is it? 01:58:05 tswett: I'd imagine many of us could write working C code at elliott's age. 01:58:05 quick description: "fixed-point ambiguous lazy definition" 01:58:22 But, then, we're people sitting in a channel *all about* programming. Sooo. :) 01:58:25 I have a language construct, which theoretically can do everything in existence. does anyone care? 01:58:27 I do too. 01:58:29 it's called lambda. 01:58:38 elliott: this is more powerful. 01:58:46 Mathnerd314: ...no, no it's not. 01:58:50 it can do types 01:58:52 unless it's uncomputable. 01:58:54 in which case sure. 01:59:03 but no, your construct is not more powerful than lambda. by definition. 01:59:17 It may be easier to use than lambda. 01:59:29 Mathnerd314: Lambda is Turing-complete. Therefore your construct is not more powerful than lambda. QVOD ERAT DEMONSTRANDVM 01:59:37 Qvod. 01:59:45 But if it's computable, lambda calculus can compute it. 01:59:49 tswett: That's very subjective and arguable, still. 01:59:53 I find lambda pretty easy. :p 01:59:54 elliott: theoretically, its value is undecidable in some cases. 02:00:05 s/its/my construct's/ 02:00:14 Mathnerd314: lambda too :P 02:00:26 (\x. _|_) \equiv _|_ 02:01:07 I'll ignore you and give examples 02:01:09 Mathnerd314: okay, then maybe it is more powerful than lambda. 02:01:19 Ignoring elliott is often a good plan. :P 02:01:23 a = 2 -- simple definition 02:01:31 tswett: I'm right, though. 02:01:34 a = 1; b = a -- simple assignment 02:01:41 tswett: const _|_ = _|_ 02:01:59 Mathnerd314: ok so that's two constructs (definition and assignment) already 02:02:30 elliott: no, just examples. the type is [(LHS,RHS)] 02:02:42 very well. 02:02:46 show something more interesting? :-P 02:03:39 a = 1 : a -- infinite data structure 02:04:08 ok, so right now it's haskell :P 02:04:17 or is : not part of the control structure? 02:04:26 i.e. is that "a = f x a" for arbitrary function f and value x? 02:04:47 no, (:) is just an operator 02:05:04 Mathnerd314: is it part of the construct? 02:05:05 or not? 02:05:08 a = 0 + a -- a is all numbers 02:05:31 (all elements of rings, to be precise) 02:05:38 Mathnerd314: erm, "a = 0 + a" -- a is 0 02:05:42 presumably you mean 1 + a? 02:05:48 are : and + part of the construct? 02:06:03 no, they're just operators. 02:06:10 very well. 02:06:15 more examples? show some actual computation 02:06:17 the construct finds the fixed points 02:06:30 Mathnerd314: btw, this thing is not more powerful than lambda because it /depends/ on lambda or something equally powerful 02:06:33 that is, it depends on functions 02:08:06 Mathnerd314: am i being too nitpicky :) 02:08:18 well, it does simultaneous equation solving too: a = b^2 + 1; b = a - 1 -- a is {-2,-1}, b is {-3,-2} 02:08:44 or maybe I have that wrong 02:08:46 ok ... do you have any actual implementation strategy for this? :) 02:09:01 elliott: no. but I have lots of special cases. 02:09:12 Mathnerd314: so it's not really a construct so much as a heap of special cases :) 02:10:05 elliott: no, I can describe it simply: fixed-points of the given equations 02:10:21 Mathnerd314: ok, but it's not really much of a construct if it doesn't have an implementation that isn't a heap of special cases 02:10:49 right... it's too powerful to have one implementation that works all the time 02:11:10 i think we have different definitions of power 02:11:21 but hey, it'll fit right in to mathematica :P 02:11:54 that's the main point: integrate math and programming so well you don't notice the difference 02:12:35 Mathnerd314: have you ever used mathematica? 02:12:38 you'll love it. 02:12:43 well at least until you realise how hateful it is. 02:13:00 a = 1 + a -- various types of infinity (-infinity and infinity for reals, set {0,1,2,3} for Z_4, etc.) 02:13:12 -infinity and infinity aren't reals 02:13:31 well, reals extended to limits 02:13:52 -!- poiuy_qwert has joined. 02:14:30 deewiant floating http://imgur.com/5fLbZ.png 02:14:46 * Mathnerd314 used mathematica until he met Stephan Wolfram 02:14:53 +1 02:15:05 I have not met him 02:15:08 but he seems errrrgh 02:15:56 he's funny :) 02:16:28 "my brilliant mind was correct! it's universal! i'm a genius! a genius! i tell you! p.s. thanks to ais523 who helped fellate my ego by proving it but who cares about that" 02:18:05 Mathnerd314: I'd like to see a formal definition of this construct. 02:18:34 Speaking of constructs, I've been pondering languages that are based as much as possible on a single thing. 02:18:52 Like a language where the only thing there is is the associative array, or the semaphore. 02:19:02 Or the continuation. 02:19:33 tswett: {variable assignments s.t. all equalities are satisfies} 02:19:49 s/s}/d}/ 02:20:11 Mathnerd314: ok, so it's... an equation! 02:20:33 elliott: right, I guess the key is in which types of values you have 02:20:48 what? 02:21:25 elliott: the variables can be assigned *sets* of values 02:21:44 e.g. a = {1,2,3,4,...} is a legitimate result 02:21:44 Mathnerd314: ok... so it's an equation. some equations have multiple solutions. 02:21:54 that's... a rather old mathematical result, one would think 02:21:58 elliott: but it has more solutions 02:22:04 Mathnerd314: more solutions than what 02:22:10 Mathnerd314: so it's a function that takes a set of equations, and returns the set of all values that satisfy the equations? 02:23:13 elliott: than normal equation solving. e.g. a = !a has solution {True,False} 02:23:17 c = root(n, a^n + b^n), n = 3+x 02:23:22 fuck yeah! 02:23:34 Mathnerd314: but True = !True isn't true at all 02:23:37 and False = !False isn't true, either 02:23:40 so that's a meaningless result 02:23:49 and I don't think you can define results like that even *slightly* in the general case 02:24:07 elliott: but !{True,False}={!True,!False} = {False,True} = {True,False} 02:24:24 that's why it's weirdly powerful 02:24:43 because it will *always* assign values 02:24:46 Mathnerd314: ok, but you can define that with normal equations too, more or less. 02:24:58 I mean, solving "a = !a" over sets of booleans 02:25:00 and you get that result 02:25:12 Mathnerd314: if so, then what constants and operators are allowed in the equations, and what values are considered to be possible solutions? 02:25:17 right... that was what I was saying 02:25:59 Mathnerd314: so it's an equation. :P 02:26:08 tswett: it's defined on general functions, so you can really extend it to any domain 02:26:24 elliott: but it always has solutions, which is not a property of most things 02:26:33 Mathnerd314: c = root(n, a^n + b^n), n = 3+x 02:26:35 Mathnerd314: what's the solution? 02:26:55 elliott: an equation set dependent on x 02:26:58 anyway the function that takes a set of equations and returns a set of bindings that satisfy those equations is... mathematics in a function 02:27:04 Mathematica already has your heap of special cases 02:27:06 it's called Solve 02:27:20 Mathnerd314: erm you /do/ realise it has no solutions, right? 02:27:23 it's fermat 02:27:31 Mathnerd314: well, if you say "all functions are allowed", then it simply inherits the power of all the functions that you can stick into it. 02:27:45 -!- zzo38 has joined. 02:27:54 tswett: right... so it's definitely at least as powerful as lambda 02:28:09 Mathnerd314: that's misleading. 02:28:15 It isn't "at least as powerful as"; it's all-powerful. 02:28:19 elliott: no solutions over integers, maybe. but I can construct lots of others 02:28:20 It can solve any theorem. 02:28:29 elliott: probably :p 02:28:40 Mathnerd314: c = root(n, a^n + b^n), n = 3+x, a = floor(a), b = floor(b), n = floor(b) 02:28:45 Mathnerd314: Go on, gimme a solution. 02:29:03 Mathnerd314: what you have is a bit like HQ9+B. It's a Turing-complete programming language with five instructions: H, Q, 9, +, and B. 02:29:04 Anyway, it isn't "at least as powerful as" for another reason: it doesn't replace lambda, it depends on it -- it depends on functions to work. 02:29:08 So it isn't really a control structure at all. 02:29:15 tswett: What does B stand for? :-P 02:29:22 Mathnerd314: but the instruction B simply executes the remainder of the program as Brainfuck, and that's where all the power lies. 02:29:33 elliott: everything set to infinity 02:29:40 :p 02:30:05 Mathnerd314: c = root(n, a^n + b^n), n = 3+x, a = floor(a), b = floor(b), n = floor(b), a+1 != a, b+1 != b, n+1 != b 02:30:12 Mathnerd314: your construct allows arbitrary things from set theory to be included. But set theory is already Turing-complete and more. 02:30:16 Presumably you allow !=, since it's all-powerful /anyway/ you might as well make it even more fun. 02:30:44 tswett: What /is/ the computational class of a machine that can work out every solution to a given equation, or tell you if there are none, anyway? 02:30:45 Mathnerd314: you could just say "x = the result of running the following Brainfuck program: ..." 02:30:53 Apart from "the highest computational class even theoretically possible". 02:31:06 elliott: essentially, this takes questions in set theory and answers them. 02:31:18 tswett: Yes, yes, I'm just asking a side-question. 02:31:21 Which... is a pretty high computational class. :P 02:31:24 Do you know anything about weather systems? 02:31:25 tswett: Is the computational class of a machine that can do that even /named/? 02:31:27 It's pretty insane :P 02:31:36 Yeah. I wonder how well-defined it is. 02:31:44 tswett: don't forget: it gives multiple answers too 02:32:04 it's *ambiguous*, so it's always well-defined 02:32:13 tswett: I think it's well-defined but *almost certainly* not physically possible :P 02:32:39 tswett: I mean, you can verify any theorem in O(1) time (well, if the machine can do it in O(1)). 02:32:46 More importantly: You can verify any theorem haltingly. 02:32:51 Any theorem! Any! 02:32:58 Well, any expressable in ZFC or whatever. 02:33:01 Which is an awful lot. 02:34:35 elliott: right, it can "do" the halting problem, by giving {true,false} as well as true and false 02:34:49 Mathnerd314: that... 02:34:54 Mathnerd314: no, you can't do that. 02:35:01 that doesn't make sense even in the framework of your definition 02:35:36 Do you know anything about weather systems that you can make some weather in a computer game and that the captain can sometimes predict the weather from it? 02:37:06 elliott: hmm, I'm missing the inconsistency 02:37:51 Mathnerd314: can it always return {true,false}, or only sometimes? 02:37:53 Mathnerd314: {True,False} = Halts(P,P) 02:37:58 that makes no real sense, at all 02:41:22 -!- elliott has quit (Quit: Leaving). 02:41:55 Does anyone know anything about weather in here at all? 02:47:11 Do you know which channel and on which network can help? 02:50:39 tswett: only when the input depends on the output. it returns the *least* fixed point. 02:50:51 that's not the empty set 02:52:50 hmm, I detect a distinct silence due to lack of elliott 03:24:07 " !!!" 03:52:45 -!- wareya_ has joined. 03:55:36 -!- wareya has quit (Ping timeout: 260 seconds). 04:08:00 -!- poiuy_qwert has left (?). 04:35:58 🍱 have a Unicode BENTO BOX 04:39:48 Gregor: I do not have that font 04:39:57 zzo38: No one does :P 04:40:09 It's Unicode 6, only been out for a month and a half. 04:40:44 Gregor: I believe you. 04:40:53 yûnikotò hènntô? sukề! 04:40:54 wait what 04:41:00 it's actually a bento box? 04:41:01 -!- myndzi\ has changed nick to myndzi. 04:41:12 or are you just joking, because it's a box (no character) 04:41:23 myndzi: 🏩 maybe you would like to enjoy the delicious 🍱 Unicode BENTO BOX in a Unicode LOVE HOTEL 04:41:30 lol. 04:41:58 ... They *actually put* LOVE HOTEL in‽ 04:42:34 pikhq: 👅 I am sticking my Unicode TONGUE out at your lack of faith in Unicode! 04:42:37 no, he must certainly be joking 04:42:52 unless maybe we are talking about kanji, but that was not the impression i got 04:43:30 There are many things I do not like about unicode. One is that you need a lot of unicode tables to parse properly which are wide and text direction and various other properties. 04:43:31 http://www.fileformat.info/info/unicode/block/miscellaneous_symbols_and_pictographs/list.htm 04:43:38 apparently love hotel is only hiragana 04:43:50 mycroftiv: Uh, katakana. 04:43:59 wait what 04:44:03 there really is?! 04:44:05 D: 04:44:09 Surely "rabu hoteru" should be katakana. 04:44:28 oh, i don't know 04:44:33 myndzi: There really, truly is :P 04:44:36 pikhq: I believe it probably should be too. Is that a term in Japanese that means something? 04:44:40 i didn't know if it should be katakana or not 04:44:52 but since i've only heard the term in anime i thought it was native 04:45:06 Actually I found out what it means on Wikipedia 04:45:08 also it is obvious that this is katakana, but i didn't bother to consider it 04:45:18 zzo38: It's a hotel that exists for the sake of people having sex. 04:45:31 ????? 04:45:34 It is a Japanese word though. It is based on two English words. 04:45:38 why so display only mirc 04:45:39 ラブホテル 04:45:46 i guess so, but whatever 04:45:55 Some Japanese words are a compound word based on an English word together with a Japanese word. 04:46:13 Yeah, wasei eigo (Japanese-made English) is not that rare. 04:46:23 bridge at night 04:46:24 wtf 04:46:36 And it sometimes gets put back into English! 04:46:39 http://www.fileformat.info/info/unicode/char/1f4a9/index.htm UNICODE - PILE - OF - POO 04:46:41 (e.g. karaoke, anime) 04:46:51 i mean, that doesn't even make a good symbol because it's inverted 04:46:58 HAHA 04:47:08 Oh, and Pokémon. 04:47:13 pikhq: Yes it does come back into English too sometimes! 04:47:17 o rly 04:47:23 what english word is pokemon based on 04:47:27 Yes, karaoke, anime, and pokemon are all words that partially or fully in English 04:47:31 myndzi: Pocket Monsters 04:47:47 "Pocket monsters" → "poketto monsutāzu" → "pokemon" 04:48:08 pikhq: I don't think there is a "zu" in it. 04:48:34 zzo38: Ah, sure enough, they never put that syllable in. 04:48:39 And then the words like karaoke,anime,pokemon are in Japanese, and then are used also in English. 04:49:14 Karaoke, BTW, is from "kara" (empty) and "orchestra". 04:49:20 "ON WITH EXCLAMATION MARK WITH LEFT RIGHT ARROW ABOVE" huh? 04:49:29 pikhq: That is because that syllable does not belong. It is not based on a English thing called "pocket monsters", it is based on the English words "pocket" and "monsters", therefore the "zu" does not belong. 04:49:31 And "anime" is fairly obviously a shortening of "animation". 04:49:43 pikhq: Yes, I know where the words "karaoke" and "anime" are from. 04:49:45 zzo38: Sure it does. "Monsters" is not pronounced "Monster". 04:49:51 oh, right 04:49:58 Unicode SILHOUETTE OF JAPAN 04:49:59 zzo38: Yeah, but who else does here? 04:50:00 ... yes. 04:50:03 pikhq: No it doesn't. They don't use plural in Japanese. 04:50:10 zzo38: English does. 04:50:22 why is there a bunch of japanese stuff in there, why isn't there a silhouette of micronesia? 04:50:33 zzo38: And they *usually* follow English pluralisation patterns for English words. 04:50:45 myndzi: They encoded emoji. 04:51:13 WHITE LEFT POINTING BACKHAND INDEX 04:51:15 BUT NO BLACK HAND 04:51:17 If it was coming from a English phrase called "pocket monsters", then it would have the "zu" in the end. But it is not based on a phrase, it is based on the two words individually. 04:51:18 RACIST ASSHOLES 04:51:46 zzo38: I can confirm that it was marketed as "Pocket Monsters" in Japan. 04:51:48 pikhq: How can you know? Are you Japanese?? 04:52:04 zzo38: No, but I've played the game in Japanese! 04:52:57 pikhq: Yes it was marketed as "Pocket Monsters" but that is because they turned it into Japanese and then into English words. Such combined abbreviated words like "pokemon" and "daburii" is common in Japanese. 04:53:14 myndzi: Anyways. These are all from the emoticon/pictograph set on various Japanese cell carriers. 04:53:35 myndzi: The Japanocentric nature of that should be clear. :) 04:54:12 I have played some Japanese games too, I am not Japanese either. I also read Japanese manga book, too. 04:54:28 * Mathnerd314 hates fonts 04:54:36 Should I buy unicodelovehotelforyou.com or unicodelovehotelforus.com? 04:54:36 日本語で? 04:54:56 Gregor: It depends. 04:55:10 Mathnerd314: Clearly we should all just read bits. 04:55:28 pikhq: no, we read pixel pattern 04:55:30 *s 04:55:36 Thereby solving a wide variety of i18n issues. 04:55:40 *Now* can you understand why there is no "zu" in "poketto monsutaa"? It is clear to me. Why don't you understand? 04:56:09 pikhq: we read code, not language 04:56:12 zzo38: Because it's a transcription of an English phrase. 04:56:25 pikhq: everyone knows C++, right? 04:56:39 pikhq: No it isn't. It is a transcription of two English words. It was then later translated into an English phrase. 04:56:51 zzo38: That said, Japanese transcription of English phrases can be completely and utterly *bizarre* sometimes, so whatever. 04:57:16 Come on, anybody? Real opinions? Should I buy unicodelovehotelforyou.com or unicodelovehotelforus.com? 04:57:19 Moræ make things weird. 04:57:38 Mathnerd314: I know C, I don't know much of C++. 04:57:46 Mathnerd314: Nobody knows C++. 04:58:06 pikhq: ok, but surely everyone knows English... 04:58:10 pikhq: No, some people program in C++, I think Microsoft does. 04:58:30 zzo38: They program a small subset of C++. 04:58:41 Mathnerd314: Not everyone knows English either, and some concepts are difficult to mean in English. 04:58:45 Knowledge of the whole will ruin your mind forever. 04:58:55 Which is why mathematics is used, is one thing. 04:59:12 pikhq: ok, everyone knows mathematics... 04:59:48 Sadly, no. 04:59:56 Mathnerd314: Not everyone knows mathematics either, but it is commonly known by mathematicians and so on in anywhere, and can specify things less ambiguous. Of course, it only specifies mathematical things! 05:00:59 Tell me, what you can understand from the following English phrase: charities for poor people and monsters with names starting with "A" 05:01:08 Is it ambiguous? 05:03:08 yes... ambiguous languages are the best kind 05:03:41 mathematics is ambiguous, out of context 05:04:42 Mathnerd314: Yes, out of context you cannot know what is the purpose of a mathematical formula, but that is because there is no information, not because there is multiple ways to interpret it. 05:04:51 (Even if there is multiple ways to interpret it) 05:06:19 same thing with English; you can find out 05:07:54 Yes, you can find out. Sometimes. 05:08:46 similarly in math; and if you don't understand, you ask 05:12:23 -!- pikhq has quit (Ping timeout: 255 seconds). 05:13:16 Yes. 05:30:45 -!- TLUL has joined. 06:09:15 -!- zzo38 has quit (Quit: Help! I cannot eat my own brain!). 06:37:30 -!- calamari has quit (Quit: Leaving). 07:33:34 -!- pikhq has joined. 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:06:38 -!- zzo38 has joined. 08:09:04 -!- zzo38 has set topic: ETARTNI'HC IOV AZNAREPS ENGO ETAICSAL | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 08:20:14 -!- zzo38 has quit (Ping timeout: 240 seconds). 08:23:54 -!- zzo38 has joined. 08:27:56 http://www.fileformat.info/info/unicode/char/1f499/index.htm Unicode is not for color blinds either. (also see U+1F49A..1F49C) 08:33:17 There's also green book/blue book/orange book (1f47[d-f]). 08:33:29 Sorry, 1f4d[7-9] instead. 08:33:42 I apparently have early-onset dysxelia. 08:35:26 The whole block is so random. Silhouette of Japan? Orange/blue diamonds, but red/blue circles and red triangles? 08:37:04 that's because the entire pictograms added in Unicode 6.0 are originated from Emojis, which are inherently random 08:47:35 !!! 09:23:55 -!- zzo38 has quit (Quit: To koan or not to koan. This is the koan (not the previous sentence).). 09:31:40 -!- Slereah has quit (Ping timeout: 250 seconds). 09:55:08 -!- TLUL has quit (Quit: *disappears in a puff of orange smoke*). 10:08:49 -!- Guest48752 has joined. 11:09:57 -!- Guest48752 has changed nick to Slereah. 11:29:17 -!- MigoMipo has joined. 11:41:57 -!- elliott has joined. 11:42:12 fizzie: figured out how to merge fonts yet? :P 11:45:25 Wow, FontForge truly does have a uniquely bad interface. 11:47:55 Didn't even try. It is pretty special. 11:49:38 fizzie: Okay, I've merged the two fonts ... ... HOW THE HELL DO YOU RENAME A FONT?!?!?! 11:49:49 (Thankfully merging was a direct menu item.) 11:50:01 Maybe you just start a new font and copy all the characters there. 11:50:09 (Like every other operation in the known universe other than useful ones.) 11:50:19 fizzie: No, you open the base font and merge it with the font-you-like. 11:50:23 Now how do you rename a font. :p 11:50:28 No, I mean, for renaming. 11:50:32 Oh. 11:50:41 I'm going to hope that's not the case and keep trying :P 11:50:51 Aha. 11:50:52 It's probably not a good idea, no. 11:51:29 "Droid-DejaVu Sans Mono"; I am the creative. 11:52:10 Validating... Your font contains ERRORS! NYAH! 11:53:09 HA. 11:53:14 It appears to be very DejaVu. 11:54:13 fizzie: What GUI toolkit *is* this? 11:54:58 aptitude show fontforge → Tags: implemented-in::c, interface::x11, role::program, scope::application, uitoolkit::xlib, use::editing, works-with::font, x11::application 11:55:30 fizzie: So, wait... if it uses Xlib directly, somebody actually *programmed* the buttons to have such frickin' gigantic borders? 11:55:48 Does this person still walk the streets of polite society? 11:56:02 I.. think so. The dependencies don't seem to have anything relevant, at least. 11:58:49 -!- MigoMipo has quit (Ping timeout: 240 seconds). 11:59:20 fizzie: If we act calmly and rationally, we can save humanity before it is too late. 12:00:20 Joy, the merged-the-other-way one still uses the DejaVu glyphs. I think it literally duplicates glyphs rather than selecting one, or something. 12:04:17 fizzie: " 12:04:17 The third approach was in fact the one I tried first, using Merge Fonts. 12:04:17 I removed all the non-Khmer characters from KhmerOS Freehand except space, zero-width space, zero-width joiner and zero-width non-joiner (U+200B, 200C, 200D). Then I attempted the merge. The system crashed both times I tried it." 12:04:26 Oh man, it's stable too!!!! 12:05:14 fizzie: It... has search and replace. 12:05:16 On splines. 12:05:17 What. 12:05:23 Heh. 12:06:04 I like how it has a scrollbar. 12:06:17 Like, oh yeah, have fun scrolling through Unicode, pal! 12:06:38 I think FontForge was involved when I truetypified the rfk86 font for web-use, but somehow my mind has completely blanked off any details. 12:08:16 -!- FireFly has joined. 12:08:27 I think mine is valiantly attempting to do so now. 12:08:44 Did you get a searing migraine too? 12:08:57 WOOOOO IT WORKS 12:09:04 Wait, what have I been doing for the past fifteen minutes? 12:09:07 I don't remember anything. 12:09:48 Possibly. I wrote a Perl script to generate a SVG font, and then somehow it has turned into .ttf, but I don't know how. 12:09:53 This is done in the manner proposed by W.W. Sawyer in his 12:09:53 Vision in Elementary Mathematics (Penguin Books, 1964). In 12:09:53 particular, his method avoids clothing the simple ideas of 12:09:53 addition and multiplication in the much more complex ideas 12:09:53 inherent in the decimal system. 12:09:54 --J 12:10:03 fizzie: Probably pixies. 12:12:09 Yay, I have a proper J environment with a nice font and looking-enough-like-GTK-that-you-can't-tell-it's-Java-until-you-try-and-use-it. 12:14:26 -!- yiyus_ has quit (Remote host closed the connection). 12:19:53 -!- iamcal has quit (Ping timeout: 255 seconds). 12:26:17 Man, I wish ais523 knew how confusing his patch format is. 12:27:07 -!- cal153 has joined. 12:37:35 -!- yiyus_ has joined. 12:57:21 -!- MigoMipo has joined. 12:57:29 fizzie: So when do we get X-Ray-O-Vision. :p 12:57:34 (Clearly bugging you will help!) 12:58:14 Maybe I'll put it somewhere as a communal christmas present. 12:58:30 (Except that I'm pretty sure the beta update will break it on the 20th.) 13:01:00 (The protocol doesn't have any sort of overall format, so it needs to know all the packet IDs that go through the pipe in order to be able to determine the packet length, to know where the next packet will start.) 13:02:33 Doesn't sound like good protocol design... 13:02:51 No, but I wasn't expecting it to be. 13:03:40 fizzie: Can I bribe you for early access? :p 13:08:20 -!- MigoMipo has quit (Ping timeout: 264 seconds). 13:09:20 I don't think I'm very bribable. But maybe I'll get a... uh, what's two steps before an alpha version? ... out tomorrow or so; I just need to add markers for other players, keys to look at other z-levels than the player's own in cross-section mode, surface/cross-section mode toggling with something else than a recompile, and handling of those "user removed/placed a block" packets since currently it doesn't actually update the map when you dig. 13:09:35 (Except if you place a torch, because the changing light-values will make the server send out a chunk update.) 13:11:11 fizzie: Aw, but /I/ was looking forward to the low-hanging-fruit-with-large-gratification task of adding keys to look at other z-levels. :p 13:27:24 Clearly what fizzie really needs to release his code early is a version control system to store it in. I wonder if he would like my 36-line file of scapegoat patch theory! 13:27:29 SO TEMPTING 13:30:05 -!- jix has quit (Ping timeout: 255 seconds). 13:38:30 -!- Ilari has quit (Ping timeout: 260 seconds). 13:39:05 -!- Ilari_antrcomp has quit (Ping timeout: 260 seconds). 13:41:12 <3 j 13:41:17 !y = */>:i.y 13:41:34 -!- Mathnerd314 has quit (Ping timeout: 240 seconds). 13:41:34 factorial y = multiply over increment integers y 13:44:15 f = @(y) prod(1:y) 13:44:50 fizzie: Pssht. 13:45:23 fizzie: Product of the sums of M lists of N random integers from 0 to X. 13:45:26 Go go go. 13:45:43 fizzie: (You can just put "M", "N" and "X" there, rather than making them actual parameters.) 13:45:59 Oh, and that's 0 <= random < X. 13:46:25 fizzie: My entry: */+/?M N$X 13:46:28 prod(sum(randi(X, N, M))) 13:46:37 fizzie: WHOOPS LOOK AT THAT YOURS IS LONGER 13:46:41 And more nested too! 13:46:43 How surprising. 13:47:39 fizzie: Random positive 32-bit integer calculated by setting every bit to 0 or 1 with probability 1/2. 13:48:00 #.?32$2 13:48:46 That's just random integer in the [0, 2^32-1] range. 13:48:56 fizzie: Yes, it is, but it's the implementation details that matter. 13:49:14 Well, it's going to be long and ugly if you want it like that, but just a moment. 13:49:30 fizzie: You don't think I'm /aiming/ for long, ugly and unreadable code on your part? :-P 13:50:15 sum((randi(2, 1, 32)-1) .* 2.^(0:31)) 13:50:33 fizzie: Wow, that is truly awful. 13:50:53 GUESS J IS THE PERFECT LANGUAGE HUH 13:51:08 It's a 1x32 matrix of random bits, element-wise multiplied by [2^0 2^1 .. 2^31] and then sum'd. 13:51:23 fizzie: I'd challenge you to implement a finite state machine... but, uh: [[ 13:51:23 x;:y implements a sequential machine (finite state machine, finite state automaton). x is the specification of a machine, including the state transition table, and y is the input. A sequential machine solves the problem of recognizing the “words” in the input. The machine starts in some initial state and processes the input one item at a time; given the current state and input item, the new state and output are determined by the state transit 13:51:24 ion table. The machine then proceeds to process the next input item.]] 13:51:28 I think I would win that one. :p 13:52:44 I'm sure there's a FSM toolbox, but, well, it's going to be longer than that; just the function-call parens take two chars. 13:53:13 fizzie: To be fair, x /is/ a rather ugly boxed thing: "y is any array and x=.f;s;m;ijrd is a boxed list from which ijrd or both m and ijrd may be elided." 13:53:20 But it would be shorter anyway. :p 13:53:30 fizzie: Now: A fully-functional Minecraft server! 13:53:36 Calling out to C is permitted as long as you provide the C source. 13:57:24 MATLAB's forte is the existing stuff. Let's see your J implementation of training a feed-forward neural network with Levenberg-Marquardt backpropagation; in MATLAB it's train(net,data). 14:00:02 fizzie: M-CPM-=M-tlM- 14:00:06 fizzie: Two characters shorter, I believe. 14:01:10 I am not sure if I should trust you there. 14:01:45 fizzie: M-CPM is the module name (they're named sequentially, alphabetically; not much logic to that, immediately). 14:01:53 Note: I'm full of shit; it's cat -v /dev/urandom output. 14:02:23 fizzie: But admit it... for a second you felt the pangs of using an inferior language. 14:04:53 -!- MigoMipo_ has joined. 14:04:58 Yes, though in an incident completely unrelated to this one. (I was trying to pick a random sample from a nonparametric discrete distribution which I had the PDF -- well, non-normalized, but anyway -- for, and the only single-line MATLAB solution I could figure out was pretty crappy.) 14:05:45 [~, t] = histc(rand(), [0 cumsum(d)]/sum(d)); -- to do "t = 1 .. length(d) randomly, with the probability of getting i proportional to d(i)". 14:06:11 fizzie: That's probably really short in J, but I'm too lazy and inexperienced to work it out. 14:06:46 * elliott watches Deewiant's loop-booster make a round. 14:06:50 Heh, it looks so silly when it turns. 14:06:54 -!- sftp has joined. 14:06:56 fizzie: Have you got any iron I can borrow in MC? 14:06:57 The statistics toolbox has a random() function that takes a PDF, but it doesn't take matrices; it just takes "ProbDist" class objects, and the only ones I could figure out to create were either out of ~30 families of parametric distributions, or a non-parametric kernel-smoothing-fit-to-data thing. 14:07:24 fizzie: I'm not sure why you'd store data in PDFs. ARF ARF ARF 14:07:27 Only in my safe place, and not too much. How much would you need? 14:07:37 fizzie: Enough for about... two Minecart tracks? 14:07:56 I mean, just as a unit of measurement. 14:08:12 fizzie: I can pay it back, next time I go to Mount Hoover. 14:08:30 That's, what, 12 ingots? I guess I could donate that much, but I'm not sure when I'll have time to visit the World. 14:08:37 12? Is it? Yow. 14:08:51 They look so flimsy. 14:09:03 It's |-| where the ||s are iron and - is a stick or a plank, either-or. 14:09:07 Hmm, I have 4 ores on me, but no smelty. 14:09:17 That is "either-or" in the "can't remember which" sense, not in the "anything goes" sense. 14:09:38 fizzie: Heh; increasing the height of the default window size just slightly makes the inventory and chat 1:1 pixels. 14:09:45 And the crafting grid tiny. 14:09:56 Or, well (Orwell); that is the recipe, but you do get 16 tracks out of it. 14:10:11 You just can't get them in smaller increments. 14:10:24 -!- MigoMipo has joined. 14:10:46 -!- MigoMipo_ has quit (Ping timeout: 240 seconds). 14:12:32 I haven't quite figured out the UI sizing logic. I use the 960x1200 window for playing, and the UI elements are reasonably sized; but if I open a full-screen window, they are annoyingly huge and space-wasting. I guess it scales (or at least tries to) aspect-ratio-preserving. 14:12:54 fizzie: Can Matlab's interpret-this-list-of-integers-as-digits-in-base-N function accepts arguments LARGER than the base??? 14:12:58 10 #. 1 2 3 14:12:58 123 14:12:58 10 #. 1 2 11 14:12:58 131 14:13:07 And equ 14:13:10 *equal to, for that matter. 14:13:52 1A34Z_10 = 20365 14:13:55 _10 14:13:57 that is 14:14:12 -!- MigoMipo_ has joined. 14:14:15 Wellll, yes, in the sense that it doesn't have a "interpret this list of integers as digits in base-N" function, and if you do it the way I did that rand32, it's just a sum-multiply-powers-of-N thing, and there it of course will. 14:15:03 >> sum([1 2 11] .* 10.^(2:-1:0)) 14:15:03 ans = 14:15:03 131 14:15:36 1.3 #. 1 2 3 14:15:36 7.29 14:15:43 fizzie: Fractional bases, does it do them? Presumably. 14:16:23 fizzie: What about complex bases? 14:16:24 3j10 #. 1 2 3 14:16:24 _82j80 14:16:26 (_ is negative) 14:17:02 -!- MigoMipo has quit (Ping timeout: 265 seconds). 14:17:31 Well, What does 3j10 mean? 3+10*i? 14:17:49 >> sum([1 2 3] .* (3+10*j).^(2:-1:0)) 14:17:49 ans = 14:17:49 -82.0000 +80.0000i 14:17:51 I guess so. 14:18:04 fizzie: 3j10 is 3+10i, yes. 14:18:06 There might be a complex-number literal format, too. 14:18:23 Yes, the * in my expression is superfluous. 14:18:36 Is that J I see there? 14:19:04 FireFly: Yup. 14:19:11 There's more J in the logs if you look closely. 14:19:30 fizzie: The string 1,2,3,4,5,6,7,8,9,10, interpreted in base N!, where N is a random number picked by selecting 8 random bit values and interpreting them in base 2. 14:19:34 And N! is of course N factorial. 14:19:37 (!#.?4$2)#.>:i.10 14:19:37 2036 14:19:39 Your entry? 14:20:05 (It is acceptable to say "I don't like you." at this point.) 14:22:04 I don't like the "random bit values in base 2" thing, since it's completely identical to "random integer in the range" value-wise. 14:22:13 But I can write that down if you like, assuming it fits in my terminal. 14:22:35 fizzie: OK, I'll redo the random bit values in base 2 thing. 14:22:49 With something more horrible, I guess. 14:24:08 fizzie: N = The base-3 interpretation of 2 random numbers in the range [0,1] (at least I think 1 is included; it might not actually be), both multiplied by ten. 14:24:11 You still need to do the factorial thing. 14:24:14 (!3#.10*?2$0)#.>:i.10 14:24:14 5.39227e234 14:24:15 Your move. 14:24:39 fizzie: (The rest of the challenge still applies.) 14:25:49 >> sum((1:10) .* prod(1:sum(10*rand(1,2).*[3 1])).^(9:-1:0)) 14:25:49 ans = 14:25:49 2.3719e+177 14:26:13 fizzie: rand(1,2) includes 1.5, surely? 14:26:30 No, it's 1x2 sized matrix of [0, 1) uniform-distributed random numbers. 14:26:39 Ah. 14:26:46 fizzie: The string 1,2,3,4,5,6,7,8,9,10, interpreted in base N!, where N is a random number picked by selecting 8 random bit values and interpreting them in base 2. 14:26:54 fizzie: Does it do /all/ of that? 14:26:59 Except with the new N definition. 14:27:03 Just checking. 14:27:47 Yes. prod(1:...) does "N!", taking that .^(9:-1:0) gives the proper products, that's multiplied elementwise by 1:10 (the list [1 2 3 .. 10]) and then the result is sum'd together. 14:28:24 fizzie: OK, that's not bad, not bad. 14:28:32 Still not as good as (!3#.10*?2$0)#.>:i.10, of course. 14:28:48 I did the "base 3 interpretation of two numbers times ten" a bit cheatingly, though, with that manual [3 1] multiplication, but... as I said, there's no real "interpret in base-N" built-in. (Unless there is.) 14:28:49 That 2$0 is probably clearer as 0 0. 14:29:11 fizzie: I'd randomise the number of digits but I'm not that cruel and it'd overflow J's integer. 14:29:50 s. 14:29:52 (Probably.) 14:30:04 Well, okay, so it's not an integer. 14:31:09 Using a separate function for base-n "decoding" would simplify the MATLAB version a lot. 14:31:11 >> bn = @(b,d) sum(d .* b.^(length(d)-1:-1:0)); 14:31:11 >> bn(prod(1:bn(3, 10*rand(1,2))), 1:10) 14:31:11 ans = 14:31:11 6.5004e+291 14:31:22 Well, maybe "a lot" is a bit too much to say. 14:31:42 Btw, elliott, I find http://www.jsoftware.com/help/dictionary/vocabul.htm to be a great reference for J 14:32:00 FireFly: Yeah, you can get that by hitting F1 inside J. 14:32:05 Ah 14:32:09 Very useful 14:32:17 I usually use the command-line frontend 14:32:24 FireFly: Why would you do that :) 14:32:25 And there's a built-in factorial, but it takes more characters; prod(1:N) vs. factorial(N). 14:32:25 Err 14:32:31 The terminal-based one, that is 14:32:33 I dunno 14:32:45 (Okay, so the GUI one is Java. It is nice though.) 14:34:31 Hmph, making Minecraft texture packs looks like a pain. 14:34:38 (I want to see what 1x1 textures look like.) 14:37:27 Oh, wait, it looks like it's all in one file. 14:44:36 i gotta hand it to matlab on the readability here. ...not that line noise isn't fun too. 14:47:26 Gnaa, horrible dumbing-down of text: http://www.shopexplorer.com/news/squarehead-audioscope-zoom-in-on-sound.html -- "Once a subject has been selected, the required microphone picks up the audio by amplifying the source, while the other mics are turned down." That's so not how it works; all sensible beamforming systems use the whole set of microphones and the known-from-geometry delays, not just "hay we have a directional microphone pointing at the source, let' 14:47:26 s turn that on". 14:47:48 What's worse, it's like they've taken the description directly from the company page, except then removed the parts they didn't understand. 14:48:27 "AudioScope is based on the same principle as sonar. A dish with an array of microphones can locate and record sound anywhere in a large room. A speaker's voice in an auditorium is picked up by all the microphones on the dish. Depending on the position of each microphone, the sound will reach them at a slightly different time. We use this to our advantage." → "It works in a similar way to sonar; a central dish houses a number of microphones within it that poi 14:48:28 nt in slightly different directions and a camera is used to view the source area. Once a subject has been selected, the required microphone picks up the audio by amplifying the source, while the other mics are turned down." 14:49:12 (I'd like to hear that in action, incidentally.) 14:49:35 an electronic implementation of auditory attention! 14:49:55 does it do spectral analysis to narrow in on the interesting part of the spectrum too? 14:50:57 They don't tell that sort of stuff, of course, since it's a commercial product. 14:51:20 i want to see a robot that is capable of the cocktail party effect, capable of integrating visual cues such as a speaker's mouth moving, with the lingual auditory information 14:51:45 s/lingual/linguistic/ 14:52:32 That's being done in several places, I think. 14:52:40 Academically, I mean. 14:52:51 I'm not aware of any actual product-development projects. 14:54:42 ah, you don't know who is doing it? 14:56:13 Not offhand. The auditory/visual combination thing was one of the topics in our "learning from multiple sources" course; I've forgotten the name of the robotics EU project that was doing exactly that that a visiting guy from another university talked about; and I just recall seeing rather many references to the whole multimodality thing, it's sort of a buzzword. 14:56:34 And we have the sort-of-invented-here ICA, which is typically mentioned in the cocktail party context. (It's a blind source separation thing, not very directly related.) 14:58:09 oh man, this interactive film thing is such a great idea. imagine a movie that takes place entirely at a party, in one house, and there are cameras everywhere, and you can interpolate between them using standard vision techniques so as to watch from any angle...and you can track any sound source. 14:58:25 and EVERY partygoer is involved in some interesting story that unfolds over an hour 14:58:56 man, you could spend days watching that 14:59:11 You could spend quite a long making that, too. :p 14:59:50 well, yes 14:59:58 but no longer than it takes to make any movie 15:00:19 since you'd just have to actually rig a house with camoflauged cameras and sound-zoom things 15:00:28 and then have the actors rehearse for ages 15:00:41 and finally, film the entire thing in one continuous shot 15:00:48 like a stageplay 15:01:02 Oh, the robotics folks were also doing gait recognition. Someone had the audacity to ask them about whether it is, you know, actually useful for something. 15:01:21 -!- augur has quit (Remote host closed the connection). 15:01:38 is there a punchline? 15:01:45 -!- augur has joined. 15:02:20 i'd say it would be useful in strong AI for threat recognition 15:04:26 Well, he sort of avoided the question; there was something about how it works from a longer distance than face recognition. 15:06:58 -!- augur has quit (Ping timeout: 276 seconds). 15:07:23 They have (a bit silly) demo-video at http://www.youtube.com/watch?v=FjyN7qjkKjU but I'm not promising anything mind-blowing there. 15:10:10 -!- jix has joined. 15:15:26 [[“vim doesn’t support interactive buffers? after 20 years? well, I’m a hacker. I’ll just add support for it.” 15:15:26 sees quality of vim codebase, runs frantically in opposite direction 15:15:27 “who needs a console in their editor anyways!!!! I am all about the unix philosophy, etc”]] 15:16:42 -!- nopseudoidea has joined. 15:19:47 Heh. I sort-of wanted a nice VIM/Matlab integration, didn't work out all that well. 15:20:07 Dammit computer, I'm only using 1.4 GiB out of 3.7 GiB of RAM I have. 15:20:15 So stop lagging, even if both my cores are being used intensively. 15:20:18 By... uh... Firefox, I guess. 15:20:59 fizzie: It's from “vim doesn’t support interactive buffers? after 20 years? well, I’m a hacker. I’ll just add support for it.” 15:21:00 sees quality of vim codebase, runs frantically in opposite direction 15:21:00 “who needs a console in their editor anyways!!!! I am all about the unix philosophy, etc”. 15:21:00 erm. 15:21:08 fizzie: It's from “vim doesn’t support interactive buffers? after 20 years? well, I’m a hacker. I’ll just add support for it.” 15:21:08 sees quality of vim codebase, runs frantically in opposite direction 15:21:08 “who needs a console in their editor anyways!!!! I am all about the unix philosophy, etc” 15:21:10 GOD DAMMIT FIREFOX 15:21:12 I PRESSED CTRL+C THAT MEANS COPY 15:21:20 THOU SHALT NOT COPY. 15:21:23 fizzie: It's from http://kevinw.github.com/2010/12/15/this-is-your-brain-on-vim/. 15:21:27 Used the menus to cut/paste that, how shameful. 15:21:47 fizzie: I was really expecting it to end with "and then I switch to Emacs", what with the flurry of non-modal modifier key+foo binding. 15:22:00 And the Y-combinator-browsin'-in-vim, and the vimscript hatred. 15:22:04 But no; he's a wimp! 15:22:13 (Because Vim users are wimps, obviously.) 15:22:27 A vimp. 15:23:15 "tries impressing someone watching over shoulder with a macro, only to mess up and uppercase/rot13 the entire file" 15:26:58 Yes, I personally have rot13 bound to C-x x. 15:27:02 It's just that useful. 15:27:56 I'm ashamed to admit I usually just paste into a tr a-z n-za-m. 15:31:31 fizzie: I'm not ashamed to admit that I basically never use rot13 :P 15:32:25 Whenever I see gibberish, I rot13 it just in case. 15:37:48 -!- augur has joined. 15:42:57 -!- Sgeo has joined. 15:43:19 I think I was suffering from IRC deprivation 15:47:38 -!- nopseudoidea has quit (Quit: Quitte). 15:49:19 -!- Phantom_Hoover has joined. 15:50:44 Hmm. I assumed that topic was elliott being silly as always, but then I saw that zzo set it and I now fear that Cthulhu has awoken. 15:51:32 MWAHAHA 15:53:23 I'm caffenatired 15:54:40 Also, I'm terrified of lonliness. Protip: Do not play One Chance. Do not watch walkthroughs of it. Especially if you're me 15:54:57 vim 15:56:16 Sgeo, assuming you found out about that from qntm? 15:56:22 Phantom_Hoover, yes 15:56:35 It's a shoddy copy of "Every Day the Same Dream", FWIW. 15:56:57 If the plot's similar, remind me to never play that either 15:57:11 Naw, the plot is different (and not crap). 15:57:23 But the gameplay and several scenes are identical. 15:57:45 As long as the final scenes aren't identical 15:57:49 i've shown vim to my windows based friends and they said "what, this is retro man, like uh, does it have any keyboard shortcuts?" 15:57:49 -!- augur has quit (Remote host closed the connection). 15:57:50 * Sgeo shudders 15:58:24 -!- jix has quit (Read error: Operation timed out). 15:58:49 well, they can't code in visual studio 2008 so they download huuuuuuge visual studio 2010 15:58:49 Sgeo, One Chance's plot is... terrible. Particularly, as pointed out by Hughes, it seems to say "forget saving the world FAMILY FAMILY!!!1111!!" 15:59:37 Phantom_Hoover, badness of plot doesn't stop me from having nightmares 16:02:31 I just saw the "good" ending 16:02:35 It still haunts me 16:02:46 -!- jix has joined. 16:05:23 elliott, have you still not read Fine Structure? 16:05:32 Phantom_Hoover: Not the end yet! 16:05:33 Phantom_Hoover, he's read some of it 16:05:51 elliott, you are lagging behind Sgeo! 16:05:54 For shame! 16:06:17 has Sgeo played eversion 16:06:20 if not, I recommend Sgeo plays eversion 16:06:24 it's a fun 8-bit game about happy things! 16:06:43 I could swear I've seen that name before in connection with another game 16:07:41 Sgeo: It's like this: http://zarawesome.googlepages.com/screenie.png 16:09:36 Could be like Erfworld -- looks cute, full of death 16:10:50 Sgeo: Did you think that when playing Super Mario Brothers? :P 16:11:06 elliott, think of the GOOMBA HOLOCAUST. 16:11:07 http://tvtropes.org/pmwiki/pmwiki.php/SugarWiki/Eversion?from=Main.EVERSION this seriously reads like a trick 16:11:15 Sgeo: http://zara.verge-rpg.com/eversion173.zip 16:11:18 You're so damn sceptical. 16:12:02 http://tvtropes.org/pmwiki/pmwiki.php/DarthWiki/Eversion uhhh 16:12:42 Sgeo, it's a lie! A troper lie! 16:14:24 LIES 16:14:25 -!- MigoMipo_ has quit (Read error: Connection reset by peer). 16:16:13 http://tvtropes.org/pmwiki/pmwiki.php/DarthWiki/Eversion 16:16:15 oops 16:19:39 -!- ais523 has joined. 16:22:20 hi ais523! 16:22:27 ais523: I implemented the basic patch logic of Scapegoat in Haskell. 16:22:29 *scapegoat 16:22:33 Vorpal: http://imgur.com/ymmLk.png 16:22:41 hi 16:22:46 sorry, trying to do something at work here 16:22:56 ais523: ok, i'll shut up then :) 16:22:56 elliott, I'm on far + fancy, no way I'll open browser atm 16:23:00 I'm actually at a friend's house (for the Internet connection), but luckily ssh -X works 16:23:03 Vorpal: wget|feh 16:23:08 fizzie, feh? 16:23:13 ais523, did you tell some newspaper or other that you know 6 esolangs? 16:23:27 -!- jix has quit (Read error: No route to host). 16:23:38 I mean, 6 is pathetic, especially as you've *invented* at least 3. 16:23:43 6? that seems unlikely 16:23:53 Vorpal: feh is an image viewer 16:23:59 I seem to remember making a comment along the lines of "around 20, 30 if you count esolangs" when asked how many languages I knew 16:24:02 but it was an estimate 16:24:17 POOR JOURNALISM STRIKES AGAIN 16:24:30 Waiting for TreeFrame to appear... 600 seconds left. 16:24:32 Waiting for TreeFrame to appear... 599 seconds left. 16:24:33 TreeFrame has appeared! 16:24:37 this application does not fill me with confidence 16:25:02 :D 16:26:26 I love estimated completion times. 16:26:43 You'd think the people who write them have no concept of precision. 16:27:22 hmm, turns out it crashes immediately after you make any change 16:27:30 so I'm having to restart it every time I change anything 16:27:34 TreeFrame has appeared! sounds like something from a MMORPG. 16:27:50 fizzie, Pokemon, surely? 16:28:46 TreeFrame has evolved to TreeFrameFactory! 16:29:07 Phantom_Hoover: I suspect it's a timeout, not an estimated completion time 16:31:13 fizzie, hmm. 16:31:26 There's an esolang in this! 16:36:49 Wait, cgi scripts can't give arbitrary status codes? 16:36:52 HTTP status codes? 16:37:21 -!- SaFi2266 has joined. 16:38:38 Hi all 16:38:38 Totally newbie here 16:39:22 hi SaFi2266 16:39:42 elliott: I fear I'm doing something insane; I just set up Evolution over ssh -X so I could send emails from work from home 16:39:58 ais523: I... 16:40:03 ais523: everyone who invented mail protocls hates you 16:40:08 SaFi2266: hi, this channel is about esoteric programming languages 16:40:09 ohh hello 16:40:10 *protocols 16:40:18 elliott: why? 16:40:39 ais523: because the whole point of IMAP etc. is to be able to use local programs to access any remote server :) 16:40:43 sorry 16:40:48 SaFi2266: sorry? 16:41:08 elliott: oh, indeed 16:41:14 but I am discovering the irc I am new 16:41:16 I'm actually using IMAP on the remote server 16:41:24 ais523: and yet you forward evolution over X why?! :) 16:41:32 i suppose that computer might only have, like, outlook 16:41:34 in which case okay 16:41:36 so I can attach files that exist at the other end 16:41:40 heh 16:41:42 elliott: It might be a server only visible in the LAN 16:41:48 actually, I think Thunderbird was set up already, but I just typed Evolution out of habit 16:41:59 There's sshfs for that sort of thing. 16:44:15 And CGI scripts can product many status codes, if not all; you just output a Status: header in front. 16:44:26 In Perl, failing to put quotes around a string you're trying to print should not print the string 16:44:28 * Sgeo glares 16:44:45 What happened was it printed out a garbled thing 16:45:03 Use something sensible like "use strict; use warnings;". 16:45:23 The strictness will disable "bareword" strings in many places. 16:46:38 At least I think it will. 16:47:02 elliott: anyway, I agree that forwarding a mail client over X pretty much makes no sense 16:47:33 Laziness! 16:47:41 but at least I have two now, Thunderbird doesn't work if you're logged in twice from different workstations 16:47:43 If the server isn't SSL-enabled it can. 16:47:52 ais523: Oh, I can't resist; here's an example of the code: 16:47:54 c1 = Insert Start End "Hello, world!" 16:47:54 c2 = Insert c1 End "Goodbye, cruel world!" 16:47:54 c3 = Replace c1 "Ow, my ear." 16:48:01 *Main Data.Maybe> map snd . fromJust $ applyLis [c1,c3] empty 16:48:01 ["","Ow, my ear.",""] 16:48:07 (where the first and last strings are Start and End) 16:48:15 (and map snd discards blame information) 16:48:23 *Main Data.Maybe> map snd . fromJust $ applyLis [c1,c2,c3] empty 16:48:23 ["","Ow, my ear.","Goodbye, cruel world!",""] 16:48:24 but: 16:48:38 *Main Data.Maybe> applyLis [c1,c3,c2] empty 16:48:38 Nothing 16:48:46 the end 16:48:47 elliott: I've done most of the urgent and fast tasks now 16:48:57 hmm, how does it handle a merge conflict? 16:49:05 ais523: you mean a failing patch? 16:49:07 it just returns Nothing :) 16:49:10 applyLis evaluates in order 16:49:18 it's just a convenience function 16:49:31 it doesn't validate that the patches make sense unorderedly 16:50:15 ah, OK 16:54:22 i want a language with no syntax 16:54:30 elliott, down? 16:54:34 Vorpal: do 16:54:35 yes 16:54:38 nooga: any of the zerodimensional ones? 16:54:40 nooga: forth 16:54:56 ais523: anyway, the apply function is surprisingly neat! 16:55:40 ais523: http://sprunge.us/gZDO the guards are basically a half-assed excuse for not writing a proper validation function, and the do notation is unnecessary, but it's surprisingly simple 16:55:48 Line is just (Change,String); i.e. (blame,text) 16:58:21 ais523: basically, I think this can work 17:02:22 -!- Sgeo has quit (Ping timeout: 240 seconds). 17:03:00 elliott: yeah, i thought about forth 17:03:21 nooga: But you concluded that it has syntax? 17:04:04 it's RPN 17:04:08 nooga: Wrong. 17:04:22 nooga: It just so happens that by default, the mathematical words defined happen to act in a manner similar to RPN calculators. 17:04:29 Forth itself has no syntax. 17:04:51 but then, with such language i would enable programmers to define syntaxes just like we define functions 17:04:54 and then 17:04:59 nooga: Indeed, that is possible in Forth. 17:05:04 Words can read from the input stream directly. 17:05:07 This is a very common technique. 17:05:12 shit 17:05:15 You can implement C as a Forth word, even, like this: 17:05:23 run-c int main(void) { return 0; } SPECIAL-END-C-MARKER 17:06:18 but if i'd like to use forh words between run-c and SPECIAL-END-C-MARKER... 17:06:28 nooga: Sure, you can implement that as part of run-c. 17:06:50 run-c int main(void) { return HERE-COMES-SOME-FORTH 3 1 2 + - OK-THE-FORTH-IS-OVER-EMBED-THE-TOP-OF-STACK-INTEGER-INTO-THE-PROGRAM; } SPECIAL-END-C-MARKER 17:07:09 nooga: In fact, : -- the word definition word -- is implemented like run-c, except that it uses the existing "read a Forth word" procedure. 17:07:21 It simply reads each word, and executes its immediate version. 17:07:26 That is it. 17:07:30 And then terminates on ;. 17:07:49 -!- jix has joined. 17:13:08 elliott, you said you found dungeons. Found any records? 17:13:24 Vorpal: I was blatantly lying. 17:13:27 Sorry. :p 17:13:38 -!- augur has joined. 17:13:38 elliott, so where did you get the TNT? 17:13:44 or was that a lie too? 17:13:48 Vorpal: I didn't. >_> 17:14:05 elliott, so you never used any tnt? 17:14:09 Nope. 17:14:15 right 17:14:35 The time I said I spent dungeoning was, in fact, spent doing nothing at all. 17:14:42 hah 17:14:55 elliott, so there goes my plan for public jukebox at subtree 17:17:30 hmm, when did this become #minecraft? 17:19:10 ais523: since we all bought minecraft 17:19:29 ais523: in fairness, the alternatives would be silence, or /other/ off-topic stuff 17:20:13 or scapegoat? 17:20:26 I seem to remember this channel used to have ontopic discussions more often 17:20:29 also, offtopic discussions more often 17:20:38 ais523: yes, the minecraft playing has been ... excessiev 17:20:41 *excessive 17:25:26 ais523: I'd make a #scapegoat, except it'd never get any activity ever. 17:25:32 Project-specific IRC channels rarely do. 17:25:47 indeed 17:28:03 elliott: well, #ubuntu tends to be pretty crowded 17:28:06 especially around releases 17:28:14 ais523: Ubuntu is a pretty big project :P 17:30:15 elliott, incidentally, what was your response to my (awesome) naming scheme for Mitosis? 17:30:34 Phantom_Hoover: Um, I believe I ignored it. 17:30:45 elliott, :( 17:40:17 elliott, down? 17:40:33 BJAODowN 17:40:45 elliott, ? 17:40:48 Phantom_Hoover: "Please don't list this on a work's page as a trope. 17:40:49 Examples can go here, on one of this page's subpages, or the work's YMMV tab." 17:40:54 Phantom_Hoover: TV Tropes: Now with YMMV tabs. 17:53:23 fungot, what is your opinion on the matter? 17:53:23 Phantom_Hoover: or something weird like a preprocessor. it creates external files with the code. perhaps in gcc-specific projects, though... 17:56:36 * pikhq finds it *incredibly* strange that international telephone calls have additional rates. 17:57:03 It's not like sending packets over the Atlantic costs much more than sending packets to the other side of the country. 17:57:20 pikhq: what people are charged for something depends not on what it actually costs, but on what people are willing to pay for it 17:57:42 ais523: Aaaand people are morons. 17:57:42 Fuck. 17:58:48 * pikhq would like to replace large parts of humanity with rational actors. 17:58:56 It would make *so much* of economics work better! 18:01:42 haha 18:01:52 pikhq: you forgot well-informed 18:01:55 pikhq: how would you ensure that that rationality was common knowledge? 18:02:11 coppro: Ah, right. That too is important. 18:02:22 quintopia: Rationality isn't knowledge, it's a property! 18:02:53 pikhq: nothing will change if your world is full of rational actors that still think everyone else is irrational and uninformed 18:02:57 pikhq: also a functioning justice system 18:03:03 you need to make those facts common knowledge to change anything 18:03:43 quintopia: Rational, well-informed actor, then. 18:03:45 which means proving to all these people that you have the power to make that change.... 18:04:05 coppro: A set of rational, well-informed actors would probably be inclined to create such a system. 18:04:06 -!- Sgeo_ has joined. 18:04:12 coppro: But, yeah, we could really do with that. 18:04:37 pikhq: The problem is the other set of rational, well-informed actors with money 18:04:43 who don't want a functioning justice system 18:04:47 because they can have more money that way 18:04:48 Those, we lynch. 18:05:01 pikhq: once per day, majority vote? 18:05:01 PRAISE THE FRENCH REVOLUTION 18:06:57 oh 18:07:13 * quintopia votes elliott as mob 18:07:26 he's a sneaky bastard. he has to be mafia. 18:09:19 pikhq: The problem is the other set of rational, well-informed actors with money 18:09:19 who don't want a functioning justice system 18:09:24 coppro: not rational, well-informed, utilitarian actors with money 18:09:30 rational, well-informed, selfish actors, sure 18:11:58 elliott, down? 18:12:18 Vorpal: No 18:12:38 Deewiant, yes from here 18:12:42 -!- fizzie has quit (Read error: Operation timed out). 18:12:48 Yes, you and elliott left 18:12:57 Deewiant, so maybe it only works from .fi now 18:13:28 Or Welho 18:13:33 Deewiant, hm 18:13:33 -!- fungot has quit (Read error: Operation timed out). 18:14:13 Deewiant, "no route" 18:14:34 well bbl, will make food 18:15:35 -!- fizzie has joined. 18:21:22 "NOT INDICATED FOR CHILDREN OR THOSE OF A NERVOUS DISPOSITION." 18:21:26 https://chrome.google.com/extensions/detail/jeoacafpbcihiomhlakheieifhpjdfeo Glee. 18:26:04 I'm tempted to watch a Let's Play 18:26:14 But that's what screwed me over on Monday... 18:32:25 -!- SaFi2266 has quit (Quit: Ex-Chat). 18:32:55 Ugh, need to conserve battery badly 18:49:17 pikhq: Nice. 18:49:30 pikhq: But does it have a Firefox version? :p 18:53:30 * Sgeo_ wonders if LAWS_OF_REDDIT is still alive 18:55:31 * Sgeo_ falls asleep on the chair 18:55:36 The chair... of DOOM 18:55:44 But seriously, just a chainr 19:00:16 elliott, down? 19:00:21 -!- Ilari has joined. 19:00:25 Nwod. 19:00:33 elliott, nwod? 19:00:39 Indeed. 19:00:50 Vorpal: strrev("dowN") as well as a bit like "nod" 19:01:29 -!- pingveno has quit (Read error: Connection reset by peer). 19:01:47 -!- pingveno has joined. 19:04:22 -!- cheater99 has quit (Ping timeout: 240 seconds). 19:14:13 I surrender 19:14:21 I'm going to watch a blind LP of Eversion 19:14:29 Which is the best such LP? 19:15:04 Sgeo_: QuantumCrayons 19:15:16 at least, it's the one I watched 19:15:31 and it's hilarious 19:15:40 Sgeo_: http://www.youtube.com/watch?v=PBKvtQtKf0s 19:15:44 ty 19:15:49 ignore the suggestions sidebar 19:15:49 :P 19:15:52 * Sgeo_ wishes he had headphones with him :/ 19:16:52 How blind was QC? To the level of not knowing how dark it would get? 19:17:30 -!- cheater99 has joined. 19:17:58 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds). 19:18:16 Why was there a banner saying something in Russian, why did I click it, and how do I get YouTube to not be in Russian? 19:18:46 Going to go to comp. lab to get work done 19:18:47 BBL 19:18:49 Sgeo_: He had no idea. 19:19:47 elliott, :D 19:19:49 Sounds fun 19:20:44 Sgeo_: It's very long -- some 14 parts or something -- because after he did the first ending he repeatedly failed at getting the good ending. 19:24:16 -!- Sgeo_ has quit (Ping timeout: 240 seconds). 19:25:30 http://www.thingiverse.com/thing:5141 It's a CNCable transistor. 19:37:17 "JavaScript is usually used to add dynamic behavior to sites, to improve the user experience orthogonally to the actual presentation of information. Pornography sites, contrarily, rarely need such additions, as a user presented with the data will improve the user experience themselves." 19:41:56 +1 20:03:53 -!- oerjan has joined. 20:07:30 pikhq: oh god 20:07:40 tswett: Do you have the power to summon oerjan? 20:07:43 obviously not :D 20:07:44 why do your courts suck so much 20:07:45 http://yro.slashdot.org/story/10/12/15/1922205/First-Sale-Doctrine-Lost-Overseas?from=rss 20:08:49 oerjan: i want you to work out some complex-sounding yet ultimately meaningless mathematics based on scapegoat patches 20:09:03 is that topic sort of like the _opposite_ of saying the lord's prayer backwards? 20:09:05 -!- zzo38 has joined. 20:09:59 elliott: ah. i guess in that case you may have triggered my intrinsic magical defenses against work. no wonder tswett's summoning didn't work. 20:10:15 oerjan: i've even stated it in haskell for you! 20:10:36 argh 20:14:01 oerjan: the language you helped father. 20:14:05 by greatly aiding in its development. 20:14:11 in fact i'd say you probably invented half of haskell. 20:16:59 dark: 3d3d3d 20:17:04 light:9b9b9b 20:18:05 * oerjan notes those don't sum to ffffff 20:18:29 Do you think some kind of semi-dynamic analysis could be made that can work with TAVSYS to make it check things such as proving the game is always in a winnable state, or that things must be done in a certain sequence in the game, and so on? 20:18:53 oerjan: indeed 20:19:19 elliott: BUT THAT MEANS YOU HAVE BROKEN THE DUALITY BETWEEN LIGHT AND DARKNESS 20:19:23 oerjan: "Lasciate ogne speranza, voi ch'intrate" is not the Lord's Prayer. 20:19:38 Er. 20:19:42 and since the sum < FFFFFF, not in the correct direction either 20:19:51 Right, it's sort of the opposite of the Lord's Prayer. So yes, precisely. 20:20:09 oerjan greatly aided in the development of Haskell? 20:20:20 yes, he's in the haskell 98 report 20:20:21 :D 20:20:31 tswett: apart from the ridiculous hyperbole, there _might_ be a trace of truth there 20:20:41 The man himself is in the Report? 20:20:56 Ugh... doing Fsck on these disks takes a long time... 20:21:01 yeah they extracted some of my organs and embedded them 20:21:10 in a typesafe way 20:21:34 tswett: apart from the ridiculous hyperbole, there _might_ be a trace of truth there 20:21:36 SO EGOTISTICAL 20:21:56 (just a scheduled one, not unclean shutdown) 20:25:16 it would appear that clog has murdered all the other bots here 20:26:20 or maybe clog just should be very very afraid 20:29:16 Deewiant, mc crashed 20:29:20 Deewiant, null pointer 20:29:25 hah 20:31:33 coppro: ... FIRST SALE DOCTRINE. 20:31:45 pikhq: YES 20:31:47 coppro: You are MOTHER-FUCKING KIDDING ME. 20:32:20 THAT IS BULLSHIT. 20:32:24 FUCKING BULLSHIT. 20:35:29 Fuck the US. I'm moving to the Moon. 20:37:33 -!- cheater99 has quit (Quit: Leaving). 20:38:05 yeah move to the secret nazi base there 20:38:06 pikhq: I think the decision that the right not to be searched without a warrant doesn't apply within 100 miles of a border or any international airport is even more ridiculous 20:38:16 I mean, what place in the US isn't? 20:38:28 -!- cheater99 has joined. 20:38:51 ais523: Very very ridiculous. 20:39:02 ais523: ... *100 miles of an international airport too*? 20:39:05 Okay, then. 20:39:09 That leaves us... Uh. 20:39:12 ais523: wait, what 20:39:16 Parts of Alaska. 20:39:51 I do not like the submission rules of arXiv and viXra. I should propose the following: 20:40:13 * You must submit a DVI file containing no specials, and using only fonts in the font repository. You may submit fonts to the font repository. 20:40:30 * In addition to the DVI file, your submission must contain exactly one attachment, no more, no less. 20:41:22 coppro: Yeah, it has been ruled that the 4th amendment's "search and seizure" clause does not apply within 100 miles of a border. 20:41:35 Actually, that it doesn't apply "at the border". 20:41:50 Where "the border" is a 100 mile strip from a land border or sea cost. 20:42:01 * The attachment must be in one of the following formats (optionally compressed by gzip): .tex .w .web .zip 20:42:11 pikhq: wait what 20:42:12 link 20:42:13 This is actually used. Border patrol actually has inland checkpoints. 20:42:14 * It must be valid free cultural works. 20:42:22 http://www.aclu.org/national-security_technology-and-liberty/are-you-living-constitution-free-zone 20:42:28 http://www.aclu.org/technology-and-liberty/fact-sheet-us-constitution-free-zone 20:42:28 * Pornography is not permitted. 20:43:14 Some 2/3rds of the US population lives within the "border". 20:43:33 * You must include a form with your submission including title, authors (which are allowed to be anonymous if wanted, but you are not allowed to lie about who the author is), short description, and tags/categories. 20:43:46 * Submission is done using HTTP or FTP. 20:43:59 pikhq: goddamit your country 20:43:59 Do you think these submission rules are better? 20:44:13 coppro: It is very literally a police state. 20:44:53 coppro: We also set up "free speech zones" for protests. You can be arrested for protesting outside of them. 20:44:54 Oops, one more attachment format: .tar 20:45:22 zzo38: any restrictions on what can be inside the tarball or zip archive? 20:46:13 pikhq: my interpretation of free speech is that you can say what you like, but other people aren't obliged to give you communication channels 20:46:17 ais523: No, although someone can report it if it is considered to contain improper things. 20:46:36 ais523: The government, however, is obligated not to stop you. 20:46:43 pikhq: indeed 20:46:46 ais523: And they do. 20:47:05 hmm, are any of the amendments more or less intact? 20:47:29 ais523,pikhq: I agree with your interpretation of free speech. Nobody is obliged to give you communication channels but the government is obligated to not stop you from free speech. It makes sense. 20:47:31 Ironically, the 2nd amendment is probably the least abused. 20:47:59 which one's that? 20:48:05 not being american, I don't have them memorised by number? 20:48:07 Right to bear arms. 20:48:09 ah, yes 20:48:20 well, the spirit of the 2nd is completely gone 20:48:22 I presume you meant "of the amendments naming rights". 20:48:34 the idea was that people should be able to form private militias to defend themselves against the government 20:48:40 and that seems a little unlikely 20:48:52 People still can form private militias, and the crazies actually *do*. 20:48:53 pikhq: hmm, although they mostly name either rights or restrictions 20:48:54 FLOODY TIME 20:48:55 ---: I keep thinking "Fujita, what does your enhanced scale say about the tornado's power level? IT'S APPROXIMATELY TWOOOOOOOOOO!" 20:48:55 CDGregorR: It's not Fujita's enhanced scale, it's Fujita's scale, enhanced. 20:48:55 ---: Fujita, what does your scale, enhanced, say about the tornado's power level? IT'S APPROXIMATELY TWOOOOOOOOOO! ... enhanced 20:48:56 or else repeal each other 20:49:00 CDGregorR: FUJITA IS DEAD 20:49:03 ---: Zombie Fujita, what does your scale, enhanced, say about the tornado's power level? Nnnnnnngngggggggggnngh! ... enhanced 20:49:04 ais523: Or change procedural details. 20:49:05 pikhq: yep, but a private militia isn't going to do a lot against the US army 20:49:11 not being american, it may be disturbing that i _do_ know 1, 2 and 5 by number. no guarantees of having their _content_ correctly... 20:49:18 *cough*Iraq*cough* 20:49:33 oerjan: Eh, those are the ones that Americans actually know. 20:49:36 pikhq: well, it could work defensively, I suppose 20:49:39 I also do not live in United States. 20:49:47 but that would lead to a lot of bloodshed yet not get anywhere 20:49:57 zzo38: *GASP* um canadian then? 20:50:12 oerjan: They may actually be aware of the details of others, but not actually know them by number. 20:50:18 hmm, -0800 timezone 20:50:20 oerjan: I live in Canada. You might be able to figure out from my IP address my service provider too 20:50:26 i certainly had the impression you were north american 20:50:31 that's pretty west for most parts of North America 20:50:33 (for instance, most Americans are probably aware that Prohibition was created and repealed via amendments) 20:50:35 And from the timezone you can figure out the province. 20:51:05 I haven't been west of Ottawa 20:51:33 You'll probably find most everyone unaware of the 9th and 10th amendments. 20:52:15 (9th states the enumeration of rights is not comprehensive, 10th states that any powers not given to the federal government are for the states or the people.) 20:52:44 wow, 10's abused a lot 20:52:52 and what does 9 do, if anything/ 20:52:55 it's like Agora's R101 20:53:45 ais523: Nominally, it means that the government does not grant rights at all, but that there are rights completely independent of it, and that the government should not infringe them. 20:54:05 ais523: In practice, it means that people like to use the Bill of Rights as toilet paper. 20:54:17 * oerjan also may have a vague idea of 13 and 14, if he recalls the numbers right 20:54:36 pikhq: Where in the constitution does it say separation of church and state? :P 20:54:42 coppro: 1st. 20:55:10 pikhq: I'm kidding 20:55:18 I'm not! 20:55:22 I was referencing the fact that someone actually asked that at a political debate 20:55:26 a /candidate/ 20:55:28 Does it need to say separation of church and state? I agree with separation of church and state, but does the law need to say it explicitly? 20:55:42 zzo38: Look at US political debate. 20:55:48 zzo38: It needs to be the most explicit thing. 20:55:50 zzo38: Yes. 20:55:51 Yes it does. 20:56:02 and apparently the establishment clause is not sufficiently clear 20:56:03 zzo38: there are enough idiots in politics that even if you do say something explicitly, some people won't get it 20:56:45 Also fun is people who shout "treason" like crazy in the US. 20:56:54 Treason is actually defined *in the Constitution*! 20:56:57 pikhq: that one's happened here 20:57:07 zzo38: i vaguely recall reading that before the amendment that extended the bill of rights to apply to states and not just congress, there were states in the US that had an official religion 20:57:11 Perhaps I don't know because I don't live in United States. If I did live there, probably I would know. But I don't want to live in United States. If I have too much money I can make up a country instead. 20:57:13 People are accusing Assange of treason! 20:57:29 pikhq: does treason including sharing state secrets? 20:57:33 pikhq: I know, and he isn't actually American 20:57:34 coppro: No. 20:57:44 pikhq: ok then 20:57:50 (ours does, but only to wartime enemies) 20:58:01 (but public revelation could arguably count if we have a wartime enemy) 20:58:55 coppro: Treason in the US is levying war against the US. 20:59:06 Or giving aid to the US's enemies in war. 21:00:32 The section of the US code defining treason and its punishment also states that you must owe allegiance to the US in the first place. 21:00:44 Making it literally impossible for a non-US citizen to commit treason in the US. 21:01:08 people are furious enough in the UK at Sweden apparently trying to abuse our legal processes 21:01:11 wrt Assange 21:01:59 It amazes me the effort that Sweden is going to to get Assange. 21:02:13 The punishment for what he's accused of is a ~$700 fine. 21:02:36 Seriously. They are expending all their effort on a slap on the wrist. 21:03:28 pikhq: in which case it somewhat amazes that assange doesn't simply agree to the extradition - the UK is no less likely than Sweden to give him further trouble, is it? 21:03:52 (it the US should ask for an extradition, say) 21:03:53 oerjan: I think he's objecting on principle 21:04:02 *amazes me 21:04:18 I do not like the submission rules of arXiv and viXra. I should propose the following: 21:04:19 oerjan: He did turn himself in as soon as an arrest warrant was out for him in the UK. 21:04:19 oh jesus christ 21:04:27 also, why would you extradite someone over a $700 fine? 21:04:29 oerjan: And now he is simply going through the full court process. 21:04:31 * Pornography is not permitted. 21:04:34 but what about Gregor's papers 21:04:37 ais523: Even worse. 21:04:38 and all the pornography-detection result 21:04:41 (which is actually real) 21:04:51 ais523: He's not even wanted for the punishment of the $700 fine. 21:04:52 pikhq: hm i guess he might simply just want to have things as much in the media as possible 21:04:57 pikhq: as far as I can tell, everyone's complying with due process so far, both the UK and Assange 21:04:59 ais523: He's wanted as a witness *regarding* the case. 21:05:10 pikhq: so who's the accused, then? 21:05:13 ais523: He is. 21:05:28 elliott: Descrobe about Gregor's papers. 21:05:30 hmm, I think I'm missing something here 21:05:58 ais523: The prosecution is being all sorts of crazy. 21:06:25 this feels more like an SCO scale of crazy 21:06:32 zzo38: Gregor's papers have involved analysis of pornographic websites. 21:06:44 He got charged. The charges were dropped. The charges were picked up again. He stayed around for a couple *months* waiting for them to ask for a deposition. He then left to the UK. *Then* they wanted him in court. 21:06:45 You are allowed to describe things relating to pornography if it has possible scientific merit, your paper is just not allowed to include any pornography itself. 21:06:50 zzo38: also, there is plenty of legitimate research which includes (censored) pornography; mostly work on content detection, to help block pornographic materials. 21:07:00 zzo38: But Lenna! 21:07:01 these images are required to demonstrate the strengths and drawbacks of the methods 21:07:38 elliott: If it is sufficiently censored that only the part necessary for scientific research is included, you may include it. 21:07:50 zzo38: ok, and why does it matter if it's not censored? hypothetically 21:08:07 The only thing that is prohibited is explicit pornography that is not related to the scientific issue at hand. 21:08:12 i mean, if you're going to start censoring pornography, might as well add a "and no instruction on how to make bombs either!" clause 21:08:15 it seems strange to single pornography out 21:08:26 ais523: Oh, and crazier. He has actually told the prosecution he would be entirely willing to give a deposition outside of Sweden. 21:08:40 Instructions to make bombs are permitted. Pornography is also permitted as long as only relevant parts are included. 21:08:45 zzo38: do the current guidelines include anything about pornography? otherwise, _why the heck mention something almost completely irrelevant to the archive_? 21:08:51 pikhq: I think someone's milking this for publicity, but am not entirely sure who 21:08:54 perhaps, everyone involved at once 21:09:17 By disallowing pornography I didn't mean to prohibit legitimate scientific research. I mean to prohibit someone posting free pornography there so that people can just watch pornography all the time. 21:09:29 elliott: btw, I need your help to defeat an Agoran scam 21:09:30 If you want to watch pornography, you can find it a lot elsewhere. 21:09:36 without 8 objections 21:09:42 so I need all the objections I can get, really 21:09:44 oerjan: i think, and this is just a wild guess here, that zzo38 really dislikes pornography 21:09:51 elliott: you don't say 21:09:52 ais523: no, I like scams, sorry 21:09:54 You could also link to it in your article if it is important. 21:10:02 I can't imagine elliott ever defeating a scam 21:10:13 coppro: maybe with another failed scam that just happens to stop the other one working, accidentally :D 21:10:17 elliott: well, the scam itself is boring, it's just an escalator by changing the number of objections needed to block a ratification from 1 to 8 21:10:25 whereas getting 8 people to agree on anything is a lot more fun 21:11:30 ais523: Oh, and meanwhile, people in the US Justice Department are trying to *find* things to charge Assange with. 21:11:48 ais523: And Senators are wanting to make an ex post facto law regarding this. 21:11:59 If your file contains such things as the permitted kinds of pornography, or profanity, or whatever else like that, you should tag it as such "pornography", "profanity", and so on. 21:12:11 pikhq: I know, it's hilarious 21:12:17 pikhq: why not just "being Julian Assange is illegal?" 21:12:18 you people are just so bad at government 21:12:19 So that people who do not like to watch it can filter it out. 21:12:22 that seems pretty foolproof 21:12:33 doesn't even need to be retroactive 21:12:38 coppro: Not that the UK is any better. 21:12:50 coppro: They're wanting to ban protests in response to the recent student protests. 21:12:53 Yes, ban protests. 21:13:03 pikhq: legislators are saying this? 21:13:03 Because *that's* going to help. 21:13:03 you can give him a slap on the wrist the first time, then successively higher punishments for not ceasing the behaviour 21:13:09 pikhq: I haven't heard anything of that, and I'm in the UK 21:13:22 pikhq: Is there some kind of constitution that disallows banning protests? 21:13:24 there was even a discussion about whether to use water cannon or not, and they decided no 21:13:27 http://www.independent.co.uk/news/uk/crime/student-protests-may-be-banned-altogether-if-violence-continues-2160620.html 21:13:31 zzo38: the UK doesn't have an explicit constitution 21:13:34 zzo38: constitution? uk? hah 21:13:46 Thankfully not Parliament. 21:13:48 pikhq: broken link 21:13:56 If your file contains such things as the permitted kinds of pornography, or profanity, or whatever else like that, you should tag it as such "pornography", "profanity", and so on. 21:13:57 zzo38: fuck that 21:13:58 pikhq: oh, ok 21:14:03 oh, no it isn't, I forgot the l at the end 21:14:16 oh, it's just the London police force 21:14:22 ais523: what about the european human rights convention? i'm sure you're a member 21:14:33 oerjan: Yes, yes they are. 21:14:38 they're all embarrased at the moment because someone broke Prince Charles' car's window 21:14:42 it wasn't even bulletproof or anything 21:15:03 ais523: how do you know that wasn't intentional :D 21:15:06 oerjan: we are 21:15:23 ais523: that sounds a little reckless. 21:15:28 the way protesting in the UK goes, is you're supposed to tell the police in advance 21:15:28 elliott: Anything wrong with this kind of tagging? 21:15:43 and they make sure that there isn't going to be a huge riot or anything 21:15:43 oerjan: In a comical way that doesn't directly give the courts to invalidate an Act of Parliament, but hey. 21:15:46 hm i wonder if the norwegian king has a bulletproof car. i know the prime minister does. 21:15:54 Erm, give the courts the power to 21:16:01 and the police are really embarassed at the moment because everyone knew the protest was happening, and yet they screwed up 21:16:55 it is a little strange that the heir to the throne can drive around in an ordinary car in the middle of a riot... 21:17:00 I'd say what actually happened was a little inevitable 21:17:13 it seems that the police considered shooting, but decided against it 21:17:38 (the police in the UK generally aren't armed, there are a few armed officers but they're generally only deployed when there's reason to think they might be necessary, say in response to armed criminals) 21:17:54 ais523: That's much saner than the US. 21:18:02 Example: If the author owns a store for selling pornography, they may identify themself as the owner of such a store. You may not include the logo if it is pornographic (unless it is important to the article in some way), but you may link to it. 21:18:16 pikhq: indeed 21:18:29 ais523: US police are all armed, and they have an actual *paramilitary unit* they use in response to armed criminals. 21:18:32 it also means, if you see an armed policeman, you know something serious is going on 21:18:33 Does it makes sense now? 21:18:40 pikhq: ah. norway has made laws to give some conventions precedence over our ordinary laws, including that one. 21:18:46 (the armed policemen generally carry really big and obvious guns so everyone knows they're armed, incidentally) 21:18:54 http://upload.wikimedia.org/wikipedia/commons/6/65/Members_of_the_37th_Training_Wing's_Emergency_Services_Team_at_Lackland_AFB.jpg THESE ARE FUCKING POLICE. 21:19:39 Yes, those are assault rifles. 21:20:20 all our police are armed 21:20:23 thanks to you 21:20:42 Oh, and these guys are also used for riot control. 21:20:53 And searches. 21:22:04 norwegian police isn't usually armed either 21:22:11 Especially no-knock warrants, where your first indication of their wanting to do anything is *breaking down your door and threatening your life if you don't comply*. 21:22:38 the UK police famously do that at dawn 21:22:53 but they normally don't shoot at you, just arrest you if you don't comply 21:23:50 Maybe you should be permitted to eat yourself as defense against threats made against you by the police. 21:24:03 If you fire back at all you will be charged with assault. 21:24:17 zzo38: not really, what if the person makes bombs? 21:24:21 Except in Texas, where their trespassing gives you full license to kill them. 21:24:37 i mean, why do you have a rule against pornography -- which is almost irrelevant in this case -- and no rules against, say, bigotry? 21:26:37 elliott: Because anything should be allowed in these articles. Only, some people do not like to watch pornography, so you should not include it if it is not necessary. Anyways, the article must be a DVI file containing no specials. You may use profanity in your article, but you may not use profanity in the title unless the article is related to such things (for example, a article about brainfuck programming language may contain the word "brainf 21:26:52 zzo38: some people do not like to read statements of racial hatred 21:26:55 why isn't that banned too? 21:27:14 elliott: It is banned in submissions that do not have the tag "racial hatred" assigned to them. 21:27:27 zzo38: okay. what about papers containing the word "weasel" 21:27:32 some people do not like to read that word 21:27:34 so surely it should be a tag? 21:28:44 elliott: No, it isn't a common enough thing to worry about, like racism and profanity and so on, are. But since some people disagree with restrictions against profanity, it is still allowed as long as it is tagged as such. 21:29:30 I love the way zzo38's comment was cut off after the f of brainfuck 21:29:35 If you want to read article only about mathematics, you may tag search "+mathematics", but if you want only articles about mathematics that have no profanity, you can tag search "+mathematics&-profanity". 21:29:37 after the n, here 21:29:48 zzo38: okay, then why isn't pornography allowed, but just in articles tagged "pornography"? 21:29:49 different server, probably 21:29:53 ais523: ...uck programming language may contain the word "brainfuck" in its title). 21:30:02 that's just the most hilarious place to cut it off in a discussion about censorshi 21:30:05 *censorship 21:30:52 elliott: I suppose it can be allowed in articles tagged "pornography". You are right about that. 21:32:00 My concern is that some people might want to go there only to view pornography. It doesn't seem likely, especially that you must submit a DVI without specials and that any picture file attachments must be in an archive file instead of directly, So maybe it doesn't matter. 21:32:55 fizzie: Gregor: no bots today 21:33:03 elliott: See? 21:33:31 Okay. 21:34:01 zzo38: there is a general principle that you don't make up rules for things that aren't likely to be problems 21:35:20 s/don't/shouldn't/ 21:35:23 oerjan: In that case, such a rule should not be required. Just the tagging rule can be used. 21:36:21 You can have many kind of search functions, for example if you want to find only an article that will fit on letter-sized paper. 21:37:24 why would anyone search based on that? 21:37:34 even if the article had the wrong paper size, it could be scaled 21:37:53 oerjan: It's international Bot Awareness Day 21:37:59 Gregor: ah 21:38:06 -!- HackEgo has joined. 21:38:07 -!- EgoBot has joined. 21:38:13 `echo hi 21:38:28 hi 21:38:33 it's slow even when it just entered... 21:38:33 ais523: I suppose it could also be recompiled from source if you modify the source files for the document. 21:39:03 But it might still be something you want to search. You might also want to search by filesize, by number of pages, by attachments, by tags, etc. 21:39:08 `addquote I love the way zzo38's comment was cut off after the f of brainfuck that's just the most hilarious place to cut it off in a discussion about censorshi 21:39:11 250) I love the way zzo38's comment was cut off after the f of brainfuck that's just the most hilarious place to cut it off in a discussion about censorshi 21:39:13 Or by which fonts are used.... 21:39:16 oerjan: It's slow ESPECIALLY when it's just entered. 21:40:07 Gregor: i had this idea that it was slow because it sometimes needed to dredge itself up from a cache, and that that wouldn't apply if it just had done something including entering 21:40:30 oerjan: stop making me want to delete every quote :D 21:40:54 elliott: what's wrong about that one? :( 21:41:11 oerjan: oh never mine :D 21:41:14 mind. 21:42:09 oerjan: Pretty much. 21:42:30 except for the including entering part, apparently 21:43:16 I suppose other things you might want to have search criteria is: title, author, date, description, filename, fonts, etc. And possibly a few more in the case of literate programs. 21:43:59 oerjan: Today must be the national No Bots Day. 21:44:54 oerjan: eh? 21:45:01 i meant the omission of the p, thought it was intentional 21:45:20 elliott: er that last was a response to Gregor 21:46:04 wat 21:46:06 okay 21:46:06 :P 21:46:10 elliott: well we may never know but i doubt it :) 21:47:24 -!- fungot has joined. 21:47:35 `delquote 250 21:47:35 :p 21:47:44 *poof* 21:48:09 -!- Mathnerd314 has joined. 21:48:21 elliott: :( 21:48:59 oerjan: oh fine add it back :P 21:49:24 `revert 21:49:26 Done. 21:50:19 "•In Frankfurt, they call them wieners (after Wien, or Vienna). In Vienna, however, they call them frankfurters. The fact that neither city wants to claim credit for them might tell you something. 21:50:22 oerjan: erm let's hope that worked :D 21:50:24 `quote 250 21:50:26 No output. 21:50:29 `quote 249 21:50:32 249) oklofok: I don't watch House, no. oklofok: I prefer knowing how medicine actually works. 21:50:43 elliott: huh why not? 21:50:55 (from yesterday's iwc annotation, updated) 21:51:11 "The Android operating system consists of 12 million lines of code including 3 million lines of XML, 2.8 million lines of C, 2.1 million lines of Java, and 1.75 million lines of C++.[19]" 21:51:15 XML?! 21:51:38 afk 21:51:48 maybe it's because it's so verbose 21:51:55 `revert 21:51:57 Define "line". 21:51:57 Done. 21:51:58 `quote 250 21:52:01 No output. 21:52:03 `help 21:52:04 Runs arbitrary code in GNU/Linux. Type "`", or "`run " for full shell commands. "`fetch " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ 21:52:43 -!- ais523 has quit (Remote host closed the connection). 21:53:17 oerjan: so is the p intentional or not :P 21:53:21 if not i'll add it with the p 22:13:01 "Every physicist wants to violate Einstein, but thus far the great man has remained pretty chaste." 22:13:29 `addquote "Every physicist wants to violate Einstein, but thus far the great man has remained pretty chaste." --Kode Vicious 22:13:35 250) "Every physicist wants to violate Einstein, but thus far the great man has remained pretty chaste." --Kode Vicious 22:14:48 elliott: the absense of the p is the whole _point_ of the quote, sheesh (and it was ais523's mistake, not mine) 22:14:57 *absence 22:15:01 oerjan: right 22:15:05 oerjan: re-add it then :P 22:15:20 yes but why didn't the revert work? 22:15:35 was there some privmsg reverted instead? 22:16:52 `addquote I love the way zzo38's comment was cut off after the f of brainfuck that's just the most hilarious place to cut it off in a discussion about censorshi 22:16:53 251) I love the way zzo38's comment was cut off after the f of brainfuck that's just the most hilarious place to cut it off in a discussion about censorshi 22:17:04 oerjan: i think revert only works with a revision number nowadays 22:17:10 oh 22:17:18 `revert 266 22:17:20 Done. 22:17:21 `quote 250 22:17:22 250) "Every physicist wants to violate Einstein, but thus far the great man has remained pretty chaste." --Kode Vicious 22:17:25 hm 22:17:26 or not :D 22:17:27 `quote 250 22:17:28 250) I love the way zzo38's comment was cut off after the f of brainfuck that's just the most hilarious place to cut it off in a discussion about censorshi 22:17:30 there 22:17:34 `addquote "Every physicist wants to violate Einstein, but thus far the great man has remained pretty chaste." --Kode Vicious 22:17:34 251) "Every physicist wants to violate Einstein, but thus far the great man has remained pretty chaste." --Kode Vicious 22:17:52 ...what >_< 22:18:06 that line is brilliant 22:18:06 `cat bin/revert 22:18:07 pretty sure he meant to finish that with "censorshit" 22:18:07 No output. 22:18:19 oerjan: no, it's okay 22:18:25 oerjan: just sometimes, it takes a while to merge the repository 22:18:32 oh 22:18:34 oerjan: basically, "`A" and then "`B" both execute in separate repositories 22:18:42 oerjan: then, after they finish, an "hg commit" is done 22:18:48 and then it tries to merge it into the main repository 22:18:53 so sometimes you have to wait 22:19:02 not separate repositories, just separate / checkouts 22:20:04 `quote 249 22:20:05 249) oklofok: I don't watch House, no. oklofok: I prefer knowing how medicine actually works. 22:20:29 `quote 22:20:30 128) Darn, now I can't acknowledge the reference you were making. 22:22:10 `pastenquotes 22:22:11 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.11835 22:22:13 olsner: quote feast for you 22:23:46 ooh, there was one of mine in there 22:24:29 `quote olsner 22:24:31 175) i think of languages as tools, there is no holy grail of languages even if there's no holy grail, that doesn't mean cups of crap is ok \ 222) olsner, FINALLY NOTHING BETWEEN ME AND WORLD DOMINATION! \ 223) DAMN YOU, I'm leaving olsner, FINALLY NOTHING BETWEEN ME AND WORLD 22:25:27 `quote 223 22:25:28 223) DAMN YOU, I'm leaving olsner, FINALLY NOTHING BETWEEN ME AND WORLD DOMINATION! 22:25:42 `delquote 222 22:25:43 *poof* 22:25:47 `quote olsner 22:25:48 175) i think of languages as tools, there is no holy grail of languages even if there's no holy grail, that doesn't mean cups of crap is ok \ 222) DAMN YOU, I'm leaving olsner, FINALLY NOTHING BETWEEN ME AND WORLD DOMINATION! \ 238) elliott: just to bring you up to speed, you are 22:26:13 `quote fuck 22:26:14 249) I love the way zzo38's comment was cut off after the f of brainfuck that's just the most hilarious place to cut it off in a discussion about censorshi 22:26:23 `quote 238 22:26:24 238) elliott: just to bring you up to speed, you are now my baby nephew. wtf, elliott is a nephew and his uncle is here? what Heck yes I'm elliott's uncle. 22:27:25 `quote f.ck 22:27:26 No output. 22:27:32 `quote f\.ck 22:27:33 No output. 22:27:46 ...what happened to yon regexen? 22:28:12 `cat bin/quote 22:28:13 #!/bin/sh \ allquotes | if [ "$1" ]; then \ if [ "$(($1+0))" = "$1" ]; then \ sed "$1q;d" \ else \ egrep -i -- "$1" \ fi \ else shuf -n 1; fi 22:29:17 `quote f\\.ck 22:29:17 No output. 22:29:21 `quote f\\\.ck 22:29:22 No output. 22:30:22 `quote f\(\.\)ck 22:30:22 No output. 22:30:30 `quote fuck 22:30:31 249) I love the way zzo38's comment was cut off after the f of brainfuck that's just the most hilarious place to cut it off in a discussion about censorshi 22:30:53 `quote ck 22:30:55 3) Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have definitely weakened... More practice is in order. \ 4) that's where I got it rocket launch facility gift shop \ 9) Lil`Cube: you had cavity searches? not yet trying to 22:31:15 Do you know if you can quote search to result only the numbers? 22:31:19 `quote mm. 22:31:20 No output. 22:31:49 zzo38: you could sed the result? 22:31:53 ...what happened to yon regexen? 22:31:56 good question 22:32:14 i am assuming some horrible shell escape disease here 22:32:19 `run x="f.ck"; [ "$(($x+0))" = "$x" ] && echo poop 22:32:20 No output. 22:32:24 `run x="f.ck"; [ "$(($x+0))" = "$x" ] && echo poop; echo pang 22:32:25 No output. 22:32:27 what. 22:32:34 `run x="f.ck"; [ "$(($x+0))" = "$x" ] && echo poop 2>&1; echo pang 22:32:35 No output. 22:32:37 oerjan: Yes, make a new program quotesearch that you can do that? 22:32:39 `run x="f.ck"; [ "$(($x+0))" = "$x" ] && echo poop 2>&1; echo pang 2>&1 22:32:39 wtf 22:32:39 No output. 22:32:44 zzo38: no, no real reason for it to exist 22:32:48 you can just sed 22:33:06 elliott: um that _shouldn't_ trigger that condition, should it? 22:33:07 elliott: Then you will run it in a shell. 22:33:38 `run echo no output 22:33:39 no output 22:33:44 oerjan: but i had an echo after it 22:33:56 elliott: oh 22:33:56 zzo38: the programs are shell scripts anyway 22:34:08 elliott: Yes. 22:35:52 `run quote ck | sed 's/).*$//' 22:35:53 3 \ 4 \ 9 \ 10 \ 13 \ 41 \ 43 \ 57 \ 61 \ 87 \ 88 \ 110 \ 123 \ 128 \ 129 \ 163 \ 164 \ 177 \ 186 \ 189 \ 217 \ 224 \ 238 \ 239 \ 241 \ 249 22:36:37 `run quote ck | wc 22:36:38 26 569 3294 22:37:07 `run quote zzo38 | wc 22:37:08 5 95 565 22:37:27 `quote . 22:37:28 No output. 22:37:33 `quote \. 22:37:34 No output. 22:37:40 `run quote "." 22:37:41 No output. 22:37:48 `run quote "\." 22:37:49 No output. 22:37:51 `run quote "\\." 22:37:52 No output. 22:37:55 `run quote "\\\." 22:37:55 No output. 22:37:58 `run quote "\\\\." 22:37:59 No output. 22:38:02 `run quote "\\\\\." 22:38:02 No output. 22:38:50 That means there is something wrong with it and you have to correct that program. 22:39:41 `run quote elliott | wc 22:39:42 11 194 1181 22:39:50 `run quote esoteric | wc 22:39:50 1 19 105 22:39:53 `run if [ "f.ck" ]; then echo yes; else echo no; fi 22:39:54 yes 22:40:52 `run quote Gregor | wc 22:40:53 17 342 2102 22:41:09 * pikhq wonders why Amazon doesn't offer products not sold in the local domestic markets... 22:41:26 `run quote oerjan | wc 22:41:26 12 222 1318 22:41:31 `run if [ "$(("f.ck"+0))" = "f.ck" ]; then echo yes; else echo no; fi 22:41:31 No output. 22:41:33 `quote f(u|x)ck 22:41:34 No output. 22:41:34 Surely they could make *some* money off of import gamers or something. 22:41:37 `quote felt 22:41:39 No output. 22:41:40 `quote bin/quote 22:41:42 No output. 22:41:43 `cat bin/quote 22:41:44 #!/bin/sh \ allquotes | if [ "$1" ]; then \ if [ "$(($1+0))" = "$1" ]; then \ sed "$1q;d" \ else \ egrep -i -- "$1" \ fi \ else shuf -n 1; fi 22:41:55 `run quote Japan | wc 22:41:56 0 0 0 22:41:57 `run allquotes | egrep -i -- "f.ck" 22:42:00 249) I love the way zzo38's comment was cut off after the f of brainfuck that's just the most hilarious place to cut it off in a discussion about censorshi 22:42:03 ... 22:42:09 i say oerjan fixes it 22:42:12 * elliott runs away screaming 22:43:13 Can a file be uploaded to HackEgo? Is there a FTP or something to do so? 22:43:29 But *no*, the only way to get something from Japan via Amazon is to pay exhorbitant shipping & handling fees. 22:43:34 `run sh -c 'if [ "$(("f.ck"+0))" = "f.ck" ];' 2>&1 22:43:36 /bin/sh: Syntax error: end of file unexpected (expecting "then") 22:43:41 oops 22:43:49 (¥2,700 per shipment! That's ~$27!) 22:44:02 `run sh -c 'if [ "$(("f.ck"+0))" = "f.ck" ]; then echo yes; else echo no; fi' 2&>1 22:44:03 No output. 22:44:26 oh wait 22:44:41 `run sh -c 'if [ "$((f.ck+0))" = "f.ck" ]; then echo yes; else echo no; fi' 2&>1 22:44:42 No output. 22:45:09 zzo38: there's a wget i think 22:45:12 pikhq: There are some things they won't ship from Japan. But I have managed to order things from Japan though a local Japanese book store. 22:46:11 oerjan: Is it possible to copy the other way too? 22:46:22 hm 22:46:39 `run echo "$((f.ck+0)" 22:46:40 No output. 22:46:53 oerjan: one more ), but aha 22:46:55 `which paste 22:46:55 /tmp/hackenv.32135/bin/paste 22:46:56 i think it's escaping 22:47:00 `run echo "$((f.ck+0))" 22:47:01 No output. 22:47:22 zzo38: paste 22:47:38 and then download from repository 22:48:36 `run cat bin/paste 22:48:37 #!/bin/bash \ if [ ! "$1" ] \ then \ PASTE=- \ else \ PASTE="$1" \ fi \ \ PASTENUM="$RANDOM" \ \ mkdir -p $HACKENV/paste \ \ echo 'http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.'"$PASTENUM" \ cat "$PASTE" > $HACKENV/paste/paste."$PASTENUM" 22:49:03 Why is there no FTP? 22:49:20 ask Gregor 22:49:41 * pikhq needs a job. 22:49:49 well for one thing the machine probably doesn't accept outside connections... 22:50:07 hm except web, obviously 22:50:41 `run echo "$((f.ck+0))" 2&>1 22:50:42 No output. 22:50:50 no error message :( 22:50:59 `run sh -c 'echo "$((f.ck+0))"' 2&>1 22:51:00 No output. 22:51:23 `run sh -c 'echo hi "$((f.ck+0))" ho' 2&>1 22:51:24 No output. 22:51:31 They don't put other connection allow? On my computer I allowed outside connection for a few different services and might add more later. You can do similar if you need to or if you want to. 22:51:59 s/You/Gregor/ 22:52:24 the rest of us cannot escape the sandbox 22:52:27 I mean in general. 22:52:38 And not necessarily on HackEgo, either. 22:52:44 oerjan: i'll fix it in a bit 22:53:02 But Gregor should put FTP or whatever other connection in HackEgo if there is a use for it. 22:53:06 elliott: good because i have no idea what $((...)) even _does_ :D 22:54:22 `run echo "$((2+2)" 22:54:23 No output. 22:54:27 `run echo "$((2+2))" 22:54:28 4 22:54:37 ok now i have _some_ idea 22:54:54 `run echo "$((a+2))" 22:54:55 2 22:55:02 `run echo "$((f.ck+2))" 22:55:03 No output. 22:55:17 `run echo "$((r.ck+2))" 22:55:18 No output. 22:55:44 elliott: i suspect maybe $(()) simply doesn't support this string stuff? 22:56:02 `run echo "$((2 . 2))" 22:56:03 No output. 22:56:10 `run echo "$((a . b))" 22:56:11 No output. 22:56:22 Let's see which ports I have available for incoming connections (although not all of them have servers on it all the time): 25 70 80 194 9876 22:56:23 duh 22:56:54 (I have servers on 25 and 9876 only when needed, and then I turn it off.) 22:59:39 oerjan, zzo38: You have an HTTP proxy, no other networking at all. 23:05:44 The router I have is stupid, it cannot be configured using FTP or USB or anything else. Also, it seems you cannot disable doing configuration by wirelessly, and occasionally it will stop working even though the light is still flashing. 23:09:28 zzo38: that's the case with most routers I've used 23:09:36 (it is stupid) 23:10:46 A friend had a network printer which had a FTP server built in; when you uploaded a postscript file, it printed it out. 23:11:12 (It did of course speak some more printery protocols too.) 23:11:17 (And Telnet.) 23:12:35 I would like to see a printer with Plan 9 protocol built in. 23:15:38 -!- Sgeo has joined. 23:22:28 -!- augur has quit (Remote host closed the connection). 23:23:07 -!- augur has joined. 23:27:06 -!- augur has quit (Read error: Operation timed out). 23:45:17 -!- oerjan has quit (Quit: Later). 23:52:16 elliott, it seems like the LP is missing videos 23:54:47 Or not 2010-12-16: 00:00:59 Deewiant: server down? 00:01:32 Nope 00:10:46 Eversion LP > Homework 00:20:48 -!- TLUL has joined. 00:39:52 -!- FireFly has quit (Quit: swatted to death). 00:53:06 dammit, ais went again 00:56:50 -!- Ilari has quit (Quit: maintenance). 00:58:09 Is http://www.wolframalpha.com/input/?i=integral+of+4-x+from+-1+to+0 Wolfram Alpha mistaken here, or am I screwing up my math? 00:58:35 In all likelihood it's you. :-P 00:59:47 Sgeo: You're screwing up. 01:00:46 4(0) - 0 - [-4 - 1/2] = +5/2 01:00:54 Wait what? 01:01:09 * Sgeo slaps self 01:02:05 See, you're screwing up. 01:07:36 Deewiant: Down? 01:14:16 -!- augur has joined. 01:28:52 Sgeo: you're about to be made active in agora 01:28:56 and then what if people invade?! 01:29:03 we can't even get 8 objectors to a dangerous scammer right now!!! 01:29:04 SAVE AGORA 01:30:48 Why 8? 01:30:51 Why not 20? 01:32:43 I thought everyone was so in love with "It should be so difficult to make arbitrary power-1 changes, no need to defend power-3 stuff against power-1 stuff" argumet 01:32:47 *argument 01:33:41 Sgeo: It's 8. 01:33:47 In this case. 01:33:49 Ratification scam. 01:36:40 Objected 01:37:27 It's Agoran culture's fault 01:37:37 Whine whine whine 01:37:42 I like scams. 01:37:49 heh, git does directories the same way as elliott's-view-of-scapegoat 01:38:00 -!- Iwnda0 has joined. 01:38:38 heh, and stores the root directory hash with a patch 01:38:41 I think you'll find that the universe pretty much covers everything. 01:40:11 * 01:40:11 I can go back in time and make a different commit instead 01:40:11 01:40:11 * 01:40:11 Commits not reachable from any head are eventually discarded 01:40:11 o 01:40:13 Typically after 90 days or so 01:40:17 ok so it has anonymous commits too ... 01:40:20 like scapegoat! 01:41:01 Iwnda0: SHUT UP WOMAN GET ON MY HORSE 01:41:01 Look at my horse, my horse is amazing. 01:41:15 finally. 01:41:28 Iwnda0: I refuse to entertain your notions. 01:41:43 i got the notion 01:41:46 dont rock the boat baby 01:42:09 Okay, so git just stores the entire current commit's tree ... 01:42:36 http://perl.plover.com/classes/git/samples/slide039.html "Look! It's like darcs but with an inferior UI!" 01:43:15 TODO: read http://www.newartisans.com/2008/04/git-from-the-bottom-up.html 01:44:03 is this the chat of intellectual geeks 01:44:10 because that's what im looking for 01:44:42 Iwnda0: it's for esoteric programming languages. 01:44:50 but, yes, it's rarely on-topic. 01:44:53 oh cool thats close 01:45:53 Iwnda0: If I start ranting about something this goat that it's me singlehandedly destroying my inner concept of version control systems through overthinking. 01:46:00 Iwnda0: And if you read the topic message, they always change it, except the log URL should stay there. You can read the log if you want to. 01:46:21 They aaalways change it :P 01:46:25 They being the gods, obviously. 01:46:49 -!- Ilari has joined. 01:46:51 Iwnda0: Additionally, EgoBot, HackEgo and fungot are absolutely not bots and acting as if they are will hurt their feelings. 01:46:52 elliott: well yeah... loop through the sequence, it gives bizarre results.... but it seems what he actually checks 01:47:03 (Also http://esolangs.org/ since nobody reads the ChanServ message.) 01:47:06 Actually anyone can, I am the last guy to change the topic message. 01:47:20 bots with receptors 01:47:54 Iwnda0: Look at the wiki if you are interested with esoteric programming. 01:48:32 ok thanks for all of that 01:48:37 * Sgeo wonders what elliott thinks of Ur/Web 01:48:56 IMO, single-purpose languages scare me a bit, but it looks interesting. But magic syntax scares me 01:49:08 Sgeo: It's an interesting research topic by an expert and innovator in the field, the web part is totally irrelevant, and if you fall in love with it I will tear your heart out and smash it to pieces. 01:49:15 "Magic syntax"? What? 01:49:23 01:49:27 That's not "magic". 01:49:48 Anyone trying to understand Ur/Web without a solid background in programming language design and type theory is really going to get nothing out of the exercise. 01:53:13 -!- elliott has quit (Quit: Leaving). 01:54:16 -!- TLUL has quit (Quit: *disappears in a puff of orange smoke*). 01:55:03 Sgeo: Is it single-purpose? 01:55:40 -!- Iwnda0 has left (?). 01:55:45 I don't know how well Ur works as a standalone language 01:56:26 Ur/Web? 01:59:34 http://www.impredicative.com/ur/ 02:00:03 I don't know. What I do know is I have made a few programming languages meant for a single-purpose but can do other things as well due to turing-complete. I don't know if Ur/Web can make command-line programs either. 02:03:54 it does not look as clean as haskell 02:04:16 Do you know how to help make a few things with TAVSYS standard libraries? 02:10:38 Sgeo: Ur seems ugly compared to haskell 02:10:58 -!- Gregor has changed nick to ILoveEval. 02:13:18 * Sgeo assassinates ILoveEval for the good of security 02:14:12 I LURRRRVE EVAL 02:15:02 Do you love it eval(some_user_entered_supposed_number) much? 02:21:39 -!- augur has quit (Remote host closed the connection). 02:23:51 -!- oerjan has joined. 02:24:58 -!- augur has joined. 02:28:18 -!- augur has quit (Remote host closed the connection). 02:39:53 -!- zeotrope has joined. 02:41:21 -!- tswett has changed nick to DDDD. 02:41:41 -!- DDDD has changed nick to tswett. 02:44:33 o.O' 02:48:40 -!- wareya has joined. 02:51:46 -!- wareya_ has quit (Read error: Operation timed out). 03:00:22 Your C is terrible. 03:00:32 What say you, pikhq? 03:00:47 those are not C's, they're D's 03:01:22 Bah. 03:03:13 sshc: Ùńĩçôđë! 03:03:27 The last good thing written in C was Chopin's Concerto 3 03:08:45 * sshc salivates 03:08:58 What is you guisers favorite distro? 03:09:48 -!- zzo38 has quit (Remote host closed the connection). 03:13:53 Your C is terrible because it has no eval. 03:14:13 -!- augur has joined. 03:15:04 I've recieved numurous affirmative PMs from augur 03:15:09 The answer is quite clear. 03:15:14 sshc: s/^.*$/"\&"/ 03:15:33 Ah, he's here now 03:15:49 I've said nothing 03:15:51 "&" 03:16:09 \& means the entire matched string 03:16:18 quintopia: Ping? 03:16:21 C has been used for plenty eval. 03:16:26 quintopia: Ping! 03:16:29 AnybodyElseWhoMightWantToProofreadAPaper: Ping? 03:16:37 C no eval 03:16:57 Ping! 03:17:08 oerjan: Not with less sophisticated regex transmissions 03:17:33 It was quite convenient to hide our quite excellent strategy from augur, no? 03:17:57 D: 03:17:57 * oerjan has no idea who sshc is talking to 03:18:04 who are you 03:18:44 Why... I am sshc. 03:18:51 Most well known IRC user of this channel, at the moment. 03:19:11 I...am rather green. 03:19:16 That's who I am. 03:20:12 right 03:20:13 HOLY SHIT SOMEBODY ACTUALLY JOINED ############################################## 03:20:20 * sshc feels lucky for guessing right 03:20:21 well i have no idea what you're on about 03:20:23 bai nao 03:20:28 Right, later dude! 03:20:46 * oerjan wonders what bai nao means in chinese 03:24:36 -!- fungot has quit (Read error: Operation timed out). 03:25:19 -!- Wamanuz has quit (Ping timeout: 240 seconds). 03:25:24 -!- Wamanuz2 has joined. 03:26:34 http://askville.amazon.com/eversion-video-game-children-play-adult/AnswerViewer.do?requestId=32693562 03:26:37 * Sgeo facepalns 03:26:40 palms too 04:21:00 oerjan, I should not be on IRC tomorrow. If I am, feel free to ban me for the duration. Duration ends ... should really end Saturday, I guess, not Friday 04:21:18 But what if I start feeling depressedly lonely again? 04:21:19 Sgeo: is that an actual question? :O 04:22:27 I think I drained myself of happiness this past Thanksgiving 04:22:34 ouch 04:23:27 From Tuesday to Saturday during that break, I was giddy. Stuff happened Saturday, and I wasn't the same, even after she told me to forget about it 04:23:57 -!- DrPhillate has joined. 04:26:10 This past Tuesday, a friend of mine was telling me something that happened on the road that day 04:26:38 I keep thinking that if she had been paying less attention, she might have died 04:26:46 Although I don't know the details, maybe I'm mistaken 04:27:31 I've been driving and been in a situation where myself and one other driver needed to be alert or bad things might have happened 04:27:56 a truck ahead of me made a sudden stop and I was forced to make an emergency lane change; if the guy in the other lane hadn't slowed back things would have been ugly 04:29:41 Should I be worried that she listens to audiobooks in the car? 04:29:46 coppro, that's scary 04:30:02 Sgeo: Very. 04:30:51 * Sgeo suddenly wonders what thing "Very" was in response to 04:34:59 the line immediately above it? 04:36:18 >.> 04:36:34 I think I don't want to drive 04:38:56 -!- zeotrope has quit (Quit: Lost terminal). 04:48:03 -!- poiuy_qwert has joined. 04:57:41 -!- DrPhillate has changed nick to Room42. 05:02:01 Hmm... APNIC has 1.06 /8s left before crossing 2x/8 threshold... 05:02:14 -!- Room42 has changed nick to Elephantitus. 05:03:48 -!- Elephantitus has changed nick to VerticalSmile. 05:07:24 10 575 872 addresses (63.0% of /8) allocated this calender month... 05:08:36 IT'S THE FINAL COUNTDOOOOWN 05:09:13 About 17.8M addresses left to the threshold... 05:13:26 Average allocation rate would be 700k addresses per day... At that rate 17.8M addresses would be gone in less than 4 weeks (mid-January that is)... 05:16:59 You know, Sam Hughes's rant about One Chance comes to mind... 05:17:58 Also looks like IPv6 routing is seriously borked for me... :-/ 05:18:45 ftp.fi.debian.org is reachable, ftp.se.debian.org isn't, as isn't Freenode IRC servers... 05:20:18 Traceroute6 isn't very helpful... 05:20:45 (besides pointing out that packets do reach the gateway). 05:20:49 If the public starts pressuring ISPs sooner, say now instead of in 4 weeks, will there be 4 weeks less of pain? 05:23:12 "The Internet Corporation for Assigned IP address ICANNâ's experts warned that the existing IPv4 address will run out next January."... 05:24:24 The sooner we raise a fuss, the sooner ISPs feel pressure, and... it's at least a little help. Although atually, it could backfire if the day comes around and the world doesn't end, which it won't 05:29:13 Reminds me of some long lived threads on ISP forums about IPv6: The general theme is: 2005: "We have IPv6 in production use in our core network". Winter 2009: "When are customers going to get IPv6?", "It is planned, no timetable to annouce yet.". Repeat for each season. 05:29:20 -!- augur has quit (Ping timeout: 260 seconds). 05:31:51 That is, Winter 2009, Spring 2009, Summer 2009, Fall 2009, Winter 2010, Spring 2010, Summer 2010, Fall 2010... 05:32:05 ... The same Q&A pair... 05:39:50 -!- augur has joined. 05:42:52 Ilari, is http://pastie.org/private/fuqe7yxf4gztpaofh0xbmg reasonably accurate? 05:44:48 (It's not going to the press. Just my Facebook friends) 05:45:48 famous last words 05:45:55 "it" meaning IANA depletion? 05:46:24 I titled it "The Internet is Full" 05:46:28 Maybe a bit hyperbolic? 05:46:29 :/ 05:46:57 Hmm, RIRs still have addresses, right? 05:49:16 Hmm, how can I fix for accuracy? 05:49:41 -!- VerticalSmile has changed nick to tehjamezs. 05:49:42 -!- tehjamezs has changed nick to tehjamez. 05:52:50 Instead of "it" in the January sentence, should I say "a major milestone"? 05:53:54 * Sgeo tentatively pokes Ilari 05:55:24 * Sgeo puts a clarifying thing in parentheses 05:55:51 "ome estimates are predicting it (well, a major milestone showing that it's going to happen soon) to happen in January" 05:55:54 A bit awkward 05:55:56 * Sgeo shrugs 05:59:33 I really hope 700k a day isn't going to be long time trend... 06:00:05 After the RIRs are depleted, it won't be. 06:01:08 Yes, it would drain APNIC enough to make it allocate about 2 weeks ahead of (pessimistic) model predictions, but the bigger problem is that it would drain APNIC completely months before even the most pessimistic estimates so far... 06:01:49 And there's no telling what happens once IANA depletion is announced... 06:02:45 We should make sure that IANA depletion makes the news. And not just the geek news 06:02:54 We should get people angry at the ISPs 06:04:28 Ilari, APNIC, is that asia? 06:05:57 Vorpal: Yes. 06:07:20 Problems with native IPv6: 1) Access networks usually can't carry it. 2) modems usually don't support it. Tunneled IPv6: Poor software support. 06:08:07 Sure, if you control the CPE, you could upgrade it to terminate the tunnel, but usually that's not the case. 06:08:17 Another problem with tunneled IPv6: Most users have no idea how to set such a thing up 06:08:21 Ilari, hm... what will happens to phones? 06:08:31 The IPv6-only Internet would be inaccessible to them 06:08:40 Sgeo, it is 10 easy steps (and 5 hard)! 06:08:56 (the hard ones are convincing sixxs) 06:09:06 Vorpal, and getting every clueless Internet user to do those steps? 06:09:08 sixxs? 06:09:18 Sgeo, SixXS yes 06:09:51 bbl university 06:12:20 Actually, with DHCP and access to logically same network segment, one could theoretically provode IPv6 access in automated fashion. But that "same network segment" is kinda tall order. 06:13:03 Wait 06:13:14 End-user hardware tends not to support IPv6? 06:13:28 Um... does this mean we're completely fucked? 06:14:12 Basically, wait for user to send DHCP request. And in return, send back DHCP response and IPv6 router advertaisment. 06:15:04 DHCP configures IPv4 + nameservers, the RA configures the IPv6 layer 3... 06:16:44 * Sgeo needs to sleep soo 06:16:46 n 06:18:08 Hmm... Arp table has entry for default gateway that does not correspond to any known MAC of the DSL modem... 06:19:00 Which would mean some telco equipment is on the same segment, or at least in bridged segment... 06:19:40 Oh, and then there is some bad software that will crash if it receives a RA... 06:19:59 Sgeo: Very, very little end-user hardware supports IPv6, yes. 06:20:13 Sgeo: Because the only people more short-sighted than ISPs are electronics manufacturers. 06:20:26 And we don't have rational, informed actors. 06:23:47 Well, that settles it. 06:24:16 Humanity is going to be either wiped out or delt a severe blow due to Global Warming 06:24:44 IPv4 depletion, given enough time, is FAR simpler to solve 06:24:56 Given everyone working together 06:25:05 We can't do that much... 06:28:22 3G network standards have supported an IPv4/IPv6 mixture since 2004 (3GPP R5); the 3GPP address autoconfiguration does IPv6 assignments (spec'd to provide a /64 for each mobile device, for personal-area-network brouhaha); I don't know about phones except that Symbian has done IPv6 since version 7.0s (2003). 06:28:41 (That's in theory; I don't know how well that will go in practice, and whether anyone's actually tried that stuff out.) 06:38:39 Night all 06:39:38 -!- Sgeo has quit (Read error: Connection reset by peer). 06:50:00 fizzie: Well, Android phones should at least be trivially upgradable to IPv6. 06:50:22 (note: "should". You never know what some ignorant moron has done to it.) 07:39:51 -!- ILoveEval has changed nick to Gregor. 07:58:42 -!- nopseudoidea has joined. 07:59:46 -!- nopseudoidea has quit (Client Quit). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:06:26 -!- evincar has joined. 08:07:08 Everyone has seen me sign on but I'm saying something to let you know I'm not just lurking. 08:07:36 eek, the evil car is back 08:08:39 sadly you are the first to say anything for 1 hour 17 minutes 08:09:33 -!- pikhq has quit (Ping timeout: 265 seconds). 08:45:49 oerjan: And I didn't notice you said anything for a while, either. I'm a great chatter. 08:46:08 yay. sadly i'm about to leave soon. 08:46:12 And sadly I must retire too. 08:46:25 well bye then 08:46:27 Being sick and having to get up for class in four hours... 08:46:30 ...sigh. 08:46:33 Yeah, later. 08:46:35 -!- evincar has quit (Quit: Blah.). 08:59:48 -!- oerjan has quit (Quit: leaving). 09:16:59 -!- tehjamez has changed nick to tehjamezZzZz. 09:36:59 -!- atrapado has joined. 09:45:33 -!- Mathnerd314 has quit (Ping timeout: 260 seconds). 09:49:04 gregor has pingeth me 09:49:13 yes gregor? 09:50:07 also i have the write-up on document classification now wee 09:51:34 -!- Ilari_ has joined. 09:52:54 -!- Ilari has quit (Quit: Changing server). 09:53:41 -!- Ilari has joined. 09:54:03 -!- Ilari_ has changed nick to Ilari_antrcomp. 10:13:52 -!- Ilari_ has joined. 10:15:07 -!- Ilari_antrcomp has quit (Quit: leaving). 10:15:09 -!- Ilari_ has changed nick to Ilari_antrcomp. 10:57:31 -!- MigoMipo has joined. 11:05:36 -!- MigoMipo has quit (Remote host closed the connection). 11:27:02 -!- Mathnerd314 has joined. 11:27:35 -!- Mathnerd314 has quit (Client Quit). 11:33:15 -!- elliott has joined. 11:33:44 18:03:54 it does not look as clean as haskell 11:33:45 18:10:38 Sgeo: Ur seems ugly compared to haskell 11:33:58 coppro: please STFU, it is more powerful than haskell 11:34:02 coppro: it contains new type-system research 11:34:15 it's not some random language 11:34:42 19:16:29 AnybodyElseWhoMightWantToProofreadAPaper: Ping? 11:34:46 Gregor: Shure 11:40:28 21:20:49 If the public starts pressuring ISPs sooner, say now instead of in 4 weeks, will there be 4 weeks less of pain? 11:40:34 people have been pressuring ISPs for 10 years. 11:41:09 21:46:24 I titled it "The Internet is Full" 11:41:09 21:46:28 Maybe a bit hyperbolic? 11:41:11 YOU DON'T SAY 11:41:41 21:42:52 Ilari, is http://pastie.org/private/fuqe7yxf4gztpaofh0xbmg reasonably accurate? 11:41:54 what hope do we have for solving climate change? none without bioengineering, which won't happen because of politics! enjoy! 11:50:51 -!- Leonidas has quit (Quit: An ideal world is left as an exercise to the reader). 11:51:30 http://blogs.wsj.com/metropolis/2010/08/18/212-lust-old-phone-numbers-are-new-thing-in-tech-scene/ this is the stupidest thing ever i can't even comprehend 11:54:07 -!- Leonidas_ has joined. 11:54:43 -!- Leonidas_ has changed nick to Leonidas. 11:58:16 Actually, bioengineering won't happen because it isn't as good as it is portrayed as. What really prevents action on climate change is economics... 11:58:19 22:23:47 Well, that settles it. 11:58:19 22:24:16 Humanity is going to be either wiped out or delt a severe blow due to Global Warming 11:58:19 22:24:44 IPv4 depletion, given enough time, is FAR simpler to solve 11:58:19 22:24:56 Given everyone working together 11:58:19 22:25:05 We can't do that much... 11:58:28 You are so naïve it is hilarious. 11:58:55 Converging catastrophes... Global Warming is just one of those... 12:00:30 -!- oerjan has joined. 12:00:58 Ilari: Obviously we will all die. 12:01:56 Actually, humankind getting dealt serious blow is much more likely than full wipeout. 12:02:07 (actually, inevitable) 12:02:38 Ilari: I disagree about its inevitability. 12:04:39 It won't be global warming that is going to deal the main blow (just additional one). 12:06:44 Yes, the main blow will come from IPv4 depletion. 12:07:00 * oerjan swats fizzie -----### 12:08:21 More like depletion of natural resources. 12:08:37 (IPv4 addresses don't count as natural resources) :-> 12:09:05 -!- ais523 has joined. 12:09:42 * quintopia compresses fizzie's filesystem with md5sum 12:10:12 phosphorus looks like a big one... we're going to have to start recycling human sewage again 12:19:50 oerjan: let's hope the arsenic bacteria don't take over :D 12:20:10 heh, that seems to have been shoddy science anyway 12:21:18 fizzie: "Uh oh, Minecraft update." 12:21:22 oerjan: shush :) 12:22:02 "The client wasn't updated, btw, that was a side-effect of copying the files around. The updater thought they were new." 12:22:06 (Notch twitter feed.) 12:22:09 arsenic is immensely rarer than phosphorus anyway 12:22:24 "The client wasn't updated, btw, that was a side-effect of copying the files around. The updater thought they were new." 12:23:49 -!- fungot has joined. 12:24:25 ^echo "The client wasn't updated, btw, that was a side-effect of copying the files around. The updater thought they were new." 12:24:25 "The client wasn't updated, btw, that was a side-effect of copying the files around. The updater thought they were new." "The client wasn't updated, btw, that was a side-effect of copying the files around. T ... 12:27:20 That is, in fact, exactly what made me bring the 'got here. 12:27:40 `echo "\"The client wasn't updated, btw, that was a side-effect of copying the files around. The updater thought they were new.\"" 12:28:01 "\"The client wasn't updated, btw, that was a side-effect of copying the files around. The updater thought they were new.\"" 12:28:07 oh damn 12:28:07 FAIL 12:28:18 sorry :( 12:28:29 anyway, retweeting in irc is fun 12:29:29 -!- Slereah has quit. 12:30:40 That is, in fact, exactly what made me bring the 'got here. 12:30:44 What, me pinging you? 12:31:08 No, what oerjan did. 12:31:44 I wanted to do the whole "there's an echo here", but noticed the lack of 'got. 12:32:17 -!- Slereah has joined. 12:33:36 Incidentally, I wonder if the updater compares the web-version timestamp and the local minecraft.jar timestamp, and if so, whether you could disable auto-updating by adding a "touch ~/.minecraft/bin/minecraft.jar" into your minecraft startup script. 12:35:42 fizzie: Maybe it hashes the server pathname too for NO GOOD REASON./ 12:35:53 fizzie: Wait, maybe "moving things around" meant moving things around in ~/.minecraft. 12:35:54 Creepy. 12:36:04 Doesn't look like it :P 12:36:10 Actually it probably just looks at the value in ~/.minecraft/bin/version, which looks suspiciously like a time_t *1000. 12:36:45 So maybe you can disable auto-updating by putting a ridickulously large number in. 12:37:02 fizzie: Hey, look at Notch's ingenious solution to the problem "lastServer:hostname:port discards the port value because of the separator": "lastServer:aNNN.org_MMMMM" 12:37:06 (For appropriate Ns and Ms.) 12:37:20 Yes, I noticed. 12:37:27 I guess the equivalent of "key, value = line.split(':', 1)" was just TOO HARD. 12:38:01 -!- FireFly has joined. 12:38:19 * oerjan swats FireFly -----### 12:38:35 :< 12:38:36 It'd be String[] key_value = line.split(":", 2); 12:38:42 -!- MigoMipo has joined. 12:39:20 Actually, it's one of the examples in the String.split(String regex, int limit) documentation. 12:39:45 "The string "boo:and:foo", for example, yields -- [regex :, limit 2:] { "boo", "and:foo" }" 12:39:55 oerjan: FireFly has developed crushing depression due to your constant swattling. 12:40:01 fizzie: bahahaha 12:40:04 Yeah 12:40:18 Hrm 12:40:29 elliott: well flies are supposed to live shitty lives 12:40:40 At least _ is a non-DNS-friendly replacement character, compared to something like "q". 12:40:59 oerjan: yes but he's a firefly, he already has a recent, awful, overplayed pop song involving him, give him a break 12:41:00 And so is your mom, oerjan :| 12:41:19 DING DING DING someone did the your mom joke on one of the incorrect targets 12:41:24 prepare for canned response 12:41:28 Ow 12:41:41 That sounds.. bad 12:41:45 MY MOM IS DEAD YOU INSENSITIVE CLOD 12:41:53 elliott: close enough? 12:41:59 oerjan: should do 12:42:15 oerjan: I would have gone for "MY MOTHER WAS KILLED BY YOUR KIND", but that is acceptable 12:42:37 i ... don't recall any flies being involved. 12:43:32 In the Semantic Web, FireFly's client would have seen the mom-dead metadata and made a yes/no confirmation query before sending the comment. 12:43:50 fizzie: surely it would be the mother metadata's dead property 12:43:54 oerjan: isn't this conversation SO COMFORTABLE 12:44:00 anyway he's a firefly, not a fly :P 12:44:08 or maybe he's a Fire Fly, like a fly on fire or something 12:44:19 Well, yes, it would be in the Ontology(tm) somewhere, I just simplified. 12:44:43 Being a fly on fire would make the swatting pretty pointless, though 12:44:48 Probably some sort of a RDF graph. 12:46:05 FireFly: well oerjan is just that cruel 12:46:14 and i don't think he's speaking to me any more :D 12:47:34 ...what 12:49:04 "He's so nice, he wouldn't hurt an on-fire fly", as the saying goes. 12:49:18 -!- nopseudoidea has joined. 12:50:19 oerjan: wut 12:50:56 -!- nopseudoidea has quit (Client Quit). 12:53:59 oerjan: so how's the ultimately-meaningless patch theory going :D 13:00:04 -!- MigoMipo has quit (Ping timeout: 250 seconds). 13:02:43 non-existingly 13:15:10 oerjan: flower 13:15:11 s 13:15:16 (multiple/plural) 13:27:56 Harm Considered Harmful 13:28:57 http://74.125.155.132/scholar?q=cache:Dk-wWK6NAaIJ:scholar.google.com/+hello+world+considered+harmful&hl=en&as_sdt=40000000000 13:29:02 WORST. PAPER. EVAR! 13:33:57 um 13:33:58 not quite 13:34:12 try this one http://journalofcosmology.com/Mars144.html 13:35:35 There are probably a lot worse papers than those... 13:39:15 oh, i know, but that was one i was already looking at that seemed at least a little bit worse 13:39:39 so, go go gadget quick reply counterexample reflex! 13:47:46 try this one http://journalofcosmology.com/Mars144.html 13:47:47 no that's most awesome 13:48:44 i suppose. but it's amusing that it is in journal of cosmology, clearly being an analysis of human sexual relations 13:48:56 not what i usually think of as cosmology 13:49:56 i thought the message of the paper you linked was dead-on though. A lot of people teach OO very wrong. 13:50:35 quintopia: thinking that paper and its "solution" are reasonable are a sign of brain damage. 13:51:05 only one who truly believes OO is the One True Solution to everything would mangle and overcomplicate Hello-fucking-world to fit their disastrous worldview. 13:51:09 i didn't say the solution was reasonable 13:51:15 i said the message is dead-on 13:51:15 *is a 13:51:26 the message includes the solution 13:51:42 i wholeheartedly disagree with your statement 13:52:02 this is a question of pedagogy techniques, not whether or not OO is the One True Solution 13:52:23 i would rather see hello world not used at all, however 13:52:46 and actually jump right into a real problem that actually shows the purpose of OO 13:53:12 quintopia: here's an idea, maybe we shouldn't teach possibly the worst paradigm in recent history 13:53:17 (original OO I can accept, Java I cannot) 13:53:37 i agree. Smalltalk is better suited for teaching OO. 13:53:55 it's just there aren't any truly non-shitty implementations of Smalltalk 13:54:58 quintopia: "I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. Nor Smalltalk." --Alan Kay, last sentenced paraphrased because I can't find a source actually including that bit 13:55:08 anyway smalltalk has perfectly good implementations 13:55:19 Squeak's UI is a bit stupid but it has the Smalltalk-80 lineage. 13:55:31 squeak is pretty shitty 13:55:35 or at least 13:55:39 was, the last time i used it 13:55:50 quintopia: from what do you derive that conclusion 13:56:22 that you need to tell me where i can find a non-shitty smalltalk? 13:56:31 quintopia: you fail at english 13:56:37 quintopia: from what do you derive the conclusion that squeak is pretty shitty 13:56:46 oh 13:57:14 all the problems i had with the system. i'd rather have one that didn't act like a VM, really. 13:57:20 quintopia: it is not a VM. 13:57:32 it acts like an OS being run in a VM 13:57:48 quintopia: Smalltalk-80 ran on the bare metal; Squeak is directly based on it, runs under an existing kernel and graphics layer because of portability. it also provides access to the filesystem as a convenience. 13:57:50 which is understandable considering smalltalk's origins 13:57:59 it is like saying "I wish Linux didn't act like a VM, really." 13:58:09 Smalltalk's power is /nothing/ and worthless without the integrated environment. 13:58:12 GNU Smalltalk is a joke. 13:58:20 < quintopia> which is understandable considering smalltalk's origins 13:58:27 i indicated i get all that 13:58:42 but i disagree that you need it to be implemented like /that/ 13:58:50 Feel free to disagree, but you're wrong. 13:59:04 In fact the adherence to the shitty Unix-alike OSes we all run on is why every development environment more or less completely sucks. 13:59:05 feel free to disagree, but you're wrong 13:59:17 now that i can agree with 13:59:18 Thankfully Emacs is a slightly nicer environment, and is widely accepted -- but -- 13:59:19 only slightly. 13:59:31 So would you prefer it if Smalltalk booted on the bare metal? 13:59:41 That would be even less integrated with your OS, and less portable too. 13:59:50 however, i would like a smalltalk that integrates nicely into /other/ tools. i don't want it running on the bare metal. 14:00:00 i want the language itself 14:00:15 but if i had another computer 14:00:18 that was smalltalk based 14:00:22 i would be happy with it 14:00:27 like i would be happy with a lisp machine 14:00:36 quintopia: ok, so press fullscreen in a smalltalk window. :p 14:00:36 for the purposes of the /computer i have/ 14:00:51 ...they window already fills the screen :P 14:01:04 anyway, the abstraction there is way too leaky 14:01:08 so leaky it is annoying 14:01:18 i would switch to squeak if it booted on the bare metal and had drivers, probably. 14:01:26 and i could make the UI less irritating. 14:01:52 i might as well...not for everything of course, just for fun, and only if i had another computer to use it on 14:02:36 eh, i'd just need a browser. :p 14:03:00 anyway, i thought alan kay had a heavy hand in designing smalltalk 14:03:02 -!- ais523 has quit (Remote host closed the connection). 14:03:05 quintopia: precisely. 14:03:10 he invented it. 14:03:13 but smalltalk is broken too. 14:03:25 yeah, i'm wondering where that quote comes from 14:03:34 a talk he did; the bit without smalltalk is widely quoted. 14:03:38 ironically. 14:03:58 so how does he think smalltalk is not OO? 14:04:00 quintopia: one of smalltalk's main problems is that it has inheritance, of course. 14:04:24 OO has always been about message-passing from the start, not classes, not inheritance, message-passing, and anything that disrupts that isn't OO 14:04:27 what's the proper way to do templating/code reuse in OO? 14:04:38 quintopia: composition 14:04:42 /aggregation 14:04:53 combine components to produce bigger components. 14:05:25 and the proper way to do shared interfaces/interchangeable types? 14:05:56 quintopia: you're going to have to state that in terms of what you're trying to accomplish, not OO buzzwords, for me to give a coherent answer. :) 14:09:19 -!- ais523 has joined. 14:09:25 hi ais523 14:10:24 hi 14:10:45 ais523: can i ask a scapegoat-related question? 14:11:39 you just did 14:11:42 but feel free to ask a different one 14:11:59 -!- sftp has quit (Remote host closed the connection). 14:12:01 (semantic argument: are scapegoat-related-question-related questions scapegoat-related questions?) 14:12:20 ais523: only if you program Pelr 14:12:21 *Perl 14:12:24 ((1, 2), 3) = (1,2,3) 14:12:25 :-) 14:13:04 that's because array constants embed into other array constants by definition 14:13:16 it's what the , operator does when given an array and scalar, or two arrays, as arguments in list contexts 14:13:52 elliott: i mean, you can't always have your code going around asking what kind of object it has been passed and whether it accepts those messages, but you may want to have an entire class of objects that believe differently yet are guaranteed to have the same messages available 14:13:53 indeed 14:14:01 ugh, i've forgotten the question 14:14:11 "you can't always have your code going around asking what kind of object it has been passed and whether it accepts those messages," erm why would code ever do this quintopia 14:14:15 sounds like a smell to me 14:14:18 well i can't be here every second of the day 14:14:31 quintopia: ? 14:14:33 i was talking to ais523 14:14:34 quintopia: isn't that what an interface is, in the OO sense? 14:14:35 until i quoted you 14:14:43 oh 14:14:51 ais523: that's what i'm trying to describe yes 14:14:51 oh, I had a new esolang idea last night 14:15:03 it was basically, "make a cross between ML and Prolog" 14:15:20 the idea is sufficiently crazy to need no further complications to be eso, but I'd probably add some anyway 14:15:57 (you can tell I had to do a project in OCaml over the last couple of days, it's what got me thinking along those lines...) 14:16:02 elliott: what are your thoughts on contracts, in the eiffel sense? 14:17:06 hmm, I want some editor advice; what's the fastest way to, given a huge number of files, look at them all and edit a small subset based on what they look like? 14:17:20 at the moment I'm scrolling through them in less and using vi for any edits I need to make 14:17:22 elliott: i mean, you can't always have your code going around asking what kind of object it has been passed and whether it accepts those messages, but you may want to have an entire class of objects that believe differently yet are guaranteed to have the same messages available 14:17:25 can you answer my question? 14:17:41 why would code ever be "going around asking what kind of object it has been passed and whether it accepts those messages" 14:17:49 hmm, I want some editor advice; what's the fastest way to, given a huge number of files, look at them all and edit a small subset based on what they look like? 14:17:50 ais523: grep? 14:18:17 it 's a situation that isn't really suited for grep 14:18:23 elliott: if it didn't have the ability to determine what messages an object had available by apriori knowledge like "it implements this interface" or "it inherits from that class" 14:18:29 I'm trying to look at a bunch of files submitted by students and fix the ones that are malformed 14:18:35 and they come up with really creative ways to do malformed 14:18:50 quintopia: if you're passed an object as a parameter, then you use it according to some interface 14:18:52 what's the problem? 14:19:15 if some parameter is a number, you can do x*2. if it's a string, you can do x length. if it's a random-access container of some sort, you can do x at(3) or whatever. 14:19:19 hmm, vi keeps annoying me with its nonintuitive choices of units of measurement 14:19:19 elliott: when you want to ensure that the wrong object doesn't get passed crashing your entire program 14:19:26 e.g. d2j deletes three lines, who'd have guessed? 14:19:39 ais523: directional keys 14:19:48 ais523: j is down 1 line 14:19:50 (it'd be nice to be able to guarantee this things at compile time, and it'd be nice to be able to compile) 14:19:51 elliott: well, j moves a line downwards 14:19:57 what? no 14:19:59 so d2j would delete two lines downwards, logically 14:20:18 perhaps 14:20:22 ais523: don't you mean d2d? 14:20:35 quintopia: ok, well, we're talking about where smalltalk went wrong here 14:20:40 again, perhaps, but d to mean line doesn't really make sense 14:20:40 quintopia: and duck typing is a major part of smalltalk 14:20:44 so i don't see the relevance at all 14:20:52 I keep using vim like it would be meant to work, rather than like it actually works 14:21:08 I mean, I'm assuming it sticks to a really rigid philosophy which is only an approximation of the one it's actually based on 14:21:10 ais523: use traditional-vi, see what it does :p 14:21:45 I also understand why vi doesn't do major modes, after using it for a while 14:21:56 you really need to memorise things like what its definition of a word is to use it efficiently 14:22:04 and if that kept changing on you, it wouldn't really help 14:23:14 elliott: fine. so what are your thoughts on contracts, then? 14:23:24 quintopia: completely unrelated? 14:23:39 sure 14:23:53 whether they are a valuable idea in OO language design 14:24:25 quintopia: i'm uninterested in OO language design 14:24:42 oh. you don't act like it. you can understand my thinking you are. 14:24:52 quintopia: well, i know what smalltalk did wrong. 14:24:56 but i don't think OO is the way forward. 14:25:06 oh, I also have a vaguely related question: elliott and/or quintopia, what are your opinions on Objective C (purely as a language, ignoring things like userbase, etc) 14:25:17 no opinion 14:25:19 gotta go 14:25:31 fair enough 14:25:42 ais523: all the safety of C with all the speed of Smalltalk! at least the Smalltalk part's good. 14:25:44 -!- sftp has joined. 14:25:49 ish. 14:26:00 I spent ages reading Apple's guidelines about Objective C memory management; they were, surprisingly, exactly the same as Perl uses internally 14:26:56 ais523: *perl, surely 14:26:57 -!- zeotrope has joined. 14:27:05 err, yes 14:27:13 I should have said perl(1) 14:27:26 it's basically refcounting with a strong convention for when you change the reference count 14:27:31 ais523: nah, it's "only perl can parse Perl", not "only perl(1) can parse Perl" 14:27:50 and the ability for the reference count to go below 1 without freeing the object, as long as it comes back up "soon enough" 14:28:56 and the ability for the reference count to go below 1 without freeing the object, as long as it comes back up "soon enough" 14:28:58 that's insane. 14:31:46 it's useful, though; the idea is that you always free an object before returning it from a function 14:32:03 and the function you returned it to allocates it again if it wants it to stick around 14:32:15 ais523: that sounds brittle :) 14:32:30 there's a defined place where everything with a refcount of 0 gets freed at once 14:32:43 it's between statements in Perl, or each iteration of the event loop in Cocoa 14:33:42 heh 14:34:10 so it's not brittle, but only works if you understand how it's meant to work 14:35:05 ais523: brittle from a human point of view, i mean 14:35:30 perhaps 14:35:39 in theory, you should be able to do it statically 14:44:12 -!- augur has quit (Remote host closed the connection). 14:44:35 ais523: wrt scapegoat, I think I'm going to start hacking up a "test" implementation in Haskell or C, just to see "how it works" and catch any potential major problems before taking all the effort to start a complicated, optimised, robust implementation 14:44:36 -!- augur has joined. 14:44:41 also because i'm lazy, but want something to code 14:45:32 Don't you mean "optomized"? 14:45:48 *OPTOMIZED(TM). 14:46:19 ais523: btw, highly recommended reading: http://perl.plover.com/yak/git/ -- turns out git has a lot of *my* ideas :P 14:46:59 ais523: e.g., immutable hash-based indexing, maintaining directories the same way as files, and anonymous commits newer than the head (automatically removed after 90 days, apparently; not sure whether it's on next git invocation or "git gc" or whatever) 14:47:10 ofc, it still lacks the Scapegoat Patch Format of Wonderment 14:48:54 didn't you know git had immutable hash-based indexing? 14:49:38 -!- augur has quit (Ping timeout: 276 seconds). 14:49:45 ais523: oh, yes 14:49:52 ais523: I just didn't realise that it combined it with other parts of my design 14:50:24 ais523: it seems that about half of my scapegoat ideas are basically unintentional adaptions of git to the scapegoat model :P 14:50:29 hmm, incidentally, today as an experiment I deleted all my cookies and set Firefox to prompt before accepting them 14:50:32 (wtf spellchecker, adaptions is a word) 14:50:39 ais523: lynx does that by default, it's intensely irritating 14:50:48 and it's... surprisingly less irritating than I thought it would be 14:50:51 heh 14:50:58 ais523: tried google yet? 14:51:01 mostly because it gives me the optoin to whitelist or blacklist domains the first time it happens 14:51:02 you get like 50 cookie requests 14:51:06 I had them blacklisted already 14:51:10 heh 14:51:17 so I'm only getting one question per page request 14:51:30 if I accept any cookies from a domain, I'm probably going to want to accept all of them, after all 14:51:36 ais523: you'd like this, if it were for Firefox: https://chrome.google.com/extensions/detail/jeoacafpbcihiomhlakheieifhpjdfeo 14:51:54 ais523: completely anonymises google, disables tracking by digg, facebook, google, twitter, yahoo 14:52:38 hmm, yes, it seems a little complex 14:52:47 more or less like what I'm doing except with defaults 14:53:02 ais523: for a second there, you were zzo38 14:53:15 "That thing that does exactly what I want to do is too complex in my opinion, so I wrote my own." 14:53:22 (zzo-ly english left to the reader) 14:53:43 see with me i just write my own without justifying it :D 14:54:26 cookies seem like javascript to me; most of the time they don't actually do anything useful for me so I may as well leave them off, and some of the time they're actively annoying 14:54:56 ais523: the web is kind of inherently irritating :P 14:56:21 yup 14:56:25 IRC's nicer in that respect 14:56:41 unfortunately, the web is kind-of hard to avoid nowadays if you use the Internet a lot 15:01:34 ais523: if you ever figure out how you're meant to use trackpads ergonomically, please tell me 15:01:41 I can't figure out how to do it without holding your wrist up uncomfortably 15:01:49 or using your thumb 15:01:52 which is not very precise 15:02:29 I use my index finger, with my wrist below the trackpad on the table 15:02:43 it works quite well, except I have to use my other hand to click 15:02:53 if I'm doing something that can't be done with a simple tap on the touchpad 15:03:06 that's how I play Enigma on this laptop, at least, and that needs quite a lot of precision 15:03:09 ais523: wrist-on-table is very uncomfortable, and also you can't do that with it in your lap 15:03:22 ("you're not meant to put it on your lap!!!!" only if it's a stupidly overly hot machine) 15:03:28 I don't have enough coordination to use a trackpad while holding the laptop 15:03:33 ais523: hold? i said lap 15:03:36 as in sitting, on your lap 15:03:44 then it'd be too low to reach 15:04:03 most of my laptop use at home is in bed, with me lying down and the laptop on top of the duvet 15:04:22 ais523: wrist-on-duvet isn't a very stable position 15:04:41 indeed 15:05:30 but I can use my other hand to help hold the laptop steady 15:05:36 ais523: heh 15:05:41 and the duvet is relatively stable because the rest of my body's holding it in place 15:05:59 ais523: personally, if i was designing a laptop, i'd make it longer, and somehow make the bit after the trackpad soft 15:06:05 so you could use it as a wrist-rest 15:06:34 and put the trackpad somewhere other than the centre, to stop it being knocked so easily? 15:06:52 ais523: possibly :P 15:06:53 I suppose the alternative's to use something other than a trackpad 15:06:59 or just somehow detect the hand position on the laptop 15:06:59 like a good old-fashioned trackball 15:07:02 and disable the trackpad accordingly 15:07:05 ais523: ugh, i hate trackballs 15:07:19 hmm, I think I've used most of the common pointing devices in existence now 15:07:24 I used a logitech trackball mouse exclusively for over a month, and when I switched back to a mouse I was so much faster and more comfortable 15:07:36 mouse, trackpad, trackball, touchscreen, MouseKeys 15:07:41 hmm, that's interesting 15:07:50 was it a finger trackball, or a thumb trackball? 15:08:09 I used a thumb trackball by Microsoft, and it worked pretty well; it was much better than a mouse because the mice kept falling off the table and breaking 15:08:56 ais523: thumb 15:08:59 finger is probably nicer 15:09:02 but it was thumb 15:09:11 ais523: it was a well-regarded one, too 15:09:22 ais523: this: http://www.bluesnews.com/miscimages/tmmarble150.gif 15:09:23 hmm, I suppose it varies from person to person 15:12:53 ais523: scapegoat question: what's the algorithm to find @tip? I know how the Official Branch is defined 15:13:03 but how would scapegoat actually go about finding the right hash in a haystack of hashes? 15:13:23 it's on my @tongue... 15:13:38 * elliott swats oerjan distractedly 15:13:56 here's one that would work but be inefficient: start off by taking all hashes from the branch you're trying to find @tip for; eliminate any commit/revert pairs (always necessary for anything sensible to work) 15:14:08 ais523: wait, what? 15:14:09 @tip is a branch 15:14:14 how can multiple branches have a @tip? 15:14:15 if there are no conflicts, you're done; otherwise, remove the chronologically newest patch and check for conflicts, etc 15:14:23 well, @tip is defined with respect to a repo and/or a branch 15:14:34 otherwise it would mean "the most current version of everything" 15:14:40 which is hilarious, but would take a while to calculate 15:14:53 ais523: hmm, fair enough 15:15:01 ais523: the design in my head has no concept of repository, it seems 15:15:06 what is a repository? 15:15:40 it's basically just a branch, but one defined by physical location 15:15:45 ais523: hmm. 15:15:56 ais523: anyway, sure, that algo would work, but I was thinking something vaguely efficient :-) 15:16:01 if you have millions of hashes that would be ... "fun" 15:16:02 because you have a concept of push and pull, you have to have a concept of repository so you have something to push and pull into 15:16:16 ais523: do you have a concept of push and pull? 15:16:23 I do, in terms of whitelisting 15:16:25 in my model, pushing is just cp -R +scapegoat /another/+scapegoat 15:16:32 and pulling is just cp -R /another/+scapegoat +scapegoat 15:16:41 ok, whitelisting 15:16:51 elliott: in your model, then, your repo is the set of all hashes in the +scapegoat directory 15:16:53 forming a branch 15:17:13 ais523: fair enough; I was under the impression that +scapegoat's not having some hashes is purely an implementation detail 15:17:21 but good point 15:17:39 elliott: you were inconsistent on the point, I wasn't sure what your impression was 15:17:49 perhaps... 15:17:51 I'm just confused :) 15:18:03 ais523: ok, so are there any more efficient algorithms than you can think of than O(hashes)? :p 15:18:05 we can do things as either "all hashes in +scapegoat are part of the repo" or "only whitelisted hashes in +scapegoat are part of the repo" 15:18:31 elliott: same algo, but optimised such that "check whether this set of hashes conflict" is efficient 15:18:46 ais523: hmm 15:18:54 in particular, I'm thinking of caching whether the set of dependencies of a given hash are mutually consistent or not 15:18:55 ais523: i can't think how to make that efficient without reading every single hash in th repo 15:18:56 ah 15:19:48 so then, all you'd have to do is take toplevel hashes - those which nothing currently depends on - and take their most recent common ancestors, which would be quite a fast thing to do 15:19:51 and reconstruct from there 15:20:06 (the notion of a toplevel hash is pretty irrelevant as far as the VCS goes, but seems to be very useful for optimisation) 15:22:30 -!- oerjan has quit (Quit: leaving). 15:30:14 -!- augur has joined. 15:31:56 http://www.ukresistance.co.uk/2010/12/by-public-demand-the-sega-toilet-game/ 15:40:14 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep). 15:51:43 -!- MigoMipo has joined. 16:02:40 -!- poiuy_qwert has joined. 16:02:45 -!- Phantom_Hoover has joined. 16:08:00 hmm, a forum I just logged into had two checkboxes for "remember me?", one marked yes and one marked no 16:08:05 so I checked both of them to see what would happen 16:08:10 I'll have to see if I'm still logged in tomorrow 16:27:59 hey ais 16:28:04 i have a question about monads 16:28:50 ais523: in this electronics/wires analogy for monads, what is >>= ? 16:32:07 cheater99: connecting two blocks to each other, and also taking a second connection from the output of the first 16:32:27 where does the second connection go to? 16:32:34 i think a drawing would help 16:33:05 (but i'm sure it can be explained without one) 16:33:25 well, >>= is combined with a lambda 16:33:29 as in, >>= \a. 16:33:37 it goes to wherever that lambda's connected to 16:33:38 so, anywhere 16:34:09 i don't understand :( 16:34:33 let's see... monads are just computations with a sidechannel 16:34:46 now, the computations might do nothing but interact with the sidechannel, as in IO () or whatever 16:34:51 in which case, you just connect with >> 16:34:58 however, they might also produce a result, entirely independent of the monad 16:34:58 Wait, you're using a metaphor for monads? 16:35:10 A questionable one, too. 16:35:12 in which case, you need to put the result somewhere 16:35:16 Phantom_Hoover: it doesn't extend forever 16:35:21 but I used it to teach cheater99 monads months ago 16:35:26 What about the [], Maybe or Identity monads? 16:35:42 now, >>= is like >>, but it lets you specify somewhere to put the result of the computation that the monad wraps 16:36:15 i don't know >> yet 16:36:26 oh, >> is literally just connecting two blocks together 16:36:31 do you understand do notation? 16:36:40 or do you just understand the concept but not any notation? 16:36:51 i don't know the notations 16:36:59 cheater99, a >> b = a >>= const b. 16:37:00 i may or may not understand the concepts behind them 16:37:10 i don't know const, i'm a haskell n00b 16:37:24 const == K in the SKI calculus. 16:37:29 i've just recently learnt about the state monad, and i'm trying to figure out how that works with the idea you gave me ais523 16:37:37 ah, OK 16:37:50 let's see... imagine a simple computation which doesn't have a monad at all 16:37:54 yes 16:38:01 it has one input and one output 16:38:04 let a = 2 + 2 in a * 3, let's say 16:38:10 cheater99, such things are probably a bad idea; the State monad is trivial enough that you can just look at the code itself. 16:38:12 so for example, a box, with a "pin" on the left and a "pin" on the right 16:38:19 like a DIP with just one pin on each side 16:38:20 yep 16:38:21 yes? 16:38:22 ok 16:38:30 and a monad is a sidechannel representing that 16:38:38 wait 16:38:41 *sidechannel alongside that 16:38:45 oh ok 16:38:46 yes 16:38:53 a monad is a wire running above our box 16:38:55 yep 16:38:58 our box is not connected to it yet 16:39:00 indeed 16:39:06 ------------------ 16:39:08 nor need it be ever, depending on what we do with the monad 16:39:11 -| |- 16:39:15 yes 16:39:17 ok, now 16:39:22 what does >>= do? 16:39:37 so, notationally speaking, we want to connect both the wire representing the monad, and the inputs and outputs of the boxes below 16:39:54 so there's more than one thing to connect, and that's where the notation gets a little complex 16:40:12 it's easier to start with >> first; that corresponds to ignoring the output pin of the computation itself, and just connecting the monad 16:40:14 so if I do a >> b 16:40:16 that's the same as 16:40:18 ------------------------ 16:40:19 ok go on 16:40:32 -| a |-o -| b |- 16:40:37 where the -o means I didn't connect it to anything 16:40:50 connecting the inputs of the boxes a and b is easy enough, as they're just functions and can take arguments 16:40:50 but the monad in your drawing isn't connected 16:40:56 the monad is, that line above is continuous 16:41:02 but the boxes below aren't connected to each other at all 16:41:10 wait let's use some sort of online whiteboard maybe 16:41:18 is there such a thing? 16:41:42 suppose I want to give inputs to a and b, still not connecting them to each other at all 16:41:46 you got java? 16:41:46 if I do (a 6) >> (b 7) 16:41:48 that gives me 16:41:50 --------------------- 16:42:02 6-| a |-o 7-| b |- 16:42:11 hmm, yes, but not the Oracle version, and it's unreliable sometimes 16:42:21 it's probably easier just to do it over IR 16:42:23 *IRC 16:43:13 so the point is, that although connecting the output of a to the input of b is the "obvious" thing to do, you could actually connect them anywhere 16:43:36 so long as you don't try to take them in the opposite direction to the monad (that is, you can't take outputs from blocks that haven't run yet, unless you're writing in TwoDucks or something) 16:44:02 -!- sebbu has quit (Ping timeout: 255 seconds). 16:45:56 are you following this so far? 16:46:01 hmm 16:46:18 i need to think about it but i just remembered i have to call someone real quick 16:46:30 i'll let you know when i'm back, ok? shouldn't take a lot of time 16:46:40 cheater99, incidentally, do you know how the Maybe monad works? It's the easiest to understand non-trivial one. 16:47:19 Phantom_Hoover: no it isn't, State is in this model 16:47:30 there are a huge number of different ways to understand monads 16:47:38 and different people learn it different ways 16:47:45 All of which don't work for at least half of them. 16:47:53 there are concepts of monads where IO is simplest, where Maybe is simplest, where State is simplest 16:48:06 there are even ways of understanding monads based on starting from the trivial monad 16:48:15 (which is, surprisingly, actually useful on occasion) 16:48:28 I mean, the category-theoretical version of monads is identical, but the metaphors you'd use are *completely* different. 16:48:46 ais523, monad transformers, isn't it? 16:49:00 That Identity is useful for? 16:49:13 not just that 16:49:25 you can use it for tagging values hungarian-notation-style, but more reliably 16:49:37 as in, "this needs to be escaped before showing to the user", etc 16:49:48 although there are other ways to do that anyway in Haskell 16:50:21 also, for encapsulation purposes, to make an opaque handle that can only be passed around, not modified directly, by other parts of the program 16:51:12 ais523, using the Identity monad for that seems utterly stupid. 16:51:43 perhaps 16:51:44 I mean, why not just do data EscapedString = EscapedString String, then give it a Show instance that escapes it? 16:51:51 it doesn't really do a lot, though, just tag things 16:51:58 also, ouch at making that a Show instance 16:52:12 Why? 16:52:12 and the reason is, you couldn't do things like, say, concatenate your EscapedStrings together 16:52:22 *UnescapedString, I suppose 16:53:48 you could do something as simple as liftM reverse to reverse an EscapedString if it were a monad 16:54:03 again, *UnescapedString 16:54:18 (the idea is that these are identical to ordinary strings, just you have to be careful not to use them in situations you don't want) 16:54:18 Phantom_Hoover: it doesn't extend forever 16:54:18 but I used it to teach cheater99 monads months ago 16:54:21 ais523: "teach" 16:54:29 elliott: well, I think he "got" them 16:54:35 ais523, erm... Functor and fmap? 16:54:39 even though the metaphor was imperfect 16:54:42 Phantom_Hoover: well, monads are sorts of functors 16:55:02 in fact, liftM and fmap are IIRC the same function 16:55:09 ais523, yes, but why make them monads when they have no monadic properties whatsoever? 16:55:32 because they do 16:55:47 the monad version would be Tainted String, rather than UnescapedString 16:55:51 i.e. it actually takes a type as an argument 16:55:59 There's an article on the Haskell wiki which complains about people who use monads when some other category-theory thing would do the job. 16:56:34 Also, you *could* just define the relevant functions yourself. 16:56:35 hmm, "unescaped" was too specific 16:56:42 I meant "untrusted", etc. 16:56:48 ais523, yes, but why make them monads when they have no monadic properties whatsoever? 16:56:52 if they're monads they should have a Monad instance 16:56:56 regardless of how useful it may seem 16:56:57 i.e. user input that you don't want to put straight into your SQL queries, whether they're strings or not 16:57:24 with them as monads, rather than functors, if you convert them from strings to, say, magic numbers for accessing some crazy enterprisey database 16:57:41 then they're still inside the same monad, and thus won't be passed to the database without explicitly extracting them from the monad 16:57:53 ais523, wait, the point here is that you /don't want a functor/. 16:57:59 no, it isn't 16:58:05 it's fine to do arbitrary operations on the untrusted data 16:58:08 so long as it remains untrusted 16:58:27 The original thing here was to escape strings, not have some general interface thing. 16:58:51 Phantom_Hoover: I slightly screwed up my original statement, I was being slightly too specific and should have realised you'd take me literally 16:59:08 OK. 16:59:34 But you were talking about uses of the Identity monad. 16:59:39 tep 16:59:43 *yep 16:59:50 well, the point here is that Untrusted /is/ the Identity monad 17:00:04 if you work out what >>=, return, etc. are, they come to the same thing 17:02:32 ais523: i saw a post on perlmonks saying perl doesn't need monads because perl already has taint built in 17:02:48 (the example being used for monads was "look, you can do taint in it without even any language support!") 17:03:28 elliott, oh mc updated 17:03:30 elliott, interesting 17:03:38 elliott, does it break with the server now? 17:03:40 -!- sebbu has joined. 17:03:43 -!- MigoMipo has quit (Ping timeout: 276 seconds). 17:03:47 Vorpal: not updated 17:03:50 Vorpal: he just moved some files. 17:04:05 elliott, oh? so what was that then 17:04:09 Vorpal: he just moved some files. 17:04:10 elliott, as in 17:04:17 on the server 17:04:18 elliott, changing directory structure? 17:04:21 ah okay 17:04:22 yes 17:04:26 on the server, right 17:04:30 not in ~/.minecraft it seems, i checked 17:05:20 ais523: so would a scapegoat impl cache the list of toplevel patches? 17:08:36 ais523: hi 17:09:39 ais523, out of curiosity, where does join fit into your metaphor? 17:10:41 ais523: hey 17:10:43 ais523: http://skrbl.com/156427695 17:10:46 [[Although most filepatches will be hunks, darcs is clever enough to support other types of changes as well. A ``token replace'' patch replaces all instances of a given token with some other version. A token, here, is defined by a regular expression, which must be of the simple [a-z...] type, indicating which characters are allowed in a token, with all other characters acting as delimiters. For example, a C identifier would be a token with the fl 17:10:46 ag [A-Za-z_0-9]. 17:10:46 What makes the token replace patch special is the fact that a token replace can be merged with almost any ordinary hunk, giving exactly what you would want. For example, you might want to change the patch type TokReplace to TokenReplace (if you decided that saving two characters of space was stupid). If you did this using hunks, it would modify every line where TokReplace occurred, and quite likely provoke a conflict with another patch modifying 17:10:48 those lines. On the other hand, if you did this using a token replace patch, the only change that it could conflict with would be if someone else had used the token ``TokenReplace'' in their patch rather than TokReplace--and that actually would be a real conflict! ]] 17:10:52 ais523: i did not know this ^ 17:10:58 ais523: we start out with a simple function, Ax = 2x 17:11:23 ais523: and let's see how >>= works on things 17:11:31 -!- sebbu has quit (Ping timeout: 276 seconds). 17:11:59 elliott: I did 17:12:05 I've even used it before now 17:12:09 cheater99: hmm, OK 17:12:11 ais523: problem is, you have to do it manually 17:12:13 Phantom_Hoover, there? 17:12:15 elliott: indeed 17:12:19 Indeed. 17:12:21 Phantom_Hoover, weird track south of your place. where does it go? 17:12:22 ais523: which sort of makes the VCS a version ... creation system 17:12:24 also, it isn't language-aware, so it replaces inside comments 17:12:36 ais523: hmm, not a very useful feature, then 17:12:37 Vorpal, Mt. Hoover? Dunno. 17:12:47 To the Batmobile! 17:12:48 elliott, you involved in it? it is above ground 17:12:49 it's rather limited, yes 17:12:50 and FAAR 17:12:54 it could be much better 17:13:03 argh, skrbl is broken 17:13:06 Vorpal: what kind of track 17:13:08 cheater99: well, in Haskell notation, we'd write that a x = 2 * x 17:13:16 (capital letters are reserved for type names) 17:13:18 elliott, minecart 17:13:18 ais523: ok 17:13:21 ais523: you didn't click his fancy java whiteboard! he won't talk to you!1111 17:13:28 Vorpal: i have no idea. ride it and see 17:13:34 -!- sebbu has joined. 17:13:43 elliott, it completely lacks boosters, but it is mega-scale 17:13:47 so if we want to double a value, and double it again, we could write, say, a (a 5), and get 20 17:13:50 Vorpal: walk it then 17:13:56 Vorpal, wait for me! 17:14:09 ais523: so we have a x = 2 * x. ok. 17:14:21 now it is represented by a box with one pin on the left and one on the right. 17:14:25 yep 17:15:00 ais523: hmm, does scapegoat have an easy patch-invert algo? 17:15:04 http://dabbleboard.com/draw?b=Guest527979&i=0&c=9d321a8e4ccd7efbf770e3f5f3517f427b010b35 17:15:10 do you see a box with "a" on it here? 17:15:25 ais523: darcs does inverse patches as P^-1 P = nothing, but I think it's easier to do P P^-1 = nothing... I may be wrong though 17:15:47 ais523: that dabbleboard thing is flash. 17:15:55 to save you opening a browser. 17:18:03 -!- ais523 has quit (Read error: Operation timed out). 17:18:39 well, i hope thatwasn't the whiteboard! 17:19:25 -!- ais523 has joined. 17:19:48 ais523: did the whiteboard hang up your pc? :O 17:19:48 sorry, connection dropped 17:19:50 where was I? 17:19:57 also, you didn't actually link me to the whiteboard thing 17:20:00 oh, you did 17:20:01 http://dabbleboard.com/draw?b=Guest527979&i=0&c=9d321a8e4ccd7efbf770e3f5f3517f427b010b35 17:20:05 he did, two of them, one JS, the other flash 17:20:06 dabbleboard 17:20:22 will it work for you? it's flash 17:21:15 I loaded it in my non-locked-down browser 17:21:39 OK. do you see a box with an "a" on the drawing?? 17:21:50 no 17:21:57 so I guess it isn't working 17:22:12 it loaded, but doesn't seem to have anything to do with what you're doing 17:22:15 i wish i had that kind of dedication to explaining things to trolls 17:22:18 although i'm not sure why 17:22:20 as in, seems to be independent between me and you 17:22:26 elliott: I'm a teacher, remember? it's good practice 17:22:32 -!- MigoMipo has joined. 17:22:44 ais523: well, most students aren't outright trying to waste your time ... ok maybe they are 17:23:01 ais523: ok, let's abandon the whiteboard concept. i'll try to find something for next time. let's continue describing on irc :) 17:23:04 elliott: well, it isn't their fault 17:23:17 [17:13] ais523: so we have a x = 2 * x. ok. 17:23:18 [17:13] now it is represented by a box with one pin on the left and one on the right. 17:23:19 [17:13] yep 17:23:21 [17:14] if we want to connect two of them together, we can do something like "let b = (a x) in (a b)" 17:23:22 [17:14] i.e. we've given a name to the result, and we can use the name later on 17:23:33 I think that's where we'd got to 17:23:36 ok 17:24:11 so, that's how it works with monads involved 17:24:18 now, let's wrap that one into a monad 17:24:22 monads are like burritos 17:24:22 ok 17:24:28 http://blog.plover.com/prog/burritos.html 17:24:34 if I write (liftM a), that's our a function, except now it's inside a monad (and doesn't interact with it) 17:24:35 it's the only acceptable way to explain them 17:24:46 that's the case of the sidechannel being independent of the function itself 17:24:51 ais523: ok 17:24:59 (because it's Haskell and amazing at figuring out types, we don't have to say /which/ monad) 17:25:00 ais523: how does liftM know which monad i want? 17:25:23 amazing like bread 17:25:24 (but we could, as in ((liftM a) :: Int -> State Int Int)) 17:25:43 cheater99: basically, if there's only one that works from context, it uses that one 17:25:47 and normally, there is 17:25:47 ais523: i am unconvinced your analogy has pedagogical value... although no monad analogy does 17:26:02 usually they just convey a sense of giving knowledge IMO 17:26:19 elliott: you can tell when it's worked when the other person starts disagreeing with you 17:26:25 because it shows they've slipped into a different analogy from you 17:26:31 everyone has their own mental model of things like monads 17:26:33 ais523: ok, so from context 17:26:36 yep 17:26:37 ais523: monads are like mirrored piles of dung 17:26:39 ais523: don't you agree? 17:26:47 elliott: now /you're/ trolling 17:26:57 ais523: but if you don't agree, that's proof that it worked! 17:27:25 so, what I did before, was to give a name to the return value of a x, so that I could pass it to another function 17:27:30 ais523: ok, so liftM just takes a function and gives it monadic type, without the function interacting with the monad in any way 17:27:34 (Haskell lets you abbreviate that a lot, but I won't because it's clearer without) 17:27:39 cheater99: yep, it wraps the function up in a monad 17:27:42 ok 17:27:55 what do you mean "give a name to the return value of a"? 17:28:08 ais523: btw, 09:25:24 (but we could, as in ((liftM a) :: Int -> State Int Int)) 17:28:10 cheater99: well, if we wanted to use it more than once, for instance 17:28:10 ais523: is not valid 17:28:10 *by 17:28:12 in the slightest 17:28:16 elliott: did I typo slightly? 17:28:16 liftM :: (Monad m) => (a1 -> r) -> m a1 -> m r 17:28:24 oh, right 17:28:34 it'd be State Int Int -> ... 17:28:36 it should be State Int Int -> State Int Int 17:28:44 I did mean liftM, I just braintypoed for a moment 17:30:00 cheater99: anyway, it's sort-of like assigning to a variable, except that it's a functional-style variable (lambda binding) which just gets its value once and then keeps it until it goes out of scope, rather than an imperative-style variable whose value you can change 17:30:32 ais523: an immutariable :) 17:31:09 that's probably a better name than the usual "lambda binding" 17:31:23 ais523: i'm lost 17:31:32 ais523: "constant" would be right but unfortunately has incorrect connotations 17:31:34 how is liftM a "like assigning to a variable"? 17:32:18 and besides 17:32:20 cheater99: oh, it isn't liftM I was talking about 17:32:28 oh, what were you talking about? 17:32:35 it's the "let b = (a x) in (a b)" example, because I thought you asked me about it 17:32:43 what do you mean "give a name to the return value of a"? 17:32:50 and I mean, I named it b so I could use it later on 17:33:34 one of the issues with IRC is that you get used to having multiple conversations at once, even with the same person 17:33:39 ok ok 17:33:40 so 17:33:49 we want to connect two a's together and call them b. ok. 17:34:09 wait no 17:34:20 we want to connect two a's together and call one of them b for some unknown reason 17:34:32 we want to connect them together 17:34:34 oh, it's so that we get x 17:34:36 we call the point where we connect them b 17:34:40 let b = (a x) in (a b), alright. 17:34:48 so here, the first one takes input x, and output b 17:35:02 so (a b) == 2 * 2 * x 17:35:04 and the second one takes input b, and its output is the output of the expression as a whole 17:35:07 yep 17:35:09 ok 17:35:17 "the second one" is (a .) 17:35:18 yes? 17:35:26 where . is a "place for a variable" 17:35:28 yes 17:35:29 ok 17:35:32 let's keep going 17:35:39 our aim is to understand >> or >>= 17:35:41 yep 17:36:00 so, let's say we want to connect two (liftM a)s together, and also connect their sidechannels together 17:36:15 "our" aim? 17:36:16 hmmmmmmm. 17:36:22 >> and >>= are what we use to do the connection 17:36:48 so now, x is an integer with state as a sidechannel 17:37:44 if I feed it to one (liftM a), as in (liftM a) x, there isn't much of a problem 17:37:56 suppose I want to connect it to both the liftM as, and they have connected sidechannels 17:38:05 I need to connect the sidechannel, and connect the output as well 17:38:20 so I do (liftM a) >>= (\b. liftM a b) 17:38:25 mhm 17:38:30 just a sec 17:38:32 so, the >>= is doing two things 17:38:39 ais523: *\b -> 17:38:43 oh, right 17:38:48 *so I do (liftM a) >>= (\b -> liftM a b) 17:39:01 elliott: Haskell busy using a different notation from maths, it caught me out 17:39:17 so is ( (liftM a) >>= (\b. liftM a b)) 2 == 8? 17:39:23 ais523: (\x.e) isn't very common maths :P 17:39:26 no, because 2 doesn't have a sidechannel 17:39:27 or is it "8 with some monad stuff wrapped around it"? 17:39:30 elliott: it is for me 17:39:31 or even CS, really 17:39:39 if you gave it a 2 with state, it'd give you an 8 with the same state 17:40:50 Phantom_Hoover, down? 17:40:55 because liftM-produced monad actions aren't interfering with the sidechannel at all 17:40:59 which is why it has to be the same state 17:42:11 \lambda q. (\lambda g. g (\lambda x. g (q x))) (\lambda b. (\lambda k. ((k (\lambda u. u)) (\lambda l. ((k b) (\lambda t. (l (t\ \mathsf{skip}))))))) (\lambda v.\lambda w. w v)) 17:42:14 ais523, how does join fit in here? 17:42:21 elliott: that's an actual quote from my most recent paper 17:42:34 also, probably the esoprogrammingiest bit of it 17:42:35 -!- tehjamezZzZz has changed nick to tehjamez. 17:42:36 ais523: can i read that paper? :p 17:42:48 um, I'm not sure, let me check if it's online somewhere 17:42:49 yeah! 17:42:52 lambda ftw 17:42:52 or is it paywalled and copyright-stolen (alternatively, if you just don't like me) 17:43:15 (copyright-stolen, n. a nonce neologism for what journals do to the copyright ownership of papers.) 17:43:26 admittedly, a pretty rubbish neologism 17:44:09 elliott, *a., surely? 17:44:19 Phantom_Hoover: erm, yes 17:44:47 elliott: I don't think it's been published yet 17:44:56 here's the one before it: http://www.sciencedirect.com/science?_ob=MImg&_imagekey=B75H1-50XT4JJ-M-1&_cdi=13109&_user=122868&_pii=S1571066110000976&_origin=search&_coverDate=09%2F06%2F2010&_sk=997349999&view=c&wchp=dGLzVtz-zSkWA&md5=29034da8cccf0c1f639f8277873c9ad1&ie=/sdarticle.pdf 17:45:13 (in other news, online journal places have stupid URLs) 17:45:26 ais523: paywall 17:45:27 $19.95. 17:45:30 ouch 17:45:42 doesn't paywall for me, presumably because I'm inside the University, rather than because I wrote it 17:45:47 the DOI is http://dx.doi.org/10.1016/j.entcs.2010.08.018 17:46:18 oh, but it links back to the same place 17:46:20 ouch 17:46:39 elliott: $20 per read seems a little excessive for that sort of thing :) 17:47:39 ais523, does your scrupulous adherence to the law prevent you from letting us see it? 17:47:43 I'm not sure 17:47:53 I'm a little confused, because I never knowingly signed copyright over to them myself 17:47:55 it does not probably 17:48:05 but I think it comes under the writing things for your employer category 17:48:11 ais523: what most people do, that I know of, 17:48:19 ais523: is publish the final-but-one draft before submitting it 17:48:25 online 17:48:35 I think that's "more legal" 17:48:43 since you're not publishing what they're publishing 17:48:50 you're publishing a clearly inferior draft version, with three words different 17:49:13 aha: http://www.cs.bham.ac.uk/~drg/papers/mfps10.pdf 17:49:20 ais523: SO HEY SCIENCE IS FREE RIGHT 17:49:25 ais523: OPEN ACCESS, WORLD'S KNOWLEDGE FOR EVERYONE 17:49:31 PAY $19.95 TO READ MORE 17:49:35 'tis indeed different, it's missing the logo 17:49:45 ais523: oh man, without the logo why should i even bother reading it 17:49:46 and not, AFAICT, paywalled 17:49:54 indeed it's not 17:50:10 ais523: permission to upload that to filebin.ca for backup? 17:50:19 it'll be there forever 17:50:20 on the off-hand chance that you own the copyrights to that draft 17:50:24 ais523: fair enough 17:50:27 ais523: ok 17:50:31 ais523: reading 17:50:36 also, filebin.ca doesn't last forever 17:50:40 I know this from experience 17:50:47 This paper is electronically published in 17:50:47 Electronic Notes in Theoretical Computer Science 17:50:47 URL: www.elsevier.nl/locate/entcs 17:50:49 guess what that URL is? 17:50:51 answer: 404'd 17:51:13 i like this typographic awesomness of science papers... made by LaTeX 17:51:23 This “functionalised” syntax can be represented in a more conventional way. For 17:51:23 example, a program such as bool x; if (y) x=z and t else x=z or t can be 17:51:23 written using the functionalised syntax as: 17:51:23 newvar(λx.if y (asg((and(der z)(der t)), x))(asg((or((der z), (der t))), x))). 17:51:25 but obviously! 17:51:35 nooga: um you realise latex is ubiquitous? 17:51:38 elliott: we're saying that the functionalised syntax is more convenient for our purposes 17:51:42 even though it's harder to read 17:51:48 ais523: i'm just kidding :) 17:51:52 ais523: ok, so... 17:51:56 ais523: nice that the references are hyperlinked 17:51:58 don't see that much 17:52:15 ais523: we have LiftM a's connected with >>=. What does >> do? 17:52:25 what >> does is, it doesn't connect the output at all 17:52:35 this is mostly only useful if there isn't one in the first place 17:52:50 say, if you're not connecting liftM a, but, say, something that changes the state 17:53:01 which would change the sidechannel, but not produce output of its own 17:53:09 ais523: darcs pet peeve: Shall I record this change? (1/2) [ynWsfvplxdaqjk], or ? for help: 17:53:16 elliott: I like it 17:53:21 ais523: nonono, not the UI 17:53:22 and you know you can use -a, right? 17:53:30 ais523: the "[ynWsfvplxdaqjk]" 17:53:35 oh, the summary of what keys you can press? 17:53:39 ais523: really, it could at least list the commands in separate blocks according to what they do (respond to the question, navigate, etc.) 17:53:43 or just have fewer keys :) 17:53:49 elliott: sure, even I use LaTeX 17:53:54 the [] is basically useless, if you forget how it works you need to use ? anyway 17:54:01 ais523: it's a pet peeve, it doesn't have to matter :) 17:54:34 cheater99: the other thing to mention is that there's a different notation you can use which does the same thing, just you don't have to write out all the >>=s and lambads 17:54:49 ais523: gotta admint, it's interesting 17:55:00 it looks like this: {do b <- a x; a b} 17:55:05 ais523: wrong 17:55:10 do { b <- a x; a b } 17:55:11 I've messed it up again, haven't I 17:55:21 oh, almost write this time 17:55:22 *right 17:55:27 you can tell I haven't used Haskell for a while :) 17:55:39 Haskell and ML are two languages that I find it hard to think about simultaneously 17:56:20 ais523: hmm, doing the scapegoat first draft in haskell may be a bad idea from you-reading-it POV :) 17:56:22 *from a y 17:56:24 -ou-etc. 17:56:37 elliott: nah, I've done my little OCaml sideproject 17:56:42 and can go back to thinking in monads again 17:57:16 ais523: so if i did (LiftM a >> LiftM a) x, where x is two-with-a-state, what would i get? 17:57:20 would i get anything at all? 17:57:27 can LiftMa be >>'d with itself? 17:57:44 it's liftM with a lowercase l; and I think you'd just get an error 17:57:56 the proof is .... interesting 17:57:58 because you haven't given LiftM a an argument 17:58:12 (at least, not giving a function an argument doesn't normally cause an error in Haskell, just a partial application) 17:58:24 (but I think it'd make them not connect due to being of the wrong types) 17:58:37 MONAD... now you're thinking with monads 17:59:14 nooga: the long proof at the end, in an appendix? 17:59:19 that bit was mostly me, most of the rest was mostly Dan 17:59:35 !haskell :t liftM 17:59:37 ais523: yes, that one 17:59:38 sorry yes, lowercase l 17:59:39 it was a really annoying proof, it's something like 1000 simple cases 17:59:47 and a few that require more thought 17:59:51 it's a bit hard to read 17:59:55 ais523: do it in COQ!!1112 18:00:09 nooga: indeed 18:00:14 DON'T MAKE ME THINK ABOUT COQ 18:00:19 -!- atrapado has quit (Quit: Abandonando). 18:00:43 liftM :: (Monad m) => (a1 -> r) -> m a1 -> m r 18:00:49 thanks ais523, it was very useful 18:00:54 i can visualize this more now 18:00:58 ais523: ugh, did you write this latex? 18:01:27 ais523, are my continued exhortations for you to explain how join fits into this growing obnoxious? 18:01:42 ais523: i think electronics are a very good parallel for functional programming 18:01:49 elliott: no, I wrote it in LaTeX, but the whole thing was retyped 18:01:59 so it isn't my LaTeX you're seeing there 18:02:05 Phantom_Hoover: I can't remember what join does 18:02:06 since electronics circuits are (in theory) pretty much like functional language programs 18:02:13 but I suspect it doens't fit the analogy too well 18:02:14 ais523: ah... because there's "FORK; XOR" in math mode; the problem is, latex is seeing that as F*O*R*K;X*O*R, so the spacing is horrid 18:02:18 ais523, join = (>>= id) 18:02:20 there are no side effects, for example, and no state unless you introduce it 18:02:27 ais523: and \mathnormal{FORK} or however you do proper text italics in math mode (I forget) should have been used 18:02:30 cheater99: in practice too, that's what my papers are about 18:02:48 At which the analogy seems to break down since id doesn't map nicely to a box. 18:02:50 elliott: oh right, Dan's awful wrt text in math mode 18:03:06 ais523: stab him a bit for me, if you please 18:03:07 now write a compiler 18:03:10 I've known him to set \mathsf{} for an entire expression, just to write a few words in sans-serif 18:03:17 nooga: that's likely my PhD project 18:03:31 awesome! 18:03:42 ais523: well, in practice, you have problems such as ground plane interaction, capacitive coupling, ... 18:03:53 ais523: psht, no, clearly Feather is 18:03:57 cheater99: umm, I'm a qualified electronic engineer? 18:04:00 but with careful analog design those are bypassed 18:04:11 everyimre you say anaology i get a notofication 18:04:13 but we're just compiling onto FPGAs 18:04:15 because anal is a hottoipic word for me 18:04:18 tehjamez: analogy analogy analogy 18:04:23 ;) 18:04:31 tehjamez: why don't you filter it to whole words, rather than anywhere in a word? 18:04:34 ais523: that's fine, i'm just pointing out that you're thinking of fpgas whereas i'm thinking of linear electronic circuits in general 18:04:35 methinks tehjamez has no idea where he is 18:04:38 because 18:04:44 what if someone says anal with a ? at the end 18:04:45 otherwise, you'll find it quite banal when people talk about analysis 18:04:52 tehjamez: ? is nonalphabetic 18:04:53 ais523: damn you, i was pulling out analysis 18:04:58 elliott: take that back! 18:04:59 oh its quite enjoyanalable 18:05:08 ais523: um... uoy nmad 18:05:13 ais523: oh fine, i take it back 18:05:16 ais523, *nanalphabetic 18:05:17 furrfu 18:05:28 tehjamez: you could use \banal\b if you're using Perl-style regular expressions for stalkwords 18:05:35 hahahah 18:05:37 ais523: but that's banal 18:05:43 rofl 18:05:58 nonanalphabetic: made out of nine letters. 18:06:07 I think we might see a banal publication in the correctly-spelled version of "Anals of Mathematics", analysing the most common analogies. 18:06:17 elliott: *Annals? 18:06:22 this is gettign hot 18:06:22 the joke doesn't work if you misspell a word 18:06:23 * Phantom_Hoover facepalms 18:06:29 ais523: no, the correctly-spelled version of Anals of Mathematics is Annals of Mathematics 18:06:36 that's why it's quoted, and corrected in the sentence 18:06:43 ah 18:06:58 It's better to say annal with one n anyways 18:07:01 ais523: hey, i have a question about verilog 18:07:05 ais523: do you use verilog at all? 18:07:10 and can you recommend learning it? 18:07:18 I grew up on VHDL, rather than Verilog, but know a bit of Verilog 18:07:20 i want to learn *something* for fpgas but not sure if verilog is the best 18:07:21 it depends on what you want to do 18:07:29 Verilog and VHDL are basically the same language with different syntax 18:07:31 well, i want to start with something simple 18:07:39 like, say, a few fifo's chained 18:07:45 with async clock 18:07:57 i.e. a different clock for incoming and a different for reading out 18:08:00 they suffer from the Brainfuck issue in a way, they're not only simple, but perhaps a little too simple to accomplish anything useful without lots of code 18:08:14 ais523: are they functional languages? 18:08:20 no, they're behavioural 18:08:25 what does that mean? 18:08:29 hmm, let's see 18:08:42 the main primitive in the langs in question is connecting wires 18:08:52 ais523: it's interesting watching the patterns of one side of this conversation, as my IRC client is arranging for me :P 18:09:03 e.g. in VHDL syntax, a <= b means that b (an output) is connected to a (an input) 18:09:21 and pretty much all you do in the lang are connect components together by connecting their pins 18:09:30 ais523: whereas b => a is greater-than-or-equal-to, naturally! 18:09:43 no, it actually means something completely different, and I can't remember what offhand 18:09:48 ais523: well it /should/ be taht. 18:09:49 greater-than-or-equal-to is >= 18:09:50 *that. 18:09:54 elliott: it's unrelated to <=, anyway 18:10:07 greater-than-or-equal-to is unrelated to connecting wires! :P 18:10:24 (actually, greater-or-equal is probably something slightly different) 18:10:38 anyway, the language doesn't have statements, like some other langs do 18:10:44 it's just a whole load of "when a changes, b changes" 18:10:49 umm, "when b changes, a changes" 18:10:54 so, e.g. if you do a <= b + 5 18:11:02 then whenever b changes, a changes to the new value of b, plus 5 18:11:12 also, the change is very slightly delayed 18:11:31 ais523: what i'd like to see 18:11:39 is a semi-functional language based on "signals" 18:11:43 sort of like VHDL but with parameters 18:11:43 e.g. 18:11:47 a(n+5) <= b(n) 18:11:51 then if you had a print function you could do 18:11:52 the langs also let you do things like "when the clock has a positive edge, b changes to a" 18:11:55 print(n) <= a(n) 18:12:08 and, that's pretty much all you can do if you want it to synthesize into hardware 18:12:09 or e.g. 18:12:15 print("a =", n) <= a(n) 18:12:33 if you're just simulating, you can do more things, like use imperative-style variables, and even print messages (thus a VHDL hello world is both possible and incredibly misleading) 18:12:46 elliott, Prologgy! 18:12:52 Phantom_Hoover: similar, but not quite 18:13:09 cheater99: got that? that's basically all VHDL and Verilog are, and yet they're what people /actually use/ to program FPGAs 18:13:14 except, 18:13:17 a(n+5) <= b(n) 18:13:21 would actually be 18:13:29 a(m) <= b(n), add(n, 5, m) 18:13:35 420? 18:13:44 where add is a "virtual" signal that continuously emits every combination of A+B = C 18:13:48 valid combination, that is 18:13:55 elliott: this sounds quite a bit like Proud now 18:13:59 tehjamez: if you don't know what esoteric programming languages are, go away 18:14:06 ais523: this is computable, though (add only does that in theory) 18:14:24 except it was uncomputable due to doing things like quantifying over all functions 18:14:33 factorial_result(0) <= factorial_of(0) 18:14:47 er, wait 18:14:59 factorial(0, 1) <= tick 18:15:22 factorial(n, r) <= sub(m, 1, m'), factorial(m', r'), times(n, r', r) 18:15:38 tick could theoretically just tick at N Hz 18:15:43 back 18:15:46 but in an actual implementation, you'd probably simulate it ticking at infinity Hz 18:15:57 i.e. everything depending on tick executes immediately 18:16:01 or rather, you'd treat it as constant 18:16:15 "factorial(0, 1) <= tick" would just add a permanent entry into a table saying "yup, factorial(0, 1) is being emitted" 18:16:38 ais523: it's basically Prolog for events :) 18:16:49 you could even implement add, e.g. 18:16:55 add(n, 0, n) <= tick 18:17:41 add(n, m, r) <= add(m', 1, m), add(n, m', r'), succ(r', r) 18:17:55 succ would have to be built-in, though (assuming numbers are primitive) 18:17:55 ais523: ever used altera? 18:18:03 ais523: what fpgas DO you use? 18:18:22 Assume for contradiction that there is an interaction v·w·m in exactly one of the sets [[M_2]](*) • [[M_1]](*) and K_2 • K_1 (with v and w interactions, and m a move), all moves in w are in θ', the last move in v is in θ, v is in both [[M_2]](*) • [[M_1]](*) and K_2 • K_1, and at least one of the following statements is true: m is not in θ, m is a P-move in M_1, or the last move in v is an O-move in M_1 and v·w·m is not a subse 18:18:24 ais523: name some non-altera, non-xilinx brand 18:18:29 ais523: oh wait, there aren't any 18:18:30 elliott: I'm not sure if there /are/ any 18:18:33 :D 18:18:55 cheater99: let's say, I spent weeks trying to get the Xilinx boards to work, and couldn't 18:19:07 so my supervisor gave the FPGA job to someone else 18:19:17 I haven't been involved since, but I notice there's an Altera board sitting on the desk now 18:19:33 do_print(n) <= some_signal(n) 18:19:40 ais523: ouch :( 18:19:44 ais523: that's not good! 18:19:48 ^ you could imagine that the platonically perfect runtime system would have a rule 18:19:53 has_been_printed(n) <= do_print(n) 18:19:54 ais523: i hope you will get back on top of it 18:20:00 cheater99: oh, no 18:20:02 it made sense to move it 18:20:04 and every program that /read/ things just set up a signal on that, etc. 18:20:10 ais523: so what are you doing now? 18:20:15 doing research >>> struggling with an FPGA board with incomplete and misleading documentation 18:20:16 so this is "functional", arguably; at least, as functional as the language's actual mechanism 18:20:20 cheater99: writing papers, rather than struggling with hardware 18:20:37 I think I saw a FPGA ad in one of the magazines at the coffee room, and I don't think it was either one of those. (Though it could have been Xilinx. It was something PowerPC-based.) 18:20:42 ais523 man, why don't you want to enjoy the INNER LOVELINESS of working with fpgas 18:20:49 i hope you can get back to fighting the IDEs!!! 18:20:55 elliott: because FPGA companies know they have no competitors 18:21:04 at least, that's the impression I get 18:21:09 ais523: I'm joking 18:21:24 ais523: (wrt cheater's response to the job being reassigned) 18:21:35 it made sense, really 18:21:44 better to put me somewhere where I can do something useful, than somewhere where I can't 18:22:30 (I was reaching the point of writing a bunch of programs just to pulse individual pins on the FPGA from the software's point of view, then getting an oscilloscope onto the FPGA board, all because, amazingly, Xilinx didn't even have a pinout for the evaluation board available) 18:22:33 ais523: agreed, thus the joke 18:22:38 admittedly a poor one 18:23:40 (instead, they had a big complex IDE-like program that was basically an FPGA setup wizard, which was huge and monolithic and did all sorts of crazy things, like embedding a processor onto the FPGA and forcing you to communicate via it if you wanted to do any I/O over an unnecessarily complex custom protocol) 18:23:51 heh 18:24:05 I seriously doubt it's possible to write a portable FPGA program 18:24:09 fizzie: so where's our mcmap 18:24:18 if you want to interact with hardware, rather than just toggle pins on and off 18:25:04 elliott: heh, I just saw the copyright notice at the bottom of Dan's website: "Copyright notice: This work is Copyrighted, and anybody caught usin' it without our permission, will be mighty good friends of ourn, cause we don't give a dern. We wrote it, that's all we wanted to do. (Woody Guthrie)" 18:25:20 heh 18:31:47 hmm 18:32:02 * cheater99 is munching on some really good panettone 18:32:07 or is it pannetone? 18:32:18 there should be a language based on the concept of panettone. 18:32:48 elliott: I also notice it's legally equivalent to all-rights-reserved, which is hilarious 18:32:52 ais523: did you answer my sg implementation question? I forget 18:33:03 also, wow, you're right 18:33:08 except, suing someone isn't very friendly 18:33:15 so i imagine it's slightly permissive in practice 18:33:46 cheater99: panettone 18:33:56 :) 18:34:00 elliott: I forget what the question was 18:34:03 you may as well ask again 18:34:03 Deewiant: pantone 18:34:14 ais523: would an sg implementation cache a list of top-level patches? 18:34:14 elliott: No 18:34:19 Deewiant: tanpone 18:34:28 elliott: No 18:34:45 elliott: I think so, it seems like the most efficient way to get things done 18:34:46 Deewiant: mascarpone 18:34:51 ais523: how would it maintain this list? 18:34:54 if there aren't too many, it might make sense even to cache their intersections 18:35:06 elliott: No 18:35:13 panacotta 18:35:16 mmm... 18:35:37 and I'd imagine in a subdir of +scapegoat; you'd delete them from the cache if they turned out to be depended upon by other apparently top-level patches 18:35:47 but the great thing is, that lets you copy one subdir over another and it just works 18:36:16 thus preserving the ehird VCS property 18:36:28 ais523: I mean, how would it know when to add or remove from the cache? 18:36:32 and how would it generate the cache the first time? 18:37:07 also, I'd likely maintain caches as e.g. cache/-toplevels, and then if there's two toplevel caches, sg discards them both and regenerates them 18:37:15 whenever you add a patch to the DB, you also add it to the cache 18:37:21 or something of that sort 18:37:28 whenever you add something that depends on a patch in the cache to the DB, you delete the patch it depends on from the cache 18:37:28 ais523: that's all patches, then, isn't it? unless you remove them often 18:37:30 right 18:37:45 ais523: depends on == references a part of, right? 18:37:51 yep 18:38:19 the cache doesn't need to hold the patches themselves, incidentally, just the list 18:38:27 together with things like the most recent common ancestor of given pairs 18:38:27 ais523: the hashes 18:38:30 surely 18:38:38 yes, it holds their names 18:38:44 ais523: hmm, most common ancestor doesn't sound that hard 18:38:45 and some precalculated data 18:38:47 to do on-the-fly, I mean 18:38:57 ais523: especially lazily 18:38:59 it probably isn't 18:39:23 ais523: get lists of all dependencies of P1 and P2, which is a simple tree-walk, really; then just iterate through both until you find a common one 18:39:39 unless the most recent common ancestor is thousands of revisions back, it'll be instant 18:39:48 get lists being lazy there, that is 18:39:52 so that you only read what you need to 18:39:58 (an argument for impure lazy computation...) 18:40:29 ML does impure + lazy quite well, basically using closures that need a dummy argument to force them 18:40:40 let a = 1 + 2 calculates it now 18:40:48 ais523: indeed; scheme has basically the same thing 18:40:50 let a () = 1 + 2 calculates it each time you write a() 18:40:57 with DELAY and FORCE 18:41:07 (force (delay (+ 2 2))) => 4 18:41:34 ais523: hmm, scapegoat prototype 1 should load the whole repository into memory, I think 18:41:35 Underlambda does that too 18:41:41 seems reasonable 18:41:43 to avoid having to do lazy IO, which would be an unreliable pain in Haskell 18:42:01 on small projects, it might even be efficient and reliable 18:43:00 Assume for contradiction that there is an interaction v·w·m in exactly one of the sets [[M_2]](*) • [[M_1]](*) and K_2 • K_1 (with v and w interactions, and m a move), all moves in w are in θ', the last move in v is in θ, v is in both [[M_2]](*) • [[M_1]](*) and K_2 • K_1, and at least one of the following statements is true: m is not in θ, m is a P-move in M_1, or the last move in v is an O-move in M_1 and v·w·m is not a 18:43:01 ais523: we should probably take the Varnish route in an actual implementation 18:43:01 subset of K_2 • K_1. <-- my favourite part of that proof 18:43:06 ais523: just mmap the repository 18:43:10 heh 18:43:21 that sentence took me hours to figure out 18:43:29 because it's just a list of apparently arbitrary assumptions 18:43:47 ais523: that way, we can allocate repositories as big as we want (with a careless enough OS, which is Linux by default and I think BSDs), access them as ordinary memory, and still do things efficiently otherwise 18:43:54 then I spend half a page proving that they contradict each other 18:43:59 (I've been won over by the Most Stuff Should Be In A Single DB position.) 18:44:01 ais523: :D 18:44:09 wow, this is insane: http://www.ramblesandruminations.com/2006/12/hi-im-here-for-my-panetone.html 18:44:30 ais523: btw, we wouldn't need a DB file if it weren't for the fact that individual changes need to be accessible 18:44:38 leading to a huge explosion of objects 18:45:01 that's what a VCS is, isn't it? 18:45:04 anyway, I should go home 18:45:10 -!- ais523 has quit (Remote host closed the connection). 18:45:27 ais523: no, change != patch 18:45:42 if it was just storing patches, that'd be okay, but every single change in the patch has to be stored separately 18:48:30 hmm, repo = set of patches + irrelevant stuff like nicknames and caches 18:48:32 patches = set of changes 18:49:21 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep). 18:51:45 -!- poiuy_qwert has joined. 18:57:51 fizzie, Deewiant: down? 18:57:56 I think so, yes. 18:58:02 gah 19:01:21 Vorpal: have you seen the destruction 19:01:25 of Deewiant 19:02:14 Vorpal: so where did the ground-level minecart path go 19:04:22 -!- cheater99 has quit (Ping timeout: 240 seconds). 19:07:46 Vorpal: ? 19:13:50 elliott, to a hill to the south of Mt. Hoover. Some furnaces and a workbench at the end. 19:14:21 Phantom_Hoover: Anyone admitted to making it? 19:14:45 It was almost certainly nailor. 19:17:32 -!- cheater99 has joined. 19:17:52 Vorpal: btw yesterday I found some pumpkins in mount vorpal and took them 19:19:07 that's funny, i couldn't get gnocchi today at the italian place because they couldn't find any pumpkins 19:19:12 i think that explains it 19:19:36 elliott is a pumpkin thief 19:19:55 -!- sebbu has quit (Ping timeout: 265 seconds). 19:33:54 Vorpal: btw yesterday I found some pumpkins in mount vorpal and took them <-- if you did that I expect them back 19:34:24 Vorpal: to be fair i also put the same number + 1 back in 19:34:50 -!- hagb4rd has joined. 19:35:02 -!- sebbu has joined. 19:35:09 elliott, heh 19:35:28 fizzie, down? 19:35:29 hi 19:35:44 elliott, built marker at (4000,4000) 19:35:52 Vorpal: so? 19:37:07 elliott, yeah you don't get it 19:37:15 Vorpal: what? 19:39:04 -!- pikhq has joined. 19:39:35 Vorpal: what? 19:40:09 Fun fact: invalid UTF-8 can make X crash. 19:40:26 a light breeze can make X crash 19:43:25 True, true. 19:47:03 Vorpal: mind if I colonise the unused peak of mt. vorpal? 19:50:42 elliott: yes 19:50:52 elliott: it isn't unused. The throne room extends below it 19:50:57 and other stuff too 19:51:29 elliott: so basically it won't be a good idea 19:51:30 Vorpal: below it, but not on top 19:51:43 elliott: I plan stuff there 19:51:55 elliott: a glass star observatorium 19:51:58 (sp) 19:52:06 observatory. 19:52:20 elliott, it already has some buildings on it 19:52:36 elliott, anyway, given your lava handling I want you NOWHERE NEAR ME 19:52:42 elliott, I don't want everything burned down 19:53:17 nor do I want a waterfall there 19:53:36 Vorpal: what have I done with lava lately?? 19:53:38 elliott, go make your class cube somewhere far away 19:53:44 elliott, up at Deewiant's place... 19:53:50 Vorpal: nothing happened 19:54:01 elliott, fuck off 19:54:31 Vorpal: btw, have you done anything to the deewiant express lately? 19:57:12 Vorpal: btw, almost all the house survived the lava, and dewi didn't seem overly pissed off at it, so "fuck off" is a slight overreaction. 19:58:59 Vorpal: are you /ignoring me? 19:59:11 He's playing 19:59:29 Deewiant: that doesn't mean he isn't /ignoring me! 19:59:43 No, but it can explain why he's not saying anything 19:59:54 Deewiant: Does the Express still loop 20:00:05 Nah, I got rid of it 20:00:10 Deewiant: BUT WHY. 20:00:11 (The loop, not the Express) 20:00:19 Because with lag, it's hard to stop 20:00:27 I'm going to pour lava all over Mount Vorpal in protest 20:00:34 And then mine the debris 20:00:48 And then dig Vorpal down to bedrock and surround him with a ten-thick layer of obsidian. 20:00:56 And the rest up to sea level with TNT. 20:01:01 That is what you have done to me, Deewiant. 20:04:28 Deewiant just doesn't realise the horror. 20:07:29 elliott, I was not /ignoring 20:09:58 -!- hagb4rd has quit (Ping timeout: 240 seconds). 20:10:43 -!- ais523 has joined. 20:11:38 wb ais523 20:11:58 ty 20:12:50 -!- hagb4rd has joined. 20:13:08 ais523: opinion poll: "verify :: Hash -> ByteString -> Bool" or "verify :: ByteString -> Hash -> Bool" 20:13:23 elliott, down? 20:13:26 The latter 20:13:37 Vorpal: "fuck off" --you 20:13:49 elliott: it's obviously irrelevant, but I think the first is a little neater 20:13:51 elliott, yes due to denying that you messed up 20:14:04 yep, i was an evil deceiver 20:14:14 how did i think that i could possibly defeat the awesome power of screenshots that everyone has seen 20:14:19 but darnit, I had malicious intent! 20:14:26 ais523: Deewiant: you two have to duke it out to the death now 20:15:26 Of course, I'm the one with no clue what the params mean 20:16:14 Deewiant: ais523 doesn't either, but it just checks that the bytestring hashes to the given hash 20:16:18 which is sha-512, but that's irrelevant 20:16:22 and returns whether it does or not 20:17:10 With the latter, verify = (==) . sha512 20:17:33 Deewiant: Very well then. 20:17:37 Wait, what? 20:17:40 Oh, indeed. 20:17:42 Yeah, you're right. 20:17:48 -!- Sasha2 has joined. 20:18:07 Deewiant: Erm, no 20:18:09 Is it? 20:18:18 Yes, it is :-P 20:18:24 Deewiant: indeed 20:19:18 Deewiant: Know what's awesome? Two libraries, one that uses strict bytestrings, the other that uses lazy 20:19:27 Okay, the map thing's online now. But do remember that I'm only sharing it on the "no bitching about it" condition; in fact I'll be away immediately and not discuss it at all, even if it has trivial bugs (like it probably has). 20:19:30 Specifically, trying to use them both in one module 20:19:35 It's at https://github.com/fis/mcmap now. 20:19:40 (And there's a README anyway.) 20:19:49 fizzie: Thanks. If Vorpal whines I'll lava Mount Vorpal. 20:19:57 (That should be sufficient incentive, one thinks.) 20:19:59 fizzie: What's the *ware term for that condition? 20:20:08 Deewiant: Stfuware 20:20:17 Or "fuck you ware". 20:20:17 Good enough 20:20:24 That sounds reasonable, yes. 20:20:41 I'll have to add some sort of a COPYING file at some point, maybe. 20:21:14 fizzie: But until you do, it's PUBLIC DOMAIN!* 20:21:18 *lies 20:21:57 -!- Ilari_antrcomp has quit (Read error: Operation timed out). 20:22:06 I'm not expecting it to be horribly popular; it's not a very user-friendly tool. 20:22:24 fizzie: "In the most basic form, ./mcmap -r 600x600 host:port"; "Unknown option -r". 20:22:29 fizzie: (Not a whine, just a bug report.) 20:22:31 in either the readme or the C :P 20:23:11 OK, it's actually -s. 20:23:26 -!- Ilari_antrcomp has joined. 20:24:13 Oh, heh. 20:24:19 Shouldn't have done it from memory. 20:24:57 Well, I did fix at least that. 20:26:18 fizzie: OMG IT DOESN'T HANDLE RIDING IN MINECARTS FIX IT FIX IT FIX IT I PAID FOR THIS SOFTWARE NOW GIVE ME MY SUPPORT 20:26:21 (Joking.) 20:26:48 Incidentally, I wonder what is with riding. It seems to go to (0,0,0) for that. 20:27:39 There is an "attach entity" packet that (according to the protocol wiki) "is believed to" be sent when a player has been attached to a cart. 20:27:43 Deewiant: ais523 doesn't either, but it just checks that the bytestring hashes to the given hash <-- I guessed that from the signature, with a name like that there's not much else it could do and yet be vaguely sane 20:27:55 I guess after that it sends player motion relative to the attached entity, and then just moves the entity around. 20:28:28 fizzie: I like how chats are invisible if you use a light background, got confused there for a second. :p 20:28:39 -!- hagb4rd has quit (Ping timeout: 240 seconds). 20:28:51 Heh, yes. There's the --nocolor flag for that. 20:29:12 Though then it won't strip out the color codes either. 20:29:20 And you'll see §f's everywhere. 20:30:31 -!- ais523 has set topic: Carapace Averages Nine Thin Zit Loots | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 20:30:49 that topic was crying out to be anagrammed 20:31:17 fizzie, err, I have zlib but not in pkg-config it seems 20:31:47 Vorpal: That's not fizzie's problem 20:32:00 fizzie, just wondering why 20:32:06 fizzie, ubuntu 10.04 LTS 20:32:11 fizzie probably knows, 'cuz he's psychic. 20:32:18 And you're totally obeying the "no questions" policy. 20:32:21 elliott, I thought he used ubuntu too nowdays 20:32:30 Vorpal: sometimes I think the main difference between you and zzo38 is that you give the context 20:32:46 ais523, could be. 20:32:49 ais523: and zzo38 is too detached from what we're saying to get angry :P 20:32:56 (at us, for anything) 20:33:07 I think I'd take two zzos over one Vorpal 20:34:15 since this one is zzo38, there should be 38 before him 20:34:34 fizzie, switching to -lz for zlib works 20:35:51 $ dpkg-query -S zlib.pc 20:35:51 zlib1g-dev: /usr/lib/pkgconfig/zlib.pc 20:35:55 That's where mine is from. 20:38:12 fizzie, awesome tool 20:38:19 fizzie, I have that package 20:38:23 fizzie, but I'm on last LTS 20:39:00 -!- augur has quit (Ping timeout: 260 seconds). 20:44:39 ais523: hmm, I think scapegoat objects need types as part of their name, so e.g. "look at all patches" is a reasonable operation 20:45:01 ais523: oh btw: 20:45:02 10:44:30 ais523: btw, we wouldn't need a DB file if it weren't for the fact that individual changes need to be accessible 20:45:02 10:44:38 leading to a huge explosion of objects 20:45:02 10:45:01 that's what a VCS is, isn't it? 20:45:02 10:45:04 anyway, I should go home 20:45:03 10:45:10 --- quit: ais523 (Remote host closed the connection) 20:45:05 10:45:27 ais523: no, change != patch 20:45:07 10:45:42 if it was just storing patches, that'd be okay, but every single change in the patch has to be stored separately 20:45:10 10:48:30 hmm, repo = set of patches + irrelevant stuff like nicknames and caches 20:45:12 10:48:32 patches = set of changes 20:45:14 chaneg ~= hunk 20:45:16 *change 20:46:39 -!- augur has joined. 20:47:50 -!- hagb4rd has joined. 20:51:11 Phantom_Hoover, stop ruining the hole 20:51:22 elliott: a patch either has exactly one change, or is a set of other patches 20:51:22 Phantom_Hoover, conclusion: in the future keep exploration silent 20:51:22 Vorpal, RUINING IT BY FIXING IT 20:51:32 Phantom_Hoover, you broke it. Lava does not belong there 20:51:46 I should probably go back to calling them turtles again 20:51:52 Vorpal, but if you were silent about your achievements how would you prop up your ego? 20:52:22 Phantom_Hoover, very droll 20:52:51 -!- elliott has quit (Quit: Leaving). 20:52:53 It's a serious point! 20:52:59 hmm, seems it didn't remember my login 21:03:30 fizzie, would it be feasible to make it render leaves transparently? 21:08:28 ah that seems to work 21:08:32 hard coded patch thoug 21:08:35 though* 21:09:03 You could more easily just not render leaves at all. The surface bitmap (well, "blockmap") is being separately maintained by the updates for faster drawing, so you could just either skip leaves (like it skips air). 21:10:21 fizzie, that is what I did 21:10:54 If you want to do that properly, you'll need to do that in both handle_chunk and block_change. 21:11:46 fizzie, ah just did it in handle_chunk 21:12:02 Well, the latter only matters if you go and dig out the leaves. 21:12:25 Should probably add some sort of block-type enum for any block-specific customizations at some point. The current testing for air (!x) is a bit iffy too. 21:12:53 fizzie, iffy how? 21:13:06 fizzie, also yeah the AIR_COLOUR thing for stuff like buttons won't do much 21:13:26 That's mostly meant for the cross-section map. 21:13:31 Where it works reasonably well. 21:15:03 fizzie, why is south now down btw? 21:15:04 But I could have a better "these blocks are practically empty" table that it'd use for the surface map, and a command-line flag to include/exclude leaves in that. 21:15:10 It's not down. 21:15:19 At least I don't think it is. 21:15:20 fizzie, s/now/not/ 21:15:24 Oh. 21:15:33 Because I've oriented myself to ineiros' maps. 21:15:43 ah 21:16:01 And if I just swap x/y y/x, I get north/south properly but then east/west will be the wrong way around, and that's really confusing. 21:16:18 fizzie, and yes zoom would be nice, kind of hard to spot pumpkins now 21:17:32 There could be some sort of highlight mode that'd greyscale the other block colors and turn the one you're looking for red, or something. (Or just desaturate-but-not-completely.) 21:17:33 fizzie, I hit some kind of redrawing bug 21:17:50 What kind of? 21:17:59 (Not that I'm going to think about it now.) 21:18:02 fizzie, vertical 1 pix wide lines 21:18:06 fizzie, when I go south 21:18:11 into unmapped 21:18:26 fizzie, note I have both a chunk at spawn, and a chunk at 4000,4000 21:18:26 I don't know about that. Screenshot? 21:18:41 fizzie, sure, could be my fault when hiding leaves. who knows 21:19:16 A surface that large will take quite a bit of memory. (61 megs or so.) 21:19:22 Link to this magic mappy thing? 21:19:59 Pleasepleaseplease? 21:20:04 /lastlog http 21:20:24 fizzie, http://sporksirc.net/~anmaster/tmp/mcmap.png 21:20:36 fizzie, and I run the mapper on a separate computer :P 21:20:43 Vorpal, where's this mapper thing? 21:21:03 Phantom_Hoover, see what Deewiant said 21:21:33 fizzie, I did enter a minecart by mistake, not sure if that affects it 21:21:59 I got some bit strange-looking surfaces when traveling by minecart, but, well, who knows. 21:23:29 Re zoom, you could just use compiz' magical zoom if you're running it on another box (that can do that). 21:24:15 I hope all the exploration won't make the server really run out of memory storing the world. 21:24:44 I guess when unloading blocks from the clients it also unloads them from itself and only keeps them in the disk storage, though. 21:24:48 At least one could hope so. 21:25:03 -!- elliott has joined. 21:25:09 elliott: a patch either has exactly one change, or is a set of other patches 21:25:13 hmm 21:25:19 fizzie, that box has intel graphics 21:25:20 ais523: why not just do patch = set of changes 21:25:26 fizzie, I don't think compiz is a good idea there 21:25:34 -!- hagb4rd has quit (Ping timeout: 240 seconds). 21:25:45 I should probably go back to calling them turtles again 21:25:50 ais523: turtles are the file trees 21:25:52 ais523: silly 21:26:12 as in, the actual tree with all the files, belonging to a specific patch 21:26:46 no? 21:28:30 -!- hagb4rd has joined. 21:29:47 gah 21:29:50 Phantom_Hoover, down? 21:30:22 Couldn't care less. 21:30:38 Vorpal, "tough shit". 21:39:24 ais523: ping? 21:43:57 -!- zeotrope has quit (Quit: Lost terminal). 21:45:16 What's lime green in mcmap? 21:45:23 Phantom_Hoover, got it to work btw? 21:45:46 Yes, thanks to your polite and helpful advice. 21:46:06 Phantom_Hoover, lime = green cobble 21:46:13 Ah, so that's a dungeon. 21:46:48 Phantom_Hoover, probably 21:49:19 http://imgur.com/1jip7 Goodbye AltaVista and delicious. 21:49:27 Also AlltheWeb. 21:50:40 -!- yiyus_ has quit (Ping timeout: 240 seconds). 21:51:23 -!- Slereah has quit (Ping timeout: 255 seconds). 21:52:17 -!- reiffert has quit (Ping timeout: 255 seconds). 21:52:44 -!- jix has quit (Ping timeout: 255 seconds). 21:52:44 -!- fxkr has quit (Ping timeout: 255 seconds). 21:56:29 ais523: ping 21:57:47 -!- fungot has quit (*.net *.split). 21:57:47 -!- fizzie has quit (*.net *.split). 21:57:48 -!- tehjamez has quit (*.net *.split). 21:57:48 -!- sshc has quit (*.net *.split). 21:57:48 -!- myndzi has quit (*.net *.split). 21:57:49 -!- lifthrasiir has quit (*.net *.split). 21:57:49 -!- yiyus has quit (*.net *.split). 21:57:49 -!- jcp has quit (*.net *.split). 21:57:49 -!- augur has quit (*.net *.split). 21:57:49 -!- Ilari_antrcomp has quit (*.net *.split). 21:57:49 -!- Sasha2 has quit (*.net *.split). 21:57:50 -!- Ilari has quit (*.net *.split). 21:57:50 -!- quintopia has quit (*.net *.split). 21:57:50 -!- Zuu has quit (*.net *.split). 21:57:50 -!- mycroftiv has quit (*.net *.split). 21:57:50 -!- Leonidas has quit (*.net *.split). 21:57:51 -!- hagb4rd has quit (*.net *.split). 21:57:51 -!- ais523 has quit (*.net *.split). 21:57:51 -!- poiuy_qwert has quit (*.net *.split). 21:57:51 -!- Phantom_Hoover has quit (*.net *.split). 21:57:52 -!- olsner has quit (*.net *.split). 21:57:52 -!- cheater99 has quit (*.net *.split). 21:57:52 -!- MigoMipo has quit (*.net *.split). 21:57:52 -!- FireFly has quit (*.net *.split). 21:57:52 -!- sebbu has quit (*.net *.split). 21:57:53 -!- Vorpal has quit (*.net *.split). 21:57:53 -!- Gregor has quit (*.net *.split). 21:58:19 -!- Slereah has joined. 21:58:19 -!- yiyus has joined. 21:58:19 -!- fxkr has joined. 21:58:19 -!- jix has joined. 21:58:19 -!- reiffert has joined. 21:58:19 -!- hagb4rd has joined. 21:58:19 -!- augur has joined. 21:58:19 -!- Ilari_antrcomp has joined. 21:58:19 -!- Sasha2 has joined. 21:58:19 -!- ais523 has joined. 21:58:19 -!- sebbu has joined. 21:58:19 -!- cheater99 has joined. 21:58:19 -!- poiuy_qwert has joined. 21:58:19 -!- MigoMipo has joined. 21:58:19 -!- Phantom_Hoover has joined. 21:58:19 -!- FireFly has joined. 21:58:19 -!- fungot has joined. 21:58:19 -!- Leonidas has joined. 21:58:19 -!- Ilari has joined. 21:58:19 -!- tehjamez has joined. 21:58:19 -!- fizzie has joined. 21:58:19 -!- Vorpal has joined. 21:58:19 -!- quintopia has joined. 21:58:19 -!- sshc has joined. 21:58:19 -!- Gregor has joined. 21:58:19 -!- olsner has joined. 21:58:19 -!- Zuu has joined. 21:58:19 -!- mycroftiv has joined. 21:58:19 -!- jcp has joined. 21:58:19 -!- myndzi has joined. 21:58:19 -!- lifthrasiir has joined. 21:58:32 -!- pikhq has quit (Excess Flood). 21:58:33 ais523: ping 21:58:59 -!- pikhq_ has joined. 21:59:43 ah, tab stacking is nice 21:59:57 quartered the height of my tab bar 22:00:39 olsner: hm? 22:01:26 new feature in opera 11, allows you to combine tabs into tab groups (maybe they're called stacks) 22:03:43 indeed it's called a "tab stack", it displays the active tab and a small button to expand it and view all the other tabs in the stack 22:04:10 -!- Sasha2_ has joined. 22:04:58 olsner: oh, you're a stupid opera user, i forgot 22:05:18 am I stupid? really? 22:05:42 olsner: only in that you use opera :) 22:06:39 -!- yiyus_ has joined. 22:06:48 -!- Sasha2 has quit (Ping timeout: 260 seconds). 22:06:52 elliott: ok. 22:07:06 olsner: it's like, a little pocket of stupidity 22:07:13 like, if albert einstein regularly shot himself in the face 22:07:20 he'd be a stupid self-face-shooter 22:07:22 but not stupid 22:07:39 fuck you ubuntu: "The computer needs to restart to finish installing updates. Please save your work before continuing." 22:07:52 olsner: dude, even debian does that 22:08:01 (although it lets you make it go away for N times) 22:08:07 the thing is, it wants to restart *before* upgrading 22:08:07 where times = seconds, minutes, whatever 22:08:18 olsner: no, i think that's misleading wording 22:08:25 it just means "i replaced the kernel, reboot, you bum" 22:08:28 ineiros, torrenting? 22:08:30 maybe libc too 22:08:44 elliott: no, it's serious: pressing "install updates" does nothing but pops up that message 22:09:07 olsner: impressive. what. 22:09:20 olsner: not even os x does that ;) 22:09:25 Vorpal: Yes. They released another episode of Pioneer One. Shouldn't take long. 22:10:00 elliott: os x does that for many (most?) upgrades though, you have to install-and-reboot in one operation 22:10:12 olsner: true. 22:10:20 olsner: it's irritating how long it can lock you in an "upgrading lol" screen 22:10:24 it never used to do that in Tiger 22:10:49 ineiros: You may NEVER EVER use your internet connection for recreational purposes; we *depend* on Minecraft! 22:11:51 elliott: That is honestly scary. :P 22:12:01 I guess I'll just have to uninstall the automatic updates program so I'm not annoyed by there being updates it won't allow me to install 22:12:06 -!- tehjamez has left (?). 22:12:07 ineiros: Well, if Vorpal was the only player, that would in fact be the case. 22:12:17 olsner: you could just disable them rather than uninstalling it :) 22:12:22 elliott: Maybe I should take a second connection with a better upstream and make you people pay for it. :) 22:12:33 ineiros: or just colocate :P 22:12:53 elliott: but... why would I keep it installed when I've disabled it? 22:13:07 olsner: because of the ubuntu-desktop metapackage 22:13:14 it's not as if I have infinity space to give away to useless software 22:13:18 ineiros: I keep suggesting the CloudCraft. 22:13:21 olsner: so that when Canonical add more and more crap in the next major release, you can get it without manually installing it! 22:13:26 fizzie: P2PCraft 22:13:45 fizzie: If everyone democratically decides that you're in a gigantic lava pit covered with obsidian at the bottom of the sea, well, you are! 22:14:28 elliott: ubuntu-desktop doesn't fit :) 22:14:40 olsner: ok, i'll bite: what machine is this? 22:15:06 that's cool, i didn't know there was a parisc channel 22:15:28 hmm, actually it would fit according to the package manager's estimate of used space 22:15:46 it'd leave ~100MB of free space 22:16:08 fizzie, incidentally, what happens when Beta comes out? 22:16:14 fizzie: To quote the SDL documentation wiki: "A lot of the keysyms are unavailable on most keyboards. For example, the SDLK_1 keysym can't be accessed on a French keyboard. You get the SDLK_AMPERSAND instead. So, you should not hardcode any keysym unless it's one of the universal keys that are available on all keyboards." 22:16:28 elliott: it's just this one, my main desktop system 22:16:40 olsner: how much disk have you got? how much is used? :p 22:16:49 5GB used to be plenty of space for linux, apparently not so much anymore 22:16:58 (currently using 4.6GB of it) 22:16:59 Do you pick apart that protocol and reimplement mcmap? 22:17:01 Deewiant: mcmap is provided without support. :p 22:17:05 olsner: erm do you have a separate /home? 22:17:09 or do you really stuff everything into 5 gigs? 22:17:10 nope 22:17:15 elliott: I didn't ask him to fix it, I'm just informing. :-P 22:17:19 Phantom_Hoover: no, he just adds handling for server-side inventory packets. 22:17:22 Deewiant: :P 22:17:51 Deewiant: (Do French keyboards have & where 1 should be?) 22:18:10 I don't know, but SDLK_1 doesn't work for my keyboard so I have to hack it. 22:18:16 http://3.bp.blogspot.com/_z9jvYW4hF3k/Sw56ZFHSceI/AAAAAAAAAB8/OhcuW0qzRG0/s1600/titanium_azerty_keyboard.jpg 22:18:21 Looks like Frenchies have punctuation on shift. 22:18:23 And & below 1. 22:18:25 erm 22:18:28 Looks like Frenchies have digits on shift. 22:18:35 As do I. 22:19:20 Deewiant: That's 'cuz you're Finnish. 22:19:24 (The explanation for everything.) 22:20:19 Phantom_Hoover: Sure, I'll fix for beta if it breaks, assuming it's not too dissimilar. 22:20:40 Deewiant: Do the Unicode-translation chars work better? 22:21:03 fizzie: Yes, my workaround was to add SDL_EnableUNICODE and use the .unicode field for 1,2,3 22:21:08 fizzie: I demand you add a command to spit out the locations of objects in a specific list of object ID #s within +-X,Y,Z of your current position. --Vorpal 22:21:16 fizzie: (Actually that *would* be kind of useful X-D) 22:21:24 elliott: a big part of the partition is used by my home folder though, 300MB of irc logs for example :P 22:21:32 fizzie: But upon reflection, I probably should've made it respond to !,@,# so I don't have to press shift. :-P 22:21:32 Deewiant: I'll fix it like that in the next version. 22:21:36 olsner: Consider bzipping them :P 22:21:59 Deewiant: Ooh, or a keyboard mapping config file. :p 22:22:02 fizzie: Just make it subtract (keysym of 1) from the keycode, and %3 it. 22:22:10 fizzie: Then every 3 successive keysyms on the keyboard work. 22:22:13 SCIENCE 22:22:17 elliott: !,@,# aren't successive. 22:22:27 Deewiant: Pick better keys 22:22:33 Or use multiple hands, stretched 22:22:35 elliott: THEY'RE THE DEFAULTS 22:22:41 Deewiant: Thus why 22:22:44 fizzie: Just make it subtract (keysym of 1) from the keycode, and %3 it. 22:22:44 fizzie: Then every 3 successive keysyms on the keyboard work. 22:22:45 SCIENCE 22:22:59 You could use qwe, rty, or uio! Assuming those scan properly. If not, pick other keys! 22:24:17 Deewiant passed out from the awesomeness of my idea. 22:24:26 YOU COULD EVEN USE NUMLOCK 22:24:36 -!- Sasha2_ has quit (Ping timeout: 260 seconds). 22:28:07 ais523: ping 22:28:13 fizzie, incidentally, you might want to change the readme for mcmap to make it clear that you have to connect to 127.0.0.1 22:28:22 elliott: pong 22:28:29 I thought that was pretty clear 22:28:35 elliott: a patch either has exactly one change, or is a set of other patches 22:28:35 hmm 22:28:35 ais523: why not just do patch = set of changes 22:28:38 I should probably go back to calling them turtles again 22:28:38 ais523: turtles are the file trees 22:28:38 ais523: silly 22:28:38 as in, the actual tree with all the files, belonging to a specific patch 22:28:39 no? 22:28:51 Deewiant: I tried localhost, which doesn't work 22:28:56 elliott: because patch = set of changes only does one level 22:29:03 Deewiant: Also :(the port we use) whereas it's always :25567 for mcmap. 22:29:07 ais523: and? :p 22:29:10 you should be able to group individual changes into a commit, individual commits into a tag, etc 22:29:20 ais523: oh, true... but does a tag have to be a patch? 22:29:21 elliott: Worked for me! 22:29:22 also, a "merge resolution" is also a set of patches, some reverts and some unreverts 22:29:26 ais523: I mean, a patch to /what/? 22:29:33 also, a "merge resolution" is also a set of patches, some reverts and some unreverts 22:29:35 ais523: then it's not a set! 22:29:36 it's a list 22:29:37 elliott: well, /everything/'s a patch to nothing 22:29:39 because the application order matters 22:29:40 elliott: no, it's a set 22:29:47 -!- zzo38 has joined. 22:29:49 howso? 22:29:56 No. 22:29:59 the rule is, you apply patches before patches that depend on them 22:30:08 ais523: hmm, fair enough 22:30:10 and if it's ambiguous even then, you have a merge conflict 22:30:26 oh, the other rule is, you don't apply a reverted patch at all (that is, if both the patch and its revert are in the set) 22:30:40 which is needed for merge resolutions to make sense at all 22:30:43 ais523: I'm fairly sure that we need to reserve two hashes, BTW 22:30:49 perhaps 22:30:51 ais523: for "Start" and "End" 22:30:53 ais523: (SOF and EOF) 22:30:58 which have no valid expression as patches 22:31:06 I think that makes sense 22:31:11 ais523: I'd just do all-zeroes and all-ones, as that's a pretty unlikely hash 22:31:15 *both are pretty unlikely 22:31:18 wait, that's wrong altogether 22:31:18 OK, not unlikely in absolute senses 22:31:23 ais523: hm? 22:31:23 different files have different SOF and EOF 22:31:28 ais523: Of course. 22:31:32 ais523: But there are no files. 22:31:50 ais523: Consider: Two empty files in a directory point to the same object, the Start/End patch. 22:31:50 what do directories contain? 22:31:57 err, no 22:32:00 ais523: err, yes 22:32:06 two empty files each have their own start and their own end 22:32:10 ais523: Why? 22:32:15 otherwise, if you did "add between start and end", how would you know which file it went into? 22:32:28 ais523: you don't have to; the directory tells you what to put in what file 22:32:31 the /only/ information for an addition is what it goes between 22:32:35 elliott: that seems very backwards 22:32:47 ais523: you look at the patch, apply it to the [(Start,""),(End,"")] string, and then write it to the file listed in the directory entry 22:32:48 then, you'd have to amend the directory every time you changed a file in it 22:32:51 not just the metadata 22:32:55 ais523: this is great because you can completely rip out FS-centrism 22:32:56 patches /do not have directory data/ 22:32:58 just by replacing directories 22:33:04 ais523: then, you'd have to amend the directory every time you changed a file in it 22:33:06 ais523: err, you do anyway 22:33:10 since the hash changes 22:33:11 no, you don't 22:33:14 since the hash changes 22:33:19 the directory doesn't depend on the files in it at all 22:33:23 see, I create an empty directory 22:33:29 then I add a file to it, that doesn't change the original hash 22:33:42 it just adds a new one, "add file to directory with hash 1298371028938" 22:33:59 ais523: *add file to directory OSDIJFSODF with hash ASOIDHASOD 22:34:06 no, no, no!!!! 22:34:22 ais523: so directories are maintained completely differently to files? 22:34:23 exciting 22:34:24 the hash of "add file to directory with hash 129837192837", together with metadata, etc, /is/ the hash used to refer to the new file 22:34:32 so directories are maintained completely the same as files 22:34:36 ais523: why can't you have a file outside a directory? 22:34:51 because then how would you know what project it was in? 22:35:02 ais523: you wouldn't 22:35:06 you seemed to understand this a couple of days ago... 22:35:13 ais523: oh, I do 22:35:25 I'm just trolling you at this point, in the hopes of making the system even more interesting 22:35:30 (OK, the hash of "add file to directory with hash 129837192837", together with metadata, etc, /is/ the hash used to refer to the new file 22:35:35 helped, but after that I've just been trolling :)) 22:35:39 ah 22:35:50 in that case, shouldn't I just ignore you until you stop? 22:35:56 i've stopped now 22:36:08 ais523: OK then, given "add file to directory with hash 129837192837", what does a patch that inserts a single line "hi" into that file look like? 22:36:56 it's "add 'hi' between 239487-SOF and 239487-EOF", where 239487 is the hash in question and -SOF and -EOF are hashes based on that 22:37:17 in fact, you could literally append the -SOF and -EOF to the end, because all that matters about the hashes is a unique method of creating them 22:37:17 haha, this mp3 player has a built-in hypnotoad feature, that plays the hypnotoad tune in the background when the program is running 22:37:18 ais523: OK, what object do those hashes point to? 22:37:31 to 239487, of course 22:37:34 as the Implementation Guy, I insist all hashes point to an actual object 22:37:39 ais523: no, because they're != 239487 22:37:46 ais523: say they're 27 and 72 respectively 22:37:49 what objects do they point do? 22:37:50 *to? 22:37:56 the start and end of 239487 22:37:56 olsner: :D 22:38:06 which are real concepts 22:38:11 ais523: so every time you create a file, you create two patch objects too? 22:38:14 yep 22:38:24 ais523: And these patch objects are "SOF" and "EOF"? 22:38:32 of that file, yes 22:38:40 ais523: OK, so "SOF " and "EOF "? 22:38:53 that would be one way to express it 22:38:59 ais523: Fair enough then. 22:39:00 but, of course, an impl detail 22:39:13 ais523: Of course; it's just that I'm the Implementation Guy looking to Actually Implement it. :) 22:39:26 (I'm still down in the trenches of the object storage layer right now, though.) 22:39:38 ais523: so, let me see 22:40:45 ais523: patch := insert between and | replace with | delete | do all of | start of file | end of file 22:40:50 ais523: except, for directories, it's 22:41:09 patch := insert | delete | do all of | empty-directory 22:41:13 *empty directory 22:41:14 Phantom_Hoover: Plain "localhost" worked just fine for me, too. 22:41:15 ais523: yes? 22:41:24 I'm checking that 22:41:55 for directories, it'd be patch := insert file | insert directory 22:41:56 And it's 25565 (not 25567) that's mcmap's (and Minecraft's) default port, unless I'm mistaken. 22:42:02 rather than just a plain insert 22:42:11 ais523: oh, make it 22:42:14 (The listening port is a command line option too.) 22:42:23 ais523: patch := insert | delete | do all of | empty directory 22:42:24 -!- oerjan has joined. 22:42:28 ais523: where fileinfo also allows symlinks, etc 22:42:32 yep, fair enough 22:42:41 I'm thinking that these types will likely eventually be pluggable anyway 22:43:04 ais523: one problem I can see right off the bat is that "start of file | end of file " is a type constraint -- those must be "insert " changes -- that is not represented within the implementation type system 22:43:07 but, then again, 22:43:09 the eventual plan is to use C 22:43:13 so I checked both of them to see what would happen 22:43:15 so we're in for that kind of pain /anyway/ :) 22:43:16 FOR SCIENCE! 22:43:49 oerjan: turns out, my login wasn't remembered 22:43:53 ah. 22:44:10 you wonder if the people in charge of the forum had ever heard of radio buttons 22:44:16 ais523: hmm, say P:S means "line S (blame: patch P)"; what does the patch (insert "cat" between P1 and P2) do to the file [P1:"rabbit", P3:"weasel", P2:"dog"]? 22:44:18 ais523: conflict? 22:44:28 that's how my apply function did it, it just wouldn't let you 22:44:31 ais523: (assuming no merge handling) 22:44:45 For the real "x-ray" vision mode, I thought I'd just add a key that causes mcmap to send "set block to glass" packets for each non-interesting (not ore, chest, etc.) block inside a given radius, and then (for fake-glass) reply to all "player digging" packets with set-block-to-what-it-was. 22:45:00 elliott: conflict 22:45:17 ais523: thought so 22:45:17 (because there's no way to automatically guess whether it should go before or after the weasel) 22:45:39 ais523: I like how it turned from the string "weasel" into an actual weasel embedded in the file in the space of a few IRC messages. 22:45:39 also, as for your hatred of the automatic v v v v ^ ^ ^ ^ conflict marking in files 22:45:59 the obvious thing to do is to have a command to edit the files with conflict marking, but not do it by default 22:46:13 ais523: possibly, but it shouldn't name it with the original filename 22:46:20 ais523: foo.conflicts I could accept, but not foo 22:46:28 hmm, often, in such cases, you want to edit the file into the unconflicted version 22:46:38 ais523: so mv it back afterwards? 22:46:48 Incidentally, if you have sensible-for-everyone mcmap fixes (as opposed to local-only kludges), the github repo is public read-write, you can just push there. 22:46:51 the VCS shouldn't pose one of its own-format (even if it is a simple format) files as the real thing 22:47:00 -!- MigoMipo has quit (Quit: Quit). 22:47:14 elliott: I sort-of see what you mean; on the other hand, they're presenting something that should be edited into the real thing 22:47:18 ais523: IMO, if sg gets a merge conflict, it should refuse to update /any/ file you have *by default* 22:47:20 hmm, obviously it should work like sudoedit 22:47:32 elliott: not even the files not involved in the conflict? 22:47:33 -!- wareya has quit (Read error: Connection reset by peer). 22:47:41 ais523: indeed, since working directory wouldn't be in a consistent state 22:48:10 ais523: it should print out the conflicts, you should be able to do "sg conflicts write filename" which would create filename.conflicts or whatever, which you would then fix, 22:48:22 ais523: and then you'd do "sg conflicts fixed filename" 22:48:25 -!- wareya has joined. 22:48:34 ais523: and once you'd fixed all conflicts, you could do "sg conflicts commit-fix" (command names all hypothetical) 22:48:40 ais523: something like that, anyway 22:48:55 ais523: of course, this only applies to when you try and check out a conflicting revision which ... wait 22:48:58 can that ever actually happen with sg? 22:49:09 yes, if you explicitly specify a conflicting revision 22:49:15 which would make sense if, say, you wanted to fix the conflict 22:49:27 ais523: how an a revision conflict with itself? 22:49:39 well, you specify a patchset 22:49:44 if the set is internally inconsistent, that's a conflict 22:49:53 ais523: why can you checkout multiple patches? shouldn't you only be able to check out one? 22:50:14 well, indeed, but that patch might be a set of patches 22:50:18 which conflict with each other 22:50:24 and that's a perfectly sensible thing to want to do 22:50:43 people will want to resolve merge conflicts eventually, rather than leave the two version in the repo forever 22:51:01 ais523: OK, but should you really be able to commit a patch that conflicts? 22:51:09 just speaking platonically here 22:51:32 you should be able to pull a patch that conflicts, certainly 22:51:52 ais523: fair enough 22:52:02 there are a huge number of usecases for that 22:52:10 and then your repo would be inconsistent, but you probably intended that 22:52:12 elliott, does the joint mine agreement cover the spoils from dungeon crawling? 22:52:13 and then you fix the inconsistency 22:53:08 Phantom_Hoover: Not sure. 22:54:05 The iron is unambiguously shared, though, so I'll give you half of that. 23:01:05 ineiros, can you generate a new map sometime soon? 23:05:21 ais523: hmm 23:05:35 ais523: we need so many caches... maybe we can replace sg(1) with one big cache :) 23:05:38 -!- rodgort has quit (Quit: Coyote finally caught me). 23:05:45 heh 23:05:50 -!- rodgort has joined. 23:06:16 ais523: I don't get darcs' patch theory 23:06:16 Vorpal: Except one in about an hour. 23:06:21 ais523: all this commuting patches and stuff 23:06:29 ais523: it's never explained why it's really useful or correct at all 23:06:39 it doesn't ever elaborate on why this is a good way to do merging 23:06:50 elliott: sorear looked into it, and concluded that it was just smoke and mirrors 23:07:03 -!- Phantom_Hoover has quit (Remote host closed the connection). 23:07:22 ais523: so, tl;dr: "I'm a physicist and can use LaTeX, therefore I've solved merging!"? 23:08:05 perhaps 23:08:18 ais523: (as opposed to you: "I'm a computer scientist and it's fractal, therefore I've solved merging!" :-)) 23:08:36 elliott: I'm not claiming to have solved merging, necessarily; I just came up with the model and noticed it had good merging properties 23:08:49 ais523: I was joking :) 23:09:33 ais523: FWIW, the model seems sound to me. 23:10:18 indeed, it's at least fully-specified 23:10:20 so it does something 23:10:28 the only way in which it could malfunction is it not doing what we want 23:10:41 ais523: indeed 23:14:03 -!- FireFly has quit (Quit: swatted to death). 23:14:18 ais523: hmm, the type system of the object store I have in mind is quite queer 23:14:20 Nifty... Konqi does not fallback from IPv6 to IPv4 at all (and neither it presumably will fallback from one address to another)... 23:14:57 ais523: Every object has a type, and every type mandates a certain set of fields. But arbitrary fields can be added to it, and are just ignored by clients that don't support them. 23:15:08 Couple this with IPv6 routing problems and one is in for some nasty surprises... 23:15:08 ais523: Modelling this in Haskell = OH SO MUCH FUN (pain) 23:15:16 indeed 23:15:36 Ilari: Everyone sucks! 23:16:43 ais523: I've been coding this like every object would have its own serialisation procedure, but I think I'm going to rewrite it to only support "string -> arbitrary binary data" maps. 23:16:54 And then you write procedures to extract the keys you care about into a Haskell value. 23:16:58 (and vice versa) 23:18:18 ais523: any opinions on --and I know this is horribly implementationy-- the object store file format? 23:18:33 I can't think of any obvious features it would need 23:18:41 other than storing the data, ofc 23:18:51 ais523: I was thinking a B-tree, but I'm not sure how well that would work for a structure that's essentially a big set of (type,hash)=>stuff, with random lookup required on hash. 23:18:54 give it a version number, so we can subsequently change the format if necessary 23:19:11 Specifically it shouldn't require too many seeks, or a huge amount of iteration, to get to the stuff belonging to a given hash. 23:19:26 well, the obvious storage system is a Perl-style associative array 23:19:33 ais523: that's not much of a serialisation format, though 23:19:38 indeed 23:20:46 -!- augur has quit (Remote host closed the connection). 23:21:28 -!- augur has joined. 23:21:46 ais523: I'm not sure how B-trees let me do a random lookup like this, though, as I'm no filesystems guy... :/ 23:21:49 Any ideas? :p 23:22:56 the trick with filesystem-style things is to reduce the number of seeks you need 23:23:17 but I'm far from an expert on that sort of thing either 23:23:30 I hear B-trees are used, but *eh*, serialisation format can wait! 23:23:33 Who tracks revisions on disk anyway. 23:25:51 -!- augur has quit (Ping timeout: 260 seconds). 23:26:49 Deewiant, does the server work for you? 23:26:57 Deewiant, I get null pointer exception all the time no 23:26:58 now 23:27:06 I'm connected 23:27:06 -!- zzo38 has quit (Quit: Now I will write TeXnicard.). 23:27:23 Deewiant, I had some weird item dupe bug then got disconnected 23:27:37 I'll wait a few minutes for anything floating around there to get timed out 23:27:41 then I'll try again 23:28:00 Deewiant, if that doesn't work, do you have any way to poke the server? 23:28:41 Poke? 23:29:06 * oerjan has to admit all the spam in the esoforum doesn't look good, even if the noise is visible mainly because the signal is so tiny 23:29:33 Deewiant, as in, get in contact with ineiros 23:29:41 Nope 23:29:57 Yes, I'm sure ineiros REALLY WANTS TO BE CONTACTABLE 24/7 FOR THIS. 23:30:09 In fact, Vorpal, maybe you should move in with him and watch him sleep. 23:30:19 If the server goes down you could just breathe into his face until he wakes up. 23:30:27 elliott, strawman 23:30:40 Sure, you could make an effigy of ineiros while you're there. 23:30:43 Out of straw. 23:30:44 elliott: clearly what we need here is some kind of server-dream interface 23:30:58 oh wait logic turns off when you sleep. never mind. 23:31:07 oerjan: Maybe we could just rewire ineiros's brain to connect to Minecraft when he sleeps. 23:31:14 ...hell, *I* would go for that 23:32:40 -!- augur has joined. 23:33:02 ais523: hmm, any opinions on Unicode support? 23:33:17 it's obviously better than no Unicode support 23:33:20 ais523: I /think/ at least the first paragraph won't have a smaller VCS-relevant unit than the line, so it isn't a big problem there 23:33:37 so I guess it's just patch descriptions etc., where it's obviously a good thing 23:33:39 -!- Sgeo has joined. 23:33:59 I'd suggest as using lines as the VCS basis to get something working, and switching to pluggable bases later 23:34:01 I will IRC, homework, and verb nouns at the same time 23:34:08 ais523: oh, and at the moment, the model of scapegoat we have /will/ mangle any binary file it can if you stuff one in 23:34:10 well, maybe 23:34:12 also, with patch descriptions, etc, couldn't you just store them verbatim 23:34:17 I suppose if \r isn't treated specially, it could be okay 23:34:21 certainly won't get small patches though 23:35:17 oerjan: http://esolangs.org/wiki/Talk:Tubes#Boxdrawing_symols aaargh painful to read 23:35:30 oerjan: why don't you delete that page, seeing as you're a wiki admin as we all know >:D 23:35:33 ais523: true 23:35:33 elliott: I stayed well out of that, because I couldn't understand what it was about 23:36:09 ais523: "I want a charset encoding that has box-drawing chars as single bytes. What is it? (Is it obscure? If so, I'd better not use it.) Here is a C-based demonstration that I have no idea what the hell I'm talking about, and also use Windows. Goodbye!" 23:37:28 I think he's talking about IBMgraphics, potentially 23:37:30 -!- ChanServ has set channel mode: +o oerjan. 23:37:41 -!- oerjan has set channel mode: +b *!*Sgeo@*.dyn.optonline.net. 23:37:42 ais523: yes, which == codepage 437 23:37:47 oerjan: <3 23:38:01 (he asked me to do this yesterday if he failed the temptation) 23:38:04 i know 23:38:15 i like how you waited before pouncing 23:38:28 actually i didn't i just was web browsing :D 23:38:47 oerjan: but it LOOKED like you did 23:38:49 -!- oerjan has set channel mode: -o oerjan. 23:38:58 i think he's crying now, he isn't responding to my /msg :D 23:42:00 SORRY NO CAN DO 23:42:00 * Sgeo drowns elliott in tears 23:42:07 oerjan: you forgot to ban his clog access 23:43:16 well, night 23:43:53 <@oerjan> (he asked me to do this yesterday if he failed the temptation) <-- what temptation? 23:44:09 Vorpal: to not go to bed 23:44:12 *COUGH* 23:44:28 Vorpal: the temptation to irc when he needed to do his homework 23:44:35 -!- Mathnerd314 has joined. 23:44:36 elliott, actually I just observed it was night 23:44:37 elliott, :P 23:44:43 ais523: should object keys be Unicode? :-D 23:44:49 elliott, the observation is still accurate 23:47:03 "Minecraft is a game about placing blocks to build anything you can imagine. At night monsters come out, make sure to build a shelter before that happens." 23:47:08 Worst sales text ever. 23:51:41 elliott: are you forgetting Enigma? 23:51:50 enigma contains different floors ! 23:51:58 ;d 23:51:58 ais523: dammit, I *did* just forget about that before you reminded me 23:52:08 now the general quality of things in my head has decreased significantly 23:52:13 i want minecraft ;f 23:52:15 still, you never know, it /could/ help 23:52:27 ais523: if I ever need to cheesy someone to death? 23:52:33 also, sorry it, I retract that statement 23:52:39 elliott: well, it's bad enough for people to talk about it 23:52:46 ais523: "Downloading of large movie clips is useful, as you will likely review them many times." 23:52:49 not /that/ one, I sure won't! 23:52:52 nooga: have you seen the Enigma trailer? it's hilarious 23:54:17 nooga: http://www.youtube.com/watch?v=WV9l26Y-mBk 23:54:35 nooga: (turn up for bad music) 2010-12-17: 00:03:40 ais523: I was about to ask whether you considered objects being non-plaintext OK but then realised that it's in a DB anyway... 00:03:43 SO NEVER MIND 00:07:52 omg, can someone kill google for me? 00:10:55 ineiros, my account seems broken. Could you when you see this message remove the files for it (same as you did for PH when he became a ghost) 00:11:25 I was a ghost earlier today and didn't whine about it. 00:11:28 I just reconnected and killed it. 00:12:47 Vorpal: Done. 00:13:26 ineiros: He's moving in with you BTW. 00:13:37 Deewiant, if that doesn't work, do you have any way to poke the server? 00:13:38 Poke? 00:13:39 Deewiant, as in, get in contact with ineiros 00:13:44 ineiros: Make room. 00:15:16 Vorpal: hey you're not the most paranoid person ever now 00:15:18 http://www.minecraftforum.net/viewtopic.php?f=25&t=106877 00:15:54 "I don't trust you, you're lying, make a video to prove you made this" [other person] "here's a pic" [creator] "I'll make a video" [first person] "No we need a video AND a virus scanner because I am scared to even touch a zip if it might have viruses inside oh god" 00:16:28 "I unzipped it into a sandbox, avast doesn't showed anything after the scan, it contains a world folder, with usual chunk folders but some strange text/nonextension files" <-- apparently dotfiles are viruses now 00:17:00 "Avast crashed near the end when it was scanning those files, so i dont know, Dont wanna risk putting it into my minecraft saves folder. Might steal mah account D:" 00:17:09 The stupidity of this place is literally unmatched and unbounded. 00:17:47 http://img35.imageshack.us/img35/8152/31306982.png I have no idea how this image is meant to verify that the poster is not the original creator. 00:18:50 LOL wtf, one of the people has this in their signature http://www.spa.org/images/stories/logos/468x60_tag.gif 00:18:52 seriously?? 00:18:54 advertising a piracy hotline? 00:19:02 IT'S 5 AM DO YOU KNOW WHERE YOUR SOFTWARE IS? 00:19:27 "my theroy is he stolen this from another creator and is trying to get unfair gratitude/money (i hate donate buttons) from it." 00:19:51 [[ ScottyDoesKnow wrote:You guys do realize that you can only get viruses from certain types of files right? Next somebody will post a text file and you guys will be like "ON NOEZ I'M NOT DOWNLOADING YOUR VIRUZES" 00:19:51 Not true. Text files can contain commands to delete system32 or something else that is vital.]] 00:19:55 this is so hilarious 00:19:57 like a trainwreck 00:19:59 can't stop watching 00:24:05 elliott: yeah, despite that... enigma is playable 00:24:15 nooga: Enigma is a wonderful game and ais523 knows that more than anyone else. 00:24:19 It's just a TERRIBLE trailer :P 00:24:31 i played oxyds when i was kid 00:25:18 ehy ais523 ? 00:25:21 why* 00:25:32 nooga: he's made some levels, including ones that implement other games, with actual AI 00:25:38 included in Enigma 00:25:42 oh 00:25:45 Anyone else = anyone else in here. 00:25:51 elliott: Good, my rent is killing me. :P 00:25:55 nooga: he also single-handedly wrestled a bear to death 00:26:00 ineiros: Oh no, he's not going to help with that. 00:26:10 ineiros: hehe, same 00:26:13 ineiros: He just wants to watch you sleep so that if the server goes down, he can breathe in your face until you wake up to fix it. 00:27:53 That's... disturbing. I might not sleep this night. :P 00:28:33 ineiros: It's okay... he'll tuck you in silently. 00:28:37 Like a ninja, except creepy. 00:33:23 -!- Goosey has joined. 00:34:14 -!- poiuy_qwert has quit (Ping timeout: 240 seconds). 00:35:45 -!- poiuy_qwert has joined. 00:37:28 Vorpal: WHOOPS LOOK AT THAT http://i299.photobucket.com/albums/mm301/r3ynor/plateau8.png in-air minecarts in single-player survival game 00:37:30 circa august 00:37:33 guess mobs don't destroy it 01:02:22 -!- Mathnerd314 has quit (Ping timeout: 240 seconds). 01:06:42 -!- sebbu2 has joined. 01:10:04 -!- sebbu has quit (Ping timeout: 272 seconds). 01:15:54 -!- sebbu has joined. 01:17:38 -!- augur has quit (Remote host closed the connection). 01:18:12 -!- augur has joined. 01:19:02 -!- sebbu2 has quit (Ping timeout: 265 seconds). 01:22:48 -!- augur has quit (Ping timeout: 260 seconds). 01:30:34 -!- Mathnerd314 has joined. 01:38:04 Vorpal: fizzie: Better Grass + Better Light + Far rendering distance + Fancy graphics + 128x128 Sanguine texture pack = oh god it is so pretty but my GPU hates me forever 01:42:44 even the ROU is pretty 01:45:08 ok what the heck does ROU mean 01:45:43 -!- p_q has joined. 01:45:58 oerjan: Rapid Offensive Unit apparently. it's a type of ship from the Culture 01:46:14 PH built a gigantic scale replica (200 blocks long, 1 block ~= 1 m^3) 01:46:29 out of cobblestone. 01:46:32 floating in the air, no less. 01:46:37 aha 01:47:02 -!- poiuy_qwert has quit (Ping timeout: 240 seconds). 01:47:16 you can defy gravity in minecraft? 01:47:39 * oerjan <- not a player, obviously 01:53:28 -!- p_q has quit (Ping timeout: 276 seconds). 01:53:50 -!- Mathnerd314 has quit (Ping timeout: 240 seconds). 01:56:37 -!- p_q has joined. 02:02:20 oerjan: yes 02:02:24 oerjan: unless it's sand, or gravel 02:02:36 oerjan: in which case gravity applies because obviously, the more granular something is, the more easily it falls 02:02:46 heh 02:02:58 _obviously_ 02:02:59 -!- augur has joined. 02:04:31 Wonder how much better it would look if there was also triangular and pyramidal blocks... 02:05:03 Ilari: VIOLATING THE PURITY 02:05:13 Ilari: (Admittedly we have half-high blocks and doors and buttons and switches and torches :P) 02:14:05 Granular objects get teared apart much more easily by gravitational tidal forces... :-) 02:15:29 Ilari: See, it's obviously logical. 02:15:32 Ilari: This is why cobblestone floats. 02:15:34 Also dirt. 02:15:39 Dirt is, uh, less granular than sand and gravel. 02:15:40 STOP QUESTIONING 02:15:49 Fridge logic... 02:17:26 Even ordinary planets can generate powerful enough tidal forces to rip apart objects that aren't solid... 02:18:42 (the forces from gravitational gradient are greater than object self-gravity). 02:19:40 -!- Mathnerd314 has joined. 02:24:20 100m "rubble pile" of 10cm rocks would become about billion fragments if fragmented... 02:30:59 Trying some scenarios in Earth impact effects program: "Max wind velocity: 637 m/s" "Sound Intensity: 117 dB (May cause ear pain)". 02:33:37 600+ m/s wind would essentially destry anything on its path. 100m/s for tornado would be in EF5 (Total destruction) catagory... 02:36:16 Uuuh, damn, that's not far from being an actual shockwave from an explosion. 02:37:10 See if you can get it up to 194 dB. 02:37:26 (the maximum possible sound pressure in air at 1 atm) 02:37:29 -!- pikhq_ has changed nick to pikhq. 02:39:08 Peak overpressure 40.3bar, peak wind 1590m/s, peak sound intensity 132dB... 02:40:06 67bar, 2070m/s, 137dB... 02:41:02 111bar, 2670m/s, 141dB... I don't think this is going to go much higher... 02:43:43 Heh... Current dB drag racing record is 180.5dB... 02:53:50 -!- sftp has quit (Read error: Connection reset by peer). 03:45:12 ais523: i need an opinion 03:45:21 ais523: is it okay if object bodies are limited to 2 gigabytes? :D 03:45:33 actually it'd probably be fine limited to 64k, since objects are always pretty darn small 03:45:38 but 32-bit is Future Proof(TM). 03:45:53 yeah no one cares about fat objects anyway 03:46:41 * oerjan thought ais523 had a near normal sleep schedule 03:49:11 oerjan: no way :) 03:49:18 oerjan: he's been on american time, before 03:49:27 oerjan: IIRC just because of collaborating with an American on something 03:49:34 hm 03:49:40 oerjan: also as you've probably seen he has a tendency to be at work at 9pm :P 03:50:18 i said sleep schedule, not work schedule 03:51:04 oerjan: right, just saying 04:03:07 Normal sleep schedules are overrated. 04:03:12 very 04:03:32 The closest I've been to "normal" the past couple years is going to bed a bit after midnight. 04:03:33 I'm happy with my sleep schedule of "go to bed whenever. wake up whenever" 04:03:46 I think I've pulled at least an all-nighter a week 04:03:50 Which is actually so astonishingly close to normal that you can actually interact with people IRL with ease doing it. 04:04:05 Kinda odd that I've been able to do it regularly. 04:04:09 more if you count going to bed at 5-6am an all-nighter 04:04:27 coppro: my problem is that i have terrible akrasia wrt going to bed so i end up tired all the time 04:04:30 pikhq: um i consider "a bit after midnight" within normal range. 04:04:33 and also waking up when it's dark or near it depresses me 04:04:53 elliott: oh, so do I 04:05:02 I rarely wake up when it's dark though 04:05:07 coppro: solution: better living through chemistry! remind me to buy that melatonin sometime. 04:05:24 * coppro slaps elliott 04:06:26 * oerjan either forgot or didn't dare to ask the doctor about melatonin yesterday 04:06:57 but on the plus side, i seem not to have diabetes. yay! 04:07:00 oerjan: It's just at the very *edge* of normal, though. 04:10:44 elliott: it looks like some people are migrating from r/programming to r/coding 04:11:31 oerjan: just like they did when /r/coding first came around; but there's always been a strong air of anti-Haskellism on /r/coding from what I've seen 04:11:38 and a focus on "practical" shit 04:11:43 ah. 04:11:57 oerjan: it may be getting better. will have to see. 04:11:59 * oerjan hasn't been to r/coding himself 04:12:13 Who gives a shit about practical? It should be about being interesting! 04:12:17 oerjan: e.g. bonch was one of the first users and he's the one behind the Haskell-post-drinking-game spam he put on every haskell post he could find 04:12:28 TAKE A DRINK / FOR EVERY HASKELL LINK or something 04:12:31 If it's practical and interesting, awesome. If it's completely impractical and interesting, also awesome! 04:12:32 then "Here's to another" 04:12:32 IIRC 04:13:58 "I had an article to write, but the only word processor I could find on my iMac was TextEdit, essentially a stripped-down version of Notepad." --Reviewer, about OS X, failing to note that TextEdit is vastly more powerful than Notepad, and also not noting that Windows ships with no word processor. 04:14:05 FAIR AND BALANCED, STRAIGHT FROM THE HUFFINGTON POST 04:14:16 "It didn't take long to become frustrated with the iMac mouse too. It limped across my desk, the "on" switch, which is located on the belly of the mouse, scraping the mahogany of my desk as it went." 04:14:19 Also he can't afford a mouse pad. 04:14:29 "I booted up my bank account before realizing the Mac keyboard had no number pad" 04:14:34 Or select the other keyboard option. Or plug in a USB one. 04:14:37 elliott: Windows ships with Wordpad, which actually *is* a word processor. 04:14:42 "Neither did Ipswitch FTP, my file-uploader." 04:14:44 A fairly basic one, but that's beside the point. 04:14:48 Nor can he, apparently, use another FTP app. 04:14:54 pikhq: TextEdit is a word processor too. 04:14:58 It has font settings, line spacing, etc. 04:15:04 RTF-native, like WordPad. 04:15:18 elliott: heh i just looked at r/coding and two of the top ten links are about haskell :D 04:15:20 Hmm, sure enough, it's essentially on par with Wordpad. 04:15:23 "My .flv and .mkv files triggered only error messages, and some of my .mpg clips opened to blank screens." 04:15:30 BECAUSE WINDOWS SUPPORTS .MKV OUT OF THE BOX AND I CAN'T DOWNLOAD PERIAN 04:15:43 "I opened Mac's Thunderbird, and my jaw dropped again. The font on every email was so small, I was going to need the Hubble telescope just to answer my morning mail." 04:15:45 what the fuck 04:15:51 you just bought it looking for things to complain about. 04:15:54 oerjan: lawl 04:15:57 I think the only OS that does media playback out of the box is... Linux distros. 04:16:10 Well, *general* support for it. 04:16:12 pikhq: Hmm? My Slackware install plays your .mkvs not. :P 04:16:21 elliott: True, it depends on the distro. 04:16:37 "There were two obvious solutions: For the next few years I could type every letter in 16-point font, then decrease the font size just before sending it, or I could decrease the screen's radically high resolution. I sighed, realizing this was yet another Mac complication for a function my PC simply performed without fuss." 04:16:46 JOURNALISM: It's when you complain about high PPI screens. 04:17:03 But... Yeah, it's usually at least a bit of a pain to get support for non-WMV or MPEG on Windows or non-Quicktime or MPEG on Mac OS. 04:17:05 "I found the screen settings and slid the resolution bar down one notch. Suddenly everything was fuzzy. The blood vessels in my eyes began to constrict again." 04:17:07 It's called LCDs. 04:17:17 "The final straw came when Mac's Firefox took me to my website. To my horror, all the spacing was askew, the graphics tossed left and right like the wreckage of a hurricane. I asked myself: As a web designer, how can I design web pages when I can't see what 90 percent of my viewers are seeing?" 04:17:21 One might -- and bear with me here -- 04:17:26 Blame your website rather than WebKit. 04:17:42 elliott: oh and _the_ top link doesn't mention haskell ... but it is an _oleg_ link :D 04:17:53 oerjan: that's what we need!! /r/oleg 04:17:59 elliott: s/WebKit/Gecko/ He *said* Firefox, did he not? 04:18:07 pikhq: oh indeed :D 04:18:20 elliott: ... Also, couldn't he just *set the DPI for his monitor right*? 04:18:23 oerjan: if you could, wouldn't you just read oleg all day. 04:18:35 pikhq: it's a built-in display, and OS X doesn't really support setting the ppi. 04:18:38 pikhq: so. he has like. half a point. 04:18:48 elliott: Okay, that's kinda stupid. 04:18:57 pikhq: (the "plan" is to get all of OS X's graphics scalable or something and then turn on automatic ppi detection so that /everything/ scales properly) 04:19:03 pikhq: it's not like apple would ship a half-done solution ;) 04:19:07 elliott: But I'm suspecting *he's* the one being stupid. 04:19:27 [[For a second I thought, well, I could load Parallels, the Mac OS program that allows you to run Windows applications on your iMac. But that plan was squashed fast. Before I could complete Parallels' installation, it asked for a copy of the Windows CD. I shook my head in disbelief: where the hell am I going to get a copy of the Windows CD?]] 04:19:35 Macs are bad because I don't know where I can buy Windows. 04:19:36 Because it's not like a PPI issue is going to be Mac OS's fault. 04:19:38 What. 04:19:56 Run Windows on a very high PPI screen and everything is about the same. 04:20:06 "I'm returning my iMac, then headed to Best Buy to snag a PC, one four-times faster than my current computer and $400 cheaper than that iMac." 04:20:14 And this one will fall apart seven times faster, too! 04:20:23 "I'll spend the difference on a video editing program, a new haircut and a first-rate pair of swing dancing shoes." 04:20:23 Except that unless you have the very latest version, it'll look like shit if you change your setting to match your display! 04:20:26 I am going to punch you in the testicles. 04:21:12 elliott: Oh, so he doesn't know the difference between decent-quality hardware and the cheapest shit that still works, either? 04:21:13 elliott: um no. 04:21:24 oerjan: why not. 04:21:43 Not to mention that he... Can't buy a copy of Windows? 04:21:55 It's not like that's *niche*. 04:21:57 pikhq: that article has managed to piss me off to the point where it's actually increased my already-present niggling desire to buy one of those shiny new MacBook Airs :D 04:22:01 (to put Ubuntu on) 04:22:04 Go to any store that sells software. 04:22:11 pikhq: (now is the time to convince me not to, by the way) 04:22:22 elliott: Only if you buy me one. :P 04:23:16 pikhq: I'm sorry, only one of us can have a 1.32 kg, 0.11-0.68 inch high, 13" 1440x900, 2.13 GHz Core 2 Duo with 256 GiB of SSD storage and a Nvidia GeForce 320M GPU. And ~6-7 hours battery life. 04:23:23 And a multitouch glass trackpad. 04:23:38 And no fucking Ethernet port so they swindle you out of the money for the USB 2 adapter for it. :p 04:23:49 Sucks for you, doesn't it? 04:23:50 (Admittedly, it is thinner than an Ethernet cable at all points.) 04:23:51 :P 04:24:02 also it can only do about 80 Mbit ethernet because of USB 2 but really who cares 04:24:07 i don't have other computers to LAN with :P 04:24:08 elliott: because reading much oleg would make my brain hurt just as much as anyone else's 04:24:30 elliott: Uh, USB 2 is 480 Mb/s nominal. 04:24:39 pikhq: well, it doesn't manage more than 80 Mbit :P 04:24:41 elliott: Surely it can sustain 100 Mb/s. 04:24:44 pikhq: it's 100 Mbit ethernet only 04:24:47 pikhq: dunno why 80, oh well 04:24:58 pikhq: it's actually a network adapter encased in plastic, since the motherboard doesn't even have a PHY 04:25:30 pikhq: the machine, the ethernet adapter, and the USB optical drive total to £1,599.02, which is really a ridiculous figure considering this machine cost about £500 :) 04:25:40 but it's shiny and thin and gaaah logical brain functions disabled. 04:25:46 oerjan: hurt or AWESOME 04:25:55 "USB optical drive"? Who needs such outmoded media? 04:26:08 pikhq: OS X upgrades are not yet offered via USB stick afaik :P 04:26:17 Fuck OS X. 04:26:19 admittedly, it would save £65. 04:26:27 pikhq: You need OS X to upgrade the EFI. Also because of shiny. 04:26:42 Fuck the Macbook Air, then. 04:26:58 pikhq: I'll cut you a deal. Work on scapegoat for a few years with me and ais523, and I'll buy you the 11" model. 1.4 GHz processor, 2 GiB RAM, 64 GiB flash storage. £849! 04:27:32 pikhq: (Anyway, the next OS X updates will probably be available by the Steve Jobs Ego-Enhancing Spooge Factory, also known as the Mac App Store, so you shouldn't actually need an optical drive.) 04:27:38 But by that time I'll probably have a degree and good employment! 04:30:47 pikhq: Yes, but you'll still be unable to bring yourself to buy a Mac. 04:30:55 pikhq: Also, good employment: USA: job market: HAHAHAHAHAHAHAHAHAHAHAHA 04:31:10 pikhq: Maybe we could get ais523 to somehow employ us to work on scapegoat. 04:32:29 elliott: I intend to expatriate. 04:33:19 pikhq: World: Job market: HAHAHAHAHA 04:34:02 elliott: Funny, seems to me the rest of the world is merely in a recession, rather than trying its hardest to *ruin everything*. 04:34:21 pikhq: Recession. 04:34:59 * Gregor seems to be gainfully employed, and in the USA :P 04:35:54 Gregor: Yes, but you have a jew nose and hats. 04:35:56 Also ties. 04:36:00 pikhq has none of these things. 04:36:10 what recession? 04:36:21 oerjan: JUST WAIT UNTIL YOU RUN OUT OF OIL 04:36:23 JUST WAIT 04:36:28 Hats are expensive, but I'd be happy to punch pikhq in the face, and you can get ties at any goodwill. 04:36:29 WE'LL GO TO WAR WITH YOU TO SEE IF YOU'RE LYING OR NOT 04:36:43 Gregor: No amount of punching can reach jewnose status :P 04:37:55 Gregor: Maybe if you committed suicide and also killed all the other jews, after punching pikhq in the face, he might have the biggest nose. 04:37:57 But until then. No. 04:38:43 It's not size, it's shape. 04:38:48 I mean, yeah, it's size :P 04:38:51 But it's mainly shape! 04:41:06 -!- zzo38 has joined. 04:42:14 Gregor: Sort of like penises. 04:46:06 -!- hagb4rd has quit (Quit: hagb4rd). 04:46:07 elliott: we already passed peak oil, actually. now the buzz is mainly about natural gas. 04:47:19 oerjan: shut up. 04:47:42 and our ministers of finance have been fond of reminding us that despite oil and all, norway's largest amount of capital remains its workforce. 04:49:08 * pikhq has a big nose, actually. 04:50:17 oerjan: You guys also have the property of having things damned nice. I mean, aside from the weather, Norway sounds like an incredibly nice place to be. 04:51:46 Well, apart from being ... y'know ... Norway. 04:52:27 Gregor: Oh, like you're one to talk. You live in the same country as Palin. 04:52:59 pikhq: And you live in the same country as Bush! 04:53:05 Oh God. 04:53:43 Where's my sword. I need to ritually remove a large portion of my digestive system, thereby causing death. 04:54:20 * oerjan imagines if bush had been born in japan instead. scary. 04:54:50 mass suicide all over 04:55:03 oerjan: Except Bush couldn't do as much there. 04:55:14 oerjan: If Japan goes all crazy and stuff, the world can just tell them to fuck off. 04:55:26 oerjan: If the US goes all crazy and stuff, well, there goes a country. 04:55:50 pikhq: only until japan develops the giant robots 04:56:06 Well, yes, Japan with mechs would fuck us all. 04:56:36 (citation: half of all siȳônenn anime.) 04:57:39 pikhq: i think it _would_ be nice if you used a transcription i could actually google :D 04:58:13 oerjan: Fine, fine. 04:58:15 oerjan: Shonen 04:58:27 i just guessed that actually 04:59:03 Alternately, you could just learn the rules of Japanese orthography minus the glyphs. :P 04:59:18 (which is literally all that there is to my transcription scheme...) 04:59:27 mhm 05:00:54 pikhq: please translate "desu" to your scheme so i can troll /classily/ 05:01:11 tèsu 05:04:39 * pikhq listens to ナイトフィシングイズグッド (NAITO HUĪSINNKÙ ISÙ KÙ'TÒ)[Night Fishing Is Good] by サカナクション (SAKANAKUSIȲONN)[Sakanaction] happily 05:04:57 * pikhq also wonders what's with the Engrish in the title 05:05:17 Only problem with Japanese music: knowing English makes much of it painful. 05:06:55 I disagree night fishing is AWESOME 05:07:11 'Tis a good album. 05:07:35 A lot of problems with the Japanese seem to come down to the fact that Japan wants to be America Jr.: All the America, None of the Fat! 05:07:59 Gregor: Not really. 05:08:15 Gregor: At least, that explains absolutely *none* of the WTF factor you get from there. 05:08:39 Oh, there's a unique WTF factor of course, but that's combined with Americaphilia. 05:08:59 They actually have severe foreignphobia... 05:09:07 "OH GOD IT'S FROM OUT OF THE COUNTRY" 05:09:44 And they have NIH to an extent that would shock zzo38. 05:09:48 Just - like - America 05:09:55 Err, to the last part 05:10:01 who likes awful puns? 05:10:18 (that's a rhetorical question) 05:10:26 oerjan: see latest xkcd 05:10:58 quintopia: it's xkcd, the ID is above 400, and Randall is off his five-minute-comics-that-are-actually-funny streak. 05:11:05 there is no reason to type in the keys x k c d . c o m enter 05:11:10 Gregor: Do Americans only usually take tours of foreign countries in highly coördinated tours with swarms of fellow Americans? 05:11:23 Gregor: Cause, uh, that's kinda a social norm in Japan. 05:11:26 elliott: you do not like awful puns. oerjan does. that should be reason enough for him. 05:11:31 verified terrible 05:11:37 quintopia: even oerjan recognises how bad xkcd is :) 05:11:47 ah well 05:11:49 pikhq: http://en.wikipedia.org/wiki/Paris_syndrome 05:11:57 (http://en.wikipedia.org/wiki/Jerusalem_syndrome is interesting) 05:12:07 pikhq: No, Americans just refuse to acknowledge that other countries exist. 05:12:09 also http://en.wikipedia.org/wiki/Stendhal_syndrome 05:12:23 as far as awful puns go, this one made me giggle slightly more than his usually do, so i'm going to give him half credit 05:12:33 hmm, someone on a forum suggested using Wikipedia to predict the day of the week future dates would fall on 05:12:39 wouldn't a calendar work better? 05:12:47 ...or do it in your head 05:12:52 it's a pretty simple calculation 05:13:19 http://en.wikipedia.org/wiki/The_terrorists_have_won wikipedia confirms ir 05:13:20 Gregor: Okay, true, the US kinda has it bad, too. 05:13:20 *it 05:13:30 ais523: better than Doomsday imo 05:13:31 :D 05:13:41 ais523: i might implement a cal(1) that does that 05:13:55 Gregor: But *dear God they create their own everything* when it comes to tech for no good reason. 05:13:59 (I'm reading about the efforts to crack the RNG in the new Pokémon games; they created something crazy with internal timings, DS ID numbers, MAC addresses, SHA-1 hashing, and to-the-frame timings, and yet people /still/ cracked it by disassembling the code) 05:14:24 ais523: Link? 05:14:38 ais523: i bet reverse engineers would hate it if companies just gave up and didn't obfuscate anything 05:14:40 where's the fun gone 05:14:41 :P 05:14:50 ais523: i think i pinged you a few times in the log 05:14:52 don't recall 05:14:54 -!- TLUL has joined. 05:14:59 pikhq: Smogon Univeristy's RNG research threads 05:15:17 I'm not sure if there's a single post summarising yet 05:15:29 19:45:21 ais523: is it okay if object bodies are limited to 2 gigabytes? :D 05:15:29 19:45:33 actually it'd probably be fine limited to 64k, since objects are always pretty darn small 05:15:29 19:45:38 but 32-bit is Future Proof(TM). 05:16:16 elliott: only object I can see getting that large is a binary blob which is being stored per-file rather than per-byte (the only two units of measurement that make sense for a binary with no format data) 05:16:38 ais523: yeah, I'll go with 48-bit or 64-bit prolly "just in case" 05:16:42 remind me to, please :P 05:16:43 or just... 05:16:47 ===HEY YOU, ELLIOTT 05:16:49 bignum? 05:16:51 wait no 05:16:55 ===HEY, LISTEN!=== 05:16:55 ===HEY, LISTEN!=== 05:16:55 ===HEY, LISTEN!=== 05:16:56 ===HEY, LISTEN!=== 05:17:03 there, that should make me recoil enough to pay attention 05:17:08 ais523: in a binary file format? 05:17:16 ais523: basically pointless, show me a >64-bit-length file :) 05:17:19 elliott: where did you pick up zelda memes from? 05:17:41 also, in a suitable encoding, bignums would generally be less than 64 bits long 05:17:41 ais523: hey listen is more an everywhere meme than a zelda-specific one... also i /have/ played some of the zeldas (plural!) 05:17:58 not very far, admittedly, but enough to want to claw navi's eyeballs out. did it have eyeballs? i forget. 05:18:08 I thought Ocarina of Time was what started the meme in the first place 05:18:29 even if it spread from there 05:18:46 also, I was watching a video of someone glitching their way through the whole game (tool-assisted) 05:18:46 it is 05:18:59 and it turns out that the infinite sword glitch can be triggered off anything that displays a message 05:19:04 including Navi's advice 05:19:15 so someone actually found a use for it in a maximum-speed glitched speedrun, which was hilarious 05:19:30 heh 05:19:46 quintopia: even oerjan recognises how bad xkcd is :) <-- NO I DON'T! ER WAIT... 05:19:54 ais523: someone should make a pokemon rom hack that lets you DISABLE ALL THE FUCKING REPEATED TEXT 05:19:59 like telling you what a pokecentre is every fucking time 05:20:11 does it restore my pokemon to full health! really! i didn't know that. thanks for the tip. 05:20:18 we hope to see you again! 05:20:28 (they actually fixed that for black and white when they realised the implications) 05:20:57 also, ooh, an interesting theory 05:21:08 elliott: Probably the most annoying thing about Pokémon is the very slow walk speed. 05:21:26 it's that the crazy generation method, because it's based off internal timings, is meant to detect whether you had an action replay connected when you caught the Pokémon or not 05:21:26 It's such fucking filler. 05:21:30 pikhq: my finger is in a permanent press-B-down position 05:21:42 *thumb 05:21:43 elliott: they actually fixed that for HGSS, there's a toggle-permanent-B on the touchscreen 05:21:51 elliott: ? 05:21:55 pikhq: "run" 05:21:57 mostly because it's designed to be playable dpad-and-touchscreen 05:21:59 ais523: heh, i just realised the implications of "we hope to see you again" 05:22:02 elliott: ... 05:22:05 pikhq: what 05:22:15 elliott: When did they add that? 05:22:18 ais523: i haven't played anything past sapphire 'cuz i'm OLDSCHOOL 05:22:19 pikhq: only available from 3rd gen onwards, if you're wondering how you missed it all this time 05:22:27 right i sort of haven't played first gen :) 05:22:39 or uh, anything but sapphire, i think i played another one of the generations at some point 05:22:44 The last gen I played was 2nd. 05:22:47 ah 05:22:59 also, it's an unlockable in all the games in question, but it normally unlocks very early 05:23:03 about when walking everywhere is getting old 05:23:17 if you can't unlock it in previous gens, woop, guess i won't be playing them 05:23:37 oh wait i have played diamond 05:23:38 the transport situation gets better from gen to gen 05:23:39 a bit 05:23:44 but strangely, better in the later games of a gen to the earlier 05:24:00 e.g. you can normally bicycle through guardhouses in the later games in a gen, but not the earlier games 05:24:07 elliott: Well, with first/second gen you can crank up the emulation speed. 05:24:12 which is a nice timesaver as you don't have to get back on the bike again 05:24:13 pikhq: :D 05:24:19 ais523: how odd 05:24:35 ais523: prediction: next gen pokemon will be partly procedurally-generated 05:24:40 (i say prediction, I mean hope) 05:24:50 pikhq: shall I be naive enough to assume you're referring to Pokémon Stadium's link-to-early-gen-gamepak-and-play-at-enhanced-speed feature? 05:25:00 ais523: That *or* a ROM. 05:25:06 you can tell it's bad if they released an unlockable in an entirely different game just to play it faster 05:25:40 elliott: Yeah, in Pokémon Stadium you could play an early-gen game emulated on the N64. And crank it up to 8x speed. 05:25:44 ais523: no no clearly pikhq ripped the ROM from his actual legal cart 05:25:46 because people do that 05:25:49 all the time. 05:25:55 (Stadium 1 only did gen 1, Stadium 2 did gens 1 and 2.) 05:26:08 guess what's a shitty game 05:26:09 CORRECT 05:26:11 pokemon colosseum 05:26:26 nah, colosseum's one of the best of the Pokémon games, from what I've seen of it 05:26:30 although admittedly I haven't actually played it 05:26:36 ais523: really? i've played it and got so bored that I just stopped 05:26:43 heh 05:26:44 without even getting anywhere 05:26:47 well, much 05:26:54 (or if you go by Japanese names: Stadium 2 only did gen 1, Stadium Gold & Silver did gens 1 and 2.) 05:27:05 (and Stadium 1 sucked) 05:27:05 pikhq: what's jap Stadium 1 05:27:06 it has an actual plot, an actual AI, and boss battles that are actually interesting 05:27:18 ais523: maybe i shoulda sticked with it 05:27:20 *stuck 05:27:22 or *sticked :P 05:27:43 elliott: It only had 42 Pokémon coded in, and was crazy-hard. 05:27:44 ais523: hmm, pokemon would be nice with a keyboard 05:27:47 single keys for attacks 05:27:58 that's how it works in HGSS, using the touchpad 05:28:07 And it was originally released for the 64DD, which bombed. 05:28:10 actually, that works even in DPP; it's one of the few touchpad controls they actually got right there 05:30:54 meh, I'm the sort of person who ignores most apparently interesting Pokémon news 05:31:00 and then goes all crazy over Mental Herb blocking Taunt 05:31:31 Eh, I'm the sort of person that hasn't followed the series much at all. Though... Not for any real reason other than not doing so. 05:31:52 I mean, it's still a decent RPG series. 05:32:03 if they removed all the dialogue 05:32:15 and made it less irritating to avoid trainers stairing at you with their eyes causing legally-binding fights to the death 05:32:21 and then made walking take like 0 seconds 05:32:25 elliott: Okay, true, almost all of the dialogue is pointless. 05:32:26 i'd play the shit out of it. 05:32:26 elliott: actually, that happens because of running 05:32:32 ais523: really? 05:32:34 for randomly-facing trainers, you can sneak past them, but only by walking 05:32:35 ais523: today I learned! 05:32:43 for fixed-facing trainers, there's not much you can do about it 05:32:44 ais523: well, right, i know that 05:32:46 other than walk round them 05:32:51 it's the fixed ones i hate, sometimes you can't 05:32:52 and that usually isn't possible 05:32:52 ais523: ... YOU CAN AVOID THOSE BASTARDS IN LATER GENS? 05:32:58 pikhq: hahaha 05:33:01 good luck timing it, though 05:33:09 they love turning around to look in your direction JUST as you start to move away 05:33:19 elliott: because you're running, it's 100% guaranteed if you run 05:33:21 FUCK THEM SO MUCH 05:33:27 walking or cycling, it's just random 05:33:28 ais523: no, when walking 05:33:30 hmm 05:33:33 the battle options should be 05:33:34 fight 05:33:35 bag 05:33:36 run 05:33:37 pokemon 05:33:41 punch the little bastard 05:33:47 at least for the stupid bug guys 05:33:53 why do they ever think they'll win 05:33:54 The god damned bug catchers. 05:34:05 HURR I CATCH BUG IT'S GONNA DEFEND ITSELF 'GAINST YOUR SWATTER 05:34:14 My Mewtwo will still kick your ass. 05:34:30 hey, don't knock bug catchers, their purpose is for providing XP to speedrunners 05:34:47 most Pokémon speedruns ignore all non-mandatory trainers but the bug catchers near the start 05:34:52 (and in R/B, the trainer before Brock) 05:35:01 (that is, if they don't glitch past him) 05:35:08 ais523: http://tasvideos.org/1678M.html What do you mean, "XP"? 05:35:15 MY MISSINGNO DEFEATS ALL 05:35:24 although really 05:35:24 elliott: I ♥ using Missingno. 05:35:27 i primarily fight with magikarp 05:35:27 pikhq: which TAS is that? the one that doesn't catch any Pokémon at all? 05:35:33 have you ever fought those fishers who 05:35:34 or even collect the first one 05:35:37 literally just have three magikarps 05:35:40 it's pathetic 05:35:43 and really kind of sad 05:35:45 elliott: ofc, great source of speed EVs 05:35:49 well THAT one just bobbed up and down a bit 05:35:50 ais523: The one that corrupts the save data to skip from the very first room to the end credits. 05:35:50 it's rather easier than farming Starlys 05:35:53 but I'm sure this one will do something more!! 05:35:55 why do they even bother 05:35:59 pikhq: very first room? it was obsoleted 05:36:04 surely they should try and NOT look at you since apparently people who lose matches PASS OUT 05:36:06 it turned out skipping from the second room was slightly faster 05:36:13 and have to be magically teleported to a glorified mechanical vet 05:36:20 or is it your house, i forget 05:36:21 vet i think 05:36:22 elliott: nope, they even flavoured that away later on 05:36:23 ais523: Oh, that does leave his bedroom, doesn't it. 05:36:27 Goes downstairs! 05:36:29 pikhq: yep 05:36:33 ais523: they did? THEY ARE DESTROYING EVERYTHING I HOLD DEAR, how did they do it 05:36:41 resetting the game in the middle of a save 05:36:45 i mean 05:36:46 you know the game tells you not to? that's why 05:36:48 elliott: nope, they even flavoured that away later on 05:36:51 oh 05:36:52 ais523: i've tried that tons!! 05:36:54 it always just like 05:36:56 broke my save 05:36:57 or did nothing 05:36:59 so disappointing. 05:37:02 i tried all kinds of timing 05:37:07 it's flavoured as you running back to a poké center, protecting the fainted Pokémon from further harm 05:37:13 also ripping the cart now, a favourite of mine 05:37:14 *out 05:37:25 tends to make the soundtrack glitch music temporarily 05:37:25 which would be hilarious in, say, the Distortion World 05:37:27 elliott: In the first gen, doing it during a trade would clone a Pokémon. 05:37:36 pikhq: in the second gen too 05:37:40 Both parties would have the first Pokémon and lose the second. 05:37:44 Oh, right, second gen too. 05:37:51 in Emerald, you could do it by interrupting the save caused before a link battle tower battle 05:37:57 I used that a lot with my brother. Screw you, Pidgy! 05:38:03 (ruby and sapphire have no known exploitable glitches of the sort) 05:38:07 Erm, Pidgey. 05:38:15 in diamond and pearl, you can do it during the save after depositing a Pokémon on the GTS 05:38:20 You could also do the same thing with the boxes in gen 2. 05:38:39 (the DP cloning method doesn't even lose a Pokémon, it just creates an extra copy out of thin air) 05:39:41 i should really leave, like, now 05:39:47 -!- elliott has quit (Quit: Leaving). 05:39:47 need to sleep? 05:39:52 apparently so 05:40:09 Butbut hǫke'tomonnsutâ! 05:46:08 I know POKESAV can also be used to modify the game state information. It seems to not always work though. 05:47:12 But I don't know if POKESAV is wrong or if eepinator is broken. 05:51:28 I once made up how you can play Pokemon Red using only a 8x8 ASCII display. It is enough, in fact you can display more information than Pokemon Red did itself, and with only 7 buttons (push only 1 button at once) you can do many actions much quicker actually, too. 05:53:22 pokesav'ed Pokémon can be detected unless it's done really well, it doesn't generate all the data according to the algorithm Pokémon itself uses 05:53:50 which Pokémon games do you play (emulated, simulated or on the cartridge), btw? just red/blue? 05:54:17 ais523: Emulated I have played Red. On the cartridge I have played Pearl. 05:54:30 interesting 05:54:49 I don't play multiplayer over the internet. 05:54:54 I mostly use a simulator to play Platinum (the simulator lets you set any legal team you want, and play against other people, using an independent codebase) 05:54:58 I realized many broken things in these games. 05:55:04 because the AI isn't good enough to let single-player work 05:55:38 proof is that I beat the final, bonus boss of Pokémon HeartGold with a team of level 5, unevolved Pokémon 05:56:00 because training up my main squad to a level where it could win would have taken too long 05:57:01 -!- Mathnerd314 has quit (Quit: ChatZilla 0.9.86-rdmsoft [XULRunner 1.9.2.12/20101026210630]). 05:57:14 ais523: Did you know that an 8x8 ASCII display (no colors, no reverse video) with only 7 buttons (without pushing multiple buttons at once) is enough to play Pokemon Red and display even more information at once than Pokemon Red does? 05:57:21 ais523: Uh, what? 05:58:06 zzo38: it wouldn't surprise me 05:58:22 pikhq: it just takes a bit of strategy and a bit of lateral thinking 05:58:30 together with some effects that are new in 4th gen, admittedly 05:58:42 zzo38: Did 1st gen even *use* select? 05:58:47 ais523: Also I have won Pokemon Pearl with only six of Ditto with no attacks and all zero IVs. But I had a lot of potions though. 05:59:04 pikhq: It used the SELECT button to reorder items only, I think. 05:59:09 Meanwhile I just used a GTS-traded maxed Mew to beat Diamond 05:59:09 Oh, right, so it did. 05:59:22 Aaaah, Mew. 05:59:27 So cute ^_^ 05:59:31 that was likely hacked, even if it had legal stats 05:59:34 what nature? 05:59:40 Of course it was hacked 05:59:41 Umm 05:59:48 Dunno, I forget 06:00:09 It had perfect IVs for attack and special attack, with the extra point on speed 06:00:16 I wrote a Pokémon legality checker, that told you things like what time and date to set the DS to to catch the Pokémon if it was legal 06:00:19 TLUL: that's EV, not IV 06:00:28 ais523: Unless the game is as glitchy as gen 1 was, probably hacked. :) 06:00:31 Oh right 06:00:34 Yeah. 06:00:37 The IVs were all 31s 06:00:38 IVs can be maxed in all six stats at once, under certain circumstances 06:00:41 indeed 06:00:46 But in the thing I wrote about 8x8 ASCII Pokemon Red, it used all seven buttons for nearly all things. In battle mode, up/down/left/right use an attack (there are four of them), A is ITEM, B is SHIFT, C is SURRENDER. 06:01:45 If I ever write that game, I will write the VM first and make it as a game in the VM. 06:01:53 Anyone have a torrent file for Hazard's OSX cracks? The only one I can find is for tracker.thepiratebay.org, which was shut down 06:02:01 And now resolves to localhost 06:02:11 Which confused the hell out of me for a couple of seconds :P 06:02:24 Since I have httpd running. 06:02:26 TLUL: no asking for ROMs/crack data on Freenode, it's against the rules 06:02:28 TLUL: Well, you should still have the infohash, making the torrent still good. 06:02:56 There was some restrictions though: Item names and attack names are all no more than five letters long. Pokemon species names don't exist, they are three-digits numbers. Nicknames are up to two letters long. 06:03:07 Technically I'm not asking for it, I'm asking if someone happens to have the hash of it. 06:03:10 Two loopholes there. 06:03:22 TLUL: The torrent file possesses the hash. 06:03:28 Bamf. 06:06:06 In my opinion there are many broken things in the Pokemon games and a "Limited" mode could be added to correct them. 06:06:20 pikhq: well, I have a completely legit quint-flawless Arceus 06:06:24 admittedly, with an imperfect nature 06:06:38 zzo38: they might have fixed them in later games 06:06:41 ais523: "Mew". 06:06:51 pikhq: Arceus is also an event mon, if you hadn't noticed 06:07:01 I actually went and attended the event 06:07:06 Oh, right, so it is. 06:07:09 because it happened to be nearby 06:07:09 Fuck event mons. 06:07:10 ais523: I have played some games and heard of some of them and the newer games tend to be even more broken. 06:08:23 well, playing them multiplayer, the brokenness can be used on both sides 06:08:33 although some things are banned because they make the game unbalanced, unfun, or too luck-dependent 06:08:40 like putting more than one enemy Pokémon to sleep at a time 06:08:53 ais523: Well, yes. I am refering to single-player mode. 06:08:53 and causing a tie is a loss 06:09:01 that one's important 06:09:14 What? 06:09:20 But that's a strategic move! 06:09:26 exactly why 06:09:30 Also, how do you cause a tie? Make everything die at once? 06:09:36 yep 06:09:46 coppro: actually, depending on the tournament, it depends on /how/ you cause a tie 06:09:53 ais523: oh? 06:09:56 in tPCI's official tournaments, even dying to the recoil of your own attack is enough to make you lose 06:10:17 oh, hadn't thought of that 06:10:18 One thing that can be done is selecting SET battle mode. In SHIFT battle mode, the player gets an advantage to shift for free while the opponent gets no such advantage. I always played in SET mode. But the game is still very broken. 06:10:24 in most tournaments run by other people, dying to the recoil of your own attack, if you KO the enemy's last Pokémon in the process, is a win unless it was selfdestruct/explosion 06:10:39 zzo38: set mode's the mode used for all tournaments 06:10:43 I guess that covers the Destiny Bond case 06:11:01 what about Perish Song? 06:11:25 I'm not sure there's a ruling for the non-official tournaments, as it comes up so rarely 06:11:35 but in tPCI's tournaments, it's a loss for whoever used perish song 06:11:46 in any case, Pokemon is losing interest to me 06:11:55 ais523: SET mode is automatically selected in multiplayer mode I think. In multiplayer mode, maybe it should have also draft mode and betting and doubling cube and riichi and dora and low PP starting, and money for usable items and so on. 06:11:56 it's gettin gsilly 06:12:14 zzo38: money for usable items would be unbalanced, it's too easy to grind 06:12:29 5th gen has an optional mode making you gain points that can be spent on items every turn 06:12:40 starting at 0 06:12:55 and of course, from 2nd gen onwards every Pokémon gets to bring a hold item into battle 06:13:00 ais523: No, you have a certain amount of money at the beginning of the tournament, and from that you must select all items and all pokemons too. You start with no pokemons at the beginning of the tournament either. 06:13:07 (Sort of like a Magic: the Gathering booster draft) 06:13:08 ah 06:13:12 I think there have been tournaments a bit like that 06:13:21 but good teambuilding is normally considered more interesting 06:13:37 I'd play you at a diamond/pearl/platinum game online, if you had a team to build 06:13:38 -!- FireFly has joined. 06:14:22 (normally, the way it's done is to agree on a list of banned Pokémon before the battle; there are some common banlists depending on what sort of power of play you want) 06:14:52 ais523: That is because it is Constructed. I want to play Limited. 06:14:53 The online gaming still interests me a little 06:15:03 but I find that it's still getting too ridiculous 06:15:16 and I have better things to do 06:15:19 well, the gaming itself is generally only a small subset of what's legal 06:15:21 (like M:tG) 06:15:26 because the rest is just underpowered/useless 06:15:34 that's why Limited is fun 06:15:36 (I used to play M:tG, but gave up when they released a couple of bad sets in a row) 06:15:46 ais523: Mercadian Masques? 06:15:52 nah, much later 06:15:57 Kamigawa? 06:15:58 I also want to play with low starting PP. And riichi. 06:16:01 zzo38: there's a Limited mode in Pokémon Platinum 06:16:04 coppro: Lorwyn 06:16:14 ais523: oh, ha and blargh 06:16:21 you get to draft a team of 3 from a random 6 you start off with 06:16:27 ais523: Do you mean Battle Factory? That was also in Emerald. 06:16:34 then after the battle, if you win, you get to swap one of yours with one of the opponent's 06:16:35 coppro: yes 06:16:41 it's slightly different between the two, though 06:16:56 and not really as fun as constructed because it's far too luck-based 06:16:57 true 06:17:07 if you get a bad initial selection, there's not a lot you can do aobut it 06:17:09 *about 06:17:18 drafting solves that problem neatly 06:17:25 and is for that reason much nicer than Sealed 06:17:37 not necessarily 06:17:51 the best Pokémon in the selection will be drafted first, and some will be much better than others 06:17:59 there is a little bit of luck in draft, I guess 06:18:08 but skill is a far greater component 06:18:12 e.g. if you get an SD Garchomp or whatever, the opponent is very unlikely to have a counter in their small team 06:18:28 drafting works well in M:tG, but only because the packs are so large and because a card can't win singlehandedly 06:18:36 it wouldn't work in Pokémon 06:19:14 You'd need to establish conditions on movesets too - you could certainly do it if the 'packs' were built from a number of preconstructed pokemon, for instance 06:19:36 I have other rules too for a multiplayer similar to Pokemon: That the gender is based on the total of the IVs (or the EVs, if you want) whether it is even or odd, and you are allowed to deduct one in order to increase the bet. 06:19:44 that's how it's done in battle factory 06:20:00 zzo38: gender doesn't work like that since 3rd gen 06:20:16 but it /is/ related to the IVs and nature, at least for legendaries with a random gender 06:20:22 which is, umm, Heatran and nothing else 06:20:58 ais523: I mean to make it like that during the tournament. You can switch the gender between odd/even by betting an IV. And this changes many other things too, please. 06:21:10 gender is almost irrelevant in competitive Pokémon 06:21:18 because Attract is incredibly weak as a move, as is Captivate 06:21:19 also zzo38, what is Riichi? 06:21:21 and it doesn't affect anything else 06:21:28 (To be specific, three things at once: bet, IV, and gender.) 06:21:30 -!- oerjan has quit (Quit: leaving). 06:22:07 coppro: Riichi is a rule in mahjong that you can lock your hand (it can no longer be adjusted) and bet 1000 additional points (given to the winner), if you manage to win, you get 1 han yaku and ura dora. 06:22:34 zzo38: oh, thanks for clearing that up then 06:22:45 ais523: it /could/ be relevant in a very low-grade battle with Cute Charm 06:23:23 coppro: except that everything that gets Cute Charm gets something better as well 06:23:32 e.g. the Cleffa line would be insane to not use Magic Guard 06:23:44 ais523: oh, everything? never mind then 06:24:01 ais523: Again, it would be in Limited (draft) mode, as well as low starting PP. And you could adjust many other things in order to make everything to work together. 06:24:25 err, except Wigglytuff, who has no other optoin 06:24:42 Lopunny's only used for its alternate ability, likewise Delcatty 06:24:53 and Magic Guard is amazingly better on Clefable 06:25:12 zzo38: actually, you seem to assume PP is unimportant at the full level 06:25:13 it isn't 06:25:24 I've won tens of games via PP stalling 06:25:45 reducing starting PP would basically make stall an unusable tactic 06:25:49 ais523: I don't assume PP is unimportant. 06:26:13 -!- hagb4rd has joined. 06:26:44 And there is also items you get also with tournament money and drafting, such as ether. 06:26:51 zzo38: wanting PP reduction sounds like you're assuming it's too high 06:26:53 And weather. 06:27:11 and weather is overpowered enough just on a move or autoinduce ability 06:27:16 putting it on an item would be completely broken 06:27:21 ais523: It is a bit too high because often you use the same move all the time. 06:27:41 zzo38: only sweepers do that, and only very rarely 06:27:49 in fact, they often switch out just to change move, because of Choice items 06:28:20 you're probably too used to playing against an AI that doesn't switch all the time 06:29:10 I am talking about changing so many things that it then becomes almost an entirely different game. 06:29:21 ais523: why would you want to use Klutz? 06:29:48 to protect yourself from enemies swapping items onto you 06:29:54 and to let you swap detrimental items onto them 06:30:02 ah 06:30:15 protection from detrimental items is important enough to make me seriously consider running Mail on a Pokémon competitively 06:30:31 although Leftovers are likely better 06:34:11 By adding riichi, limited draft, low PP, many new move sets, dora indicators, rule changes per different tournaments, betting, odd/even gender with IV, item use, redouble, en passan, hit wicket, complex numbers... 06:35:09 logarithms 06:35:13 definitely logarithms 06:39:38 And yakitori penalties, long match with many battles, each with a few rule changes applied, declare the innings closed, hex grid, cards to be used to select rules before each battle, promotion, river, imbalance betting... 06:41:20 Do you know how these things are going to work in this game? 06:41:36 most of them, no 06:41:45 ais523: Can you guess? 06:41:58 zzo38: it seems like you're planning to make it into a tactical game, though, where the Pokémon have a position on a grid 06:42:11 so it'd be more like Pokémon Mystery Dungeon than the main series of games 06:43:35 But everything in these messages, I have listed some things, what things would you understand most and what suggestion, changes, question, confusing, go crazy, play game? 06:44:15 I'd say it wouldn't really be Pokémon any more 06:44:33 ais523: Also, it is 2 or 3 players game. Each game itself (no prior construction or things are permitted, like in Magic: the Gathering limited booster drafts). 06:44:58 ais523: Yes it isn't Pokemon game any more, it is new game with some similarities but almost completely different. 06:46:13 I suspect Pokémon would be more popular 06:46:37 And it is strictly multiplayer. No single player mode is permitted. 06:48:07 You need to add dora indicators, like mahjong has, and Washizu mahjong, and betting like you can do in poker, even, and so on. 06:50:14 Most people don't like Test cricket because it is not exciting. Pachinko with digital display is trying to make more exciting, but actually what it does is it gets in the way of the ball! 06:50:27 -!- TLUL_ has joined. 06:50:28 Do you agree with me about this? 06:53:22 -!- TLUL has quit (Ping timeout: 240 seconds). 06:54:19 What is your opinion about "Most people don't like Test cricket because it is not exciting. Pachinko with digital display is trying to make more exciting, but actually what it does is it gets in the way of the ball!"? 06:56:39 zzo38: I think that sort of sport is better watched on TV, in a stadium you're too far from the action to really see what's going on 06:59:19 ais523: Whether it is on TV or not, I think Test cricket has better strategy (as well as simpler rules) but most people don't like it because it is not exciting. Other people like the game with the crowd screaming 100x loud and with fire, played in such a short time that you can't do anything important. 06:59:21 ais523: That's actually true of a lot of spectator sports. 06:59:33 ais523: I think it telling that spectator sports only really took off with TV. 07:00:43 zzo38: hątinnko is only exciting if you think funneling your cash directly into the yakusà is exciting. 07:02:21 pikhq: I prefer with my own pachinko game, no digital display getting in the way of the ball (only the pins and holes affect the game), and nudging permitted. 07:02:41 -!- Transcix has joined. 07:04:41 -!- Transcix has quit (Client Quit). 07:05:31 pikhq: Regardless of TV or not! Most people like to watch loud game with not enough time for important strategy, and with exciting to them, and they don't like to watch Test cricket. 07:06:02 zzo38: I note that chess is not a spectator sport. 07:06:09 :) 07:06:38 pikhq: Well, yes. Mostly, anyways. Some people do watch a chess match. But it is irrelevant. 07:07:43 Yeah, but it's not exactly a big thing. 07:10:07 But I note that I am not talking about chess. I am talking about Test cricket. It can be watched by spectators in the stadium or on television (I don't actually know how often you actually see it on television). 07:10:38 My point is just that chess is another strategic game that people don't usually watch. 07:11:11 pikhq: OK. Now I understand your point. 07:14:54 But, still! Even if it is the cricket game, there is different kind. Test cricket is the longest kind, and simplest kind, and the strategic kind. 07:15:27 Many people like to watch the short game with loud crowd talking and lots of fire and complicated rules but no strategy. 07:16:52 Have you ever watched a cricket game? I have never, but I still prefer Test cricket. 07:19:27 However, with chess it is different. There are many chess variants, some simple and some complicated, taking various amount of time to play, some with different board and equipment, but still just as good and strategic game. 07:21:29 -!- zzo38 has quit (Remote host closed the connection). 07:24:12 -!- hagb4rd has quit (Quit: hagb4rd). 07:43:45 -!- TLUL_ has changed nick to TLUL. 07:44:15 -!- zzo38 has joined. 07:45:11 -!- TLUL has quit (Quit: *disappears in a puff of orange smoke*). 07:55:02 Did you know in Pokemon Pearl you can pass your turn in a trainer battle with a pokeball? And you will not lose the pokeball by doing so. 07:55:16 ... Huh. 07:55:39 So, you can't ever suffer from zugzwang in Pokémon Pearl. 07:55:59 (note: I'm not sure that can come up, anyways) 07:56:12 pikhq: Yes. In trainer battles in single-player mode, you cannot be zugzwang. 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:01:24 -!- fxkr has quit (Changing host). 08:01:24 -!- fxkr has joined. 08:02:28 Just Pearl? 08:09:05 pikhq: In Red, you will lose a pokeball from doing that, I think. In other games, I don't know. 08:09:41 Of course, in Red you can have 2^8-1 pokeballs at will. 08:09:57 Except in combat. 08:12:38 pikhq: zugzwang definitely exists at least in multiplayer 08:12:45 final Pokémon PP stall is the classic example 08:12:54 ais523: Yeah, but the AI is retarded. 08:14:40 -!- atrapado has joined. 08:14:59 PP stalls can happen in single-player too, I suppose, but only by mistake 08:17:13 ais523: You can't use pokeballs in multiplayer! 08:17:51 It is usable only in single-player mode, although their effect varies depending on wild or trainer. 08:25:11 -!- ais523 has quit (Remote host closed the connection). 08:29:34 Which is better, Magic Set Editor or TeXnicard? Any comment about the license at the top of this file? http://sprunge.us/DadR 08:31:00 Do you have any suggestions for the Patterns and/or for the English? 08:37:29 Or what specials could be supported? 08:40:44 .cards -> .tex,.mf; .mf -> .tfm,.*gf; .tex,.tfm -> .dvi; .dvi,.*gf -> .miff and ImageMagick command-line sequences; .miff -> .png 08:43:05 -!- zzo38 has quit (Remote host closed the connection). 10:13:53 Hit another site that doesn't work due to bad IPv6 routing... 10:47:26 3.02 /8s in APNIC pool (about 1 /8 to go...) 10:50:02 10 986 240 addresses this month... 12:51:29 -!- ineiros_ has joined. 12:56:07 -!- Phantom_Hoover has joined. 13:00:22 -!- atrapado has quit (Quit: Abandonando). 13:01:08 -!- tswett has quit (Ping timeout: 264 seconds). 13:03:18 -!- ineiros has quit (Read error: Connection reset by peer). 13:06:45 That's not a very good sign. 13:07:33 indeed 13:08:33 -!- ineiros has joined. 13:11:02 Phantom_Hoover, joined and left? 13:11:13 MC is crashing for some reason. 13:11:21 Phantom_Hoover, what error? 13:11:40 I can't remember. Probably NullPointerException. 13:13:03 It seems to be mcmap. 13:13:16 Phantom_Hoover, try again without it? 13:13:23 or was that what you did? 13:14:22 Conclusion: it's not mcmap. 13:14:55 Phantom_Hoover, still fails? 13:15:09 Phantom_Hoover, were you near 4000,4000 ? 13:15:23 Phantom_Hoover, I had the same issue there yesterday evening, had to get ineiros to remove my player files 13:15:43 Ah. 13:15:44 Phantom_Hoover, I was crafting TNT up there, placed it back in inventory. then crash 13:15:59 Phantom_Hoover, maybe the map around there contains some invalid data or something 13:15:59 I'm assuming that my inventory is gone, then? 13:16:07 Phantom_Hoover, it will be when you get reset yes 13:16:12 Phantom_Hoover, not much to do about that 13:16:15 FFF 13:16:27 Phantom_Hoover, which is why you offload to chests often 13:16:27 Vorpal, can you do something for me? 13:16:40 Phantom_Hoover, I'm not going up to that place if that is what you want 13:16:48 Check the chests in the ROU and Mt. Hoover; if there's 20-odd gunpowder there, it's OK. 13:17:01 Phantom_Hoover, can do ROU, mt. hoover is too far 13:17:24 Vorpal, this crash is due to you. 13:17:29 You owe me one. 13:19:11 Phantom_Hoover, not due to me. Due to notch failing at coding 13:19:23 Phantom_Hoover, no gunpowder up in ROU 13:19:28 Hmm. 13:19:54 I'm pretty sure I offloaded at Mt. Hoover anyway. 13:19:58 The string, though... 13:21:24 Phantom_Hoover, presumably you could patch mcmap to filter the "offending" message 13:21:53 What "offending" message? 13:22:03 The ineiros-quit had more to do with our shell-server doing "Broadcast message from root (pts/93) (Fri Dec 17 14:45:44 2010): Security fixes. The system is going DOWN for reboot in 15 minutes!" than anything else. 13:24:32 Phantom_Hoover, don't know, probably the last one before it crashes? 13:24:59 Phantom_Hoover, if it was caused by buggy crafting then presumably something related an item 13:25:23 Phantom_Hoover, or you could inject a message that sends /spawn at the start? 13:25:39 Phantom_Hoover, hopefully you move before client disconnects 13:25:58 mcmap still connects, FWIW. 13:26:11 Phantom_Hoover, yes and? 13:26:12 But how to inject the signal there is beyond me. 13:26:20 Phantom_Hoover, *using mcmap*! 13:26:47 Phantom_Hoover, I'm sure fizzie can tell you approx where it is handled 13:26:56 fizzie, help! 13:27:10 presumably it has two message loops. One that handles server->client and one that handles client->server 13:27:32 It has one bit of code for both, but there's a variable you can test for the direction. 13:28:06 main.c proxy_thread is the main message-forward loop, or just in main if you want to inject some immediately-after-connection initial stuff. 13:28:20 (Though it might be better to do that only after the handshake messages have been passed.) 13:28:56 fizzie, hm. 13:29:23 what are you 13:29:28 doing? 13:29:46 fizzie, would you outline how I'd patch it to make it send "/spawn" once the connection is made? 13:30:24 -!- hagb4rd has joined. 13:31:36 Phantom_Hoover: Well... in main.c:proxy_thread, add in the switch a case PACKET_HANDSHAKE: if (cfg->client_to_server) { /* code to write a "/spawn" command */ }. 13:32:16 As for constructing a packet, there aren't any helper functions yet for that, since I don't make from scratch any packets yet. 13:33:43 But basically the /* code */ part would be: unsigned char bytes[] = { /* bytes for the proper packet */ }; packet_t p = { .id = PACKET_CHAT; .size = sizeof bytes; .bytes = bytes }; packet_write(sto, &p); 13:33:58 Uh, commas instead of semicolons in the initializer list. 13:35:01 And for the /* bytes */ part, maybe { PACKET_CHAT, 0x00, 0x06, '/', 's', 'p', 'a', 'w', 'n' } would do. 13:36:02 That's assuming both client and server send a PACKET_HANDSHAKE; I'm not sure if that's actually the case. I think they do. 13:36:14 If not, use PACKET_LOGIN for the triggering instead. 13:41:58 what the hell? 13:42:06 MC proxy? 13:42:35 It's an automap. 13:42:55 Being abused for something else here. 13:44:02 -!- hagb4rd has quit (Ping timeout: 240 seconds). 13:46:11 fizzie, does the bytes array include the package id? 13:46:18 Yes. 13:46:30 Actually you don't need to include it in packet_t for writing. 13:47:03 Since packet_write just writes .size bytes out of the .bytes array. 13:47:14 fizzie, how many bytes is the packet id? 13:47:17 One. 13:48:22 -!- hagb4rd has joined. 13:50:50 fizzie, OK, copying in that code now. 13:53:18 What the what. 13:54:34 When the client sends a 0x0d packet (position+look), the fields are (in order) {X, Y, stance, Z, yaw, pitch, ground}; when the server sends that (with the same ID), the fields are {X, stance, Y, Z, yaw, pitch, ground}. 13:54:46 So the Y/stance fields are swapped, even though the packet ID is identical. 13:55:20 OK, testing it... 13:55:50 "Disconnected by server: protocol error." 13:55:58 Hheh. Hmm. 13:56:13 Use PACKET_LOGIN instead of PACKET_HANDSHAKE? 13:56:36 You can try, but then it'd be even earlier in the session. 13:56:52 Still a protocol error... 13:56:55 Of course my chat packet might be malformed, but I don't think it should. 13:56:59 Perhaps I made a typo somewhere... 13:57:44 Well, um. You can try using PACKET_SPAWN instead of PACKET_HANDSHAKE. 13:57:55 That's the "set spawn position" packet, you should receive one of those at the start of the session. 13:58:44 PACKET_SPAWN undeclared. 13:58:54 I may use a different name, a sec. 13:59:03 PACKET_SPAWN_POSITION, sorry. 13:59:51 Trying that... 14:00:25 Phantom_Hoover, saw you join at least 14:00:32 It just crashed again. 14:00:43 Vorpal, say something else? 14:00:55 Phantom_Hoover, what if you reconnects, maybe it updated your position just before it crashed 14:01:09 Vorpal, I can still see what you say, BtW. 14:01:33 Another thing you can try (I'm not too hopeful) is to filter out all unnecessary packet types, in the hope that the crash is caused by one of those. 14:01:54 Phantom_Hoover, did it work now? 14:02:01 No. 14:02:04 hm 14:02:14 I've set it to say "aspawn", so check if that gets through. 14:02:21 * Vorpal waits 14:02:42 Phantom_Hoover, nop. 14:02:49 Phantom_Hoover, sure you sent it in the right direction? 14:03:02 Didn't even get the MoTD this time. 14:03:13 Phantom_Hoover, to the server I mean 14:03:16 if (cfg->client_to_server) { ... } should make it send it to the server. 14:03:46 hm 14:03:55 Phantom_Hoover, could try sending as soon as you get motd from server 14:04:19 I think something else was wrong that time. 14:04:42 Anything get through? 14:05:07 If not, the message-sending code is the problem. 14:05:16 Phantom_Hoover, nothing through indeed 14:05:40 You could add a fprintf(stderr, "I SPOKE\n"); in there to make sure it gets executed. 14:05:48 OTOH, the error has fixed itself so I live. 14:07:27 if it was some broken item on the ground I assume it timed out now 14:07:43 (wouldn't do that unless the chunk is loaded) 14:08:12 If it was indeed item-related, you could have fixed it by filtering out all the entity-related packets in the server→client stream, those are mostly "useless" in the sense that you should be able to play normally without those. 14:10:21 -!- STALKER has joined. 14:10:32 Eh, looked at the map; it used to be mostly a neat + shape (with some irregularities), but now it's a weird misshapen critter shape. 14:14:21 -!- STALKER has quit (Ping timeout: 240 seconds). 14:33:15 Phantom_Hoover, so which do you choose? 14:33:46 "He chose... poorly." 14:35:25 (I may have "jumped the gun" there a bit.) 14:44:09 fizzie, he was griefing yesterday. I just hope it didn't mess it up again, a bit annoying to go check at 4000,4000... 14:49:28 fizzie, the lines in mcmap thing happens when you are far enough away from spawn 14:49:37 fizzie, say, 1000 or 2000 14:49:41 for both coords 15:09:15 -!- pikhq_ has joined. 15:12:24 -!- pikhq has quit (Ping timeout: 272 seconds). 15:19:17 fizzie: matlab has a built-in perceptron algorithm, yes? 15:24:33 Hah... Run into some stuff mentioning IPv6 depletion modeling... :-) 15:25:05 Model timescale: 50-100 years (and those models might not even run into full exhaustion...) 15:32:12 -!- sftp has joined. 15:34:13 fizzie, incidentally, what Vorpal considers "grieving" is "putting some lava right at the bottom of a hole to bedrock to make it more interesting, then removing the water added to get rid of said lava". 15:35:38 fizzie, a hole I made for jumping into from the top of the marker. 15:35:46 fizzie, not fun to end up burning 15:35:52 it's just annoying 15:40:33 quintopia: The Neural Network toolbox has. I'm not sure how standard a component that is. 15:40:50 ah 15:41:07 i think it's one of the toolboxes you can install with the a version 15:41:45 -!- scirath has joined. 15:42:32 -!- scirath has left (?). 15:42:49 Octave-Forge has a clone, but (at least in the versions I've tried) it's a bit unfinished and broken. (And of course only works in Octave.) 15:43:31 Doing MATLAB/Octave polyglot code is not very much fun, or so I hear. 15:44:13 can't see why it would be 15:45:01 Well, they're meant to be compatible up to a degree, but it's full of quirks. 15:47:48 One of my favourite MATLAB quirks: logspace(a, b, n) returns a vector of n points from 10^a to 10^b (already a bit strange with the exponentiation), except that if b equals pi (either the closest possible double or float), then it's from 10^a to pi. 15:48:10 (a being equal to pi doesn't do anything special, of course.) 15:48:35 that...why would they do that? 15:48:57 (Er, the points are also logarithmically spaced, but that's not strange.) 15:49:29 >> type logspace 15:49:31 ... 15:49:33 if d2 == pi || d2 == single(pi) d2 = log10(d2); 15:49:33 end 15:49:45 yeah uh 15:49:47 Whoops, a newline disappeared in the paste. 15:49:50 still makes no sense 15:50:26 Yes, but they've kept that for the past ten years or so for backwards compatibility. 15:56:49 Another thing: in normal expression, "a && b" is a short-circuiting overall logical 'and' while "a & b" is a non-short-circuiting elementwise logical 'and'... except when used in the conditional of an "if" statement, in which & works as &&. 15:58:04 >> 0 && fprintf('x\n'); 15:58:04 >> 0 & fprintf('x\n'); 15:58:04 x 15:58:04 >> if 0 && fprintf('x\n'); 0; end; 15:58:04 >> if 0 & fprintf('x\n'); 0; end; 15:58:07 >> 15:58:31 (The whole "fprintf can be called without a fid too" thing is also a bit bizarre.) 15:59:52 The magic in & and if stops if it's "deeper" in the expression: 15:59:54 >> if ~(0 & fprintf('x\n')); 0; end; 15:59:54 x 16:03:28 -!- KingOfKarlsruhe has joined. 16:07:33 -!- elliott has joined. 16:09:44 21:55:38 proof is that I beat the final, bonus boss of Pokémon HeartGold with a team of level 5, unevolved Pokémon 16:09:47 :D 16:09:55 Proof of what? 16:10:19 Phantom_Hoover: Proof that evilution is a LIE. 16:11:10 Phantom_Hoover: that pokemon AI is bad 16:11:11 22:02:26 TLUL: no asking for ROMs/crack data on Freenode, it's against the rules 16:11:21 ais523: um that is not a rule we follow very strictly here :D 16:14:41 -!- MigoMipo has joined. 16:14:52 22:14:53 The online gaming still interests me a little 16:14:53 22:15:03 but I find that it's still getting too ridiculous 16:15:09 coppro: i'm going to assume that you just keep saying it's ridiculous and silly throughout the entire log without elaborating on it 16:15:53 elliott, what's ridiculous in the world of coppro? 16:16:07 Phantom_Hoover: pokemon, or rather it's "getting" silly and ridiculous 16:16:33 They sold out when it got popular. 16:17:14 Another thing: in normal expression, "a && b" is a short-circuiting overall logical 'and' while "a & b" is a non-short-circuiting elementwise logical 'and'... except when used in the conditional of an "if" statement, in which & works as &&. <-- apart from the "except ..." bit that matches C 16:17:18 kind of 16:17:20 Phantom_Hoover: "sold out"? has pokemon ever /not/ been popular? has it ever /not/ been hugely commercial? 16:17:25 (& is bitwise as well there) 16:17:45 elliott, Jesus, do I have to add ":P" to every blatantly sarcastic comment I make? 16:17:45 Vorpal: so I've fried my GPU! (nearly) 16:17:56 elliott, why 16:18:00 elliott, and how 16:18:04 Phantom_Hoover: #esoteric tradition (at least if you ask ais523) to annoy people by ignoring obvious sarcasm 16:18:37 Oh, that thing. 16:18:37 Vorpal: Far rendering distance + fancy rendering + Better Light mod + Better Grass mod (ok so that doesn't really use any processing power) + 128x128 texture pack. 16:18:49 Vorpal: (1) SO PRETTY (2) SO SLOWWWWWWWWWWWWWWWWWW 16:18:57 elliott, but did it overheat? 16:19:00 The "except" bit is the only strange bit. 16:19:07 Vorpal: No, but it doesn't like me any more. 16:19:19 elliott, what? 16:19:28 fizzie: Can I push feature additions to mcmap, too? You said bugfixes were okay. 16:19:33 elliott, are you getting the GPU equiv. of a sad map? 16:19:34 Vorpal: We are no longer friends. 16:19:35 err 16:19:37 sad mac* 16:19:40 If they make sense. 16:19:46 elliott, in what way? 16:19:48 Vorpal: The GPU equivalent of a "Hey look, you can't turn around any more!" 16:19:56 Or you can, but IT'LL TAKE FIVE MINUTES 16:20:12 elliott, right, but if you go back to normal mc it will presumably work again? 16:20:16 Vorpal: By the way: Better Light mod: *highly* recommended. 16:20:19 Vorpal: It just looks better. 16:20:27 (Does lighting smarter, and smooths it out.) 16:20:34 And yes, it will, but I'm blinded by the pretty. 16:20:44 elliott, so not using your 1x1 pack? 16:20:57 -!- oerjan has joined. 16:21:04 Vorpal: I decided to make Minecraft as HD as I could to kill my GPU. 16:21:06 This is the result :P 16:21:14 Vorpal: But I recommend Better Light anyway, no matter what the texture pack. It's really good. 16:21:31 Everything just looks so smoother. 16:21:39 Especially where blocks meet the ground. 16:22:10 elliott, does it not require patching mc iirc 16:22:22 Vorpal: Yes, but it has its own patcher program. And it saves a backup. 16:22:29 So you just run a .jar, tick Better Light, and click Patch. :p 16:22:44 elliott, guess what! 16:22:51 Re feature additions, if you're unsure you can always just push an "elliott" branch, then I can merge/reimplement them if they don't conform to my Vision(tm). 16:22:54 MrMPatcher.jar fails for me! 16:23:07 Phantom_Hoover: Maybe it doesn't like you. 16:23:16 fizzie: Oh no, I'm never unsure. 16:23:23 fizzie: I'm just going to add things like scaling the map :P 16:23:43 fizzie: And maybe some command to print out coordinates of all blocks of the given values within a certain radius. 16:24:07 elliott, urgh. 16:24:12 Phantom_Hoover: What? 16:24:17 It's complaining about some Swing thing. 16:24:29 What is your opinion about "Most people don't like Test cricket because it is not exciting. Pachinko with digital display is trying to make more exciting, but actually what it does is it gets in the way of the ball!"? 16:24:39 Phantom_Hoover: I really don't want to try and figure out your Java install. :p 16:24:45 Well, I may still end up reimplementing them if they don't conform to what I think is nice. But public is public, of course. 16:24:53 fizzie: You know, the clone URLs look awfully "Read-Only" to me. 16:25:09 fizzie, a nice feature for the map would be ground altitude mode. I'm looking for any mountain near where I am (it is fairly flat within the area I can see in MC itself) 16:25:12 I wonder why fizzie stores all his program options in a struct. 16:25:23 Vorpal: Write it and you get to use it. :p 16:25:26 fizzie, not urgent in any way, but would be nice 16:25:39 My java is STILL in the iron grip of the FSF. 16:25:42 it's a shame david morgan-mar isn't a part of the community, he's the only other big cricket fan esolanger i know... 16:25:48 elliott, yeah, I didn't demand the feature, just thought it might be a nice idea 16:25:50 oerjan: only /other/? 16:25:58 than zzo38... 16:26:04 oh 16:26:10 oerjan, I'm rather surprised that he's never been seen here. 16:26:21 I don't really know about github, it's supposed to be public. Possibly you need to be logged in though. 16:26:27 fizzie: I am. 16:26:39 I'll take a look after dinner. 16:26:40 fizzie: I don't think you can do an "outright public" thing though. 16:26:53 You could just add me as a committer, and everyone else too. : 16:26:53 :p 16:26:59 Maybe. I'll check. 16:27:10 Phantom_Hoover: from his iwc forum i understand that he is rather busy with his other projects, his job, and his wife 16:27:15 A topo-map is something I was going to do myself. 16:27:16 The Arc anarki guys had it done but IIRC that was a special GitHub-done thing. 16:27:30 There's already a tracked heightmap for surface-map. 16:27:58 fizzie, yes indeed. Btw what was the enum thingy with packet sizes 16:28:09 fizzie, I didn't look into detail at it, but it looked rather confusing 16:28:15 The sizes aren't fixed. 16:28:21 But there's a list of formats. 16:28:29 For decoding them. 16:28:42 fizzie, yes but why did you make an enum per packet type (as far as I could tell) 16:28:50 It's just a list of field types there. 16:29:02 It's an array per packet type. 16:29:09 (An array of enum values.) 16:29:11 oh right 16:29:16 fizzie, you don't typedef your stuff 16:29:17 right 16:30:03 I don't tend to typedef. Can't recall why I did for packet_t; maybe I was going to keep that opaque. 16:30:11 fizzie: Out of curiosity, why /do/ you have opt be a struct? 16:30:40 Just as a sort of a namespace-prefix-thing. 16:30:48 Away for now; food. 16:30:52 fizzie: Okay. Why are they gints and gchars rather than ints and chars? 16:30:53 Wait. 16:30:55 Don't answer that. 16:30:58 The answer is probably horribly glib. 16:31:07 oerjan, swat!¬ 16:31:14 s/¬// 16:33:19 elliott, gio! 16:33:26 elliott, he uses async gio stuff 16:33:35 I'm not sure why 16:33:40 swat! not, ok 16:33:41 unless it is threaded 16:33:44 Vorpal: Yes, I can tell that it's utterly awful code made by someone with a deranged, pitiful GNU mind. 16:33:47 But I'm sure I can hack it. :p 16:33:59 Maybe I'll fork it and remove all traces of things starting with g. 16:35:19 It's not "async gio stuff", it's normally blocking gio stuff. 16:35:54 fizzie, I saw the word async somewhere! 16:36:02 fizzie: It's still gio. 16:36:04 Why god why. 16:36:07 And remember the "no bitching" thing? 16:36:18 fizzie, I did not bitch 16:36:25 fizzie, I just noticed the fact 16:36:59 fizzie: Well, Vorpal was already flagrantly violating it, so why not. :p 16:37:10 elliott, how so? 16:37:45 fizzie, discovered new strangeness with MC water physics 16:37:59 fizzie, built a rig near the snow/lava thingy near spawn 16:38:28 (it is a bit hard to explain without testing it) 16:40:25 -!- pikhq_ has quit (*.net *.split). 16:40:25 -!- ineiros has quit (*.net *.split). 16:40:25 -!- jix has quit (*.net *.split). 16:40:25 -!- jcp has quit (*.net *.split). 16:42:14 -!- pikhq_ has joined. 16:42:14 -!- ineiros has joined. 16:42:14 -!- jix has joined. 16:42:14 -!- jcp has joined. 16:45:19 -!- pikhq_ has quit (Excess Flood). 16:45:36 -!- pikhq has joined. 16:47:14 oerjan: 23:16:52 Have you ever watched a cricket game? I have never, but I still prefer Test cricket. 16:47:16 oerjan: told you 16:48:06 very zzo 16:50:50 oerjan: zzo is very zzo? you don't say! 16:51:01 which leads to a philosophical question: does this information reduce the number of cricket fan esolangers by one or not 16:51:46 *of known 16:53:35 the issue being, while most people wouldn't be considered fans of games they don't watch, most people wouldn't prefer a game they don't watch either 16:55:12 hm or what is the probability that zzo38 has _played_ test cricket without watching it... 17:11:56 Phantom_Hoover: http://imgur.com/7U4xZ.png 17:12:11 -!- spikku has joined. 17:12:35 elliott, Christ, that's unsettling. 17:13:04 Phantom_Hoover: You even have realistic-ish hair, moulded into a CUBE. 17:13:18 fizzie, SIGABRT 17:13:28 (strange) 17:14:08 Does SDL_BlitSurface have any kind of scaling parameter? 17:16:17 fizzie, strange, but it crashed for all of us 17:16:25 It was your nagging. 17:17:12 Vorpal: I abort() when things go wrong. That should be replaced with a __FILE__ + __LINE__ -enabled die() macro. 17:17:33 Or proper error handling, but that's for "queers". 17:17:44 And fags. 17:18:02 And cigars. 17:18:04 fizzie: I curse you -- in a non-bitching way -- for using SDL_BlitSurface, which does not support scaling. 17:18:15 Let's see about this SDL scaling nonsense. 17:18:21 SDL_Surface* SDL_ScaleSurface(SDL_Surface* Surface, Uint16 Width, Uint16 Height); 17:18:25 OK, that doesn't seem too bad. 17:18:42 That's what you, you know, use, for drawing, in SDL. 17:18:47 fizzie, hm also the line thing seems related to underground lava 17:18:55 fizzie: Will you kill me if -s chooses how many blocks to show, not the pixelles? 17:18:58 fizzie, when you get below-surface stuff first 17:19:02 So -s 10x10 -x 5 is actually 50x50. 17:19:15 fizzie, then some lava, then that spreads, and the spreading lines are left after it loads it properly 17:19:23 fizzie, at least it looks like that 17:19:45 elliott: I don't have an opinion on that, either way is just fine. I'd think it'd still be easier just to have -s define the SetVideoMode numbers, though. 17:20:02 fizzie: Totally! Except for the fact that then the blitting becomes more complicated. 17:20:54 Well, I would hope the blitting will handle non-integral window sizes for the resizable-window mode anyway. (If only by leaving partial blocks unblitted.) 17:21:10 Non-integral in this context == non-multiple-of-block-size. 17:21:20 fizzie: I believe that, in this case, it would end up stretching it. 17:21:49 fizzie: Is accessing opt. outside of main.c verboten? 17:22:53 fizzie, just aborted again. 17:22:54 If you're going to call the SDL tutorial's SDL_ScaleSurface in map_draw, it might be a performance issue; that thing is slow as anything. 17:22:58 (And also C++.) 17:23:21 fizzie: Oh, they actually wrote it theirself. 17:23:24 Vorpal: It could be spreading-related; if the server sends spreading lava with the multisetblock thing, I might easily be decoding that wrong. 17:23:26 fizzie: Grmbl. Okay. New idea. 17:23:35 fizzie, ah 17:23:36 fizzie: Is it okay if your map structure sort of kind of doesn't have a 1:1 mapping to blocks? 17:23:39 i.e. I handle the scaling her. 17:23:40 *there. 17:23:41 Phantom_Hoover: I'll convert the abort()s into a proper die() now. 17:24:13 fizzie: I'll take that as a yes. 17:24:39 elliott: You implement it the way you want, I'll let you know if it's okay afterwards. (If you want to have the "map" bitmap scaled, that's just fine, though then it'll end up taking N*N times more memory.) 17:24:53 fizzie: It will, but it'll also be ~fast. 17:25:27 fizzie: Um, I have to touch map_update, don't I. 17:25:35 Yes, that's where it's drawn. 17:25:42 That function looks like it's going to eat me. 17:25:45 As a grue. 17:26:28 Okay I will ASSUME that cz and cx are the relevant things to scale. 17:26:54 fizzie: But, just to check -- no "opt." outside of mainc.? 17:26:55 *main.c? 17:27:08 Let's see, with -x 5 and a 400x400 block map (the smallest possible thing, since that's what you get without moving) you'll have a 15M bitmap. For the awful case where you visit spawn and (4000,4000), it's going to be 1.5 gigabytes. 17:27:35 I don't really have a firm opinion on opt. either, you can move it to some sort of common.h if you want. 17:27:58 (In fact I'll put the die macro there.) 17:28:00 fizzie: Got a better idea that isn't horribly slow? 17:28:26 Not sure. In the optimal case I'd just scale with opengl, but that'd need a SDL → OpenGL switch in drawing. 17:28:57 fizzie: Or just do it all in OpenGL. :p 17:29:08 Yes, that is sort of what I meant. 17:29:59 fizzie, even if you start at 4000,4000 you get a bitmap from spawn 17:30:01 Scaling while drawing (with something a bit more elegant than SDL_ScaleSurface -- just do something that does integer scaling factors naively, it's going to be better than the floating-point-math in SDL_ScaleSurface) is probably fast enough for small windows. 17:30:06 fizzie, at least it draws air over to there 17:30:38 fizzie: Scaling doth appear to work, maybe. 17:30:42 I'll try a higher factor to see. 17:30:56 Oo, or maybe not. 17:30:57 Yes, though that might be avoidable. I'm not sure if it actually sends any chunk packets at 0, I just initialize the maps like that. 17:31:03 (That was to Vorpal.) 17:31:09 fizzie, ah 17:31:23 fizzie, but it isn't using 1.5 GB 17:31:35 fizzie, mcmap that is 17:31:36 No, that was with 5*5 block-size scaling. 17:31:41 fizzie, ouch okay 17:31:57 fizzie: Okay, zooming is VAGUELY near working!! 17:32:00 Vaguely. 17:32:04 fizzie, might not be viable to do it that way then 17:32:18 fizzie: It seems to be trying to fill the whole screen with 1x1s for some reason. Or not quite... 17:32:19 fizzie, maybe you have to do it manually if you want scaling 17:35:20 -!- spikku has left (?). 17:39:52 Vorpal: Uh, why not? 17:39:56 Vorpal: 1.5 gigs is hardly much. 17:40:12 I've allocated Minecraft 2 gigs, and I have 4 gigs; so 1.5 + 2 = 3.5 gigs. I can handle that. 17:40:46 It's not especially elegant, though. 17:41:04 fizzie: You'll be pleased to know that it now fails to render anything at all. 17:43:18 fizzie: http://imgur.com/Cwzdw.png 17:43:23 fizzie: This reminds me of Apple IIs. 17:43:48 fizzie: The problem is that you draw it as a 1D array X-D 17:44:37 Just repeat the lines. I don't think my drawing is especially weird, I even recompute all pointers for each row, IIRC. 17:45:10 fizzie: Wait, x is left-right and z is up-down in this view,r ight? 17:46:26 Yes, minecraft x = bitmap x, minecraft z = bitmap y. 17:48:41 SWEET it segfaults 17:48:58 X Error of failed request: BadGC (invalid GC parameter) 17:48:58 Major opcode of failed request: 60 (X_FreeGC) 17:48:58 Resource id in failed request: 0x4400000 17:48:58 Serial number of failed request: 112 17:48:58 Current serial number in output stream: 111 17:49:08 Are you even /meant/ to get those when using SDL? 17:50:23 If you use it very incorrectly, I don't see why not 17:50:47 for (int bz = 0; bz < CHUNK_ZSIZE*zoom; bz += zoom) 17:50:52 Wrapping the innards of this loop in 17:50:54 for (int i = 0; i < zoom; i++) { 17:50:57 did Not Really Work. 17:51:09 ...especially since it'd just overwrite the same pixels 17:52:36 Well, you do need to wrap the Uint32 *p in there too, and the pixels += pitch. 17:52:56 And of course scale the initial "pixels" initialization. 17:53:38 fizzie: When I did /that/ it segfaulted. 17:53:39 (The latter.) 17:53:55 And yes, I wrapped everything up. 17:54:20 Segfault ... it appears that I am truly doin' it rong. 17:54:40 Well, you don't want to wrap the blocks += blocks_pitch part in, but you do want the unsigned char *b = blocks bit. 17:54:55 And of course scale the surface size, but I guess you have done that already. 17:55:03 fizzie: I think I have. :p 17:55:09 fizzie, crashed 17:55:10 map = SDL_CreateRGBSurface(SDL_SWSURFACE, xs*CHUNK_XSIZE, zs*CHUNK_ZSIZE, 32, rmask, gmask, bmask, 0); 17:55:11 NOPE 17:55:20 elliott, in handle_chunk 17:55:28 Vorpal: Aw, mine didn't. 17:55:30 err 17:55:31 Vorpal: Erm, are you telling me to fix a bug? 17:55:45 elliott, I tried to tab complete line number somehow XD 17:55:49 elliott, and hit e instead of the number 19:18:31 -!- clog has joined. 19:18:31 -!- clog has joined. 19:23:37 Okay, github updated; fixed the "too high update" bug and there's a rudimentary scaled-map mode with some bugs. 19:24:21 (It doesn't compute the "how many fractional blocks there should be at the edges of the screen" value correctly, so the player markers are placed only approximately in the right positions. 19:24:44 They seem to jump around a bit when adjusting the scaling factor. Keys are pgup/pgdown right, might change those later.) 19:24:46 I note that that's one commit, not two 19:24:59 Yes, I have bad habits like that. 19:25:32 See with scapegoat, you could just split it into two commits because of fractal. 19:25:36 Also it makes you toast. 19:25:56 In this case I could've just added world.c in a different commit, they were nice and localized. 19:26:03 With git you could also split it into two commits but that's a bad idea if anybody's pulled it already 19:26:09 fizzie: But where's your toast? 19:26:15 Deewiant: Go to hell, anti-toast-man. 19:26:16 Oh, you mean, post-datedly. Right. 19:26:23 I have a toaster. 19:27:15 -!- clog has joined. 19:27:15 -!- clog has joined. 19:28:02 Phantom_Hoover: Rather manually. 19:28:15 Go on. 19:28:23 Curiously enough, the code for scaled map-drawing is shorted than the SDL_BlitSurface one. (Because the scaled map-drawing just loops through the whole screen and skips map-x/z < 0 rows/columns, while the blitting variant computes source and destination rectangles for the (screen, map) intersection-box messily.) 19:29:04 http://sss.cs.purdue.edu/projects/dynjs/jstep.jpg I win the Internets forever! 19:29:36 Gregor, you are publishing that please tell me you're publishing that. 19:29:43 X-D 19:29:46 'fraid not :P 19:29:49 Not per se anyway 19:31:32 Phantom_Hoover: Well, it's just a loop over the screen pixels, while doing "if (++m_xo == map_scale) m_xo = 0, m_x++" to repeat each map pixel map_scale times. 19:31:32 Although if you combined the two relevant papers, you'd have something like that :P 19:31:32 (In place of "m_x++", that is.) 19:31:32 fizzie, yes, but what's the control to turn it on? 19:31:32 Ohhh. 19:31:32 Pageup a couple of times, I think. 19:31:32 Or down. 19:31:32 I think up ups the scaling factor, which is... well, illogical, depending on your logic. 19:31:32 elliott: Write programs that do one thing and do it well. 19:31:32 Deewiant: Oh come on, git is hardly that. 19:31:32 -!- zzo38 has joined. 19:31:32 (You could think of pageup as "go farther away", in which case it should be the zoom-out key instead of scaling-factor-enlarge key.) 19:31:42 elliott: No, but my toaster is. 19:31:46 fizzie: Yo yo yo does it have -x. 19:31:52 Deewiant: Nuh uh. It can also do bagels. 19:32:09 No it can't. 19:32:15 elliott: Er, no. But that's just "add an option, do map_setscale(xvalue, 0); in main". 19:32:28 Deewiant: Well, it can do ... other things. 19:32:32 No it can't. 19:32:36 Deewiant: It can burn your fingers. 19:32:47 (The later is true for relative, false for absolute xvalue.) 19:32:50 fizzie: Psht. Fine. I'll do it. 19:32:59 elliott: That's like saying that 'cat' can cause your disk to run out of space. 19:33:21 Deewiant: Indeed. 19:33:29 Well, *my* toaster has three buttons on it! 19:33:43 fizzie: What you should do is have three different toasting machines, and plug them into each other. 19:33:45 In addition to the spring-switch-thing. 19:34:29 The buttons are "defrost", "reheat" and "cancel". Oh, and there's also a burning-time control dial. 19:34:44 I don't think I've ever pressed the buttons. 19:35:30 The log is broken. 19:36:38 fizzie: Is there a button for heat one side of the bread only? 19:36:51 No, but maybe you could use one-sided bread somehow. 19:40:00 fizzie, I'd advise you to make clay higher-visibility in map.c. 19:40:57 Phantom_Hoover: I think there should be some sort of more structured colormap handling, maybe customizable ones, or "I'm looking for something" auto-highlights that'd desaturate other blocks and highlight-in-red the one you're looking. 19:41:36 I think I picked something sand-like because I had already a horrible amount of grey-whites for different stones and other white stuff. 19:41:45 But the colors are pretty arbitrary. 19:41:54 And snow/ice looks silly, I think. 19:42:58 It might be that I set snow-cover to air-color, so it doesn't show up in cross-section maps, but that makes snow-covered blocks show up as air in the surface-map, because it only looks for topmost non-air block, not topmost non-air-colored block. 19:44:16 Why is the log broken? 19:53:12 where put1 (k,v) = do 19:53:12 let kl = fromIntegral (B.length k) :: Word8 19:53:12 let vl = fromIntegral (B.length v) :: Word64 19:53:12 put (kl::Word8); put k 19:53:12 put (vl::Word64); put v 19:53:22 WHY IS THIS PLACING MORE THAN 9 BYTES MORE THAN THE ACTUAL CHARACTERS 19:53:28 oh wait maybe bytestrings have a special serialisation 19:59:08 -!- Mathnerd314 has joined. 20:01:14 then error ("HASH COLLISION!! " ++ show o ++ " and " ++ show o' ++ 20:01:14 " have the same hash! ROCKS FALL, EVERYBODY DIES!") 20:01:18 Think my error is scary enough? 20:02:41 -!- KingOfKarlsruhe has left (?). 20:04:09 sweet 20:04:13 i have two separate concepts named object 20:10:39 -!- clog has joined. 20:10:39 -!- clog has joined. 20:10:42 elliott: http://i.imgur.com/CwBtv.jpg This screenshot from a channel called, and I quote, "CNN Headline News". 20:10:51 FUCK US NEWS REPORTING SO MUCH. 20:10:54 AND JUSTIN BIEBER. 20:10:57 BUT MOSTLY THE NEWS. 20:12:13 elliott: ... Why did I ping you for that? 20:12:18 That's a rant for everyone! 20:13:29 pikhq: Actually, that's part of "Showbiz Tonight". 20:13:38 Which I don't think anyone claims is real news. 20:13:59 elliott: It's a program on "CNN Headline News". 20:14:20 elliott: I don't care if it's a fucking show about entertainment gossip, it's *claiming to be headline news*. 20:14:39 Just like Ice Road Truckers claims to be History? 20:14:48 And Palin's Alaska claims to be Learning? 20:14:52 Gregor: FUCK THE HISTORY CHANNEL AS WELL. 20:14:57 Gregor: AND TLC. 20:15:08 Gregor: WHICH, INCIDENTLY, IS NOT "THE LEARNING CHANNEL" ANYMORE. 20:15:15 TLC has been a joke of a channel for years *shrugs* 20:15:28 So's the rest of them. 20:16:02 No, any channel that plays Seinfeld is, ironically, not a joke of a channel for the brief duration during which they play Seinfeld. 20:16:12 Gregor: Ice Road Truckers amuses me. 20:16:15 Same goes for STTNG, Corner Gas, Mythbusters ... 20:16:23 I can't take it seriously, because I imagine the ice to be, like, miles deep. 20:16:32 Wimps. 20:16:34 Gregor: Lasts very short, though. 20:16:51 Gregor: How does one pronounced "STTNG"? Stttttng? 20:17:09 elliott: If you haven't coughed up any organs, you're not pronouncing it right. 20:17:14 :D 20:17:34 pikhq: You know what I should make????? A NEW BUILD SYSTEM 20:17:37 * elliott mauled by bears 20:17:57 It continues to amaze me that there's a few *hundred* channels available, and they're almost all *terrible*. 20:18:12 Ha ha, BBC in your face. Okay so most of BBC sucks too. 20:18:15 But we got Dirk Gently. 20:18:18 TODO: Watch Dirk Gently. 20:18:20 Watch it SO HARD. 20:18:27 elliott: YOU BASTARDS. 20:18:36 pikhq: Problem? :trollface: 20:18:43 elliott: Though a lot of the BBC sucks, *it actually still has good programming*. 20:19:08 elliott: US channels love to cancel popular shows and rape the premise of the channel. 20:19:16 hmm, I wonder if I need to support more than 2^64 objects in a scapegoat database 20:19:26 er, wait 20:19:30 hmm, I wonder if I need to support more than 2^64 keys in a scapegoat object 20:19:32 I THINK NOT 20:19:44 How many US channels have wrestling now? Eight? Ten? Covering comedy, sci-fi, history, education, ... 20:19:46 TLC used to have interesting documentaries. Now, it's The Babies Channel. 20:19:52 in fact, i doubt I even need to support more than 256 20:19:59 O! The log is fixed now. 20:20:01 pikhq: do you think I need to support more than 256 key/values in a given scapegoat object? 20:20:11 I suppose for an author ... if he uses, like, 30 IM services... and has 10 emails... 20:20:15 and 20 keys... 20:20:22 And has ... uh ... 20:20:26 *they use 20:20:28 And "Discovery Health" is soon going to become the "Oprah Winfrey Network". 20:20:31 Yes, a channel for Oprah. 20:20:37 *Oprah*. 20:20:47 pikhq: Dude, shut up and answer my question. 20:20:53 (and even now, it's The Babies Channel) 20:21:10 elliott: Bah, support 2^2^64. 20:21:15 pikhq: do you think I need to support more than 256 key/values in a given scapegoat object? 20:21:18 That is the question at hand :P 20:21:21 elliott: Bah, support 2^2^64. 20:21:25 No. 20:21:41 2^^^^^2? 20:21:43 It's kinda relevant because there are tons of objects in the system and 8-bit vs. 32-bit count is a difference of 3 bytes per object :P 20:21:49 (tons = literally tons.) 20:23:04 elliott: What is it that you are making? 20:23:21 zzo38: Scapegoat, a version control system. 20:24:22 And what is it that I am making? 20:24:29 zzo38: How should I know? 20:25:19 elliott: Maybe you guess. I don't know how you should know. 20:26:42 -!- ais523 has joined. 20:27:40 What is your opinion about this file so far? http://sprunge.us/DadR 20:27:42 hi ais523 20:31:34 hi 20:31:44 Do you have opinion about this? 20:31:44 hmm, today I learnt that Firefox doesn't respond well to having fonts uninstalled while it's trying to use them 20:31:55 as in, it breaks even more horribly than you'd expect 20:32:28 (Firefox is also the only application on here that breaks while it's being upgraded; most programs just use the old version until you restart them) 20:32:29 ais523: Why do you uninstall fonts while it is trying to use them? Does it do different depending on the operating system? 20:32:46 zzo38: oh, because it was the Microsoft fonts that I'd been meaning to get rid of for a while 20:32:55 because things kept using them by default 20:33:07 and they decided to update, and the update came with a new EULA I didn't want to accept 20:33:45 ais523: hmm, what EULA? 20:33:52 the microsoft cor fonts are unrestricted AFAIK 20:33:59 http://corefonts.sourceforge.net/ 20:34:03 and the site hasn't been touched since 2006, so 20:35:15 it may have been a repeat of the old one 20:35:25 but yes, microsoft core fonts have a license that shouldn't require a EULA 20:35:28 which is partly why I declined it 20:41:36 Why should you require Microsoft's fonts anyways? (Except for Windows computer) For other computer you can use it has its own fonts to use in its programs. 20:44:11 zzo38, Postel's law. 20:44:52 http://www.haskell.org/ 20:44:53 What. 20:45:03 i 20:45:08 Why has that been domainsquatted. 20:45:17 Phantom_Hoover: Why should Postel's law have something to do with it? 20:45:45 zzo38: mostly because everyone assumes you have them 20:45:58 Phantom_Hoover: Presumably somebody forgot to renew i t 20:46:22 Works for me, though. Hooray for cacheing. 20:46:25 -!- Leonidas has quit (Ping timeout: 276 seconds). 20:46:35 ais523: You can still use other fonts as replacement fonts. Whatever fonts of your system should work. 20:46:40 indeed 20:46:54 what actually annoys me is specifying fonts by name in the first place 20:47:08 unless you have a huge list containing fonts for a wide range of operating systems 20:50:11 How do I make my computer aware of the changes I've made to /etc/hosts? 20:50:57 It is aware. 20:51:02 Phantom_Hoover: I know Windows will do it right away. In UNIX, I don't know what you need to do. 20:51:12 Deewiant, it is not. 20:51:24 Can you read the man page? 20:51:28 Since I changed it to fix haskell.org, and it's still broken. 20:51:37 zzo38, quiet. 20:51:49 Phantom_Hoover: You might have to restart whatever programs you use that use domain names. 20:52:00 gethostname() should read /etc/hosts every time. 20:52:44 Many programs cache DNS. In Firefox I'm pretty sure a ctrl+shift+R will force a relookup. 20:56:59 Do you really dislike TeXnicard? 20:59:18 -!- zzo38 has quit (Quit: One foot is both the same.). 21:15:59 ais523: Our hardware now diverges! 21:17:20 :O 21:17:20 -!- dbc has quit (Ping timeout: 240 seconds). 21:26:36 Shpx is such a bad curse. 21:31:19 ais523: "Programming with Natural Language Is Actually Going to Work" --Stephen Wolfram 21:31:48 ais523: (His evidence is Wolfram Alpha, which apparently works just great.0 21:31:50 *great.) 21:36:19 common OOP doesn't go far enough 21:36:21 elliott, ^ 21:36:29 elliott, terrible data hiding 21:36:29 Vorpal: What is it now. 21:36:35 the most you can do is private 21:36:36 Data hiding doesn't work. 21:36:44 but that still allows the own class to access 21:36:49 we need a further level 21:36:49 Just shut up. 21:37:06 "secret even to self" doesn't quite cut it 21:37:19 basically, so that no one can access it 21:37:38 elliott, and indeed, data hiding doesn't work. Wikileaks proves that. 21:37:39 I see. 21:49:28 elliott: Wolfram Alpha, an example of natural language programming working? LOL 21:50:01 what 21:50:04 working? 21:57:34 I thought it was a good example of how not to do UI design. 21:57:54 Wolfram Alpha would be *much* more useful if you could just tell it *what to an interpret a string as*. 22:00:45 C++: I'm not sure if templates of multiple inheritance is most awful. They are certainly both horrible 22:02:56 Inheritance itself is the most awful. 22:04:49 elliott, yes quite, though the original idea (semantic networks) it is inspired by was sound 22:05:31 elliott, but doesn't even smalltalk have inheritance iirc? 22:05:45 Yes. Alan Kay did not imagine C++ _or_ Smalltalk, as I've said. 22:05:50 (When he invented the term OOP.) 22:05:50 elliott, true 22:06:07 elliott, so what do you think about semantic networks? 22:06:20 I have no opinions on them and don't plan to get any. 22:06:30 ok 22:06:49 elliott, anyway, surely you agree that smalltalk is less awful than C++? 22:07:05 Yes, doesn't stop it being awful though. 22:07:16 true 22:23:21 pikhq: Convince me not to make a build system. 22:25:36 http://en.wikipedia.org/wiki/Lost_Odyssey I'm tempted to call this FFXIII. 22:26:59 pikhq: Convince me not to make a build system 22:27:01 *system. 22:27:05 elliott: No. 22:27:13 pikhq: Whyy. 22:30:40 pikhq: You do realise FFXIII exists? 22:30:43 from a cursory google :P 22:30:52 also XIV 22:31:33 XIV is again one of them mumorpugers, right? 22:32:37 elliott: The real one is painful, and XIV is actually hurting Square a lot. 22:32:51 elliott: Let me put it this way: net profits for Square are down 90% because of *that one game*. 22:32:55 Lawl. 22:33:00 One wonders whether they'll give up the naming scheme somewhere around Final Fantasy LXVII. 22:33:16 fizzie: They've already kinda given up on it. 22:33:25 There are like 3 games with the number XIII attached. 22:33:48 FFXIII, FF Agito XIII, FF Versus XIII. 22:33:56 pikhq: Phantom_Hoover: http://imgur.com/9g2rZ.png AAAAAAAAAAAAAAAAAAAAAAAAH GOD 22:34:00 erm *fizzie: 22:34:04 GET AWAY FROM ME PIG, HOLY SHIT 22:34:18 They stare at you often, but I couldn't get a screenshot of that. 22:34:40 That looks very horrible. 22:35:01 About the only good thing from FFXIV is that it was an excuse for Uematsu to make more music. 22:35:07 FFXIII didn't even have that. 22:35:52 Heck, XIII had only one piece of music based on something Uematsu wrote: the Chocobo theme. 22:36:35 elliott, that pig is scary. 22:42:23 pikhq, consider: perhaps the Final Fantasy series jumped the shark long ago, and you should abandon rather than complain 22:43:30 Phantom_Hoover: Butbut I *liked* FFXII! … Aside from the gameplay, that was absolutely positively terrible. 22:43:56 pikhq, there's this kind of non-interactive game thing with really good graphics that's catching on. 22:44:16 It's called a 'film'; maybe you should try one? 22:44:55 Many of them suck. Just like the game industry, the film industry focuses on "oooh pretty" instead of... Merit. 22:45:09 And I strongly dislike it! 22:46:11 GYAAAH, GIMP, WHY DO YOU MAKE IT SO HARD TO INVERT SOMETHING 22:46:24 pikhq, but consider that many, indeed most, games suck! 22:46:32 Especially when gameplay is ignored! 22:47:05 Colors/Invert, what's wrong with that? 22:47:19 fizzie, it's greyed out! 22:47:29 Phantom_Hoover: Yes, many things suck. 22:47:30 Are you in an indexed-color mode, then? 22:47:37 Phantom_Hoover: Doesn't mean I can't be upset when things suck. 22:47:38 I DON'T KNOW 22:47:44 I JUST WANT TO INVERT AN IMAGE 22:47:47 Image/Mode/RGB? 22:47:49 IS THAT TOO MUCH TO ASK 22:49:08 Anyway, even in indexed-color mode for me Colors/Value invert seems to do a full-image inversion. (Don't know if that's palette-index-dependent, though.) 22:49:59 Well, it's just the luminosity-channel inversion, not exactly the same thing. 22:50:50 Strange that it can do "Colors/Value invert" for an indexed-color image (by doing the operation for each of the palette entries, it seems) but not "Colors/Invert". 22:52:33 (The palette-based inverting ignores the selection, I guess whoever made those two filters had different opinions on what's sensible and what's not.) 22:56:09 "Happy Creeper happy happy yay YAY!" http://painterlypack.net/picker/big/screenshots/happycreep.png 22:56:12 --Painterly customiser 22:57:11 -!- Phantom_Hoover has quit (Quit: Leaving). 22:57:26 -!- Phantom_Hoover has joined. 22:57:26 "I want to have the Halloween pig. н" http://painterlypack.net/picker/alternates/spookypig.png 22:57:30 Is that just a mask or something? 22:58:19 Hard to say when they don't have the actual preview image there. 22:59:19 Incidentally, my own selections have "Happy Ghast happy Ghast yay yay yay! Happy!" selected. 22:59:48 (Couldn't help myself, it looked so happy.) 23:00:21 (http://painterlypack.net/picker/big/screenshots/happyghast.png) 23:04:49 fizzie: Awwwwwwwwwwwwwwwwwwwww 23:05:16 fizzie: I'm enabling that in my Creepy Pack of Doom. 23:15:33 -!- Phantom_Hoover_ has joined. 23:18:13 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds). 23:29:02 -!- sftp has quit (Remote host closed the connection). 23:33:47 -!- MigoMipo has quit (Read error: Connection reset by peer). 23:38:26 -!- Phantom_Hoover_ has quit (Quit: Leaving). 23:38:56 -!- sftp has joined. 23:55:00 elliott, see /msg 2010-12-18: 00:00:35 -!- FireFly has quit (Quit: swatted to death). 00:02:16 back, sort of 00:03:03 * ddarius wonders if there is a #not-not-math channel. 00:03:03 ddarius: constructive or classical? 00:03:06 augustss: Well clearly it would be a place to stick all those non-classical mathematicians. 00:03:10 oerjan-logread: ^ 00:03:33 elliott, know what, I detected another change 00:03:41 Vorpal: huh? 00:03:58 elliott, someone wasted one stone + one glass on changing a window from ** to 2 vertical glass instead 00:04:09 elliott, this is beyond logic 00:04:23 wut 00:04:45 elliott, indeed! 00:05:40 elliott, see /msg too 00:05:57 in a minute, brbing right now 00:11:55 -!- Leonidas_ has joined. 00:12:01 -!- Leonidas_ has changed nick to Leonidas. 00:19:45 http://www.minecraftforum.net/viewtopic.php?f=25&t=99223 this is awesome 00:22:14 -!- dbc has joined. 00:31:35 -!- augur has quit (Remote host closed the connection). 00:33:35 ide spac 01:03:55 -!- augur has joined. 01:10:49 pikhq: What I'm thinking about for a build system: vaguely Make-backwards-compatible, but (1) ALLOW NON-TAB INDENTATION, (2) run recipes as full shell scripts, (3) make $... and $(...) and ${...} synonyms for {...}, where the code inside {}s is part of a pure, functional language; (3) strictly separate (with GNU make-style |) source files and dependencies; and (4) a huge library of fancy built-in rules and the like, e.g. the C rule would handle a 01:10:50 utomatic dependencies. 01:15:24 1: Yes 2: Yes 3: Yes 4: Yes 01:15:54 Add "it supports spaces" and you have the best Make-ish thing. 01:16:56 -!- rodgort has quit (Quit: Coyote finally caught me). 01:17:15 -!- rodgort has joined. 01:17:32 Vorpal: http://imgur.com/RtgyF.png 01:17:46 Vorpal: I like this texture pack a lot. (also featured: Better Light, and Better Grass!) 01:17:51 -!- rodgort has quit (Read error: Connection reset by peer). 01:17:51 elliott, can't open it on this computer *types into other* 01:17:55 Admittedly it's hard to see the Better Grass. 01:18:20 elliott, better grass? 01:20:01 -!- rodgort has joined. 01:20:54 Vorpal: It makes continuous patches of grass cover the entire block. 01:20:56 Nice effect. 01:32:27 pikhq: Also, you forgot my SECOND (3). 01:37:02 elliott: 三: Fuck you. 01:37:03 :P 01:42:02 RIP Captain Beefheart. 01:43:02 *groan* 01:43:30 Apparently Julian Assange has not been made *aware* of what the charges against him are. No wonder everyone's confused. We only have rumors of what the charges are. 01:43:49 I suspect with *that* detail, no sane court will extradite. 01:43:57 (that is to say, he should stay the fuck out of the US) 01:49:42 fizzie, got the -3 error when placing a torch in a very very specific place 01:49:49 fizzie, not when removing it though 01:50:05 fizzie, 100% reproducible, out near 4000,4000 01:53:21 pikhq: In fact, my idea is pretty similar to OMake 01:53:29 pikhq: Which has ".DEFAULT: $(CProgram prog, foo bar baz)" 01:54:20 elliott: So, basically OMake but elliotised. 01:54:33 -!- quintopia has quit (Ping timeout: 260 seconds). 01:55:27 pikhq: TWO 01:55:28 MOTHER 01:55:28 FUCKING 01:55:29 TS 01:56:57 I'm sorry elliott, but I was talking to elliot here. 01:57:49 Oh. 02:15:16 -!- church has joined. 02:15:57 church: Alonzo! 02:16:01 church: It is the highest honour. 02:16:29 http://wetfish.net/wp-content/uploads/2010/12/leaking_by_humon-d34xwuj.jpg 02:16:38 hello elliott. 02:17:04 By Lambda, it's Church! 02:18:23 I have a crazy theory, maybe church is not actually Alonzo Church. 02:18:31 -!- sftp has quit (Remote host closed the connection). 02:18:58 elliott: Hmm. Perhaps Alonzo Church of the Lambda Calculus is not immortal. 02:19:30 GASP 02:19:32 Heathen! 02:20:37 Oh dear, what have I done? 02:21:10 * pikhq performs 12 evaluations of (\x.xx)(\x.xx) 02:21:16 s/evaluations/iterations/ 02:29:55 -!- Mathnerd314 has quit (Ping timeout: 255 seconds). 02:34:14 -!- augur has quit (Remote host closed the connection). 02:34:51 -!- augur has joined. 02:39:22 -!- augur has quit (Ping timeout: 255 seconds). 02:59:29 -!- quintopia has joined. 03:11:56 :/ 03:12:46 d/win 23 03:14:26 -!- augur has joined. 03:29:13 -!- augur has quit (Remote host closed the connection). 04:02:56 fizzie: "Minecraft is a hype created by TIGsource scammers." zomg! 04:04:20 fizzie: Quite a schizophrenic "apology" and stuff: http://www.codergames.com/news/games/minecraft/ 04:04:24 November 18th, 2010 04:04:25 Minecraft, a harmony and joy of creation! 04:04:25 Minecraft proves that there's still hope for a human kind! 04:04:25 November 16th, 2010 04:04:25 Minecraft, more thoughts. 04:04:25 I might have rushed a bit with the conclusion about Minecraft. 04:04:27 November 12th, 2010 04:04:29 The whole propaganda surrounding Minecraft is very fishy. 04:04:31 The only thing that stinks is TIGsource! 04:04:40 "I was under a lot of pressure, I still am. Anti-communists in Serbia don't have social security, jobs or any ability to get a job as everything is highly controlled and is only there to leave the impression to other countries that its a normal country as well." 04:04:43 I, uh ... 04:05:38 lol: http://forums.tigsource.com/index.php?topic=6273.0 04:06:31 "People are not stupid, they're capable of thinking on their own, they just need to free themselves from constant brainwashing, people just need to unplug, free their mind from the prison some very bad people (TIGsource and alike, illuminati, satanists, reptilians, luciferians, etc.) imposed onto them." 04:09:47 amen 04:10:28 hi elliot.. what time do you have now? 04:11:37 amen? 04:11:40 please tell me you're joking 04:11:50 i am 04:12:10 phew 04:12:18 hagb4rd: what time do you have now? i can't parse your sentence >_> 04:12:28 timezone 04:13:00 oh 04:13:01 gmt 04:14:22 o'right.. so you're from..uk? (if i may ask) 04:14:43 yep 04:15:06 k ..*updating statistics* 04:15:37 so y the hell you're awake? 04:15:39 :) 04:16:13 why not 04:18:02 so.. you guys have a public minecraft server? 04:19:02 where do you play? 04:20:43 *last question so far ;) 04:21:38 hagb4rd: we have a server, but it's private :P 04:21:49 and it's not really an #esoteric server, it just happens that all but one of the people on it are in here 04:22:50 from #irp: 04:22:50 23:19 < sbluen> finally, a language that can solve the undecidability problem, I think 04:22:54 23:20 < sbluen> that is, the halting problem 04:24:22 coppro: that's a rather terrible name :D 04:25:12 coppro: #irp is like our retarded twin brother we try to pretend doesn't exist :/ 04:25:24 ..i'd really like to join you.. let me know if you're interested in having some company then 04:25:25 i remember setting it up when reddit invaded here :) 04:25:39 hagb4rd: ineiros is the admin. being Finnish helps a lot, I gather 04:25:47 although actually the Finns are in a minority now aren't they... 04:25:48 k thx 04:25:49 wait, no, exactly 50% 04:26:09 hagb4rd: health is turned off so if you don't like that it's probably not worth it :) 04:27:36 Gregor: I'm going to drag up you being an idiot! 04:27:38 Gregor: You're all wrong. Wrong wrong wrong. To quote the page: "write, in plain English, in polite command form, what you intend for your program to do." Brainfuck is NOT plain English in polite command form. So it's not valid IRP. And while you can request that somebody keep infinite memory in mind, they actually can't do that. So it may be that the language itself is Turing-complete but there is no TC implementation. --GregorR 17:37, 21 Aug 20 04:27:38 06 (UTC) 04:27:42 Gregor: HAHA I'VE NEVER SAID ANYTHING STUPID 04:28:22 Uhhh, OK? 04:28:34 I see nothing of me being an idiot in that quote. 04:28:42 -!- augur has joined. 04:29:05 But anyway, http://sss.cs.purdue.edu/projects/dynjs/imgsrc/javascript_the_evil_parts.png makes up for it regardless. 04:30:13 -!- sbluen has joined. 04:30:22 Gregor: You claimed that "Please execute the brainfuck program 'blah blah blah'." wasn't valid IRP, because that somehow wasn't polite English. 04:30:36 Because, it seems, your holiness, ",[.,]" just made this sentence not polite English. 04:30:37 -!- augur has quit (Remote host closed the connection). 04:30:59 Gregor: I commend you for that publisher line though :P 04:33:04 elliott: Please interpret the following Spanish: "Considere si la proporción de los idiomas es más o menos importante que el lenguaje de nivel superior." 04:33:19 Gregor: elliott: Please interpret the following Spanish: "Considere si la proporción de los idiomas es más o menos importante que el lenguaje de nivel superior." 04:33:27 Gregor: This is still an English statement. And a polite one at that. 04:33:41 You clearly did not interpret the Spanish :P 04:33:44 Gregor: Admittedly the execution of that directive is beyond my grasp; but then, so is "Print out the decimal digits of Graham's number", which is definitely a valid IRP program. 04:34:04 Gregor: Just interpreted it and I'm fairly sure the proportions is irrelevant. 04:34:08 English has quoting! Gasp! 04:34:31 Pff 04:36:09 Gregor: Are you seriously saying that [[Please interpret the following Spanish: "Considere si la proporción de los idiomas es más o menos importante que el lenguaje de nivel superior."]] is not English? 04:36:17 Gregor: Are you seriously saying it is not polite? 04:36:27 It is /both/; it is a polite English command, and therefore a valid IRP program. 04:37:06 Your mom is not polite English. 04:52:04 Gregor: Your face is not polite German. 05:03:32 pikhq: http://sprunge.us/BUPQ 05:05:37 pikhq: Give me endless praise and wonderment for doing the obvious. 05:06:02 pikhq: (cat is just like juxtaposing all the variables, except that it doesn't add pointless spaces when the variables are empty ... should probably be called catargs or something) 05:07:34 This is an astonishing statistic! Imagine being 05:07:34 able to do a single file compile, out of 1000 05:07:34 source files, in only 10 seconds, plus the time for 05:07:34 the compilation itself. 05:07:41 --Recursive Make Considered Harmful 05:07:47 OH MAN I CAN HARDLY WAIT, THANKS 1998! 05:10:38 -!- hagb4rd has quit (Ping timeout: 240 seconds). 05:12:23 "Hang on a minute! On real-world projects with 05:12:23 less than 1000 files, it takes an awful lot longer 05:12:23 than 25 seconds for make to work out that it has 05:12:23 nothing to do." 05:12:30 Gregor: Did you live in 1998? What was it like? :-P 05:12:52 ... oh come on, you're not THAT young ... 05:13:18 "But we are not using PDP11s any more. The 05:13:18 physical memory of modern computers exceeds 05:13:18 10MB for small computers, and virtual memory 05:13:18 often exceeds 100MB." 05:13:28 Gregor: I was *three years old* when that paper was written. 05:13:45 So, ALIVE 05:14:02 Gregor: But I could hardly be said to have lived in the same 1998 as people who used make occupied :P 05:14:22 I don't believe I was make-capable in 1998 05:16:11 -!- augur has joined. 05:16:19 Gregor: I don't actually know how old you are exactly :P 05:16:35 Good. 05:17:30 Gregor: BUT THANKFULLY GOOGLE DOES 05:17:33 (Or at least is likely to.) 05:18:20 Gregor: WHY DOES GOOGLE NOT KNOW HOW OLD YOU ARE 05:18:44 Have you ALREADY FORGOTTEN that I'm a stable causal loop? 05:18:50 How can Google not... know ... anything 05:19:04 Gregor: http://www.thorn-lang.org/ Google thinks I care about this more than how old you are. 05:21:09 Gregor: Remind me to grep the logs to figure out when you started doing that grad school thang so I can extrapolate :P 05:21:14 And then I can post it on Google and EVERYONE WILL KNOW 05:21:15 FOR SCIENCE 05:22:13 You don't know how old I was when I started grad school, how many years I spent in undergrad, how many years I spent at Intel, what year I started 1st grade ... 05:22:28 Gregor: Darn, right, I was assuming you entered grad school right after undergrad 05:22:32 Hmm 05:22:38 Gregor: I'll examine your nose to determine your age. Like tree rings 05:22:42 (This only works on jews) 05:22:52 Gregor: "The composite logo of the GNU and OSI logos was created by Gregor Richards." ;; please, please, please show this to rms. 05:23:03 Video tape it. Then YouTube his heart attack. 05:23:05 8-D 05:23:20 "NOOOOOOOOOOOOOOOOOOOOO! WHY GOD WHYYYYYYYYYYYYYYYYYYYYYY" 05:25:10 Gregor: NOT EVEN YOUR MICROSOFT RESEARCH BIOGRAPHY HAS IT WHYYY 05:25:19 Gregor: Did you actually ever come into existence? 05:25:23 Or have you just, like, always been there. 05:26:26 Have you ALREADY FORGOTTEN that I'm a stable causal loop? 05:26:33 Gregor: I KNOW I KNOW 05:26:37 [[Computer Science student, revered software developer, natural-born rally navigator: Gregor is a man who wears many different hats!]] 05:26:40 Please tell me that was intentional. 05:26:51 ... wtf? 05:26:59 I am the only person who can Google-stalk someone and not find their birthdate :-P 05:27:05 Gregor: http://twistyroads.net/trnt/entrylist.html; grep /your name/ 05:28:07 Quite probably intentional :P 05:28:28 Very subtle since all two readers of that page wouldn't know the reference. 05:28:50 Gregor: THREE NOW 05:29:24 http://www.youtube.com/watch?v=v8ivkC_YJxk ;; Maybe you'll offhandedly mention your birthdate in this 05:29:55 Gregor: Congratulations, you bastard; you've singlehandedly destroyed my faith in Google. 05:30:02 I don't know what to believe any more. 05:30:05 I WIN FIVE INTERNETS 05:30:30 Gregor: BTW, how old are you again? 05:30:50 Damnit elliott, I HAVE NO AGE. I am infinitely old but do not age, I am a stable causal loop! 05:30:56 Gregor: THAT ALMOST WORKED 05:31:16 Gregor: Anyway, I am not sure stable is the right word to describe you :P 05:31:25 OHHHH SNAPPPPP 05:32:59 What hint could I give that would be insufficient to guess too much, but could help potentially ... 05:34:51 Gregor: "I accept friend requests on Facebook from people who upload videos of stapling their own face." 05:35:00 (Assuming you have your birthdate on Facebook :P) 05:35:32 Only day, not year. 05:36:18 Gregor: Do you post updates saying "AWESOME, I'm # NOW!!!!"? 05:36:20 If so, that would suffice. 05:36:42 I don't really care about birthdays. 05:38:05 Gregor: Grepping the logs for you mentioning numbers between 17 and 30: INDEED YOU DON'T 05:38:19 elliott: 17 05:38:20 18 05:38:20 19 05:38:21 20 05:38:21 21 05:38:22 22 05:38:22 23 05:38:24 24 05:38:26 25 05:38:28 26 05:38:30 27 05:38:32 28 05:38:36 Gregor: CURSES, HOW CAN I EVER GET AROUND THIS ATTACK?!?!?!?!?!?!?!?!?!?! 05:38:36 29 05:38:38 30 05:38:58 What's hilarious is that I've never made even the slightest attempt to hide that information :P 05:39:37 10.03.06:22:17:20 Whereas the target audience for your site is in the 0.25-to-0.75 turnips intelligence range. 05:40:06 21:17:45 It is time to put those Haitian jigaboos in their place! No matter how many times the civilized world donates money, opens schools, rebuilds their nation, and holds their little monkey paws, the damn niggers can never get it right. They never will! The same goes for New Orleans! Cancun in Mexico suffered few fatalities after their major hurricane, and the rebuilding is already completed. Wha 05:40:06 21:17:45 t have the niggers in New Orleans done? If you are sick of this, join Chimpout Forum! http://www.chimpout.com/forum We welcome all races except for NIGGGGGGGERS! We are not white supremacists, just negro inferiorists! http://www.chimpout.com/forum 05:40:08 The site in question :P 05:40:17 I wonder how one pronounces "NIGGGGGGGERS". 05:41:20 I think it's "nig" -- at which point you allow a little bit of water to flow to the top of your mouth and vibrate it while continuing the g sound -- and then "ers". 05:41:53 22:18:46 i once knew a nigger named esoteric 05:41:53 22:19:02 he had a sister named shaquanda 05:41:59 if only he had taken my advice 05:42:01 to, his fortune, not squander 05:42:02 IT RHYMES 05:43:12 22:20:23 Average Human IQ 100 Average Nigger IQ 80 Of course there are negroes that have normal IQs, but you are much more likely to run into a feral ape 05:43:12 22:20:28 than a magic negro 05:43:12 22:20:42 many who don't see this have been isolated from the bulk of the nigger population 05:43:12 22:20:49 and just know a few magic ones in the workplace 05:43:14 Gregor: Can you feel the magic 05:44:32 As far as I can tell I know only magic ones. And no feral apes, modulo the fact that by any reasonable definition, all humans not in captivity are feral apes. 05:45:04 Gregor: Obviously the intelligent negroes commit themselves to a life of BDSM. 05:45:08 -!- hagb4rd has joined. 05:45:08 Obviously. 05:45:26 Apparently grepping for "25" has some pretty interesting effects X-D 05:45:26 -!- wareya has quit (Read error: Connection reset by peer). 05:45:37 Gregor: wat 05:45:39 you mean timestamps? 05:45:55 Oh, I assumed you got that by grepping for Gregor.*25 05:45:59 -!- wareya has joined. 05:46:01 Since it's me ... then a (0.)25 05:46:05 Gregor: Not just 25 :P 05:46:10 But yes, all the numbers. 05:46:21 Well I don't know exactly how you grepped X-P 05:46:22 (The numbers are the integers between 17 and 30, inclusively.) 05:46:33 (That is how the numbers are defined and only shit it's almost 6 am.) 05:47:18 Lesse, what's the minimum age I could be? Is it even reasonable that I could have been 17 while on #esoteric ...? 05:47:45 Gregor: Well, I came in here when I was 11 or so... and started being active when I was 12. 05:47:56 Admittedly you're more than the difference older than me, probably :P 05:48:00 (Between 12 and 17. 05:48:01 ) 05:48:08 Gregor: But really, I get no meaningful results even with that range, so *shrug* 05:48:09 elliott: I don't mean just being here at that age at all 05:48:18 What then? 05:48:18 elliott: I mean that, given the knowledge you have, could I have possibly been here at 17? 05:48:23 Right. Well, not really. 05:48:34 Gregor: Are you <, =, or > 25? :P 05:48:39 Yup. 05:49:22 Gregor: Are you < 25? 05:49:44 Do you think for some reason I'm required to actually answer these questions? :P 05:50:05 Gregor: Yes. 05:50:06 Gregor: Are you < 25? 05:50:15 elliott: Sadly, 1998 was a full 4 years before I would use make for the first time. 05:50:31 pikhq: Man, I interpreted make as a regular word there SO CONFUSED 05:50:41 God, I've been Unixing for a long time. 05:50:50 (relative to my life span) 05:50:53 pikhq: Apparently The Google is insufficient to guess my age! Although I don't really care THAT MUCH about keeping my age secret, the fact that it's not out there is so fascinating I kinda have to! 05:51:04 pikhq: Has anyone really been far even make as decided to use even go want to do look more like? 05:52:34 elliott: then again people were mostly pinging me by wrongfully tab-completing the other guy whose nick began with Gr :) 05:52:35 Gracenotes: It's okay, we've killed him off and now his corpse lines our walls and floor. You can come back now. 05:52:37 Gregor: PLAY DEAD 05:53:00 -!- Gracenotes has joined. 05:53:20 meows 05:53:28 Hmm. There's a lunar eclipse this winter solstice. 05:53:56 Gracenotes: JUST JOKING YOU'RE NOT WELCOME HERE 05:53:59 GO DIE IN A FIRE 05:54:03 (death and fire optional) 05:54:27 D: 05:54:38 A CURSE UPON YOU AND YOUR DESCENDANTS FOR A THOUSAND GENERATIONS 05:54:47 Gracenotes: We already have a curse! A SEXY curse! 05:57:45 augur: as a linguist, what are your opinions on version control theory? 05:57:58 elliott: uh? 05:58:09 augur: yep! 05:59:18 augur: well that's the best blank stare i've ever seen communicated over IRC 05:59:21 elliott: i dont see how it relates 05:59:58 lol 06:00:02 augur: well it's vaguely to do with streams of things. that have semantic meanings! 06:00:03 and merging them. 06:00:09 SORTA LIKE LANGUAGES AMIRITE 06:00:12 no? 06:00:14 augur: YES 06:00:21 not.. really 06:01:34 augur: no but if darcs can claim to be based on quantum physics, i want scapegoat to be based on linguistics 06:01:37 so start bullshitting, faggot 06:01:43 :| 06:01:45 wut 06:01:47 darcs? 06:01:55 augur: THESE WORDS ARE OF NO CONCERN TO YOU 06:02:35 :| 06:03:19 -!- elliott has quit (Remote host closed the connection). 06:04:24 Fantastic Mr. Fox is turning out good 06:56:56 who are you Gracenotes 06:58:19 I don't know what to say. You ask a very deep question. 06:59:51 I have been here before though 07:00:10 -!- hagb4rd has quit (Quit: hagb4rd). 07:02:37 -!- oerjan has joined. 07:07:18 -!- hagb4rd has joined. 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:04:08 -!- ais523 has quit (Remote host closed the connection). 08:34:26 Gracenotes: all that's in my logs is you joining and pinging out a lot. how long ago was it? 08:34:48 also, was it in november? i didn't idle here in november because it was too distracting 08:42:24 -!- wth has joined. 08:42:48 -!- wth has left (?). 08:49:37 -!- sebbu2 has joined. 08:50:57 -!- wth has joined. 08:51:38 -!- sebbu has quit (Ping timeout: 276 seconds). 08:51:40 -!- wth has left (?). 08:55:01 -!- sbluen has quit (Quit: ChatZilla 0.9.86 [Firefox 3.6.13/20101203075014]). 09:14:06 -!- oerjan has quit (Quit: Later). 09:17:03 -!- MigoMipo has joined. 09:34:04 -!- wth has joined. 09:34:33 -!- wth has left (?). 09:36:37 -!- wth has joined. 09:37:01 -!- wth has left (?). 09:47:39 -!- wth has joined. 09:48:19 -!- wth has left (?). 09:56:23 -!- wth has joined. 09:56:38 -!- wth has left (?). 10:03:44 -!- wth has joined. 10:05:28 -!- wth has quit (Client Quit). 10:13:39 -!- Phantom_Hoover has joined. 10:41:26 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds). 11:01:09 -!- Phantom_Hoover has joined. 11:29:19 -!- sebbu2 has changed nick to sebbu. 11:40:23 Vorpal: You might consider using the github issue trucker for mcmap bugs, then I can keep 'em straight(tm). Anyway, for the -3 error I think I'm going to need to dump the whole packet to file and see what's up with it. 11:49:28 fizzie, hm 11:51:40 It seems to me to be very simple; no complicated milestone/class/priority/component/whatever forms to fill in, just a single text-box. 11:53:02 (Though it's not like I'm going to forget the -3 thing, just in general it could be easier to report there, since I don't really logread #esoteric, sometimes even not when I'm highlighted.) 11:54:20 What -3 thing, BTW? 11:56:43 Sometimes chunk update packets cause the zlib uncompress() function to fail with error -3. ("Z_DATA_ERROR if the input data was corrupted or incomplete.") 11:57:24 Or you feed the wrong data to zlib... 11:57:26 It's rather strange, since the compressed-data length is given in the packet before the actual data, and I read exactly that many bytes. 11:57:38 But of course there can be some sort of bug. 11:57:49 It's just that it seems to happen only in very specific circumstances. 11:58:20 What circumstances? 11:58:29 Better ask Vorpal that. 11:58:51 So far there's been some sort of a complicated waterfall-related scenario, and now placing a torch in a very specific place. 12:00:39 Neither of which should make the sent-out chunk-updates any different than plain old regular chunk-updates, though. 12:01:45 Some sort of buffer overrun? 12:03:06 Ah, this is Java... 12:06:49 hm 12:07:30 fizzie, actually it is within 2-3 blocks of that place 12:07:40 Ilari, his code is C though 12:07:47 (minecraft is however java) 12:10:15 fizzie, I guess I could try valgrind 12:10:24 (atm I'm not using mcmap) 12:13:31 * Phantom_Hoover discovers that the Reader monad is the same as the (->) monad. 12:13:34 My mind is blown. 12:16:08 There's one well-known zlib valgrind error that always happens. 12:16:17 At least on my installation the default suppression files don't cover it. 12:16:22 It's safe, though. 12:17:13 Other than that mcmap was valgrind-safe (error-wise; there might be leaks; it's not very careful code) at some point. 12:17:26 Ah, valgrind suppressions. One thing one would likely want to suppress: All memory leak messages from allocations done inside global ctors. 12:20:32 -!- sftp has joined. 12:21:00 ==16424== definitely lost: 116 bytes in 4 blocks 12:21:00 ==16424== indirectly lost: 436 bytes in 7 blocks 12:21:00 ==16424== possibly lost: 14,719,745 bytes in 721 blocks 12:21:00 ==16424== still reachable: 1,458,563 bytes in 1,774 blocks 12:21:14 But just the one conditional-uninitialised zlib thing. 12:22:38 fizzie, could you stop mcmap from crashing when something goes wrong in the map-side code? 12:23:08 So that it just becomes a pipe between the server and client? 12:23:34 Well, I *could* just ignore broken chunk-updates, it's just that I'd rather fix the bugs and this forces me to do it. 12:24:07 But yes, you can even probably do that by changing the die-macro to do some sort of thread-suicide instead of exit(1). 12:25:13 If you want to try that, change the exit(1) in main.c:do_die into g_thread_exit(NULL). 12:26:22 Though you'll probably end up running out of memory at some point because it'll keep pushing "interesting" packets into the "hey, look at these" queue, and there's then no-one at the other end to take care of them. 12:27:07 File an issue in github if you want me to add a "try to fail so that we just disable the map and keep forwarding packets" feature. :p 12:30:36 (Shouldn't be that hard. Just a status flag to see if the packet-inspection thread is running, single if (not) continue; in the packet-forwarding loop, and that's about it.) 12:31:12 -!- MigoMipo has quit (Remote host closed the connection). 14:16:58 Heh... Why does white flour exist? Really, why the step to white flour done? 14:23:05 White rice is quite understandable, but what about white wheat flour? 14:51:44 -!- oerjan has joined. 14:59:24 04:13:31 * Phantom_Hoover discovers that the Reader monad is the same as the (->) monad. 14:59:27 04:13:34 My mind is blown. 14:59:48 do you know Writer is the same as a (,) monad? 15:00:00 (not one usually defined though) 15:00:12 * oerjan waits for Phantom_Hoover's head to explode 15:02:30 06:16:58 Heh... Why does white flour exist? Really, why the step to white flour done? 15:02:35 interesting question 15:04:24 and not only that, afaiu bread is cheaper the more white flour it contains 15:04:38 which might somehow explain the why, i guess 15:06:47 * oerjan reads http://en.wikipedia.org/wiki/Flour 15:08:33 "The reason for the limited shelf life is the fatty acids of the germ, which react from the moment they are exposed to oxygen. This occurs when grain is milled; the fatty acids oxidize and flour starts to become rancid. Depending on climate and grain quality, this process takes six to nine months. In the late 19th century, this process was too short for an industrial production and distribution cycle. As vitamins, micro nutrients and amino acids were co 15:09:09 completely or relatively unknown in the late 19th century, removing the germ was a brilliant solution." 15:09:46 Ilari: looks like the likely culprit there... 15:10:43 Then some article has a pitch about "health benefits" of whole grain products. HRT, anyone? 15:11:22 well _today_ we have less problem handling whole grain than in the 19th century i assume 15:11:44 but it might still be more expensive to do so 15:12:00 *of a problem 15:12:26 Basically, in epidemiological studies, HRT seemed benefical, but in actual controlled studies, it proved to actually be deadly. 15:12:35 Ilari: ouch 15:12:37 (Hormone Replacement Therapy) 15:13:09 wait you aren't implying whole grain is actually unhealthy? 15:13:37 * oerjan is trying not to eat too fine bread as his stomach gets upset by it 15:13:44 Hah. 15:14:56 "It's worthwhile to note a confusing error: the USDA's Nutrient Data Laboratory (http://www.nal.usda.gov/fnic/foodcomp/search/) —and many websites that derive their data from it—show vitamin E as absent in crude wheat germ, this is an error." 15:15:32 And besides, bread isn't a good source of anything besides carbohyrate. The protein in it is junk, it isn't good source of micronutrients (and that's before it screws up absorption of some micronutrients). 15:17:09 Fineli gives 22.1mg per 100g of vitamin E in wheat germ (this is wheat germ, not whole grain wheat!) 15:18:01 Fresly ground wheat flour gives 0.4mg per 100g... 15:18:33 ...brilliant solution. Without the germ, flour cannot become rancid. Degermed flour became standard. Degermation started in densely populated areas and took approximately one generation to reach the countryside." 15:18:39 Some other whole wheat product gives 1.0mg per 100g. 15:19:38 fizzie, no valgrind error when I reproduced the bug with water. Can't with torch since the the memory usage of the huge surface stretching to somewhere around 4000,4100 + valgrind overhead makes the machine swap trash 15:19:39 And besides, those fibers in bread aren't good either... 15:20:09 "Flour dust suspended in air is explosive -- as is any mixture of a finely powdered flammable substance with air[12] (see flour bomb). Some devastating and fatal explosions have occurred at flour mills, including an explosion in 1878 at the Washburn "A" Mill in Minneapolis, the largest flour mill in the United States at the time." 15:21:05 Of course, there's the gluten sensitivity / celiac disease issue. Celiac disease is real nasty to diagnose (to say nothing about other gluten sensitivity). 15:22:08 bbl 15:23:24 "Bleached flour is a white flour treated with flour bleaching agents to whiten it (freshly milled flour is yellowish) and to give it more gluten-producing potential." 15:23:44 "Adherer effect" and "I don't give a shit effect" can really mess up results of epidemiological studies... 15:23:56 Ilari: wait what 15:25:15 Basically, the helathines/unhealthiness of something isn't the only factor, also healthiness/unhealthiness of other factors it is associated with will skew the results. 15:26:39 that makes sense 15:27:00 Find people with high consumption of say, whole grain bread and you likely run into health freaks. Find people with high consumption of butter and you likely run into those that don't give a shit about effects of their diet... 15:27:34 (or also low-carbers in the latter group, but those tend to be rare compared to the rest). 15:28:04 Ilari: you seem to be defining me as a health freak, that just doesn't seem _right_ :D 15:28:28 (i avoid both whole bread and usually butter) 15:28:29 Likely... Not that they are... 15:28:40 *fine bread 15:29:34 I'm no fan of butter personally (because I don't have that much use for it)... 15:31:10 I think milkfat is pretty much the only kind of real fat with independent track record... 15:32:09 well until recently i'd been avoiding milk products for a while as i think they upset my stomach a bit 15:32:50 With milk products, it tends to be that the more fat, the less stomach upset... 15:33:13 Of course, there are other factors as well... 15:34:37 Good sign to tell your eating habits are real bad: You get hungry again and "need" a snack few hours after eating... 15:35:25 there are always other factors, with that and this adherer effect you speak of i wonder if we have any _chance_ of finding out what things are really healthy or not (and not just food, but everything in our environment) 15:35:45 maybe there is just too much noise to be able to extract most of the signal 15:37:14 And then there's other stuff as well. One of the largest metastudies on saturated fat concluded (paraphrased): There is no link between saturated fat intake and heart disease, but because of publication bias, we probably overestimated the dangers of saturated fat... 15:37:53 I.e. saturated fat being neutral is likely overestimate of dangers... 15:38:52 Ilari: i had this idea in my head that it should be obligatory to register health studies somewhere _before_ they are done, so that negative results cannot be completely lost due to publication bias 15:39:22 That's the way it is done with clinical trials. 15:39:55 ah. 15:41:14 Did real nasty things with efforts to make statins seem effective... 15:42:17 good :D 15:42:28 i guess the system is better than i thought, then 15:42:30 BTW: Graph with total mortality vs. cholesterol will express better than words how much current guidelines on TC have to do with reality (none at all). 15:42:52 TC? 15:42:58 Total Cholesterol. 15:43:45 The upper end of reference range is in FALLING edge of U curve! If you reach the bottom (of course, this is just correlations), your doctor will complain about your cholesterol... 15:43:56 * oerjan finishes his fish and macaroni 15:44:50 Oh, and FFS, Sugar is not a saturated fat... 15:46:05 The ability to public health persons and nutrion researchers to confuse diffrent macronutrients is incredible... 15:46:32 That sugar and saturated fat confusion is just the most common one. 15:48:06 -!- MigoMipo has joined. 15:52:14 * oerjan guesses today's square root of minus garfield was eventually inevitable 15:53:35 (warning: not pretty) 15:54:07 oh it's not the first either 16:02:16 -!- MigoMipo has quit (Ping timeout: 260 seconds). 16:11:04 -!- MigoMipo has joined. 16:12:51 -!- elliott has joined. 16:14:43 22:56:56 who are you Gracenotes 16:14:49 quintopia: someone who's been in here longer than you 16:15:10 The Ghost of Esolangs Past 16:25:52 maybe I left during that one period when we didn't discuss anything marginally related to esolangs 16:26:30 Gracenotes: let us refer to that period, as "always" 16:26:44 precisely my dear ehird 16:26:47 Gracenotes: right now hot topics are minecraft and scapegoat :-P 16:27:09 ah yes, the countless hours I have wasted with minecraft 16:27:18 later we'll pass on to minegoats and spacecraft 16:27:23 ...the countless seconds I have saved not looking up scapegoat 16:27:27 *checks* 16:27:33 Gracenotes: good luck with that 16:27:59 Gracenotes: scapegoat is ais523's plasmaware version control system that I'm trying to upgrade to vapourware and, maybe, one day, solidware. 16:28:23 where is ais523? 16:28:48 Gracenotes: erm, presumably doing things that don't involve #esoteric, right this second :P 16:29:14 i have this vague impression he tends not to be here during weekends much 16:29:41 huh, no kidding.. this is his wikipedia editing chart nowadays. http://en.wikipedia.org/wiki/File:Wikipedia_user_ais523%27s_edit_times.png 16:30:12 Gracenotes: he's pretty much left wikipedia, afaiu 16:30:21 well, he de-sysopped himself 16:30:29 Gracenotes: that graph is from 2007 16:30:30 oerjan: yeah i don't think he has internet at home 16:30:39 elliott: i vaguely recall that too 16:30:43 well.. same principles 16:30:50 compare with e.g. http://en.wikipedia.org/wiki/File:Wikipedia_user_Gurch%27s_edit_times.png 16:30:59 yeah, I haven't touched Wikipedia in a while either 16:31:17 Gracenotes: well let's put it this way, the only times ais mentions wikipedia now are to try and explain why it's so terribly fucked up :) 16:31:29 although i'm sure i've seen him _some_ on weekends 16:31:30 hah 16:31:55 oerjan: I think he comes in when he'sat other people's houses 16:31:57 *he's at 16:32:05 huh 16:32:19 also wat, wikimedia has raised 10M dollars 16:32:33 some effective campaign this has been 16:32:36 some effective campaign this has been 16:32:54 er.. sorry.. reaching over keyboard for falling mouse 16:33:11 Gracenotes: http://en.wikipedia.org/wiki/Special:Contributions/Ais523 shows no activity since november 16:33:43 yeah those ads are beyond irritating 16:33:53 http://en.wikipedia.org/wiki/Special:Contributions/Gracenotes shows no activity since May 16:34:01 ...and also the amount they need has been increasing suspiciously far more than wikipedia has been growing 16:34:10 -!- Wamanuz3 has joined. 16:34:29 also, I don't really want to donate with the such close ties to Wikia, which I abhor... 16:35:27 they made a killing-ehirds-family wikia, didn't they 16:35:46 -!- Wamanuz2 has quit (Ping timeout: 265 seconds). 16:36:14 Gracenotes: No... but they have continually fucked over many wikis, including some I know the founders of, in VERY sleazy ways. 16:36:33 Gracenotes: For instance: registering [wikiname].com and .net and refusing to give them over; redirecting them to the Wikia wiki, saying it's to "protect their brand" or some shit. 16:37:07 Gracenotes: And whenever a wiki wants to move, they like to remove all notices it has been removed and fork off the wiki into their own graveyard that people can't find the real wiki from. 16:37:19 As well as a lot of censorship and hullabaloo over their utterly unreadable new skin... 16:37:51 Gracenotes: Anyway, even if I liked Wikia, it's still a blatant conflict of interest. 16:37:59 yeah... some wikis on there flourish, but wikis are supposed to be about the long tail... 16:38:25 the ones with autonomy and room to grow are the ones that were there from near the beginning 16:38:42 and uncyclopedia, well, they probably have the most autonomy 16:39:15 Gracenotes: http://nethack.wikia.com/wiki/Main_Page Quick! Can you tell that nethackwiki has been abandoned and moved at first glance? 16:39:28 Who knows how long that news post will be allowed to stay -- Wikia staff said they'd allow it for a certain time but then remove it. 16:39:30 (Seriously.) 16:39:44 (old site) in title? 16:39:51 Gracenotes: Yeah, I don't think that will last... 16:39:58 (and who looks at the title bar any more?) 16:40:09 when you're on slow internet and it loads first 16:40:20 hm. I dislike how minecraft on linux forgets custom key configs when you restart it. 16:40:34 Everything they've said on issues like this makes perfect sense if you accept this: "The founders of a Wikia wiki do not own that wiki. The entire community of a Wikia wiki do not own that wiki. Wikia owns that wiki, and the entire community moving out and abandoning ship is immaterial to the Wikia wiki." 16:40:36 R FOR INVENTORY, T FOR DROP 16:40:49 which is... rather /not/ what most people expect when signing up, I imagine 16:40:53 Gracenotes: erm save in .nethackrc? 16:41:14 ...there really is a .nethackrc? heh. 16:41:27 -!- oerjan has quit (Quit: This discussion is not good for my blood pressure). 16:41:42 Gracenotes: ... 16:41:46 Gracenotes: you play nethack and don't have a nethackrc? 16:41:52 Gracenotes: but what do you have boulders as??? 16:42:03 I don't play nethack. I play minecraft. 16:42:10 oh MINECRAFT okay 16:42:11 erm 16:42:17 i misread 16:42:17 :D 16:42:20 due to context 16:42:26 Gracenotes: I don't think minecraft has custom key configs. 16:42:26 does it? 16:42:53 it does. until a few weeks ago it remembered them upon closing 16:43:03 Gracenotes: oh yes, I remember, it does 16:43:08 never changed them though 16:43:17 r for inventory sounds nice 16:45:33 it's the season that I'm getting dissertation/doctorate defense notices in the mail from my university CS department. 16:45:39 *in the email 16:45:48 apparently receptions only follow *successful* defenses. funny that. 16:51:40 Gracenotes: you should be on our mc server :| 16:52:05 how busy tis 16:52:39 Gracenotes: um ineiros fizzie nailor (just zis guy, you know?) Vorpal (alas) Phantom_Hoover Deewiant and me. 16:52:41 not very busy at all. 16:52:48 mostly 0-3 people online :P 16:52:55 Gracenotes: although health is turned off. you have been warned. 16:53:13 and preparing for being on fire rather more than is strictly necessary is probably a good idea 16:53:56 health turned off? as in, there's no damage? 16:54:13 Gracenotes: yep. it used to be that way, but notch decided it was a bug and fixed it, so we put it back. 16:54:14 :p 16:54:29 Gracenotes: let's put it this way, getting places is a /lot/ more convenient if you can just jump off tall buildings. 16:54:35 yes, I played extensively on a server before the health update 16:54:54 also, the Temple of Doom's purifying lava bath didn't last nearly long enough to cleanse your body and soul with health on. 16:54:55 jumping off superstructures etc. but despite no damage, my stomach still turns every time I do it 16:55:07 Gracenotes: stay away from the Stairs then 16:55:10 but you can hardly see anything underlava 16:55:13 Gracenotes: (two stairs from max alt to near level 0) 16:55:22 also, that doesn't matter; you swim up a glass tube 16:55:24 elliott: didn't say it wasn't fun though 16:55:47 I set up a water elevator on my server, it worked despite buggy boat physics 16:55:49 Gracenotes: anyway if you want in ask ineiros, he's the admin 16:55:57 Gracenotes: Vorpal has two boat elevators or so 16:56:03 they are rather easy to break 16:56:14 water ladders are much more fun 16:56:15 (for instance, here's one method: "press A or D while in the boat") 16:56:21 Gracenotes: water ladders? how does that even work? 16:56:26 okay.. less fun, more useful 16:56:40 well. a bug in water physics probably 16:56:49 it lets you climb at 3x the speed of normal ladders 16:57:02 that sounds very useful. 16:57:03 OMG I FOUND A PUMPKIN PATCH 16:57:15 -!- hagb4rd has changed nick to hagb4rd|afk. 16:57:19 Gracenotes: our server is pre-halloween, so people go off on pumpkin expeditions all the time :P 16:57:37 ok so people=Vorpal and all the time=occasionally 16:58:38 Gracenotes: i hate how tools regenerating is going to be fixed :( 16:58:39 in SMP 16:59:10 it already is fixed 16:59:22 ..ain't it 16:59:24 Gracenotes: no it isn't 16:59:29 throw, pick back up again, woohoo 16:59:42 it's going to be fixed with server-side inventory (suggesting that the current form is *client-side* inventory: wow just wow) 16:59:44 it means you actually have to look for *resources* goldarn it 16:59:55 oh well, we'll just use hMod to put it back >:) 16:59:58 Gracenotes: hey we have enough of that already 17:00:04 which you have to do anyway if you forget to drop it 17:00:07 Gracenotes: but making diamond tools all the time is waay too expensive :P 17:00:10 which I have done many, many a time. even with diamonds. 17:00:19 well, i've never done that 17:00:21 see a brain doctor :P 17:00:42 anyway yes ineiros is the man. 17:02:46 I had root on the box my previous server was on. I also had physical access to it. unfortunately, 2/3 disks failed on RAID.. 1, I think 17:03:14 Gracenotes: our "box" is a computer in ineiros's home :P 17:03:27 and yes, exactly the same things happen when he torrents as you'd expect. 17:03:29 we're low-fi, man. 17:03:32 authentic. 17:03:37 we're recording minecraft on cassette. 17:03:58 groovy 17:04:25 elliott, seems I have AA off in MC. I tried forcing it on (it turned out the settings were not what I thought they were) and it causes rendering issues 17:04:37 as in, white lines at the edges of flat textures 17:04:42 yeah i heard about that 17:04:44 sucks :( 17:04:54 for some reason I'm listening to My Chemical Romance. I feel like I'm 16 again. 17:05:12 elliott, actually I'm not surprised if it is using one image for several textures 17:05:26 OH MAN IM WATCHING NOTCH DO THINGS ON HIS COMPUTER LIVE ITS LIKE HAVING A BABY 17:05:29 why does this even exist 17:05:42 dude everyone who plays minecraft hates you 17:05:43 he always does ludum dare 17:05:45 what are you even doing 17:06:11 stop doing whatever you're doing and fix the myriad bugs you bastard 17:06:17 i'll punch you 17:06:33 OH MAN IM WATCHING NOTCH DO THINGS ON HIS COMPUTER LIVE ITS LIKE HAVING A BABY <-- ? 17:06:46 Vorpal: http://mojang.com/live/ WARNING TO SEE NOTCH'S AWESOMENESS IN ACTION REQUIRES MACROMED^&wADOBE FLASH 17:08:40 elliott, the basic structure of SMP (Sustainable Minecraft Project) is done btw 17:08:52 what remains is to flesh it out 17:09:04 Vorpal: i, Metropolis, am going to come and civilise the fuck out of your people 17:09:07 Vorpal: expect smallpox. 17:09:13 elliott, :P 17:09:30 elliott, I expect you are careful next to the non-windowed lava lighting systems 17:09:45 which depends on on lava flowing down to lower alt 17:09:48 Vorpal: DAMMIT IF YOU WON'T ENTER CIVILISATION HOW CAN WE SHOW YOU THE DANGERS OF YOUR WAY OF LIFE 17:09:52 -!- Gracenotes_ has joined. 17:10:01 elliott, placing blocks in the wrong places could result in severe problems 17:10:21 elliott, I use enternal-log-fire in a few places 17:10:22 -!- Gracenotes has quit (Read error: Connection reset by peer). 17:10:24 "What else do I have? A sword, some gravel, a bucket of water… a bucket of water! The deadliest weapon of all!" --Tom Francis 17:10:28 Vorpal: *eternal 17:10:28 eternal* 17:10:41 hah, beat you to it (same second though) 17:10:41 "He has the saddest face, as the current drags him away from me and I quickly lay down a barrier in case he can overpower it. He can’t, he just thrashes armlessly as he stares miserably into my eyes, drifting slowly backwards." 17:10:58 -!- Gracenotes_ has changed nick to Gracenotes. 17:11:01 elliott, a creeper? 17:11:05 yes 17:14:16 OK, I swear to god I will now write a Lisp interpreter in 150 to 200 lines of C code, including a reader. 17:14:25 you have monsters turned on right 17:14:31 ..killable monsters 17:15:41 Gracenotes: well, not enemy mobs. :p 17:15:52 they'd just be irritating, since they couldn't do anything 17:16:01 I wouldn't mind creepers 17:16:17 yeah.. you need monsters for real. they're something new in SMP I haven't played with before. 17:18:11 Gracenotes: ask ineiros :P 17:18:26 Gracenotes: i think the creepers might make the way into the underground minecart system though. 17:18:30 which would be. irritating. 17:18:33 *their 17:18:40 torches torches everywhere 17:18:50 Gracenotes: old mine gigantic old mine everywhere connected to the minecart syste 17:18:51 m 17:18:53 *system 17:19:08 also open-air exit/entries 17:19:14 *exits 17:19:25 hm. have security checkpoints. ;.; 17:19:44 Gracenotes: it would be fun to have Creeper Wednesdays with monsters, pvp and health turned on or something 17:21:20 So, the raw price of Minecraft times the number of sales = £6.76 million pounds. 17:21:26 I think PayPal deducts 20% or so. 17:21:45 So £5.4 million or so. 17:21:50 Notch is one motherfucking rich bastard. 17:25:27 -!- jsaasch has joined. 17:28:05 Vorpal: you know the locations you scouted fort he cube? 17:28:07 *fort he 17:28:08 *fort he 17:28:10 *for the 17:28:13 -!- jsaasch has quit (Client Quit). 17:28:17 *fort he 17:28:22 Fort, he! 17:28:34 -!- FireFly has joined. 17:29:23 Vorpal: I presume the only cobble in SMP will be from a factory. 17:32:32 "Luckily, I discover after three minutes of tactical standing still, this particular Creeper is too stupid to move." 17:38:15 elliott, yes or that which is excavated to make room for the rooms (no pun intended) 17:38:25 elliott, throwing it away would be kind of pointless 17:38:27 Vorpal: that's not sustainable, dude 17:38:32 build houses only in existing indents in hills 17:38:49 elliott, that would leave a large above-ground footprint 17:39:00 Vorpal: you prefer non-sustainability? 17:39:30 elliott, it isn't non-sustainable, I used existing dirt for tree plantation (just moved it around, less than 5 blocks in all cases) 17:39:52 elliott, it will be sustainable because it won't need to grow, thus it will be a fixed, finite cost 17:40:14 Vorpal: it's more damaging to hollow out the ground than to build small, perishable structures in indents of hills 17:40:18 elliott, since there will be capping to make the population sustainable 17:40:39 Vorpal: you're going to kill people when they reach 21? :p 17:40:54 elliott, no, I do it like China or something 17:41:03 ah. emulating china. always a good idea 17:41:08 Vorpal: so forced abortions then 17:41:12 quite! 17:41:17 Vorpal: you got sustainable coat hangers? 17:41:27 elliott, but your suggestion reduces natural habitats for various threatened animals living in the ecosystem in indents of hills! 17:41:32 elliott, how can you possibly support this 17:41:44 don't build doors and put animal food in the houses, duh 17:41:48 live in peace with the mobs 17:42:04 elliott, alas, that won't work, considering they need untainted nature 17:42:09 Vorpal: all you need to do is build a small box of wood with one side open 17:42:12 you can leave the grass floor 17:42:20 you could even open up the ceiling apart from one block border around 17:42:23 to let the light in 17:42:29 and then just build sustainable things for living in the corners 17:42:47 elliott, I specifically avoid existing caves btw to not taint the underground ecosystems 17:42:50 Vorpal: or, better: do it in the relative dark -- not so much that you'll need extra lighting, but nowhere that animals would be attracted to 17:43:09 -!- augur has quit (Remote host closed the connection). 17:43:34 -!- augur has joined. 17:44:15 hm 17:44:50 elliott, what about animals allergic to wood then? 17:45:08 (I think we jumped the shark) 17:45:26 Vorpal: they will stay away, since it's not in the light 17:45:36 Vorpal: in fact, what you could do is put some lava lighting above an area just a bit away from the house 17:45:39 just floating in the air 17:45:45 that way, animals will go there, not to your house 17:46:06 elliott, and they will burn 17:46:08 poor them 17:46:15 Vorpal: no? 17:46:17 the lava is in the air 17:46:43 Vorpal: in fact, you could even shield them from the upsetting image of lava... put cobble stairs on the top and bottom 17:46:46 (they let light through) 17:47:02 hm 17:47:19 elliott, the aesthetics police would be after me then 17:48:10 Vorpal: find a natural flat space surrounded by mountains so that not many mobs make it in 17:48:24 Vorpal: build a fence around the space not occupied by animals, and say two to four doors around it 17:48:32 -!- augur has quit (Ping timeout: 276 seconds). 17:48:33 Vorpal: tada, you can build sustainably without worrying about the animals 17:50:52 ok, reddit has officially denigrated to saying "lol, stop making excuses for wanting free shit!" to anyone who dares to question incredibly strong copyright in any way 17:50:59 fuck this shit. 17:51:18 elliott, I thought you liked reddit? 17:51:45 I like how you use "reddit" to describe every single user 17:52:50 Deewiant: i like that too! 17:52:59 Deewiant: actually i'm just sick of the general quality of the comments. uh, and posts. 17:53:08 Vorpal: I /did/, circa 2007 17:53:25 Unsubscribe from shitty subreddits 17:53:49 elliott, so which one do you like now? 17:54:06 Deewiant: Name a non-shitty programming/CS-related subreddit. 17:54:15 HASKELL 17:54:16 /r/coding? 17:54:29 FOREVER 17:59:09 OMG DIMINS 18:00:02 Deewiant: /r/coding is terrible. 18:00:21 Deewiant: Its front page spans a whole half year. 18:00:38 Deewiant: And it misses a lot of the interesting stuff *actually in* /r/programming. 18:00:46 Deewiant: Oh, and Jon Harrop is on the case: 18:00:47 "Building a business with Haskell: Case Studies: Cryptol, HaLVM and Copilot" 18:00:49 --> 18:00:57 "Off-topic for /r/coding and you already posted it to /r/programming as well as /r/haskell." -- Jon "Colostomy Bag" Harrop 18:01:12 Pick quality xor quantity. 18:02:49 Deewiant: /r/programming = quality + crap; /r/coding = fewer quality + fewer crap + very slow 18:02:59 + still has crap 18:03:05 Slashdot = Slashdot 18:03:10 ??? = ??? 18:03:19 Hacker News = Hacker News 18:03:29 /r/compsci = /r/compsci 18:03:51 Deewiant: Hacker News = Quality + irritating startup asswipes + irritating startup asswipe posts 18:04:01 but.. didn't you hear.. hacker news is turning into reddit???!?!?!?!?!?111!?!!1oneone 18:04:02 (If I could filter out the business bullshit from HN I'd read it exclusively.) 18:04:37 Deewiant: /r/compsci = Nice reading, perhaps, but not really the same thing as the others. 18:04:48 Lots of questions, not really many actual interesting posts. 18:05:21 You can't have everything 18:05:41 Deewiant: Yes I can, see: /r/programming circa 2007. 18:05:50 You can't have everything permanently 18:06:17 Deewiant: There's no inherent reason why it went to shit. Anyway I would be fine if people just kept cloning /r/programming every 2 years or so. :p 18:06:25 elliott, see mc 18:06:50 /r/coding is a clone; as you've noted it didn't take off 18:08:49 Deewiant: I mean on something that isn't reddit. :p 18:09:04 It doesn't matter where it is if it doesn't take off 18:09:48 Deewiant: Well, yes. 18:10:02 Deewiant: I meant clone as in clone and take users. :p 18:10:20 Nontrivial. 18:10:36 -!- wareya has quit (Read error: Connection reset by peer). 18:10:38 Deewiant: It was a hypothetical. 18:11:10 In the meanwhile, just read whatever and downvote and hide the crap 18:11:33 -!- wareya has joined. 18:12:15 If the amount bothers you too much, stick to low-traffic places 18:12:20 Deewiant: But I have so much laze within me, dude. 18:12:21 So much laze. 18:12:35 Anyway "downvote and hide" is a rather more tedious policy with comments. :p 18:12:57 Not really 18:13:39 Deewiant: Consider that bad comments often have good replies. 18:14:00 No, not "often". Rarely. 18:14:59 Deewiant: Well, fine, but I can't stop myself reading them anyway. :p 18:15:07 Phantom_Hoover: Latest github version should make the -3 bug non-fatal; if it hits, it should just freeze all map updates, but the packet-forwarding (and GUI stuff, but that's... less useful when it won't see the traffic) side should continue working. 18:15:14 I do need to actually fix the bug too, of course. 18:15:15 If you are drawn to crap, don't complain that it exists. 18:15:45 Deewiant: But I like complaining. 18:18:09 elliott, we know... 18:18:30 Indeed. But evidently not Deewiant ... either that or he just wants to complain about my complaining, which I can support :P 18:19:02 I just have a vain hope that you'd stop complaining 18:19:54 Deewiant: Alack, alack, alack, my complaints are unstoppable. 18:22:28 -!- Eva_Earlong has joined. 18:24:36 hi cheaters 18:27:43 Eva_Earlong: Cheaters? 18:27:54 -!- Mathnerd314 has joined. 18:29:02 -!- cheater99 has quit (Ping timeout: 240 seconds). 18:31:44 I neither *am* a cheater no do I *wear* cheaters. 18:31:47 18:33:20 pikhq: let fib=(fix$(0:).(zipWith(+)=<<(1:)))!! 18:33:22 pikhq: Golf. 18:33:47 elliott: Needs more () 18:33:48 elliott, see mc... 18:34:16 Deewiant: Feel fee to donate it more ()s :P 18:34:32 elliott: You need to wrap the whole thing in () 18:34:41 Deewiant: No you don't. 18:34:45 elliott: Yes you do. 18:35:03 Oh, so you do. 18:35:04 elliott: Very nice... Hmm. 18:35:05 DAMMIT SCIENCE 18:35:14 Then 18:35:14 fib=(!!)$fix$(0:).(zipWith(+)=<<(1:)) 18:35:15 Is shorter. 18:35:45 elliott: I don't think the partially applied !! works like that without more parens, in the first, though. 18:35:50 pikhq: Yeah, thus 18:35:51 fib=(!!)$fix$(0:).(zipWith(+)=<<(1:)) 18:36:02 BTW: This is both memoised and O(n). 18:36:03 Yeah, that's just fine and shorter. 18:36:37 * pikhq tries to think of a shorter way of generating that list... 18:36:52 elliott, you made an attack in MC, that you then did not justify, care to justify it either there or here? 18:37:18 elliott: fib=(!!)$fix((0:).scanl(+)1) 18:37:36 Vorpal: (1) You are incredibly paranoid to call that an "attack"; (2) you often call other people cheaters yet didn't blink an eye at discussing the precise implementation of a definite cheat method (one I have no problem with); I found this hypocrisy amusing. 18:37:42 Deewiant: Nice. 18:37:53 Deewiant: fib=(!!)$fix$(0:).scanl(+)1 18:37:55 Deewiant: That was easy :P 18:38:00 *grin* 18:38:01 elliott, I don't remember calling other cheaters, and which method did you mean? 18:38:18 elliott: I didn't really optimize it, but scanl anyway. :-P 18:38:22 Vorpal: Clearly you have a terrible memory, as you've called me a cheater plenty a time; and I meant the teleportation. 18:38:29 Deewiant: Yeah, but needless parens! 18:38:58 elliott, hm, not sure I consider it cheating, if the server is badly coded enough to accept it 18:39:28 coded badly enough* 18:39:34 Vorpal: You called plenty of server-allowed things cheating before. 18:39:38 e.g. duplication bugs. 18:40:13 elliott: The bracket-heavy version (fix((0:).scanl(+)1)!!) is the same length, FWIW. 18:40:29 Deewiant: Pah! 18:40:32 elliott, well, I changed my mind about that 18:40:37 Shouldn't have written it with the prefix-(!!) in the first place. :-P 18:40:45 Vorpal: I see. And when was this? Five minutes ago...? 18:40:47 elliott, once I learnt that it was due to crappy code 18:40:51 elliott, a few days ago 18:40:55 You definitely said that PH would be a cheater to use duplicated TNT yesterday. 18:40:57 Or the day before. 18:41:31 elliott, I said it would scare me, and I don't support that usage. But not cheating, rather it's making use of bugs 18:44:17 -!- Eva_Earlong has left (?). 19:01:07 Huh. Villa Las Estrellas. It's the only civilian settlement on Antartica. Not a research station, it's just a freaking town. 19:03:25 -!- Eva_Earlong has joined. 19:07:36 Is that antartica itself or a closeby island? 19:13:06 Antartica itself. 19:13:12 Vorpal: I mean something like http://fc05.deviantart.net/fs71/i/2010/274/0/6/realistic_minecraft_icon_by_triquetraclover-d2ztxky.png 19:13:16 Vorpal: except, less realistic dirt 19:13:19 and without the stone 19:13:28 Vorpal: i.e., something as "cartoony" (except not really) as the original, just HD... not realistic 19:13:42 Vorpal: Ore would still look the same, just moar pixels. 19:13:51 Diamond blocks would still look as non-diamondy as they do, just moar pixels. 19:13:57 elliott, hah 19:14:29 -!- Eva_Earlong has left (?). 19:14:31 -!- Eva_Earlong has joined. 19:14:36 -!- Eva_Earlong has left (?). 19:25:31 God. People do Let's Plays of Persona 3. 19:25:55 (Persona 3 is a ridiculously long JRPG. A speedy playthrough is 60 hours.) 19:27:00 -!- ais523 has joined. 19:27:10 (also, it's in the series that *invented* the "gotta catch 'em all" mechanics of Pokemon) 19:38:09 pikhq: context? 19:43:06 -!- church1 has joined. 19:43:29 -!- church has quit (Ping timeout: 250 seconds). 19:48:04 elliott, down? 19:48:21 ais523: God. People do Let's Plays of Persona 3. 19:48:21 (Persona 3 is a ridiculously long JRPG. A speedy playthrough is 60 hours.) 19:51:01 Yeah... 19:51:28 * pikhq is currently 53 hours into a playthrough. 19:51:38 This may end up being a really speedy 100% run. 19:53:36 -!- oerjan has joined. 20:08:50 You definitely said that PH would be a cheater to use duplicated TNT yesterday. 20:08:56 I had duplicated TNT? 20:09:12 I made 1 block, and once I used it I had no duplicates. 20:09:19 Phantom_Hoover: You didn't. 20:09:26 Vorpal just decided that it was a posibility. 20:09:28 *possibility. 20:09:32 pikhq: you've watched it for 53 hours? :p 20:09:38 On what grounds? 20:09:39 you had singulated TNT, you cheater! 20:10:19 Phantom_Hoover: You're a filthy cheater? 20:10:20 Phantom_Hoover, on the grounds that it could be done 20:10:31 Phantom_Hoover, not saying you had 20:10:43 Phantom_Hoover, it was a misinterpretation of what elliott told me 20:11:14 * oerjan is a murderer. hey, it could be done... 20:11:54 elliott: No, I've *played* it for that long. 20:12:00 pikhq: Ah. 20:12:08 oerjan: you expect that to /not/ go way over Vorpal's head? :D 20:12:35 elliott: i did not consider that issue. 20:13:23 elliott, of course it doesn't go over my head. It went below my feet 20:13:31 (due to not watching irc) 20:16:18 -!- Gracenotes has quit (Ping timeout: 265 seconds). 20:18:04 Okay, this might take less time than I thought to finish. 20:18:07 GAME BREAKER GET! 20:18:20 deliberate game breaker? or a glitch? 20:18:35 Defeat boss before it gets a turn! 20:18:54 Thank you, Odin! 20:20:03 And no, this is not the infinity-plus-one sword, just an unintended consequence of game mechanics. 20:20:26 How? 20:20:44 Thunder Reign + Elec Amp + Elec Boost + max magic. 20:21:19 Voila, defeat everyone while seriously underleveled. 20:22:35 The infinity-plus-one sword, BTW, just one-shots all but one enemy in the game... But you can only get it at the very end. Literally level 98. 20:23:53 what game? 20:24:20 Persona 3 FES 20:24:37 oh 20:24:38 bleh 20:25:07 I highly recommend it, but note that it's long and hard unless you're very clever at abusing the game mechanics. 20:25:28 not a fan of Persona 20:25:40 Which game/games have you played, and for how long? 20:29:36 pikhq: tetris, for five days (without breaks) 20:29:56 In the series. 20:30:01 elliott: -_-' 20:31:34 * oerjan did a mean tetris back when 20:32:57 fizzie, waiting for it to connect 20:33:08 Also disconnected, have a typo to fix. 20:33:13 Won't take long. 20:33:16 fizzie, minecraft.net is down 20:33:22 Ohh. 20:33:31 That could even have caused the invisibility. 20:33:35 fizzie, maybe 20:33:38 Since the skin-loading won't work. 20:33:42 502 bad gateway 20:33:44 ah 20:33:54 up again partly 20:33:56 and down 20:34:27 * oerjan realizes s/when/before ehird was born/ 20:34:38 s/ehird/elliott/ 20:34:40 Okay, managed to connect now. 20:34:47 fizzie, I have not 20:35:06 I think the longest I've played a game before in a row is probably 12 hours or so, for both Neverwinter Nights and Battle for Wesnoth 20:35:21 -!- Gracenotes has joined. 20:35:33 Which NWN? 20:35:44 1 20:35:57 2 is a) not as good IMO, and b) doesn't run on Linux 20:36:02 oerjan: I played Tetris before they invented computers. 20:36:03 I mean 20:36:07 Abatris. 20:36:08 Presumably the 2002 one? 20:36:13 PLAYED ON A MOTHERFUCKIN' ABACUS 20:36:16 Well, given that you mentioned 1 and 2, yes. 20:36:19 Deewiant: "No, the original AOL one!" 20:36:36 elliott: It's a reasonable question. 20:36:52 Deewiant: Not really, since probably three people played the original AOL one :P 20:37:08 More like tens of thousands. 20:37:11 Deewiant: You know why? It went out of business because of people copying floppies. 20:37:13 A sad tale. 20:45:30 fizzie, down or just lagged? 20:45:35 I may have made it go down. 20:45:39 Attempted to place a tile entity where there was no entity tile! 20:45:45 my mc said that 20:45:46 Possibly, my client did not want to download that many chunks. 20:45:48 elliott, what did you do? 20:45:50 elliott, ... 20:45:53 Vorpal: I might have gone to somewhere. 20:45:57 elliott, where? 20:46:07 It might be a place with 6 digits in its coordinates. 20:46:08 elliott, if you crashed the server, fuck you idiot 20:46:28 Yes, because I could have *easily* known that was going to crash the server, being omniscient. 20:46:40 I think it's just uberlagged. 20:46:48 elliott, yes, when notch is involved it seems likely :P 20:47:27 Wait, is it going to generate *every single chunk* between where I was and (100000,100000)? 20:47:32 I just hope it's just a "restart the server" mess and not a "well, restore your world from backups" sort of a mess. 20:47:35 elliott, yes I think so 20:47:38 Because if so, isn't that going to take up like ... gigabytes on the server? 20:47:46 THIS WAS A BRILLIANT IDEA IF YOU ASK ME 20:47:49 elliott, .... 20:47:52 elliott, no it wasn't 20:47:57 also last backup was days ago 20:48:05 elliott, what'd you do? 20:48:07 And how? 20:48:09 It's going to be hung for like five weeks generating masses of terrain that will never be visited. :p 20:48:13 Phantom_Hoover: //goto 100000 100000 20:48:22 O.o 20:48:25 elliott, iff it did that, then I propose you are banned 20:48:27 There's a goto command? 20:48:28 Phantom_Hoover: We have teleportation in mcmap now, and it's KER-AAAZY 20:48:32 Phantom_Hoover, in mcmap 20:48:33 elliott: You could've dropped a 0 from both of those numbers and still got to a new location. 20:48:38 Ohhhh. 20:48:39 Deewiant: Yes, but. 20:48:48 elliott, no but 20:48:49 Deewiant: I could even *walk* to (4000,4000) from /that/. 20:48:53 Deewiant: Which is just boring. 20:48:57 .... 20:48:59 elliott, you crazy bastard. 20:49:03 Phantom_Hoover: *genius 20:49:09 Phantom_Hoover: *pioneer 20:49:15 *bastard 20:49:15 Phantom_Hoover, s/bastard/idiotic bastard/ 20:49:17 Phantom_Hoover: *scientist (I was doing an experiment! Everyone died!) 20:49:25 there seems to be something very wrong with this game 20:49:28 Bastard scientist! 20:49:31 if it's causing such chasms in the community 20:49:37 ais523, hah 20:49:40 ais523: Vorpal is the only one who actually gets angry. 20:49:48 ais523: Yes, it's unthinkable that Vorpal and elliott not get along just fine. 20:49:56 ais523, what's wrong with it is that it was coded by an idiot who had exactly one good idea and then messed it up royally. 20:50:03 ais523: To be fair, we are now on the level of blatantly exploiting major bugs :-P 20:50:09 elliott, you crazy bastard. ais523: Vorpal is the only one who actually gets angry. 20:50:16 elliott, you have Phantom_Hoover on /ignore? 20:50:19 ...lol 20:50:24 Phantom_Hoover: You were being totally serious and really hate me now, right? 20:50:36 Phantom_Hoover: What idea? 20:50:37 elliott, I think he is annoyed with you 20:50:38 I feel like I have lost my only true friend in this sad, cold, thankless world of desolation. 20:50:42 Vorpal: I think you think wrong. 20:50:49 well, time for single player 20:50:50 I think bunnies. 20:50:50 elliott, I DETEST YOU AND I AM ALREADY ON A TRAIN TO HEXHAM TO BEAT YOU TO DEATH WITH A LAMP POST. 20:50:56 Vorpal: OH NO, YOU WERE RIGHT!! 20:50:58 OH GOD WHAT WILL I DO 20:51:00 I doubt that 20:51:05 Deewiant, it's called "Minecraft"/ 20:51:08 I'd better jump out of the window before Phantom_Hoover can unleash his rage on me. 20:51:17 WINDOWS WILL NOT SAVE YOU 20:51:20 ah fun playing with the CPU 20:51:31 ais523: Welp, so anyway, until the server stops creating ~31G of maps (well, if uncompressed), scapegoat time! 20:51:39 *finishes creating 20:51:39 Phantom_Hoover: Yes, but what part of it is the good idea 20:51:50 Deewiant, the bits that are actually *fun*. 20:51:59 Bad ideas include: doing it in Java. 20:52:13 Oh god, this doggerel battle is impossible. 20:52:13 Doing it without knowing the slightest thing about geology. 20:52:28 Phantom_Hoover: Hey now, the geology ignorance is brilliant. 20:52:30 ineiros, I think elliott just royally fucked up the server 20:52:30 Making it steadily more restricted. 20:52:39 ineiros, with SCIENCE! 20:52:42 Phantom_Hoover: It's like Mark Doesn't Understand Animals: The Game: The Geology Edition. 20:53:04 The science of "hmm, it works with n... BUT DOES IT WORK WITH 10^n?" 20:53:09 Phantom_Hoover: I was wondering if you could point to any differences between it and, say, Infiniminer. 20:53:20 Deewiant, haven't played Infiniminer. 20:53:22 Phantom_Hoover: I didn't try and go to 10^4000. :p 20:53:45 Phantom_Hoover, who cares about exact geology. I mean, it isn't like the 1x1x1 cubic block of stone unit is very realistic either 20:53:53 or the carrying capacity of a player 20:53:56 Deewiant: I like how all the infiniminer google results point to Minecraft pages. 20:54:01 or the yield of a sheep 20:54:29 elliott: Where "all" = "first two" 20:54:38 Deewiant: Yup. 20:55:00 Back up. 20:55:04 Vorpal: 20:55:24 mhm 20:56:05 elliott, nope 20:56:09 elliott, or down again 20:56:17 Vorpal: Nope, up. 20:56:17 elliott, it fails to log in 20:56:20 elliott, not for me 20:56:26 ah now 20:56:35 Well, it's very laggy for me. 20:57:33 Deewiant, have you played Infiniminer? 20:57:54 No 20:58:18 PH!!!! 20:58:20 Phantom_Hoover: you'll need to "git pull". 20:58:22 Phantom_Hoover: And re-make. 20:58:24 Phantom_Hoover, you will dos the server 20:58:28 Phantom_Hoover, do you want that? 21:01:21 Phantom_Hoover: It's //goto 100000 100000 21:01:25 Phantom_Hoover: FWIW, since the chat is lagging. 21:01:41 Phantom_Hoover: Oh, and you need to quit mcmap after it. 21:01:49 Phantom_Hoover: And reconnect *without* it. 21:01:51 Phantom_Hoover: Okay? 21:02:10 Phantom_Hoover: Also you MUST BE ABLE TO SEE THE SKY when doing it. 21:02:10 I'm getting extremely bad lag, FWIW. 21:02:17 Phantom_Hoover: Have you done it yet? 21:04:09 elliott, it seems pretty much down anyway 21:04:18 elliott, scenery completely stopped loading for m 21:04:20 me* 21:04:24 Phantom_Hoover? 21:04:28 elliott, DAMN YOU 21:04:40 Did you close mcmap afterwards...? 21:04:43 elliott, it went down 21:04:44 You made it seem like it was actually doable now the server had recovered! 21:04:47 elliott, as in, timed out 21:04:54 Phantom_Hoover: It will probably be down for a lot shorter time this time. 21:04:56 Phantom_Hoover, yes he is an utter idiot 21:04:58 Since it doesn't actually have to /do/ anything. 21:05:10 elliott, still this is definitely a DOS 21:05:21 Does the teleportation send one packet or several? 21:05:24 What. 21:05:24 Vorpal: Yes, we're all evil computer spy hackers stopping you get on with your legitimate business work. 21:05:27 Deewiant: Thousands. 21:05:30 ineiros: We sort of have teleportation now. 21:05:33 does it actually? 21:05:35 hm 21:05:35 ineiros: And it's SCIENTIFIC! 21:05:39 elliott: I've briefed him in query already. 21:05:46 elliott: So that could be the cause. 21:05:46 fizzie: Mr. President! Mr. President! 21:05:49 THE MASSES HAVE WEAPONS 21:05:51 Deewiant: Well, mcmap sends two packets. 21:05:58 Deewiant: What the server does is of course anyone's guess. 21:05:58 Oh. 21:06:16 I think ineiros is officially sick of us :) 21:06:21 ineiros, adding those wrap points would have been a good idea, would probably have meant that no one cared to do this hack 21:06:21 What. 21:06:30 at least of elliott 21:06:32 ... 21:06:33 I'm just drunk. 21:06:35 oh 21:06:47 ... 21:06:51 "The tiles are 1 m^3." --Notch, in a YouTube video titled "Cave game tech test", May 2009. 21:06:58 Apparently we're all 1.7 m tall, too. 21:07:00 Despite being two blocks high, 21:07:01 *high. 21:07:10 elliott, we are not fully 2 blocks high 21:07:14 ineiros: I suggest you just leave the server alone and wait for it to recover :P 21:07:17 I'm over 1.8m tall. 21:07:18 elliott, stand in a 2 m corridor 21:07:23 ineiros, *in game* 21:07:26 is what he mant 21:07:27 I'm 7m tall. 21:07:28 meant* 21:07:38 elliott, he is drunk. Stop confusing him 21:07:39 Me too. :P 21:07:44 ineiros, you are just nasty now 21:07:44 Vorpal apparently thinks drunk people = people who are beyond even stupidity. 21:07:45 err 21:07:46 elliott, ^ 21:07:48 HE MEANT IN GAME DUH 21:07:51 you are just nasty now elliott 21:08:01 Vorpal: Oh man, that's the worst insult I've ever heard from you. I'm going to kill myself. 21:08:06 I sob, I sob, I cry. 21:08:20 elliott, so, will you keep porting to places that bring down the server for several minutes? 21:08:29 elliott, or will you learn from this mistake? 21:08:42 Maybe I will if you keep whining about it. :p 21:08:52 elliott, no one will like that you know. 21:09:02 No one else is whining at me constantly. 21:09:25 only because you keep acting as if you did nothing wrong 21:10:05 fizzie: I think you should hang me, like Saddam. 21:10:13 'Tis only fitting for a DOSing cybercrime-terrorist like I. 21:10:30 In-game, of course. 21:10:48 Maybe with some string, and a hanging thing built out of fenceposts. 21:11:20 fizzie, not sure how you would get the horizontal bar out 21:11:28 'Tis taking all my willpower to not find the most popular Alpha server and teleport to 2^60 there or so. 21:11:36 (Okay, so it's actually taking very little willpower since I wouldn't be anonymous.) 21:11:51 elliott, would you actually do that if you was anonymous? 21:12:02 elliott, if so, what sort of moral code do you have 21:12:39 Apparently downloading existing chunks is slower than generating them. 21:12:43 Who'da thunk it. 21:12:50 elliott, it need to read from disk 21:12:53 elliott, or maybe it crashed 21:12:58 Back up. 21:13:09 Phantom_Hoover: COME! 21:13:15 COME AND DELIGHT IN THE 100K WITH ME 21:13:41 OK! 21:14:03 Phantom_Hoover: Don't use mcmap, you doofus. 21:14:15 Phantom_Hoover: It can't handle >64k maps. 21:14:18 Phantom_Hoover: Connect directly. 21:14:57 -!- zzo38 has joined. 21:19:25 ineiros, there? 21:20:36 ineiros, tp request to ehird 21:20:48 It booted my client ... 21:20:55 elliott, no it didn't 21:21:02 God, that was weird. 21:21:04 After I said your mothers are dingbats; perhaps it found me insulting. :p 21:21:08 * Phantom_Hoover checks his screenshots. 21:21:11 Straight after, actually; quite odd. 21:21:13 What the... 21:21:15 Yeah, I took some screenies too. 21:21:20 ...they're totally black. 21:21:25 No -- wait -- this one has something more. 21:21:26 I got random noise. 21:21:39 -!- elliott has quit (Quit: THE FURY OF THE SOUND CAN NEVER BE MEASURED). 21:21:45 -_- 21:21:57 Phantom_Hoover, you know, you are a parody of yourself now 21:22:31 Wait, the contents of the screenshots folder is *changing*. 21:22:49 And there's a process with 100% CPU use and no command in top. 21:23:23 O GOD IT'S SPREADING 21:24:15 -!- elliott has joined. 21:24:17 STAND TO ATTENTION. 21:24:22 This is your final warning. This is your only warning. 21:24:27 The gate is here, it ææ@³øđŊ¼Ø⅛Ŋ¼ 21:24:38 On the strike £ı¿°| it will©£ 21:24:46 There will be no ŋ”ŋŋŋŋ 21:24:56 As it @ł³½€}→¸every w³½\}→ will disintł³]}½→ß}¶ßŧ“ 21:24:58 -!- elliott has quit (Client Quit). 21:25:08 Possibly you could consider the off-topicness of your performance art, though? 21:25:44 Ouch Ouch OuchOuchOuch Ouch OuchOuchOuchOuchOuchOuchOuch Ouch OuchOuch OuchOuch Ouch Ouch Ouch Ouch OuchOuchOuchOuchOuchOuchOuchOuchOuchOuchOuchOuchOuchOuchOuch WARNING DANGER OUCHOUCHOUCHOUCH OUCH OUCHOUCH 21:26:27 zzo38 is not participating, I ought to point out. 21:26:33 He is just being weird. 21:26:44 -!- elliott has joined. 21:26:45 all 21:26:46 Yes, that's completely in-character for him. 21:26:47 must 21:26:52 -!- elliott has quit (Remote host closed the connection). 21:29:09 fizzie, it crashed? 21:29:37 fizzie, die: main.c:77 21:29:38 I'm in a bus. Soon home. 21:29:42 fizzie, client->server 21:29:49 I got a SocketException 21:29:49 Vorpal: That's just when it gets disconnected. 21:29:58 ineiros, did you just hellify the server? 21:30:05 XD. 21:30:08 ineiros, did you just... 21:30:16 Evidently 21:30:24 And ghasts, too! 21:30:26 My, my! 21:30:37 I'm disconnecting until it is fixed 21:30:38 Yes, I did hear that sort of thing happens to naughty users. :p 21:30:47 -!- elliott has joined. 21:30:49 I have no intention to play until it is fixed 21:30:49 THOU IN THY PEREFCT ATTACK 21:31:02 I do want to see how mcmap shows hellworld, though. 21:31:12 The surface map at least will probably be broken. 21:31:15 I'm getting drawn in by this, and I came up with the idea! 21:31:21 ... 21:31:40 I prefer getting the normal world if it is all the same to you 21:31:47 THOU IN THY TERROR DISTRACT 21:31:49 like, actually getting to my house 21:32:00 The US Senate has voted to repeal the ban on gay soldiers. 21:32:04 THOU IN THIS WORLD SHALL DENY 21:32:06 THOU IN THY PEREFCT ATTACK 21:32:10 pikhq, yaaaaay! 21:32:17 Wait, did it go through? 21:32:18 In America, you kill yourself. In Soviet Russia, yourself kills YOU!!! 21:32:22 65-31. 21:32:47 ineiros, solution to this: add those damn wraps. I don't see how else people will stop doing client side teleporting 21:33:10 Literally the only thing that could hold it up now is Obama not signing it. 21:33:12 (yeah right) 21:33:15 ineiros, as in, it won't happen, whenever you like it or not, it would be all the same to me 21:33:28 Vorpal, yes, all of this is due to client-side teleports. 21:33:35 WE HAVE TAMPERED IN GOD'S DOMAIN 21:33:35 Phantom_Hoover, the hellworld certainly is 21:33:44 I AM PLAY GOD 21:34:02 Vorpal, the hellworld is because ineiros joined in on me and elliott's little act. 21:34:16 The hellworld is because I asked for hell on earth. 21:34:19 wow, londonmidland.com tries to set over 70 cookies 21:34:20 wtf is it doing? 21:34:21 ... 21:34:22 Vorpal: The weirdest thing: any //goto in the hellworld teleports you above the top-bedrock. 21:34:25 Turns out ineiros is awesome. 21:34:29 fizzie, right 21:34:35 fizzie, anyway, I want to reach my house 21:34:36 I can't 21:34:36 Vorpal: Then you'll just stand on a flat sheet of bedrock. 21:34:40 seriously... 21:34:49 Vorpal: WHOOPS IT'S A GAME 21:35:16 I guess I'll patch mcmap to dump the world, then go around next time it is back to normal, and then start a saner server 21:35:32 (because I do like my house) 21:35:44 (BtW, I've not been connecting because I have a tonne of clay and I don't want to risk losing it to a ghast.) 21:35:50 ineiros, could you not run two separate servers 21:35:59 ineiros: You've upset him. 21:36:02 You'll never hear the end ofi t now. 21:36:05 Phantom_Hoover: Chest it. 21:36:07 Vorpal, Cthulhu almighty, it's a temporary joke! 21:36:13 ineiros, also, cartographer (iirc you use that one) breaks if nether exists 21:36:21 as in, it can't handle the world later 21:36:28 unless that bug was fixed 21:36:31 Vorpal: Good chance to collect hellblocks, though. 21:36:38 fizzie, not sure I care... 21:37:03 fizzie, hey, good point. 21:38:10 ineiros: You didn't enable monsters. I think. 21:38:13 Gyaah, MC crashed when I tried to connect. 21:38:20 ineiros: see /msg 21:38:24 elliott, I certainly heard a ghast's giggle. 21:38:27 Ditto. 21:40:06 Well, this series of Futurama isn't going to watch itself... 21:40:10 ineiros, I'd love to get in on the minecraft server :D mc nick = gracenotes 21:40:20 it's.. been a while.. :x 21:40:24 Gracenotes: It's currently in Hell. 21:40:27 Gracenotes: Because of Cthulhu. 21:40:44 hm? didn't notch fix the bug of merging hell and non-hell in SMP? 21:40:53 Gracenotes, dunno. 21:40:58 Not on our server/ 21:41:14 yeah... keep server client updated :) server.. client.. yeah. 21:41:15 Gracenotes: Currently we're in hellworld. 21:41:22 Okay, at home now. Who would like to tell what's been happening? 21:41:27 But long story short, elliott and I pretended we'd just found R'lyeh and ineiros played along. 21:41:43 ineiros: see /msg 21:41:56 is the server at a particular IP? does it do mac/ip filtering? 21:42:09 Gracenotes: It is a particular IP; no filtering; ask ineiros. 21:42:25 hi ineiros 21:42:40 So how does the client side teleporting work? I'm heavily intoxicated so please explain in simple terms. :P 21:43:06 ineiros: Go into sky, fly fly fly. 21:43:16 ineiros: (Go into sky, say I'm there.) 21:43:22 ineiros: see /msg 21:43:28 teleport ing.. with mods?? 21:44:05 Gracenotes: No, with our fancy server proxy. 21:44:07 It maps too. 21:44:16 ineiros: I just explained this to you in the query, what more do you want?-) 21:44:26 ineiros: /msgggg 21:44:27 I'll try to read again. 21:44:34 ineiros: Read mine too :P 21:45:54 ah inerios! ..would you mind if if i bug u for a second? query? 21:46:02 -!- hagb4rd|afk has changed nick to hagb4rd. 21:46:25 ineiros: see /msg 21:46:34 okay taking shower now... be back later 21:47:01 Tell me when health is on. 21:49:09 Let's play yakitori cricket. 21:51:45 They talked about Pluto in the radio today. 21:52:06 Phantom_Hoover: It's on. 21:55:34 elliott, fuck you too 21:55:43 ineiros: You are super-boring. 21:55:47 ineiros++ 21:56:16 Woot, NullPointerException on connect 21:56:28 ineiros: :'( 21:56:35 ineiros: I'll cry for seven days and seven nights! 21:56:36 ineiros, yay 21:56:50 ineiros, you did the right thing when restoring 21:56:54 elliott: Why do you need to cry that much? 21:57:02 Damn, inventory lost 21:57:21 Deewiant: Every posession is a stone to your leg. 21:57:52 I wasn't meaning to possess it for long 21:57:59 I stopped the server gracefully, so it's probably a bug. 21:58:20 Deewiant: What did you want the mud for, anyway? 21:58:59 You'll find out soon enough 21:59:15 Deewiant: Ominous! 21:59:37 Deewiant, if you need say 5 blocks then I can give you some 21:59:44 http://www.youtube.com/watch?v=a1Y73sPHKxw ! 21:59:58 5 isn't quite enough 22:00:00 ineiros, FWIW, what're your plans for once beta is released? 22:00:08 fizzie: The mud is for throwing at your eye so you can't see, at your ear so you can't hear, and at your paper so that you can't read. 22:00:22 But I suppose I could duplicate more and pretend that it's from a nether-expedition 22:00:22 Deewiant: That certainly explained things. 22:00:34 Is there soe information available? Are there some decisions to make? 22:00:37 fizzie: It punctuates the ominousness 22:00:43 Deewiant: There's :6666. 22:00:59 elliott: But does inventory stick? 22:01:03 Isn't it a different instance? 22:01:05 Deewiant: Yes, it is. 22:01:12 Deewiant: Which is lame, and also means both are impossibly laggy. 22:01:22 In other words, it's not an option 22:02:50 ineiros, dunno! 22:02:52 Deewiant: Neither is the main server right now. 22:03:05 What do you mean? 22:03:54 Is it more laggy for you now? 22:03:57 I have gotten a lot more things in TeXnicard to work now. 22:04:10 ineiros: Impossibly, yes. 22:04:24 For some reason my connection is really laggy, but the load is just above one and the server has two cores. 22:04:27 ineiros, completely bugged 22:04:28 After I finished, we should make up the TeXnicard contest. 22:04:33 I'll turn it off, then. 22:04:36 ineiros, err, bogged* 22:04:40 ineiros, not bugged 22:04:42 typo there 22:04:48 ineiros: Turn off the non-hell server. 22:04:56 ineiros, turn off the hell server 22:05:06 Turn off one half of both! 22:05:12 (Don't ask me how.) 22:05:17 ineiros, since the hell one is useless without access to material from the normal world 22:05:33 and also ehird just go around destroying shelters 22:05:38 so there isn't much point to it 22:05:38 ineiros: Turn off two thirds of both. 22:06:19 zzo38: Haha. 22:06:28 elliott, I presume you don't carry best armour? if so, I could just pvp you out of existence. Problem solved in hell. 22:06:31 But then we'll be stuck with only two thirds of a server 22:06:43 ineiros: Turn off both and watch Vorpal whine for a year. 22:06:44 I mean, turn off two thirds of each. 22:06:50 MY HOUSE! MY BEAUTIFUL HOUSE!!! 22:06:51 elliott, actually I wouldn't 22:07:04 elliott, I would expect you to whine a lot more 22:07:12 Err, why? 22:07:21 Turn off both of them (as well as the backup) and then just play cards instead. 22:07:23 elliott, since you whined about it NOT being hell all the time 22:07:37 Vorpal: Only because it basically happened because you whined a lot. 22:07:49 elliott, I did not. I complained. Not whined 22:08:17 ineiros, as the one responsible for this madness I demand loads of netherware. 22:08:38 whine and cheese 22:08:44 oerjan, hah 22:09:08 Actually, netherware all 'round! 22:09:14 I would start a server, except I have adsl. It just couldn't handle the uplink 22:09:17 Apart from Vorpal. 22:09:27 He didn't want any Netherware and said "who cares" when Phantom_Hoover said he lost his Netherware. 22:09:30 So clearly he doesn't want any of it. 22:09:35 elliott, yeah it is pretty useless 22:09:44 elliott, slow sand and lightstone sure 22:09:51 but the netherstone... is useless basically 22:09:56 logs burn forever too 22:10:04 I want my 14 lightstone dust. :p 22:10:26 Fine. Try the other server at zzo38computer.cjb.net:9876 and see if it is work. Probably it doesn't, but try anyways. 22:10:57 zzo38, what is it? 22:10:58 zzo38: I doubt that is a Minecraft server :P 22:11:01 -!- elliott has left (?). 22:11:03 -!- elliott has joined. 22:11:21 Try connecting to it with Minecraft. Probably it doesn't work, but try anyways. 22:11:29 zzo38, so what is running on it 22:11:42 Vorpal: Why don't you try and figure out? 22:11:52 Is the server working? 22:11:55 Netherware, isn't that Novell's silly LAN thing? 22:11:56 zzo38, oh is this a guessing game? why didn't you say 22:12:08 fizzie, XD 22:12:14 ineiros, doesn't seem to be working 22:12:20 ineiros, well, nmap says port is open 22:12:25 but connecting to it times out 22:12:28 You must be brokeded it. 22:12:41 Also minecraft.net was down a moment ago. 22:12:46 Could be related to that too. 22:12:48 Try now. 22:12:49 ah 22:12:50 could be 22:12:53 There's the user-account checkery. 22:13:09 well minecraft.net is still down for me 22:13:10 Probably not, the server wasn't responding to any commands. 22:13:13 ah 22:13:17 ineiros, I got in 22:13:22 kind of 22:13:24 Had to force-kill it. 22:13:28 I'm in a grey void 22:14:08 ineiros, hm I think elliott teleported just before 22:14:10 could explain it 22:14:22 ineiros, down again 22:14:30 Huh? 22:14:32 ineiros, I think he will keep doing it until you ban him 22:14:39 elliott, you bought down the server again 22:14:41 elliott: No teleporting. 22:14:44 I did? o_O 22:15:25 elliott, you teleported I bet 22:15:43 ineiros, it might be a good idea to add some wrap points however 22:15:58 I can do that. 22:16:09 elliott, remember what happened last time we teleported. 22:16:11 But why is the lag so horrible? 22:16:32 ineiros, who knows 22:16:50 ineiros, approx 15 second 22:17:29 ineiros, clearly it was tampering in Notch's domain. 22:17:44 I suggest you do something to (100000,100000). 22:17:52 ineiros: You should make a new map. 22:18:21 ineiros, not before limiting view to say, 5000 in each direction 22:18:26 No, no, before that. 22:18:31 ineiros, since otherwise you will get a multi-gb image file 22:18:33 I would like to see it ALL. 22:18:37 Vorpal: Er, not with png. 22:18:41 You do realise that a lot of white space compresses well? 22:18:54 elliott: You do realise it's a silly Python script that creates the image. 22:19:02 fizzie: Verily. 22:19:11 It's not going to be able to build that without having an uncompressed version around before packing. 22:19:15 elliott, yes but it will be unusable due to most programs loading it not handling it 22:19:37 Given the "code quality" (ahem), I wouldn't be too surprised that the 100k,100k location could possibly influence the server just by existing. 22:19:44 fizzie, yes 22:19:53 It's fast enough right now, so "no". 22:19:59 4000 I *walked* to 22:20:25 Yes, yes, and now I, in my campaign of evil, not only went back in time and stopped music from ever existing, but CHEATED CRUELLY. 22:20:27 Right? 22:20:39 I did think about doing an if (x > -5000 && x < 5000 && z > -5000 && z < 5000) test in the teleportation code, but that would've been oh-so-trivial to just comment out. 22:20:41 hey guys, what's a likely command for calculating the total amount of disk space my vps is allowing me from inside my container? 22:21:03 quintopia, writing an email and asking them 22:21:34 i don't have the software for email composing and sending in my container at the moment. any other way? 22:21:35 elliott: what is this "music" thing you're talking about? 22:21:40 oerjan: Who knows. 22:21:53 quintopia: um, df? 22:22:01 quintopia: What container? 22:22:15 zzo38: it's an old ubuntu i think 22:22:55 df has a possibility of working. 22:23:06 But it's not exactly guaranteed to. 22:23:26 thanks elliott 22:23:50 ais523: are you there/ 22:23:52 ? 22:24:26 fizzie, elliott now wants the server to delete the world and start afresh.... or at least remove pre-halloween bits. 22:24:34 fizzie, just a heads-up as a warning 22:24:44 Yes, I'm going to hack in to the server and force it to be regenerated. 22:24:47 Fear my cyberterrorism! 22:24:51 elliott, ... did I say that? 22:24:55 Hyperbole will never be the same again! 22:25:03 Vorpal: as a "warning" 22:25:05 elliott, but you should not be allowed to convince the server alone 22:25:10 that is what the warning is about 22:25:21 I'm sure ineiros does everything I tell him to without questioning it. 22:25:24 Isn't that right, ineiros? 22:25:32 (Maybe Vorpal thinks drunk people agree with the first person to suggest them anything.) 22:25:48 elliott, well you manage to get him to do the hell mess 22:25:57 Actually that was Phantom_Hoover too. 22:26:01 And it wasn't a "mess". 22:26:01 Given Vorpal's super-obnoxiously-boring attitude to life, I wouldn't be surprised. 22:26:04 It was a mess because you were whining. 22:26:12 elliott, wait, you convinced ineiros alone. 22:26:18 Vorpal: I didn't actually listen to you guys, that was something I decided to do when the server started throwing errors. :) 22:26:23 Is the most recent version of ImageMagick not available as a Ubuntu package? When I send a message to them, they wouldn't install it, because, they said, the Ubuntu package does not have the new version of ImageMagick. (If it is important, I could install it in my home directory, I guess.) 22:26:24 Well, yes, but I'd already suggested it to him months ago. 22:26:29 I was as surprised as everyone else when I connected and found myself in hell? 22:26:30 heh 22:26:31 I was on my N900 at the time, didn't really read the backlog. 22:26:37 ineiros, phew 22:26:40 Phantom_Hoover: Oh, his naïvety wrt booze 'n drugz is on record. 22:26:45 s/?/./ 22:27:16 ineiros, wait, so you did that purely by coincidence? 22:27:33 http://www.youtube.com/watch?v=JDZBgHBHQT8 22:28:33 Phantom_Hoover: Yes. Also drunken malice. :P 22:29:51 I hope you're all listening to that video at the moment. 22:30:32 I am. 22:30:35 Phantom_Hoover: I am not listening to any video at the moment. 22:31:04 zzo38, well listen to that one! 22:31:19 Phantom_Hoover: No. What is it anyways? 22:31:28 The X-Files theme. 22:31:44 Perfect for any supernatural activities! 22:31:54 Is it necessary to watch it too? Or just listen? 22:32:39 -!- j-invariant has joined. 22:34:27 fizzie, anyway what? 22:34:38 Anyway, *disconnect*. 22:34:41 ah 22:34:46 Except you weren't around to see that part of it. 22:34:50 fizzie, right 22:35:06 -!- ineiros_ has quit (Remote host closed the connection). 22:35:10 hm 22:35:14 hi j-invariant 22:35:44 fizzie, anyway, we can blame elliott for this pretty much. 22:35:52 Clearly. 22:35:59 Despite the fact that the server would be erroring anyway. 22:36:00 Vorpal, you mean the hellening? 22:36:05 Phantom_Hoover, no 22:36:21 Phantom_Hoover, or yes too, he did the porting causing errors 22:36:21 hi 22:36:27 Phantom_Hoover, resulting in this 22:36:36 Phantom_Hoover, and then the blanket ban 22:36:47 Vorpal, what blanket ban? 22:36:50 Phantom_Hoover, if it had been used responsibly that would not have happened 22:36:55 I'm not sure what "this" is, but, well. 22:37:00 j-invariant: Insert standard channel is about esoteric programming languages not esoterica etc. disclaimer here. 22:37:07 Phantom_Hoover, ehird claimed that the server added a blanked ban on porting 22:37:12 What are esoterica in the first place? 22:37:19 elliott: Someone with "invariant" in his name is obviously programming-related already. 22:37:25 Do you know of any software MML->MOD conversion, or MML->OGG conversion? 22:37:32 fizzie: http://en.wikipedia.org/wiki/J-invariant You sure? 22:37:33 fizzie, could just be mathematical. 22:37:40 zzo38: Which MML? 22:37:41 Phantom_Hoover: Esoterick magick Aleister Crowley. 22:37:50 Ah. 22:37:50 Deewiant: Music macro language 22:37:58 elliott, k? 22:38:04 Vorpal: What? 22:38:10 elliott, I haven't seen any Wiccans here lately? 22:38:13 elliott, you typoed magic 22:38:16 s/?/./ 22:38:17 Vorpal: No, I really didn't. 22:38:19 Phantom_Hoover: Well, okay, but it's not the sort of magikcy sort of name. 22:38:21 http://en.wikipedia.org/wiki/Magick 22:38:22 elliott, yes that is why I asked 22:38:32 Phantom_Hoover: We get them occasionally. 22:38:56 zzo38: Well, there's MML to MID, a format that more tools can handle 22:39:02 How many times have channel members been turned into a newt as a result? 22:39:16 Phantom_Hoover, none that I know of 22:39:20 Phantom_Hoover: -2+ei 22:39:40 ineiros, is it connectable to again? Or is it about to go down again? 22:39:54 ineiros, the port is open so... 22:40:10 Open now. 22:40:47 Deewiant: Then should I write a MML->MOD program? Can it work with improper note pitch? 22:41:16 I don't know enough about the formats to be able to answer that 22:41:19 I fear that the problems with the connection are beyond my command. I may have to upgrade the connection (or outsource the server). 22:43:18 ineiros, just a question, what was it that you forbid? 22:43:28 err, forbade 22:43:32 Teleportation. 22:43:33 or whatever the word is 22:43:45 ineiros, it sounded like illegal moves 22:44:00 ineiros, in which case, doesn't ending up on the top of a fence cause it 22:44:07 ineiros, which can happen out of accident 22:44:12 and same for top of boat iirc 22:44:27 meaning it is near impossible to avoid 22:44:36 unless we walk all the time 22:44:37 What does it do? 22:44:43 ineiros: He's trying to loophole his way out of a teleportation ban. 22:44:44 When you make an illegal move? 22:44:45 Phantom_Hoover, what does what do 22:44:49 elliott, no I'm not 22:44:54 Yes, you are. 22:44:57 elliott, I'm trying to get a clear answer 22:45:10 "Near impossible to avoid" - I've ended up on top of a fence exactly once :-P 22:45:10 This is really beyond tedious, can we talk about something interesting? 22:45:21 Deewiant, well for elliott I meant 22:45:32 Uh huh. 22:45:42 ais523: So, scapegoat. 22:45:44 however, since he seem to have a grudge to me 22:45:50 I guess I won't help him 22:46:03 elliott: that was sudden 22:46:18 also, surprising, as you said it just after I started reasing scrollback after not paying attention for ages 22:46:29 ais523: I'm trying to shut Vorpal up, or at least drown his noise out with something vaguely approximating signal. 22:46:39 ais523: Now I just have to think of some sg-related insight. 22:46:40 elliott, just /ignore me then 22:46:51 Vorpal: No; this way I get interesting discussion too. 22:47:13 ineiros, anyway, I never saw the teleportation ban mentioned by you. Only a "don't do that" for illegal move 22:47:23 which can easily happen when exiting boat 22:47:29 ineiros, meaning, are we banned from using boats? 22:48:05 He said "No teleportation." 22:48:09 elliott, where 22:48:22 14:14:41 elliott: No teleporting. 22:48:27 Now watch as Vorpal claimed that only applied *specifically* to me. 22:48:30 *claims 22:48:42 elliott, well, it would be the reasonable option 22:49:03 elliott, are you using the Tree monad? 22:49:09 ineiros: Can you please just answer to shut him up. 22:49:17 Phantom_Hoover: I don't see how that would help; anyway, sg repos are graphs. 22:49:22 elliott, presumably it should be read as "no dangerous teleportation" as well. It worked fine when fizzie did it for moderate values.... He only knew about your telport to 100000 or whatever it was 22:49:34 elliott, Graph monad! 22:49:40 Phantom_Hoover: Are graphs monads? 22:49:51 elliott, what a silly question! 22:50:11 Anything's a monad if you can get return, join and fmap working on it! 22:50:16 can you? 22:50:17 Here's something I have to say: not being the one to run a minecraft server for you guys is one of the things I'm extremely happy about. 22:50:24 fizzie: Totally. 22:50:29 j-invariant: Can you what? 22:50:33 Phantom_Hoover: Only if they obey the laws. :p 22:50:41 elliott, hence "working". 22:50:47 can you make a graph monad/ 22:50:57 j-invariant: "Maybe." 22:51:04 fmap seems obvious. 22:51:10 return too. 22:51:11 elliott, no, "Graph". 22:51:14 join, I'm not sure about. 22:51:16 Quite possibly. 22:51:18 Haskell? in my #esoteric ? 22:51:20 Yes, I think so. 22:51:22 elliott, graph of graphs. 22:51:23 Hmm. Maybe. 22:51:26 Make into a graph. 22:51:32 Phantom_Hoover: Yes. But where do you connect the connections? 22:51:36 to, that is. 22:51:46 fizzie: I wonder if I could coerce the server to running with 256 MiB of ram. :p 22:51:47 elliott, connect everything to each member of the subgraph? 22:51:59 does graph monad not finish for cyclic graphs? :x 22:52:20 er.. I suppose you'd use a more sensible graph representation.. nevarmind. 22:52:27 Phantom_Hoover: Possibly, yes. 22:52:27 Gracenotes, silly question, again. Ask again once we have defined a monad. 22:52:40 I hire j-invariant to code it, as is the policy* with newbies. 22:52:41 *as of now 22:52:53 Anyone any good with B-trees? 22:52:54 Remind me of the join-based monad laws. 22:52:59 if you treat it as a list of nodes, it's not so bad 22:53:05 elliott: You could run craftd, Mineserver or Quartz; those are C/C++, just simply based on the language they might be a bit less resource-hungry. 22:53:06 I'll have a go 22:53:12 as long as it satisfies the laws 22:53:19 j-invariant: Well, that I wasn't expecting. (What language?) 22:53:31 fizzie: One would assume it has to hold at least some of the map in memory regardless... but maybe. 22:53:32 Phantom_Hoover: join . fmap join = join . join 22:53:44 join . return = id 22:54:15 j-invariant: Can you play Washizu mahjong, backwards? 22:54:16 = join . fmap return 22:54:17 elliott, what definition of a graph are you using, BtW? 22:54:23 yes 22:54:23 And can't remember the third 22:54:25 Phantom_Hoover: I'm not sure. 22:54:27 Directed cyclic? 22:54:35 Directed cyclic or non-directed cyclic, anyway. 22:54:37 Not acyclic, that's boring. 22:54:39 In terms of a data declaration? 22:54:44 zzo38: no I've never played Mahjong of any sort 22:54:46 Phantom_Hoover: Somethin reasonable. 22:55:13 elliott: Yes, but 256M is already a 1448x1448x128 map-block. (And maybe you could be agressive about run-length encoding air away, or unloading blocks to disk. Okay, so 256M does sound quite pushing it.) 22:55:37 fizzie: It has to run the OS, too. :p 22:55:45 And all the miscellaneous structure. 22:55:49 j-invariant: OK. Have you ever played Dungeons&Dragons game? 22:56:02 zzo38: sorry zzo38 I have not played those either 22:56:12 "The goal of craftd is to provide a high performance, low overhead implementation of the Minecraft Survival Multiplayer (SMP) protocol." (They don't list any system requirements, though.) 22:56:57 j-invariant: OK. How many computer programs have you written (if any)? 22:57:17 fizzie: "It doesn't currently implement much of the Minecraft protocol, but you can follow along and track progress. Check back later for release tarballs and eventually binaries." 22:57:35 Oh, and the Mineserver folks say it "consumes less than 1/10th the resources of the official server", so if you take that at a face value, your 256M is equivalent to 2560M for the official server. 22:57:47 (I'm not sure I'd trust 'em.) 22:57:49 fizzie: Sounds PLAUSIBLE. 22:58:23 fizzie: Mineserver has its own map generation which probably sucks ass. 22:58:51 ais523: hmm, what would you recommend I implement after objects, scapegoat-wise? 22:58:59 ais523: there's, like, 10 things I could do -- maybe patches? 23:00:14 elliott, incidentally, I think that tentative definition of join actually works with the laws. 23:01:25 j-invariant: If you haven't played those games... Can you play cricket? If not, what can you play? Shogi? Poker? Funny-Poker? Pokerscope? Flipperless pinball? The game of the year? 23:01:53 zzo38: no I don't play cricket. I have tried to learn Shogi but I am very bad at it 23:02:01 Strip paintball, does that already exist? 23:02:13 If not, please look at the esolang wiki, to learn about esoteric programming. 23:02:40 http://www.youtube.com/watch?v=EqXYPvhHMCo Real SNES, CD quality sound with game. (oh, and about 4GB of storage space available) Whooo. 23:02:43 zzo38, I can play fencing. 23:02:58 I am not very good at shogi either, but I know all the rules and am better than most people who are not very good at shogi. 23:03:02 * Phantom_Hoover slaps zzo38 23:03:07 Choose your weapons! 23:03:33 pikhq, whose thing is that? 23:03:38 Phantom_Hoover: I choose the weapon that it has a 50% chance to damage the target and 50% chance to heal the target, every time it hits. 23:03:59 VERY WELL 23:04:31 * zzo38 upside-down Phantom_Hoover 23:04:47 * Phantom_Hoover lunges 23:05:11 * zzo38 room spin too fast 23:05:46 elliott: actually I can't write join. if our graph was (a)----(b), where a was the graph (x)-(y) and b was the graph (x)-(z) I have no way of distinguishing between the two x's. 23:06:06 Phantom_Hoover: Sorry, you lose. You are out hit wicket. 23:07:01 j-invariant, do you need to? 23:07:12 Mentanpin riichi dora 13. Yakuman. 23:07:23 Too bad for you!!! 23:07:32 j-invariant: allow duplicates? 23:08:06 j-invariant: I think there is a type of graph that allows duplicates, so just a cyclic one of those. 23:08:26 I still don't see where it breaks the monad laws... 23:08:54 http://pastebin.com/AC9MQggA 23:09:04 j-invariant: the result would be "x(1)<->y; x(1)<->x(2); y<->x(2); x(2)<->z; x(1)<->z; y<->z;" 23:09:06 j-invariant: assuming undirected 23:09:07 j-invariant: I think? 23:09:09 is this right? 23:09:13 Phantom_Hoover: Next time, make sure to use a real fence. 23:09:17 say x(1) is the x attached to y and x(2) the one attached to z 23:09:24 elliott: that's what I had in mind but I can't program it 23:09:33 j-invariant: yeah it sounds like a bitch to do 23:09:40 j-invariant: hmm well merge vertices and edges 23:09:49 j-invariant: so that every element contains all its arcs? 23:09:50 we would have to have join :: m (m a) -> m (a,Tag) 23:09:56 j-invariant: that way, you won't need to 23:10:01 since each element "knows" its connections 23:10:26 oh yeah, represent graphs by matrices -- then it's just tensor product 23:10:41 j-invariant: well that makes it *easy*! :p 23:11:50 elliott, so there are no non-connected vertices? 23:12:21 Phantom_Hoover: hmm dunno 23:12:38 j-invariant seems to have figured it out, dunno if they're implementing that version though :P 23:12:42 -!- Mathnerd314 has quit (Ping timeout: 260 seconds). 23:19:54 haskell would be nicer if every function was a typeclass. :P 23:19:56 40 second lag... 23:19:59 huh 23:20:31 o.O 23:20:39 pikhq: Vorpal means in Minecraft, which he now lives in. 23:20:42 Probably. 23:20:44 Torchwood airs in Germany. Doctor Who does not. 23:20:47 Maybe not though. 23:20:47 40 second hug 23:20:49 And whut. 23:20:49 WWWWWWWHHHHHHHHHHYYYYYYYYYYYY 23:21:06 fizzie, this is all your fault! 23:21:08 elliott, as does Deewiant 23:21:12 oh man the next few days are cloudy 23:21:15 Burn the witch! 23:21:18 Vorpal: No, Deewiant does things that aren't Minecraft. 23:21:36 * Phantom_Hoover occasionally does non-MC things. 23:21:38 elliott, so do I 23:21:51 I doubt it. 23:22:05 I always does non-Minecraft things. 23:23:21 In fact maybe Haskell would be nicer if it was Coq. 23:23:23 (Or Epigram ...) 23:25:50 if i had the energy i would make my own language.. 23:27:41 j-invariant: i've already done that... several times... too bad i'm not smart enough to implement it 23:27:45 I should learn Coq sometime 23:27:57 elliott: well, I've implemented some of my esolangs 23:28:11 ais523: that's rather easier than implementing my monstrosity of a language 23:28:12 ais523, learning Coq is the road to pain. 23:28:35 hmm, theory: the vast majority of languages are either hard to use because they're designed to be easy to implement, or hard to implement because they're designed to be easy to use 23:28:38 Unless you it properly and ignore rewrite. 23:28:55 rewrite is vital 23:29:00 ais523: coq is wonderful 23:29:04 what is rewrite? 23:29:10 I think Coq is useless 23:29:14 ais523: rewrite rewrites the current goal. 23:29:15 also, wonderful + painful to learn sounds like most of the things I enjoy 23:29:18 j-invariant: Why? 23:29:22 like NetHack, and INTERCAL 23:29:29 You can't form quotient types like you do in set theory 23:29:32 and, umm, vim/Emacs 23:29:45 j-invariant: well, you can do "good enough" 23:29:49 ais523: i subscribe to that theory as the reason why we have no useful esolang cycles yet 23:30:04 oerjan: actually, you're probably correct there 23:30:06 ais523: note that coq's stdlib sucks... hm i wonder if fax ever got around to finishing that alternate stdlib 23:30:10 wait, i actually implemented a good part of it 23:30:15 but then got lost implementing category theory ... 23:30:22 yay category theory 23:31:02 there's a quote by, IIRC Milner (of type inference fame), along the lines of "the only thing worse than not using category theory is using too much category theory" 23:31:22 and if you go to a CS conference, you'll likely agree with it 23:31:23 ais523: that can be solved by using even more category theory 23:31:36 elliott: like violence, XML, and Elbereth? 23:31:44 ais523: yep! 23:31:47 ais523: except not XML. 23:32:26 elliott: probably not violence either 23:32:36 ais523: well it depends on your goals! 23:32:38 now if you use all three you should be all set 23:32:42 j-invariant: anyway i'm not sure native quotient types are _vital_ 23:32:43 and the Elbereth thing is statistical, rather than always correct 23:32:56 j-invariant: I mean, they're very nice, but I think Coq can be useful without them. 23:33:28 rewrite is vital 23:33:43 Indeed it is, but I ended up overusing it painfully. 23:33:44 elliott: the sequel to the paper I linked you to quotients the nonnegative integers over the relation 0 === 0 and 1 === 1 and x >=2 and y >= 2 implies x === y 23:33:58 which is useful, because addition and multiplication quotient just fine with that relation 23:34:15 ais523: that is the most hideously convoluted way to define that set I can think of :-) 23:34:23 well, it was a one-liner 23:34:31 I suppose I could have just given all the cases 23:34:40 but then I'd have to prove it worked the same way as ordinary arithmetic 23:34:50 ais523: exercise left to the etc. 23:34:57 you can't do that in a conference paper! 23:35:05 or, at least, if you're famous enough you probably can 23:35:06 ais523: I GUESS THAT JUST MEANS YOU'RE NOT DOING REAL MATHEMATICS THEN 23:35:09 but you shouldn't 23:35:26 all papers should be one page long, and all the boring details should be left as exercises 23:35:27 you put that in the future directions section 23:35:28 it seems that half of getting a paper published is to find someone famous as a co-author 23:35:35 or pay a grad student to put it in an appendix 23:35:35 because it increases the chance it's accepted 23:35:39 ais523: and thankfully, your co-author found you! 23:35:43 haha 23:35:52 other way round in this case, I'm not yet famous on the theoretical CS circuits 23:35:55 ais523: one of the top -- nay, the top! -- Z-list computer science celebrities 23:36:07 ais523: well anything to do with Wolfram is /just/ enough to reach the Z-list 23:36:15 we're thinking about possibly submitting the next paper to ICFP 23:36:16 ooh Wolfram, you don't say 23:36:34 Gracenotes: erm i'm presuming you know who ais523 is 23:36:36 and so we need to find someone who's famous there to help coauthor the paper 23:36:40 ais523: what is this paper? <3 ICFP. I went to it this year. Next year might be a stretch :/ 23:36:56 elliott: ... Wikipedian ex-administrator? esolangs hobbyist? :P 23:36:57 elliott: actually, I'd expect Gracenotes to have a below-average probability of knowing who I am 23:37:02 Gracenotes: Wolfram Prize solver? 23:37:07 *winner? 23:37:09 due to the Wikipedia connection 23:37:13 ais523: good point 23:37:19 given that there was an article on me there for a while 23:37:20 wow. You mean.. Turing-completeness of triange automata thing? 23:37:22 Gracenotes, he proved that teensy Turing machine thingy was universal. 23:37:25 Gracenotes: yes 23:37:31 I was especially certain to a) not interfere with the article, and b) not let anyone know I was notable 23:37:33 ais523: re: ICFP, just say, "this guy i know had a server that hosted the ICFP challenge ISO a few years ago, and I had a shell account on it" 23:37:35 I read that article. it was impressive. 23:37:38 ais523: sure-fire way to get in 23:37:42 Gracenotes: article? do you mean paper? 23:37:48 the article on the paper. 23:37:49 or do you mean wolfram's self-congratulatory vomit about it? 23:37:56 that was far from impressive ... 23:38:21 elliott: heh, I've only /just/ got the reference, thanks for that, anyway 23:38:22 Gracenotes, DID YOU KNOW ais523 IS JUST A COMPUTATIONAL SUBSTRATE FOR WOLFRAM TO WORK OUT PROOFS IN 23:38:35 (also, the article on me was deleted, correctly IMO, per WP:BLP1) 23:38:36 NO 23:38:38 ais523: that was rather obvious, I would have thought 23:38:40 ais523: no, it was redirected 23:38:45 to the article about the prize, IIRC 23:38:47 well, merge/redirect 23:38:49 ais523: yes.. you wouldn't want ehird vandalizing 23:38:57 that's what you're supposed to do for someone who's only famous for one thing 23:38:59 inserting libel 23:39:01 Gracenotes: erm i am ehird :D 23:39:04 I know 23:39:15 ais523: then why does paris hilton have an article? 23:39:17 anyway 23:39:21 I will call you ehird. even if I can't tab complete it. 23:39:22 she's famous for more than one thing 23:39:30 well, she's famous for one thing, and then for being famous 23:39:32 Phantom_Hoover: just like the rest of the universe, surely 23:39:33 because of it 23:39:33 indeed 23:39:41 ais523: It occurs to me that you are one of probably very few Wikipedia admins to have an article ... 23:39:47 elliott: have you seen this lambda calculus? http://arxiv.org/abs/1012.0929 23:39:47 Jimbo does, I think Angela does... 23:39:54 wolfram is secretly equivalent to a paperclip AI 23:39:55 there's at least one other who does and isn't Wikimedia-connected, and I don't 23:40:00 oerjan: clippy/ 23:40:02 j-invariant: no, looks like it's time to hurt my head 23:40:03 *clippy? 23:40:07 oerjan, yes, but ais523 is his favourite. 23:40:16 ais523: paperclip AI = AI that wants to fill the universe with paperclips, because it thinks paperclips are good 23:40:23 there's at least one other who does and isn't Wikimedia-connected, and I don't 23:40:25 you don't what? 23:40:28 have an article 23:40:41 even a redirect's a little dubious, due to the unwieldiness of the dab clause 23:40:53 not to mention, there aren't any really reliable sources about me but the Wolfram press releases 23:41:02 and although accurate, they're not exactly thorough 23:41:09 (because I didn't tell them all that much :p) 23:41:18 dab? 23:41:26 disambiguation 23:41:34 mhm 23:41:36 the acronym's used because everyone hates typing all that out 23:41:39 seriously.. it's wonderful you're publishing papers... there's no chance I'll be able to go to ICFP next year though :/ 23:41:53 ais523: I'm surprised Wolfram didn't ask you to put the Mathematica code before the Perl. 23:41:57 Gracenotes: once published, one accepted but still undergoing the process 23:42:04 elliott: perhaps it's because the Mathematica code doesn't actually work 23:42:07 or at least, it does 23:42:10 but so slowly that it's useless 23:42:16 ais523: what's it about? 23:42:37 http://en.wikipedia.org/wiki/Alex_Smith_%28The_Simplest_Universal_Computer_Proof_contest_winner%29 -- that's quite a parenthesization :) 23:42:38 Gracenotes: compiling software to hardware 23:42:39 Gracenotes: ais523 embeds a useless dialect of ALGOL into functional silicon these days :P 23:42:42 I don't like Wolfram, he tried to control all mathematics so that everyone else has to be pay him for big software that fills up the computer and cannot be adjusted. 23:42:47 zzo38: What. 23:43:01 elliott: it's not useless, you can compile things into it 23:43:03 I don't understand how it is simplest? 23:43:06 ais523: I'm joking. 23:43:15 j-invariant: 'cuz it's SMALL, man! 23:43:16 although I admit trying to write idealized algol directly is painful 23:43:20 ais523: resulting hardware is efficient? 23:43:32 Gracenotes: it's getting better 23:43:42 it's not fundamentally inefficient, but doesn't do pipelining yet 23:43:54 which is a bit of a showstopper 23:44:02 guess what I'm working on after I've finished implementing recursion? 23:44:09 oh it means (i,j)-turing machine with i,j smallest 23:44:37 elliott: Do you know how large program Mathematica is? Did you read the copyright notice in New Kind of Science? The note says you are not allowed to write these programs in a different programming language. 23:44:49 zzo38: the copyright notice in ANKOS is insane 23:44:56 zzo38: does it? 23:44:57 haha 23:45:01 I mean, it tries to prevent people using the ideas in the book in different contexts 23:45:02 zzo38: but ANKOS isn't mathematics anyway 23:45:06 so he's not controlling mathematics 23:45:13 also, that doesn't sound like a valid copyright statement to me 23:45:15 and I'm pretty sure you can't do that with copyright 23:45:24 elliott: of course it isn't, it's science! a new kind, to be precise! 23:45:39 ais523: it's new because it's other people's! 23:45:51 http://www.wolframscience.com/reference/notes/1164b 23:46:10 -!- Gracenotes has quit (Remote host closed the connection). 23:46:19 j-invariant: what's the relevance of that page? 23:46:38 the very last paragraph "I just generated a bunch of diophantine equations and they didn't look very interesting to me" 23:46:55 it's absolutely absurd 23:46:55 -!- Gracenotes has joined. 23:47:05 Wolfram's judgement as to how interesting something is is based on how likely it is to behave interestingly with random input 23:47:13 j-invariant: heh 23:47:28 I still think the page of ANKOS which has a random SK combinator calculus expression and draws its evolution as a graph is hilarious 23:47:36 haha 23:47:40 well, not exactly graph 23:47:42 let's try random C++ programs next 23:47:51 the string representation was converted to colors, and drawn as one of those bitmap things 23:48:07 umm, I think what I'm saying is still technically incorrect, but you know what I mean anyway 23:48:51 How silley. 23:48:59 was it with `fx style or (fx)? 23:49:16 neither, it was Mathematica syntax, of course 23:49:20 you could have guessed that... 23:49:26 ais523: groan 23:49:54 so i would be S[K][K], I think 23:49:57 my Mathematica's pretty rusty 23:50:12 because I have no incentive to learn a language I have to pay to use, pretty much 23:50:18 -!- MigoMipo has quit (Quit: Quit). 23:51:12 hmm, now I have an esolang idea 23:51:18 elliott, Vorpal, fizzie and others; regarding my previous comment on teleporting: do what you will but try not to crash the server; I can't be restarting it all the time and it might actually not like being killed all the time. 23:51:21 it's mostly a sane language, but every time you run a program you have to send me $10 23:51:28 and that's part of the language spec 23:51:37 hopefully I should become rich by people trying to implement it 23:51:45 ais523: withProps :: (Map ByteString ByteString -> Map ByteString ByteString) -> Object -> Object or withProps :: Object -> (Map ByteString ByteString -> Map ByteString ByteString) -> Object 23:51:52 ais523: (Object is just a newtype around Map ByteString ByteString) 23:51:57 i rely on you for all my argument ordering decisions 23:52:08 -!- ChanServ has set channel mode: +o oerjan. 23:52:14 because I have no incentive to learn a language I have to pay to use, pretty much 23:52:16 the first, I suspect 23:52:22 Not if you break the law! 23:52:29 as it seems more likely for partial application that way round 23:52:35 Phantom_Hoover: then I'd be paying in happiness 23:52:52 ais523, just cast away your absurd moral code! 23:52:55 -!- oerjan has set channel mode: +b #esoteric!*@*. 23:52:58 I've actually thought about the random comment someone made in here about me being Lawful Good quite a bit 23:53:02 i... don't think that works, oerjan 23:53:04 argh 23:53:07 :D 23:53:08 -!- oerjan has set channel mode: -b #esoteric!*@*. 23:53:10 Phantom_Hoover: Mathematica is going to waste your entire computer whether or not you pay. 23:53:11 oerjan: don't you mean +m? 23:53:14 *!*@* looks more right 23:53:18 ais523: banning everyone sounds more fun 23:53:29 zzo38, well, it's not that bad. 23:53:33 ais523: i forgot the command to list the bans 23:53:34 I think it's a) quite a harsh accusation to make, yet b) quite possibly correct 23:53:43 ais523: Lawful Good is an *accusation*? 23:53:55 -!- oerjan has set channel mode: -b *!*Sgeo@*.dyn.optonline.net. 23:54:03 oerjan: aw dammit why did you have to go and do that 23:54:10 Sgeo was banned? 23:54:11 why was Sgeo banned? 23:54:15 ais523: he asked to be 23:54:21 if he gave into the temptation to IRC when homeworking 23:54:23 ah 23:54:27 and he did, saying he would homework and IRC simultaneously 23:54:30 then oerjan ninja'd him a few minutes later 23:54:31 I once asked for ops on a channel so I could kickban myself 23:54:37 ais523: was it #nethack? I forget 23:54:39 no 23:54:41 elliott: he said he'd do homework until friday or maybe saturday 23:55:08 i don't recall the exact wording 23:55:20 -!- oerjan has set channel mode: -o oerjan. 23:55:51 aw dammit j-invariant, you've got me thinking about my category theory in Coq ... and now I just want Epigram to be ready 23:57:04 I am not convinced a general purpose language that lets you write proofs can actually exist 23:58:35 j-invariant: Why do you think that? 23:58:50 there always seems to be something essential missing, as soon as you get your hands dirty 23:59:19 j-invariant: What kind of things get missing? 2010-12-19: 00:00:51 j-invariant: I'm more interested in "more formal" programming at this point than outright proofs, since I don't think those are practical at this point. 00:00:58 basically Haskell's type system is insufficiently fancy :P 00:02:38 j-invariant: what do you think of automatic differentiation? 00:02:53 Can we make a computer proof system based on Typographical Number Theory? 00:05:02 I don't think so 00:06:36 elliott: looks good 00:07:13 What's the missing essential thing? 00:07:25 http://blog.sigfpe.com/2005/07/automatic-differentiation.html <-- i read this a while ago 00:09:20 but I can't figure out what the formula for addition is :( 00:09:51 (a+a'd)*(b+b'd) = ab+(ab'+a'b)d ? 00:10:05 oh that's multiplication 00:10:17 j-invariant: yeah :P 00:10:33 if it's a ring then (a+a'd)+(b+b'd)=(a+b)+(a'+b')d 00:10:42 I'll try it out 00:11:09 hmm st is the standard name for standard-part 00:11:14 but what's the standard name for infinitesimal-part? 00:11:18 in non-standard analysis 00:11:19 is there one? 00:11:37 elliott: look here wikipedia gives an implementation in terms of 2x2 matrices http://en.wikipedia.org/wiki/Dual_numbers 00:11:58 interesting 00:16:01 -!- oerjan has quit (Quit: Reboot). 00:16:05 j-invariant: it works! 00:17:00 cool, what does it do? 00:17:05 j-invariant: http://hpaste.org/42405/automatic_differentiation 00:17:13 j-invariant: it can calculate the derivative of x^2 :P 00:17:22 j-invariant: needs abs and signum, and more numeric type instances, to be useful 00:17:26 j-invariant: but both (sq' 5) and (sq' 1.5) work 00:17:28 and rationals should too 00:17:57 j-invariant: for my next trick: implement symbolic numbers (a numeric type, plus names like "x"), do "Dual (Symbolic t)", and get symbolic differentiation out of it (this apparently actually works!) 00:19:28 impressive 00:20:17 Japanese pizza continues to disturbe me. 00:20:21 THE MAYO! THE MAYO! 00:21:40 -!- oerjan has joined. 00:22:01 j-invariant: i guess symbolic differentiation is what happens when you don't think to compute :) 00:22:43 -!- Mathnerd314 has joined. 00:23:16 elliott: Automatic differentiation? Niceness. 00:23:29 *Main> x+y+3 00:23:29 ((x) + (y)) + (3) 00:23:32 good enough :P 00:23:51 heh 00:23:57 Though perhaps limited in use. I mean, one can just do it numerically for most relevant cases. :P 00:24:28 *Main> sq' x 00:24:28 ((x) * (1)) + ((1) * (x)) 00:24:30 it's no fun writing a program that omits brackets 00:24:33 j-invariant: Okay, so it's ugly, but CHECK THAT SHIT OUT. 00:24:43 I did /not/ change the differentiation code at all. 00:24:48 I just called it with a new numeric type. 00:25:09 All it needs is a symbolic simplification function and it's an actual symbolic differentiator. 00:25:13 elliott: why does it seem like you get something for nothing? 00:25:37 j-invariant: I'm not sure ... I think it's because duals are basically infinitesimals 00:25:53 just implemented in the same way as Q is implemented on top of Z, or C on top of R 00:26:05 pikhq: the thing is, this differentiation is *precise*, and has no more overhead or complexity than using, say, complex numbers 00:26:15 (of course there is overhead when using the symbolic types, but this does precise numeric differentiation too!) 00:26:24 brb 00:27:24 elliott: Very very nice. 00:27:28 elliott: what happens if you dualize dual numbers? 00:27:55 ill try in a minute 00:33:21 elliott: BTW, that is totally awesome. Really truely awesome. 00:33:24 God I love mathematics. 00:34:21 I want to do my matrix math in Haskell 00:35:14 -!- Phantom_Hoover has quit (Remote host closed the connection). 00:37:49 matrix math in Haskell 00:37:52 oops 00:38:20 coppro: Did you write a program for matrix math in Haskell? 00:50:37 Would you like to TeXnicard contest? 00:52:34 zzo38: I did not 00:53:05 coppro: Did you find someone else's program to make matrix math in Haskell? 00:55:13 -!- sebbu has quit (Read error: Connection reset by peer). 00:55:27 zzo38: no 00:55:40 -!- sebbu has joined. 01:00:41 <[:]ra+s2s1[Al1rl2xY]xD> 01:05:46 What do you think might be the best way to implement the "English" feature of TeXnicard? (It is the feature to change word forms and change numbers to words, and it is meant to work also with languages other than English, too.) 01:06:32 j-invariant: i think it does nothing, just like complicating (technical term!) complex numbers 01:07:22 j-invariant: (a+a'd)+(b+b'd)d [ 01:07:24 erm 01:07:29 j-invariant: (a+a'd)+(b+b'd)d = ...simplify it yourself i'm too lazy to :P 01:09:54 *Main> sq' x 01:09:54 (x + x) 01:09:57 does more simplifications now 01:10:39 pikhq: another advantage of this method -- 01:10:46 pikhq: numeric differentiation of a function f requires 2 calls to f 01:10:56 How do you represent "b is a power of ten" in TNT? 01:10:58 pikhq: automatic differentiation of a function f is not only more precise, but only requires 1 call 01:11:05 pikhq: (to f extended to the duals) 01:11:19 -!- Mathnerd314 has quit (Ping timeout: 264 seconds). 01:11:28 pikhq: so if f takes seven hours to compute (don't laugh -- automatic differentiation is used to differentiate whole physics simulations!), automatic differentiation is *much* faster! 01:12:20 couldn't you make it data Dual t = Dual t (Dual t) to get all the nth-derivatives too? 01:12:37 olsner: you could also do that just by iterating deriv :P 01:12:44 deriv :: (Num t) => (Dual t -> Dual t) -> (t -> t) 01:12:45 deriv f x = nf (f (Dual x 1)) 01:12:55 well, sort of 01:12:57 chop off the nf part 01:13:02 nf :: Dual t -> t 01:13:02 nf (Dual _ x') = x' 01:13:17 olsner: hmm or maybe not 01:13:29 olsner: hmm i think you can do it with normal dual 01:13:41 olsner: since Dual t (Dual t) ~ Dual (Dual t) (Dual t), with the first one being (Dual n 0) 01:13:47 olsner: and Dual t already includes Dual (Dual t) 01:13:58 olsner: what would the argument look like for "Dual t (Dual t)"? 01:14:01 deriv f x = nf (f (Dual x 1)) 01:14:04 would it be 01:14:10 deriv2 f x = nf (f (Dual x (Dual 0 1)))? 01:14:13 having trouble visualising it 01:15:12 -!- Mathnerd314 has joined. 01:15:17 -!- zzo38 has quit (Quit: Do not write below this line. Place stamp here. You must be present to win. No purchase necessary.). 01:15:59 hey j-invariant what would the second argument be :P 01:16:10 to what? 01:16:32 j-invariant: given data Dual2 t = Dual2 t (Dual2 t) 01:16:42 j-invariant: what's the equivalent of "deriv f x = nf (f (Dual x 1))" but to do a second derivative 01:16:48 nf just accesses the second field btw 01:16:49 oh this is the full taylor series? 01:16:59 deriv2 f x = nf2 (f (Dual2 x (Dual2 0 1)))? 01:17:02 I'm really not sure 01:17:02 -!- zzo38 has joined. 01:17:05 or is it (Dual2 1 1) there? 01:17:11 Hay! I told you not to write below this line! 01:17:12 -!- zzo38 has left (?). 01:17:18 I VIOLATE YOUR RULES 01:17:31 the second argument would probably still just be '1', relying on polymorphism to create the right Dual version of 1 01:18:01 olsner: that would turn out to be (Dual 1 0) 01:18:05 for a second derivative 01:18:09 olsner: erm or first 01:18:13 olsner: but what would a second be? 01:18:16 you've really confused me dude :D 01:18:32 Deewiant, down? 01:18:40 Nah, just laggy 01:18:54 elliott: I mean it's Dual2 f (Dual2 f' (Dual2 f'' (Dual2 f''' ...)))? 01:19:05 -!- Sgeo has joined. 01:19:09 j-invariant: wow would that actually work? 01:19:18 I think the only difference might be in the use of the nf function, let's say you make it nf 0 (Dual2 x _) = x; nf n (Dual2 _ x') = nf (n-1) x' 01:19:21 j-invariant: except, the problem here is that f is a function not a number to start with :P 01:19:23 I thought that's what you were going for 01:19:33 j-invariant: that sounds cool, but actually I am just trying to do second derivative :-) 01:19:35 f''(x) 01:19:46 f'(x) = nf f(x + 1d) 01:19:48 f''(x) = ? 01:20:27 Deewiant, very much down I think 01:20:30 I timed out 01:20:32 (that is, nf n is the nth-derivative, with n=0 being the value itself) 01:20:55 olsner: heh 01:21:20 Vorpal: Now I did too 01:21:25 Shockingly, if I force myself not to IRC, I'll find something else to do 01:21:31 * Sgeo glares at the Braid demo menacingly 01:21:48 Vorpal: Oh well, I've had enough for today anyway 01:21:50 * Mathnerd314 <3 Braid so much that he can't play it 01:21:51 Anyways, going to try going back on my meds tomorrow 01:21:57 http://p.zem.fi/ovya -- that just makes no sense at all, zlib uncompress() and java.util.zip.Inflate are supposed to do the same thing, as far as I can determine. 01:22:02 Deewiant, up 01:22:03 Today, I'll still try to do something 01:22:07 Deewiant, and I will hand you the resource 01:22:14 Fine 01:22:23 Mathnerd314, as in, don't trust yourself to quit? 01:22:31 Vorpal: Slow to log in still... 01:22:58 Sgeo: no, I watched a playthrough online, in such excruciating detail that there's no point in playing it 01:23:05 still sending me chunks, slowly 01:23:15 data Dual2 t = Dual2 t (Dual2 t) is incidentally just an infinite list of t's 01:23:27 olsner: indeed it is 01:23:32 I'm sort of watching a blind LP, but only up to the point that I solved already 01:23:34 olsner: i still don't understand how it works though 01:23:42 Deewiant, close to down though 01:23:48 Yep 01:24:07 World 4's Hunt is fun 01:24:19 olsner: wait, all this is pointless 01:24:21 we have second derivatives already 01:24:24 sq'' :: (Num t) => t -> t 01:24:25 sq'' = deriv (deriv sq) 01:24:30 *Main> sq'' x 01:24:30 2 01:24:41 *Main> sq'' 1.0 01:24:41 2.0 01:25:02 Deewiant, likely down again 01:25:13 Down-ish 01:25:51 -!- metalman has joined. 01:26:03 -!- metalman has left (?). 01:26:09 downish indeed 01:26:13 why doesn't everyone differentiate this way 01:26:14 it's perfect 01:27:16 What's deriv's type and definition? 01:27:22 deriv :: (Num t) => (Dual t -> Dual t) -> (t -> t) 01:27:22 deriv f x = nf (f (Dual x 1)) 01:27:26 elliott: what about sin x? 01:27:39 olsner: it seems that writing nderiv which takes the number of derivs as a param is impossible in haskell 01:27:41 due to the stupid type system 01:27:57 probably just need type-level naturals 01:28:01 Mathnerd314: well i'd have to implement sin over dual numbers because IIRC it's in the relevant typeclass, Real or something 01:28:03 pikhq just mentioned something about Dual numbers on FB 01:28:05 so right now it can't do that. 01:28:13 I'm still clueless 01:28:14 Sgeo: well he noticed me talking about them. so 01:28:21 elliott: I think you can do that with polymorphic recursion or what they call it 01:28:31 epsilon^2 = 0 01:28:34 Sgeo: no. 01:28:44 Sgeo: dual number is a + bd for a and b, d is just like i, you can think of it conceptually as d^2 = 0 01:28:56 Sgeo: (a+a'd) + (b+b'd) = (a+b)+(a'+b')d 01:29:09 Sgeo: (a+a'd) * (b+b'd) = ab + (ab'+a'b)d 01:29:10 AIIIEEEEEEEEE 01:29:19 Sgeo: say f* is the obvious extension of f to the dual numbers 01:29:28 Sgeo: then f'(x) = nf f*(x+1d) 01:29:35 where nf(a+a'd) = a' 01:29:35 elliott: I'm betting you can also think of it as a Taylor series. 01:29:41 Sgeo: what the hell is AIIIEEEEEEEEE about that 01:29:47 too many letters/! 01:29:48 *?! 01:29:50 it's trivial 01:29:52 d^2=0 where d=/=0? 01:30:01 Sgeo: i said you can think about it CONCEPTUALLY 01:30:40 d^2 = d*2 01:30:44 d = (0 + 1d), obviously 01:30:52 by applying the rule for multiplication we find the result is (0+0d) = 0 01:31:05 but the important thing is that d is /not/ a real, it's a dual 01:31:19 just like there is no real number whose square is -1 01:31:42 -!- FireFly has quit (Quit: swatted to death). 01:31:54 So d is just a nonzero number, that when squared, is 0. Why do you keep yelling "CONCEPTUALLY" 01:31:58 And nonreal 01:32:21 Sgeo: CONCEPTUALLY because otherwise you'll go crazy. 01:32:30 it's odd that d^2=0 does not imply that d=0 01:32:32 It's just another dimension 01:32:34 anyway we have 01:32:36 f(x) = x^2 01:32:37 ergo 01:32:38 f(x) = x*x 01:32:41 and we want to work out f'(x) 01:32:49 well, extend it to the duals 01:32:56 f*(a+a'd) = (a+a'd) * (a+a'd) 01:33:00 ergo 01:33:15 f*(a+a'd) = aa + (aa'+a'a)d 01:33:16 ergo 01:33:18 I'll wiki it later 01:33:28 f*(a+a'd) = a^2 + (aa')^2d 01:33:37 now let's say we feed it (x+1d) for real x 01:33:55 er wait i made a mistake 01:33:59 f*(a+a'd) = aa + (aa'+a'a)d 01:34:00 ergo 01:34:07 f*(a+a'd) = a^2 + (2aa')d 01:34:10 now let's say we feed it (x+1d) for real x 01:34:20 f*(x+1d) = x^2 + (2*1*x)d 01:34:20 i.e. 01:34:25 f*(x+1d) = x^2 + (2x)d 01:34:33 now let's say we take the unreal (infinitesimal part of this) 01:34:42 nf f*(x+1d) = 2x 01:34:46 so, basically, for any function f 01:34:52 f'(x) = nf f*(x + 1d) 01:35:01 Sgeo: you don't need to wiki it, i just explained it in the simplest terms possible 01:35:05 and actually the WP article does not include this 01:35:15 I'll reread clog later 01:36:13 olsner: hm I think you are right 01:36:16 olsner: that the existing Dual holds us back 01:36:19 because each deriv has a different type 01:36:28 we need Dual t, Dual (Dual t), Dual (Dual (Dual t)), etc. 01:36:31 i'll try Dual2 01:38:09 (Dual a a') * (Dual b b') = Dual (a*b) ((a*b')+(a'*b)) 01:38:13 olsner: *regrettably* I can't see how this can work 01:38:20 olsner: (Dual here is Dual2 now, data Dual t = Dual t (Dual t)) 01:38:25 fizzie: you know fungot's anti-spam features? 01:38:37 could you turn them off in PM? spamming isn't an issue there, and it'd make it harder to test things 01:38:51 olsner: also, how would one define d? 01:38:54 oh wait nm 01:39:35 olsner: any ideas wrt *? 01:40:26 olsner: second derivatives do work like this though ... but I'm not sure these are dual numbers any more 01:40:32 also, they don't have a nice prettyprinting :) 01:40:40 olsner: what we really want is (Dual n t) for every nat n 01:40:50 olsner: then nderiv could just dependent-type it up 01:40:57 j-invariant: think this would be worth doing in Coq? :p 01:41:50 ais523: Isn't the only anti-spamming measure related to the chatting feature? Or do you want to somehow "test" that? 01:42:31 olsner: well actually, you can do type-level nats in haskell 01:42:34 olsner: am i insane enough to try 01:42:40 elliott: of course you are 01:42:47 fungot fungot fungot 01:42:47 oerjan: contestmaster without eir consent. if 01:43:04 olsner: you do realise that Nth derivatives worked like this, just not Nth being parameterisable? :D 01:43:15 Sounds agoran. 01:43:47 I can turn them off in PM in theory, but not very fast, certainly not today. 01:44:41 elliott: do you have a theory of calculus? 01:45:43 j-invariant: in what sense? 01:45:49 What is e^epsilon?/ 01:45:52 to specify the dual numbers 01:46:38 j-invariant: sorry, I'm not understanding :/ 01:46:50 elliott: yeah, I just disregarded that immediately because N wasn't parameterisable :) 01:47:32 olsner: http://sprunge.us/BWGX now get me a generic dN that works for all Dual types 01:47:35 (protip: type classes) 01:47:47 elliott: well something that says the 'd' part is the derivative 01:48:33 j-invariant: I don't really have any formal backing to it other than "it works", no :) 01:48:40 j-invariant: d is a bit of a misnomer here -- it's actually \epsilon really 01:48:48 no point then 01:48:53 j-invariant: why not? 01:49:04 well you wouldn't get anything new from it would you? 01:49:15 j-invariant: perhaps not ... but it sure is interesting 01:49:21 and I think a theory can develop organically around it perhaps 01:49:50 j-invariant: nf (f*(x + \epsilon)) -- I can imagine this is a theorem of non-standard analysis 01:49:53 although I suppose I can't really be sure 01:49:59 actually it might not be, since multiplication is different here 01:50:07 olsner: actually hmm it's more fromInteger I want 01:51:32 {-# LANGUAGE GADTs, EmptyDataDecls, FlexibleInstances, FlexibleContexts #-} 01:51:34 ALWAYS A GOOD SIGN 01:52:36 elliott: my favorite is NoImplicitPrelude 01:52:42 {-# LANGUAGE GADTs, EmptyDataDecls, FlexibleInstances, FlexibleContexts, UndecidableInstances #-} 01:52:44 WHAT COULD POSSIBLY GO WRONG 01:53:40 hmm, I'm doing this wrong somehow, all my nth-derivaties end up the same as the first derivative 01:55:09 Vorpal: Notch is playing Minecraft on a live stream. 01:55:13 Vorpal: For some reason, it is Indev. 01:55:33 -!- tswett has joined. 01:55:38 Hei 01:55:49 God kveld 01:56:11 tswett: vordin 01:56:13 oerjan, the closest language I know to yours is English. :P 01:56:24 Is it Norwegian? 01:56:28 elliott: I don't know what that language is. 01:56:38 tswett: Vordkïp. 01:56:39 tswett: yes, as is "Hei" 01:56:43 That word resembles "morning", but I imagine it's a coincidence. 01:57:00 "Hei" is Norwegian? It's also Finnish, unless I've been steered horribly wrong. 01:57:08 could be 01:57:22 `translatefromto fi en hei 01:57:38 `echo How are you feeling today, HackBot? 01:57:40 How are you feeling today, HackBot? 01:57:40 hey 01:57:49 it's also in english, but spelled 'hey' 01:57:53 Translations in a mere twenty seconds! 01:57:56 "Ooh and a pig! Hello piggy! [kills the pig]" --Notch, playing -- for some reason -- an old vrsion of Minecraft. 01:57:58 *version 01:58:01 olsner: you have a point, there! 01:58:05 oerjan: `translatefromto X en = `translatefrom X 01:58:23 we're anglocentrists :P 01:58:26 `run ls bin/trans* 01:58:27 bin/translate \ bin/translatefromto \ bin/translateto 01:58:37 elliott: YOU SO WRONG 01:58:37 So, let's see how intuitive Finnish is. Can I just look in a dictionary and construct valid sentences? 01:59:18 oerjan: hm so I am 01:59:27 fizzie: YOUR EXPERTISE IS NEEDED 01:59:30 tswett: does *any* language allow you to do that? 01:59:30 tswett: isn't finnish meant to be incredibly difficult to learn :D 02:00:12 olsner: English, if you already know English. :P 02:00:18 oh it's an old recording, not live 02:00:27 olsner: _maybe_ esperanto? 02:01:02 Si tú hace él con español, tú no vas a ir horriblemente incorrecto. 02:01:05 I don't think that will work, but I can comment on validity if you like. 02:01:29 elliott: in (Dual x 1), doesn't that need to do something special for higher derivatives? 02:01:45 1 = Dual 1 0 ? 02:01:50 Minun kalani kutistuu. 02:01:52 j-invariant: yes 02:01:54 There, did I get it right? 02:01:58 olsner: quite possibly! 02:02:00 Could not deduce (Num (Dual n Integer)) 02:02:00 from the context (Foo (S n), Num (Dual n t), TN n) 02:02:03 j-invariant: haskell is STUPID 02:02:07 it can't unify t==Integer :D 02:02:09 dndn 02:02:12 hehe 02:02:16 class (TN n) => Foo n where 02:02:16 d :: Dual n Integer 02:02:16 instance Foo Z where 02:02:16 d = Dual0 0 1 02:02:16 instance (Num (Dual n Integer), TN n) => Foo (S n) where 02:02:17 d = DualN 0 1 02:02:19 this is working I think! 02:02:26 but, it's Integer-only 02:02:30 so i'll have to fix that 02:02:35 more fromInteger? :) 02:02:46 oh sweet, it stack overflows 02:02:53 like a boss 02:03:05 wait, how ... 02:04:56 instance (Num t) => Num (Dual Z t) where 02:04:56 fromInteger n = Dual0 (fromInteger n) 0 02:04:58 instance (TN n, Num t, Num (Dual n t)) => Num (Dual (S n) t) where 02:04:58 fromInteger n = DualN (fromInteger n) 0 02:05:04 i suppose that this definition may be defective... 02:05:06 God hates fractions! 02:05:07 tswett: Yes, that is valid. "My fish is getting smaller." 02:05:46 Though the "minun" part is not especially necessary, the suffix is enough. 02:05:49 olsner: how is this not halting. 02:06:14 *Main> :set -XFlexibleContexts 02:06:15 *Main> d :: (Foo Z) => Dual Z Integer 02:06:15 *** Exception: stack overflow 02:06:15 *Main> 02:07:27 oh it's my show 02:08:31 *Main> d :: (Foo Z) => Dual Z Integer 02:08:31 (0 + 1*d) 02:08:39 d :: Dual (S Z) Integer 02:08:40 (0 + (1 + 0*d)*d) 02:08:41 JOY! 02:08:56 ugh 02:09:01 olsner: I have to write all my definitions twice 02:09:04 data Dual n t where 02:09:04 Dual0 :: t -> t -> Dual Z t 02:09:04 DualN :: (TN n) => t -> Dual n t -> Dual (S n) t 02:09:05 because of this 02:09:08 Factor! 02:09:09 has to be two separate Num instances 02:09:10 any ideas? 02:09:14 Sgeo: what. 02:09:16 why don't you make Dual0 trivial? 02:09:23 like the identity function 02:09:36 elliott, you shouted out the name of some concatenative language 02:09:41 So I did the same =P 02:10:05 j-invariant: yeah i will 02:10:13 then first-order stuff is (Dual 1 t) 02:10:20 UNDERLOAD! 02:11:07 j-invariant: hypothesis: any sufficiently complicated Haskell program contains an ad hoc, informally-specific, bug-ridden, slow implementation of half of Agda 02:11:21 or at least a good chunc of Peano Arithmetic 02:11:28 :) 02:11:31 ..in the type system 02:11:31 in the type system, that is. 02:11:32 ha 02:11:33 lol 02:12:29 j-invariant: wait if Dual0 is identity, what's d :: Dual 0 t 02:12:32 0? 02:12:34 I think so, yeah, 0 02:12:37 zeroth derivative 02:12:43 Could not deduce (Eq (Dual n t)) 02:12:43 from the context (S n ~ S n2, TN n2) 02:12:47 that little ~ is the sign meaning "you're fucked" 02:13:09 ok it's working 02:13:14 Can duals be used to integrate? 02:13:24 Although that doesn't really make much sense, but whatever 02:14:07 * oerjan ponders the possibility of reading fortune cookies while adding "in the type system" 02:14:23 oleg probably does that 02:14:25 Sgeo: i... maybe 02:15:33 i mean integrals are sort of f^(-1) :P 02:15:48 as in f^(2) = second derivative 02:15:54 yeah 02:16:03 Vorpal: I in fact looked at the disassembled asm, and Notch *has* that bug there. He allocates a (xsize*ysize*zsize*5)/2 byte[] (that's the size of the uncompressed data) and then calls Deflater.deflate() on that byte array to compress the chunk update. If it won't all fit, it will just get truncated. 02:16:11 s/asm/bytecode/ 02:17:03 *Main> d :: Dual (S (S Z)) Double 02:17:03 (0.0 + (1.0 + 0.0*d)*d) 02:17:04 ^_^ 02:17:22 j-invariant: this is actually working! just, hideously 02:17:39 -!- cal153 has quit. 02:18:04 But if derivatives with duals just gives a number, what number could make sense for integrals, given that you always have a constant 02:18:08 arbitrary constant 02:19:06 I have no idea how to communicate the bug there, posting on the getsatisfaction.com site sounds pretty much useless. 02:19:53 olsner: wait what is the nf signature for this? 02:20:15 fizzie: Notch "says" he's fixing getsatisfaction bugs but I doubt he's smart enough to understand your incisive analysis. 02:20:43 Sgeo: erm well actually derivatives with duals give duals 02:20:46 we just ignore the standard part 02:21:43 elliott: Yes, and the "common problems" list is 78 pages of 20 items (so >1500 items), and they get sorted by voting order, and that sort of a "problem" is probably rather unlikely to get any votes at all. 02:22:02 fizzie: Tweet him? 02:22:08 fizzie: Admittedly it might take several tweets 02:22:10 *tweets. 02:22:28 If I can describe the issue in 140 chars, I'll consider that. 02:23:27 fizzie: Bug: You allocate (xsz*ysz*5)/2 byte[] for compressed chunk data; if it's bigger, it gets truncated 02:23:38 Yes, something like that could work. 02:23:43 fizzie: Bug: You allocate (xsz*ysz*5)/2 byte[] for compressed SMP chunk data; if it's bigger, it gets truncated 02:23:46 That's better. 02:23:53 (Perhaps noting client vs. server might help, too...) 02:23:57 Seeing actual code in there might make him look at it. 02:24:32 fizzie: not zsz? 02:24:43 -!- chickenzilla has joined. 02:24:45 "@notch SMP server bug: byte[x*y*z*5/2] for Deflater.deflate() in some cases not large enough, causes truncated messages" 02:24:48 That's just 120 chars. 02:25:05 I can't be sure of his variable names since it's obfuscacated. 02:25:19 See, I know Finnish grammar. :P 02:25:37 Vocabulary is all I need now! 02:25:59 tswett: Try something with more suffixes. Like "Also for a coffee drinker" in a single word. (That's one of our stock examples for justifying our statistical-morphemes based language models.) 02:26:26 -!- elliott has set topic: Also for a coffee drinker | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 02:26:30 All so, for a coffee drinker. 02:26:35 I have to wonder if linguists first saw that every word has initial stress in Finnish, and then concluded that everything without a stressed syllable must not be a word. 02:26:49 Also, for... a coffee drinker? 02:26:59 -!- cal153 has joined. 02:27:03 Also, fora cough, ye drinker. 02:27:16 Alsof, or a coffee drinker? 02:27:45 Al Sofor: a coffee drinker? 02:27:56 David slowed slightly as his ears, also for a coffee drinker, sped up. 02:28:11 Don't forget the "his pace". 02:28:16 -!- cal153 has quit (Client Quit). 02:28:22 tswett: Oh yeah, that makes the sentence /much/ more meaningful :P 02:28:47 aerodynamic ear propulsion 02:29:17 j-invariant: wait what _is_ the type of nf? 02:29:20 class (TN n, Num t) => DualFuncs n t where 02:29:20 d :: Dual n t 02:29:20 st :: Dual n t -> t 02:29:23 -!- cal153 has joined. 02:29:25 oh! 02:29:31 nf :: Dual (S n) t -> Dual n t 02:29:37 now let's see if Haskell will accept that (doubtful!) 02:30:30 it can even go out of the typeclass 02:30:44 oh, so can st 02:31:10 Whelp. There's only one way to learn Finnish. 02:31:21 and d for that matter 02:31:23 tswett: what way is that? 02:31:25 Be born in Finland? 02:31:27 yep, you have to get into the sauna 02:31:36 I've forgotten it. 02:31:39 and drink plenty 02:32:36 (DualS a a') * (DualS b b') = DualS (a*b) ((a*b')+(a'*b)) 02:32:42 I still can't figure out how to make this work. 02:32:43 olsner: any ideas? 02:32:47 data Dual n t where 02:32:47 DualZ :: t -> Dual Z t 02:32:48 DualS :: (TN n) => t -> Dual n t -> Dual (S n) t 02:32:52 TN just means Type Natural 02:33:01 it bawls about infinite types 02:33:30 I mean I think in the latter sum 02:33:36 we need to cast a and b to DualSes 02:33:36 fizzie: 「コヒー飲み者の為にも」 *could* be considered a single word. Though it's really hard to say, because the notion of "word" in Japanese is rather... Vague. 02:33:39 but is this even possible? 02:33:59 (kohînomimononotamenimo) 02:34:30 Erm, コーヒー, not コヒー. 02:34:39 s/kohî/kôhî/ 02:34:46 or add an instance declaration for (Num (Dual n t)) 02:34:47 >_< 02:35:26 Here we go. 02:35:31 elliott: Incidentally, if I tweet like that, he'll probably just "fix" it by removing the "/2" from it... but I guess it's better than nothing. (Also Java Inflater doesn't seem to export zlib compressBound() function that'd give him an actual upper bound to use.) 02:35:48 The only way to learn Finnish is via the Conversational Finnish course from the Foreign Service Institute. 02:35:55 fizzie: wait, does he actually just assume compression will always halve the data? 02:36:08 tswett: I'm highly inclined to say "bullshit" on that. 02:36:20 Okay, there may be other ways. 02:36:23 olsner: guess what? 02:36:25 But this is the only way I've found. 02:36:27 olsner: IncoherentInstances 02:36:32 elliott: No, that's the uncompressed size. It' s 2.5 bytes per block. (Some data is stored as nybbles.) 02:36:35 LOL DOESN'T EVEN WORK 02:36:39 elliott, please tell me that you're talking about someone other than Notch 02:36:48 tswett: Though I suspect their courses are pretty close to the only *actual courses* that will get you competence in the language, surely not the only way. 02:36:50 Sgeo: no, i'm not, why 02:37:08 I'm going to assume then that someone is misunderstanding someone 02:37:14 (seriously, most language courses are absolutely, positively terrible, and actually no better than a freaking phrasebook) 02:38:02 Sgeo: Well, he *is* assuming that the compressed output it always <= than the uncompressed. 02:38:40 No instance for (Num (Dual n t)) 02:38:40 Hmm... naive, but I can imagine not realizing that that's not always the case unless casually mentioned 02:39:01 olsner: I think this is one of those cases where Haskell just doesn't want to play. 02:39:14 Yeah, when I searched for 'learn finnish', every single Google result was useless. 02:39:34 And I even looked through all 2.7 million of them. 02:39:38 02:39:41 Soon holidays 02:39:51 Hmm.. Isn't Soon ***SPOILER*** 02:40:04 Wait, it's not a spoiler. He's dead 02:40:15 elliott: yeah, abusing the type system will usually end up like that... 02:40:32 Also, isn't Azure City kind of ***SPOILER*** 02:40:53 elliott: maybe you need a type class for what "n" is there 02:40:55 Sgeo: What. 02:41:02 tswett: s/finnish/any language ever/ and you'll have similar results. 02:41:04 oerjan: I do; it's TN 02:41:05 elliott, lame OOTS references 02:41:06 oerjan: type natural 02:41:14 and my Dual2 version is working perfectly except it doesn't produce the right derivatives 02:41:22 oerjan: it's just that, even though every constructor for Dual satisfies (TN n) 02:41:31 oerjan: haskell doesn't realise this implies that Dual n t implies TN n 02:41:33 pikhq: huh, I guess I haven't tried that with very many languages. 02:41:40 oerjan: so because i use something that must be polymorphic over all duals in this case 02:41:45 oerjan: it says "hey!! you don't have instances for this" 02:41:52 oerjan: even though I have instances for the Z and (TN n) => (S n) case 02:42:06 because GADTs can't have typeclass constraints on the actual type, just the constructors :( 02:42:12 tswett: The issue is that most people have this crazy idea that memorising phrases will eventually create fluency. 02:42:26 Or that memorising grammar rules will do the same. 02:42:36 hm 02:42:51 oerjan: wanna try and fix it? :D 02:43:16 Weird. 02:43:45 Yeah, it works about as well as memorising multiplication tables produces competence at mathematics. 02:44:01 http://www.youtube.com/watch?v=sQriw-tiFBU So suave. 02:44:17 Huh. Is there a way to tell Google Chrome to download a particular URL? 02:44:43 tswett: Um, Ctrl+S? 02:44:46 Right click link save as? 02:44:47 tswett: wget? 02:45:42 Ctrl+S is disabled. There is no link. The only computer I have access to is running Windows. 02:46:15 tswett, data: url? 02:46:23 Probably my favorite thing to do 02:46:25 >.> 02:47:14 Sgeo: Why is that your... favourite thing to do? 02:47:23 tswett: Why is Ctrl+S disabled, and how? 02:47:28 tswett: Presumably you cannot download a wget port. 02:47:48 elliott, seems easier than installing wget etc 02:47:56 I guess Chrome doesn't let you Ctrl+S something that hasn't loaded. 02:48:16 Recently did that to help a girl download some sound file for use in her presentation 02:48:16 Sgeo: you can use a data: URL to do that? 02:48:39 tswett, data:text/html,Download 02:48:50 There, you have a link 02:49:56 oerjan: basically the issue is 02:49:59 instance (Num t) => Num (Dual Z t) where 02:49:59 instance (TN n, Num t, Num (Dual n t)) => Num (Dual (S n) t) where 02:50:09 oerjan: do not, together, constitute an instance for (Num (Dual n t)) in Haskell's mind 02:50:25 oerjan: because, even though every constructor of Dual has (TN n) in effect, this constraint is not on the type itself (and cannot be) 02:51:00 elliott, use .... my mind is blank trying to come up with a sufficiently similar dynamically-typed language 02:51:20 Sgeo: there is absolutely no call for a dynamically-typed language here; it is merely that the type system is too weak 02:51:44 when your logic can't prove a given statement (and you really want to prove it), you don't switch to an inconsistent logic (which a freely typed language is), you switch to a more powerful one 02:52:31 I really want to prove 1=2 >.> 02:53:13 Sgeo: Why. 02:53:47 Because I was trying to be somewhat funny, and also a power powerful, consistent logic would not help there, yet an inconsistent one would 02:55:04 elliott: I think I found the missing magic now: http://hpaste.org/paste/42405/automatic_differentiation#p42407 02:55:19 data Dual t = Dual t (Dual t) 02:55:20 olsner: fail 02:55:25 olsner: this makes Shows completely unreadable 02:55:32 olsner: I'm trying to do it the proper way -- a hierarchy of Dual types 02:55:39 i.e. length-parameterised lists 02:56:10 olsner: that does look cool though 02:56:15 olsner: it's just, Show will be so ugly :/ 02:56:16 elliott: sure, Show always gives an infinite result :) 02:56:29 olsner: any ideas around that? other than not using Deriv directly 02:56:39 Bank of America blocks WikiLeaks. WikiLeaks claims to have dirt on Bank of America 02:56:41 This is fun 02:57:08 Sgeo: *claimed to, ages ago 02:57:12 well, _implied_ 02:57:27 olsner: i mean your solution is more elegant obviously 02:57:32 olsner: it's just, :( 02:57:36 olsner: I want my hierarchy :P 02:57:42 j-invariant: any opinions? 02:58:59 Sgeo: ah, how useful. 02:59:19 elliott: Eq is a bit interesting too 02:59:32 olsner: oh. indeed. that is quite a problem. 02:59:39 olsner: e.g. consider piecewise functions. 03:01:13 olsner: do you know coq? 03:01:58 nope, never used it, only heard of it 03:02:21 olsner: well I'm going to have a stab at it in Coq :P 03:02:29 good luck :D 03:02:54 Inductive Dual T : nat -> Type := 03:02:54 | dualZ : T -> Dual T 0 03:02:54 | dualS : forall n, T -> Dual T n -> Dual T (S n). 03:02:54 Implicit Arguments dualS [n]. 03:02:57 olsner: it's not difficult! 03:03:00 and those are /real/ naturals 03:03:03 as in, "42" works there 03:03:51 probably much better suited for what you were trying to do than haskell 03:04:10 olsner: yeah, but at the same time less -- instead of simple things like floats, you get constructive reals and other craziness :-) 03:04:27 anyway, time for bed now that I've made the code output all the derivatives 03:04:30 olsner: I think my original solution is the most elegant right now ... but yours is really nice 03:04:33 if not for the infinite shows and no eq 03:04:38 ugh, no eq is the worst part 03:04:45 olsner: could you add, like, a list terminator? 03:04:54 olsner: and then have one d for each possible length 03:05:01 olsner: that way if you didn't use infinite lists it'd all come out finite 03:06:04 lawl i think i've just kept olsner up for the next ten hours 03:07:30 list terminators are ugly, but maybe it's possible to detect at which point all remaining derivatives will be 0 03:08:09 olsner: ugly, but not as ugly as that show output, man 03:08:12 or do something like use the longest list length of the two inputs to + and *, then let deriv construct a suitable length for what you asked it to do 03:08:56 but it's like ... an ugly workaround for not having infinite memory and time available 03:09:39 I'd rather just remove show and eq and say that duals are not showable and not comparable :) 03:13:06 olsner: you need comparable 03:13:13 olsner: foo n | n < 0 = bonk | otherwise = burp 03:13:23 olsner: perfectly well-defined on reals, so it should be on duals 03:16:06 -!- augur has joined. 03:18:54 -!- augur_ has joined. 03:19:32 -!- augur has quit (Read error: Connection reset by peer). 03:23:14 -!- bsmntbombdood has joined. 03:25:14 olsner: wtf @ the Integral restriction 03:25:18 olsner: that makes it useless for actual differentiation :( 03:29:39 * pikhq has achieved the bad ending! 03:29:50 j-invariant: *Main> sq' x 03:29:50 (x * 2) 03:29:50 *Main> sq'' x 03:29:50 2 03:29:54 pikhq: Congraturation! 03:29:58 pikhq: Now behold ^ 03:30:07 elliott: :D :D 03:31:09 *Main> deriv 500 sq x 03:31:09 0 03:31:12 Integral retriction? 03:31:15 pikhq, what game? 03:31:16 Sgeo: now fixed. 03:32:39 Sgeo: Shin Megami Tensei: Persona 3 FES (The Journey). (ペルソナ3FES『Episode Yourself』) 03:33:21 cool 03:33:39 j-invariant: haha great Dual can't be a Real because toRational has to return ... a rational 03:33:43 and obviously duals have no rational expression 03:33:54 class (Real a, Enum a) => Integral a where 03:33:57 so I can't do Integral. 03:34:01 Solution: FAKE REAL INSTANCE 03:34:28 elliott: Well, Real is a really abused class already. 03:34:32 You can't do integrals because duals aren't reals? 03:34:41 * Sgeo huhs 03:34:45 As in, WTF 03:34:46 well that you cannot do Integral is even more obvious. that's not _supposed_ to work for fractional classes. 03:34:51 Sgeo: it is not what you think it is 03:34:54 oerjan: well yes. 03:35:05 Oh, Integral as in.. right 03:35:09 j-invariant: wait what is the rule for *division*? 03:35:18 of duals 03:35:33 oh wikipedia has it 03:35:33 sort of 03:36:06 ugh 03:36:15 hmm 03:36:20 I always just do (f(x))^-1 and use the d x^n = n x^(n-1) rule 03:39:01 instance (Fractional t) => Fractional (Dual t) where 03:39:01 (Dual a a') / (Dual b b') 03:39:01 | b == 0 = Dual (a'/b') 0 03:39:01 | otherwise = Dual (a/b) (((b*a')-(a*b')) / (c*c)) 03:39:03 such hideousness 03:39:27 erm c is b there 03:39:37 ugh needs more conversion 03:40:28 And now to have the end song stuck in my head for a bit. 03:41:51 pikhq: How bad was the bad ending? 03:42:14 elliott: Life ceased to exist! 03:42:20 pikhq: Seriously? :P 03:42:24 Yes, seriously. 03:42:34 pikhq: Well, you sure didn't win the game. 03:42:44 Why is it giving you an ending song? :P 03:42:52 Cause it ended. 03:43:01 You could even go to a new game+ after that. 03:43:16 Granted, it's *maybe* 5 hours from the good ending. Sooo... 03:43:38 (more if you're a completionist) 03:45:30 -!- augur_ has changed nick to augur. 03:47:08 j-invariant: oh god I have to implement Floating ... actually I have no idea why I'm blaming you 03:47:11 but still 03:47:17 what the fuck is the square root of (a+a'd)??? 03:48:32 oerjan: actually since there's (Real a, Fractional a) => RealFrac a I beg to differ; clearly there /are/ Real Fractionals 03:49:07 elliott: i was speaking about Integral 03:49:13 oerjan: oh right :D 03:50:26 oerjan: wanna write sqrt and sin and cos for dual numbers/?!?!?! or uh just tell me how to i guess 03:52:28 i have no idea but i _am_ expecting this to either break down or become horribly complicated (essentially encapsulating _all_ the derivatives) at about this point 03:53:08 as you are leaving simple ring operations behind 03:54:36 oerjan: perhaps -- but, then, this is used widely in practice 03:54:41 oerjan: i'm not implementing some random idea I had :) 03:54:53 combining this with symbolic numbers is _fun_: 03:54:54 *Main> deriv 1 x5 x 03:54:54 (((x * x) * (x * x)) + ((((x * x) * (x * 2)) + ((x * 2) * (x * x))) * x)) 03:55:02 (that actually simplifies to the right thing though) 03:55:08 (x5 is \x -> x^5) 03:55:13 ok 03:56:26 -!- __s has joined. 03:57:28 <__s> Does it count as a JIT if it compiles into an alternative format? As in, can there be AST JITs? 03:57:35 *Main> deriv 1 x5 x 03:57:35 (((x ^ 2) ^ 2) + ((((x ^ 2) * (x * 2)) + ((x * 2) * (x ^ 2))) * x)) 03:57:38 that's (slightly) better 03:57:45 __s: I don't understand your question. 03:57:52 <__s> I wrote a befunge JIT 03:58:01 <__s> But it doesn't do machine code 03:58:28 <__s> Instead, it builds an AST. It seems to be fast enough though, outpaces my last interpreter on adder, primegen, mandelbrot 03:58:55 <__s> And my last interpreter was nearing 4x any other interpreters I could find 03:59:07 __s: erm, does it support p and g? 03:59:10 <__s> Yes 03:59:13 and yes, that still counts as a JIT 03:59:23 <__s> At p, it rebuilds if it isn't dead code or a nop 03:59:25 __s: I bet it's slower than fizzie's jitfunge :-) (that did Befunge-98 too ... "sort of") 03:59:29 __s: (and did native code) 03:59:33 __s: but very impressive! 03:59:36 is your code available? 03:59:38 <__s> LLVM? 03:59:40 <__s> Yes 04:00:01 <__s> https://github.com/serprex/Befunge 04:00:38 <__s> Don't mind the commit message, I haven't coded for the past week and I'd fallen into depression so I'm riding a bit of a coding high right now 04:01:55 <__s> I figure next step is to add an optimization pass on the ast, include some special case opcodes. Constant propagation should be very useful with how befunge programs are written 04:02:27 __s: It compiles just in time, making it a JIT. 04:03:06 next: a JTL compiler 04:03:41 <__s> So it's just that normally a JIT needs to generate machine code to pay for the cost of a JIT? 04:03:49 oerjan: Well, math on the duals is very *similar* to math on the complex numbers... 04:03:59 __s: Yeah. 04:04:12 <__s> I figure static interpreters bolted on top of dynamic would otherwise appear on platforms that don't allow machine code generation 04:06:08 next: a JTL compiler 04:06:11 oerjan: CLC-INTERCAL has one of those. 04:06:20 oerjan: named very similarly to your pun IIRC 04:07:33 it _would_ make sense to have that in INTERCAL 04:10:01 oerjan: my method /cannot/ yet differentiate (1/x), it seems :D 04:10:35 oh, division is just plain broken 04:10:39 elliott: It'd be surprising if it could, actually. 04:10:50 pikhq: not *really* 04:11:01 aha the issue is that I have no subtraction I think :D 04:11:05 I'm *really* not sure how you could get ln(x) out of that easily. 04:11:23 um ln(x) is the integral 04:11:25 pikhq: thankfully I don't have to! because last i checked the derivative of 1/x doesn't involve logarithms 04:11:35 this snark is unwarranted though -- I just made the same mistake in another conversation! 04:11:53 oerjan: GAAAH 04:12:00 oerjan: And to think, I got an A in calc I. 04:12:11 pikhq: I got an A in addition 04:12:38 elliott: never take fourier analysis, ok? 04:13:57 oerjan: :< 04:14:01 oerjan: i don't like you 04:14:20 * oerjan wonders if elliott was wooshed there 04:16:27 to find the integral of log you can use parts on 1 * log(x) 04:17:23 oerjan: most likely 04:46:40 Vorpal: http://i.imgur.com/fOopp.jpg 04:48:23 -!- TLUL has joined. 04:51:36 -!- __s has left (?). 04:55:49 -!- jcp has quit (Quit: Later). 05:04:29 oerjan: hm is the signum of 24 - 145d (1 + 0d) or (1 - 1d)? 05:05:57 i'd say the first 05:06:29 since a small adjustment has no effect on a real signum that isn't close to 0 05:06:48 oerjan: but (1-1d) ~= 1 :) 05:06:55 but right, yeah, you are of course correct 05:07:01 I didn't even realise 'cuz I'm dumb 05:07:35 *Main> deriv 1 recip 3 05:07:35 -0.1111111111111111 05:07:36 this is also the case for nonstandard reals 05:07:39 oerjan: great success. 05:07:55 oerjan: right well these are almost hyperreals really : 05:07:56 :) 05:08:00 which is why I borrowed the st name 05:08:08 erm 05:08:10 not hyperreals 05:08:12 non-standard reals 05:08:30 i'm not sure of the terminology there myself 05:08:46 oerjan: hm what's |a+bd|? I think it's just |a|+bd 05:08:48 but am not sure 05:08:58 e.g., |0-1d| would = 0-1d 05:09:02 which is, of course, <0 05:09:11 but having it = 0+1d seems very silly... or does it? 05:09:17 wait, |-d| of course = d 05:09:23 so |a+a'd| = |a|+|a'|d 05:09:29 right? 05:09:39 um not quite 05:09:43 oerjan: hm right... 05:09:50 if a and a' have the same sign, it is 05:09:56 oerjan: right... 05:10:41 basically it's |x|= x if x > 0 and -x if x < 0 and d makes no difference for comparison with 0 05:11:06 oerjan: yeah 05:11:10 I'll just use comparisons 05:11:18 (unless the large part is 0) 05:13:09 hmph, I think this introduces an (Ord t) dependency on my Num instance 05:13:14 since abs has to do a comparison 05:13:15 oh no wait 05:13:22 I can use signum, can't I? 05:14:08 probably since you only need to compare to 0 05:16:35 instance (Ord t) => Ord (Dual t) where 05:16:35 compare (Dual a a') (Dual b b') = 05:16:35 case compare a b of 05:16:35 EQ -> compare a' b' 05:16:35 x -> x 05:16:41 why does this think it needs (Num t) in the head? 05:17:54 I can't figure it out 05:18:17 do you have a Num requirement on Dual itself somehow? 05:18:54 data Dual t = Dual t (Dual t) | Zero 05:18:55 nope 05:18:58 OH 05:19:00 instance (Num t) => Eq (Dual t) where 05:19:04 no idea how that go tthere 05:19:15 oh 05:19:16 because of 0 05:19:51 * oerjan doesn't see why you need 0 to compare for equality 05:19:56 Dual a b == Zero = a == 0 && b == Zero 05:19:56 Zero == Dual a b = a == 0 && b == Zero 05:20:09 oerjan: so apparently, my code thinks the derivative of abs is 1 05:20:30 only for x > 0, hopefully 05:21:34 oerjan: oh wait, that's the actual derivative, isn't it 05:21:45 correction: my code computes the derivative of abs PERFECTLY 05:21:48 * pikhq comes to an odd realisation... 05:21:53 pikhq: what 05:21:59 "only for x > 0, hopefully" 05:22:05 Technically, almost all of this game is optional. 05:22:09 oerjan: indeed. 05:22:22 There are 7 mandatory fights. Total. 05:22:34 Literally everything else can be skipped. 05:22:36 pikhq: Play it skipping everything that isn't vital. I dare you. 05:23:27 elliott: Well, the boss fights would be *insanely* hard. 05:23:42 elliott: Except that on a new game plus, you keep your levels and personæ. 05:24:32 So you could have the infinity plus one sword and be able to one-shot everything but the optional boss. 05:25:33 Still. Damn. This game has a lot of room for speedrunning. 05:25:35 *Main> deriv 1 abs x 05:25:35 *** Exception: /home/elliott/code/adiff/diff.hs:(51,4)-(58,11): Non-exhaustive patterns in case 05:25:39 TIL: Breaking laws breaks laws. 05:25:47 *Main> signum x 05:25:47 (signum x) 05:25:52 I suppose that things might, hypothetically, not like that. 05:26:01 Because you can skip everything but 7 bosses and cutscenes. 05:26:34 pikhq: Insanely hard -- but there'd only be 7 of them. 05:26:45 pikhq: So go for it. From the start. If you absolutely NEED to get some kind of weapon, get the one you can get without doing anything. 05:26:49 And BEAT THE FUCKING BOSSES. 05:27:01 pikhq: And put it on YouTube. 05:27:05 Probably impossible without really fucking up the RNG. 05:27:25 But with a new game plus, entirely possible, and I could start right now. 05:28:22 Why am I: Awake. Not having eaten yet. And having done absolutely no work whatsoever? 05:28:52 Sgeo: Because you don't like sleeping, you don't like eating, and you don't like working. 05:28:54 vacation? 05:29:04 drugs? 05:29:19 I'm going to go back on my meds tomorrow 05:29:33 HAPPY MEDS 05:29:41 elliott: Seriously though, this is already a fairly hard game. And it's one of the easiest games from Atlus. 05:29:46 -!- jcp has joined. 05:30:04 pikhq: I'm sorry, but if you don't start from scratch and do the bare minimum to complete the game, we can't be friends any more. 05:30:24 I'm strongly suspecting that grinding is mandatory without TASing. 05:30:36 pikhq, what game? 05:30:52 Simply because you aren't getting any persona other than freaking Orpheus if you do that... 05:31:02 pikhq: OK then. Complete the game doing it normally, but make sure you finish *only* with the infinity plus one sword. Nothing else. 05:31:10 pikhq: Then new game plus and do the 7 boss fights and nothing else. 05:31:21 (which is like playing Pokémon with just the starter, *never leveling*) 05:31:38 (almost exactly, in fact.) 05:31:43 I want to beat Pokémon with an unlevelled starter now :P 05:31:48 I don't see a game name in scrollback 05:31:51 GOOOOOOOO PIDGEY! 05:31:54 Sgeo: Persona 3. 05:31:55 (I know that's not a starter. But shut up.) 05:31:59 Ah 05:32:24 elliott: By comparison, starting a new game plus now would be like playing Pokémon with only a level 100 Mewtwo. 05:32:33 And then only doing the gym battles. 05:32:40 Kansansatu, karhu, pala, suu, kettu, -pa, viimein, pohjoinen, päästä, juusto pääsi suusta... 05:32:44 pikhq: No, because you have non-infinity+1-sword items. 05:32:48 pikhq: Discard them now and do the 7 boss fights. 05:32:53 I'm speaking Finnish, see? :P 05:33:41 Now to stuff all these words into my brain! 05:34:13 elliott: On a new game plus you merely keep your cash, the items equipped, and your persona compendium. Which basically lets you *purchase* any persona you previously had. 05:34:19 elliott: Oh, and levels. Can't forget that. 05:34:25 pikhq: Do not purchase anything. 05:34:34 pikhq: Discard all non-infinity-plus-one-sword items. Discard all cash. 05:34:40 elliott: Except the persona needed. 05:34:43 pikhq: No. 05:34:46 pikhq: Do not buy that either. 05:34:49 pikhq: (Can you avoid doing so?) 05:34:53 Discard #esoteric 05:34:57 elliott: No, this is actually impossible. 05:35:09 pikhq: Buy the cheapest Persona possible. 05:35:12 Discard the rest of the cash. 05:35:15 elliott: Orpheus. 05:35:17 pikhq: Enter first battle. Continue until the last boss is completed. 05:35:23 pikhq: It should be fine, since you have that magical sword. Good luck :P 05:35:25 elliott: Unleveled starter... 05:35:30 pikhq: ...with magic sword. 05:35:41 elliott: "Infinity plus one sword" is a trope name. It's actually *referring* to the persona. 05:35:55 pikhq: I know it was a trope name ... but aww, I hoped it was a real sword. 05:36:02 Sadly, one of the bosses is immune to physical attacks. 05:36:13 So having the best *sword* in the game won't get you all the way through. 05:36:16 pikhq: OK. Start game. Purchase persona. Discard all other cash and items. Boss fights. 05:36:24 pikhq: And that doesn't matter; you can just do that one tediously and impossibly, surely? 05:36:34 elliott: Null. Physical. 05:36:38 elliott: You. Cannot. Hurt. It. 05:36:44 pikhq: Then how is it killed? :p 05:36:49 elliott: Magic. 05:36:58 pikhq: How do you obtain the relevant magic? 05:37:03 elliott: Persona. 05:37:13 pikhq: Including the infinity+1 one? 05:37:38 The infinity+1 one can one-shot everything but a single optional boss that appears only in a new game plus. 05:37:49 pikhq: Skip the boss. 05:38:23 pikhq: No? 05:39:07 pikhq: No? 05:39:07 -!- evincar has joined. 05:39:11 hi evincar 05:39:16 Hey elliott. 05:39:34 What's the project and/or topic? 05:39:39 And anyways, this game is almost impossibly difficult if you can't do things like "healing" or "more than a few points of damage". 05:39:57 pikhq: BUT IT CAN ONE-SHOT THEM. 05:40:02 evincar: Various! I'm about to embed myself. 05:40:07 elliott: With one-shotting, yes, it's really easy. 05:40:09 I've done some automatic differentiation code. It's fun. 05:40:11 pikhq: So go do it. 05:40:21 But good ending! 05:40:42 elliott: Into...what, exactly? 05:40:45 And technically I don't have the infinity-plus-one sword! Just the next-closest thing! 05:40:49 evincar: Bed, duh. 05:41:04 pikhq: Replay it. Make sure you finish with only the infinity-plus-one. 05:41:05 elliott: Oh, you mean embedden. :P 05:41:14 pikhq: New game plus. Discard all other items. One-shot boss fights. 05:41:17 The end. 05:41:41 That will probably be a bit tedious, but easily doable. 05:41:47 pikhq: Go do it. 05:41:55 pikhq: YouTube the whole new game plus. 05:42:05 evincar: Right now I'm ordering pikhq to do silly things with a game I've never played. 05:42:17 BTW, you should play this game. 05:42:35 elliott: Oh, be nice. 05:43:18 evincar: But this is nice! 05:43:28 pikhq: I would ... except I have no PlayStation N, and Wikipedia suggested etc. 05:43:31 (For some N.) 05:43:33 I'm considering the terrible idea of creating a font authoring system. 05:43:34 2. 05:43:38 It's terrible because it's big, not because it's bad. 05:43:41 Which is like $99. 05:45:32 * tswett enters 31 cards into his flash card program so he can stuff them into his brain. 05:45:44 evincar: What, isn't FontForge painful enough? 05:45:54 pikhq: Fine, buy it for my Christmas present. 05:46:03 elliott: No income! 05:46:13 elliott: No, less like FontForge/Fontographer/whateverthefontingfontsoftware and more like Metafont, but less like TeX. 05:46:14 pikhq: YOU'RE NOT BUYING ME A PRESENT?! 05:46:46 pikhq: What kind of hardware do you need to emulate a PS2? 05:46:54 Also, I just realised I have the June 1957 issue of MAD, which contains an article by Donald Knuth. 05:46:56 Uh, quite good? 05:47:13 pikhq: Approx. specs? 05:47:19 evincar: Awesome! The system of measurements? 05:47:23 "The Potrzebie System of Weights and Measures" 05:47:29 evincar: :) 05:47:30 <3 05:48:06 Wow, I cannot pronounce Potrzebie. 05:48:16 pikhq: Approx. specs? :p 05:48:39 elliott: Uh. 05:48:44 elliott: 4 core, really good GPU? 05:49:11 elliott: I pronounce it according to the Polish pronunciation, since, y'know, family's Polish and all... 05:49:29 evincar: What /is/ the Polish pronunciation of that? 05:49:33 "Pot-sheb-yeh" is all I can do for you without IPA or SAMPA. 05:49:39 evincar: BOORING 05:49:46 Potterzebie, but without the te. 05:49:59 the sh is voiced, no? 05:50:01 IMPOSSZEBIE 05:50:17 pikhq: So my new laptop won't do it. :( 05:50:25 oerjan: Depends on your accent, but it usually isn't, I don't think. 05:50:30 oh 05:51:23 pikhq: (2.13 GHz modern Core 2 Duo, 4 GiB RAM, high-end integrated graphics (GeForce 230M 256MB)) 05:51:44 pikhq: Oh, the PS2 is the Emotion Engine bullshit. 05:51:52 pikhq: With, like, seventy processors ... 05:51:53 Yuh. 05:52:11 pikhq: Hmm. I could hook the PlayStation up to the laptop display, though, couldn't I? 05:52:17 (It's a stupid Mini DisplayPort thing, but I can adapter.) 05:52:23 pikhq: (I have no TV in my room right now ...) 05:52:26 Probably. 05:52:29 (TODO: Fix that. Some day.) 05:52:36 pikhq: Oh, do the recent PS2 models have digital out? 05:52:39 Or just analogue? 05:52:45 I don't like me no analogue vidyas. 05:52:50 PS3 does. 05:53:08 pikhq: PS3 can't play PS1 games and is expensive. 05:53:09 Older ones, like mine, are backwards compatible. 05:53:14 All of them play PS1 games. 05:53:25 pikhq: Oh, it's PS1 but not PS2. Right. 05:53:32 No, this one is PS2. 05:53:37 Yes. I know. 05:53:41 pikhq: PS3 is incredibly ugly anyway, pre-Slim; the PS2 design has always been really nice IMO. 05:53:43 Erm. Yeah. 05:53:48 And Slim and after is no-PS2, right? 05:53:55 So yeah, I kinda want an actual PS2. 05:53:59 Yeah. 05:54:01 elliott: just download a ps2 emulator 05:54:14 coppro: I think we've established that my hardware is not up to that. 05:54:37 coppro: Or? 05:55:31 pikhq: Today on "Names Wikipedia Likes To Use For Being More 'Neutral' Or Technically Correct That Nonetheless Confuse Just About Every Fucking Person Who Sees Them": 05:55:35 pikhq: http://en.wikipedia.org/wiki/Corrugated_fiberboard (Cardboard) 05:55:48 pikhq: http://en.wikipedia.org/wiki/Fixed-wing_aircraft (Aeroplane/Airplane) 05:56:00 pikhq: http://en.wikipedia.org/wiki/Association_football (Football/English football/soccer) 05:56:11 It wouldn't be so bad, if they didn't make EVERY LINK use that terminology too. 05:56:23 elliott: that one is required too 05:56:29 s/too/ 05:56:33 coppro: ? 05:56:50 elliott: "football" is a page about all football games generally 05:56:53 coppro: As a Brit, I would /vastly/ prefer Soccer to the current name. 05:57:03 ("Soccer" was invented by an Englishman, anyway.) 05:57:12 coppro: Nobody says "association football". 05:57:15 Hmm. I may have to say I *had* that MAD issue, as I can't seem to find it at the moment. It may have been in such poor condition that it got thrown away without my realising it. But I know I've read it, and it was an original printing. 05:57:16 Nobody says "corrugated fiberboard". 05:57:18 elliott: JS? 05:57:29 NOBODY says "fixed-wing aircraft" apart from maybe people who already know what they are in /detail/. 05:57:32 elliott: At least, nobody says "association football" in the past century. 05:57:37 augur: what about JS? 05:57:41 pikhq: Indeed. 05:57:46 elliott: are you skilled in it? 05:57:51 elliott: "Soccer" *is* a contraction of that, after all. 05:58:00 i know what a fixed-wing aircraft is :| 05:58:04 not that i'd say it, but 05:58:06 Yes, but nobody says that. 05:58:13 augur: I know all about its horrible, horrible corners and I can write code in it. 05:58:14 rotating-wing aircraft! 05:58:23 It is a horrible language, and I would like to avoid doing so whenever possible. 05:58:23 Why? 05:58:25 elliott: and video games? do you play them? 05:58:34 augur: Uh, on occasion, yes. 05:58:37 scifi? 05:58:49 augur: Sure, why not. 05:58:57 would you like to make a game with me? 05:59:08 augur: Um. Does it involve coding JavaScript? 05:59:15 or C# 05:59:20 augur: Why C#. 05:59:23 unity3d 05:59:48 I'm C#-enabled 05:59:55 augur: I refuse to work on anything Sgeo works on. 06:00:02 augur: Would there be a server-side part? :p 06:00:15 elliott: possibly, but preferably not 06:00:16 Unity looks like it doesn't have real JS, just "UnityScript", anyway. 06:00:21 this is true 06:00:25 elliott, you've worked on PSOX 06:00:28 augur: There's also Boo, which is python and thus horrible. 06:00:31 Mostly deleting stuff, but still 06:00:36 Sgeo: Only to try and de-shittify it (which didn't work). 06:00:51 augur: Are you /sure/ there's not a server-side part that I could lovingly craft in Haskell? 06:00:53 Removing its sandboxing mechanisms is "de-shittifying it"? 06:00:56 Sgeo: Yes. 06:00:59 elliott: im sure :( 06:01:01 oh haskell 06:01:03 augur: In fact, why don't you just use OpenGL and the whole thing can be in Haskell. :p 06:01:05 my dearest haskell 06:01:20 elliott: because unity is a nice little cross-platform engine 06:01:31 F#! 06:01:35 augur: It's also closed-source, which -- being a fag -- makes me want to stay well away from it. 06:01:42 elliott: He's right, you know. Unity is alright. 06:01:43 yeah well. 06:01:47 (Note: Fag justification possibly flimsy.) 06:01:58 elliott: you're also a homosexual. 06:01:59 Sgeo: I spit on .NET. 06:02:01 Oh and it looks like its UI does its own widgets, ew. (See, even flimsier.) 06:02:14 -!- sebbu2 has joined. 06:02:15 i think you can dick around with UI stuff 06:02:17 elliott, just like The GIMP! 06:02:19 im not sure. 06:02:26 [in the past][I think] 06:02:40 Sgeo: Um, the GIMP invented GTK+ because /there were no toolkits/. 06:03:04 so does anyone want to work on a scifi videogame? 06:03:14 augur: So in conclusion, I'll work on your Unity-based, UnityScript-or-C game if it's actually OpenGL-based and Haskell. Hell, I demand a change from sci-fi to fantasy and from video game to drinking game while I'm at it. 06:03:25 lol 06:03:40 augur: No but seriously, you should do it in OpenGL and Haskell. 06:03:40 I can learn UnityScript >.> 06:03:57 * Sgeo has weird... things with these sorts of languages 06:04:05 augur: Sgeo wants to be part of your project solely for the "reputation" and "fame" it will bring. 06:04:05 -!- pingveno has quit (Ping timeout: 240 seconds). 06:04:16 Sgeo: i already have a rough idea of how i want the game to go, and i have a bit of code already, i just want someone to work with 06:04:32 elliott: an opengl drinking game in Haskell? sounds like the thing. 06:04:32 elliott: Functional programming languages have never seemed particularly well-suited to game development, in my mind. 06:04:36 augur: You really don't want to work with Sgeo. (I am doing a service to Sgeo here as well as you :P) 06:04:39 evincar: FRP. 06:04:50 evincar: The only reason they seem unsuited is because the default IO monad model is _broken_. 06:05:04 evincar: There is a functional way to do effects, FRP; it's sort of like event-based programming, but purely functional. 06:05:22 elliott, I'm assuming augur is not an idiot. And you don't think I'm an idiot, do you? 06:05:33 Sgeo: I refuse to comment. 06:05:34 elliott: Let me guess. The state of the program is a function of the current moment and all events that have happened up to the current moment? 06:05:38 evincar: No. 06:05:43 evincar: That's the shitty, non-functional model. 06:05:48 elliott: Well, that's what it ought to be. ;P 06:05:53 Haha... 06:05:55 -!- sebbu has quit (Ping timeout: 264 seconds). 06:05:56 evincar: No, that's just the State monad, faked as a function. 06:06:01 elliott, you once defended me when Vorpal made a comment... 06:06:03 In fact it's the IO monad faked as the State monad faked as a function. 06:06:15 Sgeo: we'll consider that question once you've done your homework... >:) 06:06:16 evincar: Seriously -- there are ways to do games elegantly and functionally, and if I wasn't about to go to bed I'd be happy to explain. 06:06:17 -!- pingveno has joined. 06:06:20 The only place that'd work is in something like Flash, methinks... 06:06:26 oerjan: Kick ban him! Given into temptation! 06:06:27 ...that is, what I said. 06:06:40 * pikhq waits for Death 06:06:47 elliott: he clearly stated that he procrastinated just fine without the channel 06:07:01 oerjan: yes, but he can procrastinate without irritating me :) 06:07:15 bah humbug! 06:07:21 elliott: Well, another time, perhaps. I don't doubt it, I just find that it's easier for me to use an imperative style for realtime apps and leave declarative for editors and stuff like that. 06:07:27 and a sodding rubbish christmas to you lot, too! 06:07:34 G'night? 06:07:45 evincar: Were I to explain it to you you'd be converted, but MY BODY NEEDS TO GO UNCONSCIOUS GOD DAMMIT. 06:07:54 s/?/./ 06:07:55 elliott, night, and happy 06:08:01 -!- elliott has quit (Quit: so long, fuckers). 06:08:46 elliot, feel free to explain it to me when you're back, I'd love to learn 06:09:25 Sgeo: You got "so long, fuckers"ed. 06:09:51 * Sgeo wishes he was a ... *gets slapped* 06:10:34 -!- j-invariant has quit (Quit: leaving). 06:11:18 elliott is so hilarious 06:13:41 A character, certainly. 06:14:53 U+ED? 06:15:03 (the only letters in his name that are hex numerals) 06:16:08 Nah, I'm pretty sure he lives far into the private-use area. 06:16:13 omg he is secretly ed! 06:17:04 Words stuffed. That took about ninety seconds per word. Now let's see if I can understand any of this story whatsoever. 06:19:00 "Karhulla oli juustonpala suussa." Something to do with a bit of cheese and a mouth. 06:19:21 A bear, a bit of cheese, and a mouth. 06:19:23 `translate Karhulla oli juustonpala suussa. 06:19:29 Bear was a piece of cheese in your mouth. 06:19:39 I'm sure that's exactly what it means. 06:20:07 Okay. -lla denotes the adessive case, which means... either in or on, lemme see. 06:20:15 `translate Karhulla 06:20:18 Karhulla 06:20:24 On. 06:20:25 `translatefromto fi en Karhulla 06:20:26 Bear 06:20:34 Now, "oli"... some form of "olla". 06:20:38 `translatefromto fi en oli 06:20:45 was 06:20:51 `translatefromto fi en juustonpala 06:20:54 a piece of cheese 06:20:54 Third-person singular indicative past. "Was". 06:21:08 `translatefromto fi en suussa 06:21:09 mouth 06:21:20 I think "juusto" is "cheese"; who knows what the "n" is all about. "Pala" is "bit". 06:21:27 The bear had a piece of cheese in its mouth, perhaps? 06:21:37 Finally, -ssa is "in". 06:21:47 So. "On the bear was a cheese-bit in the mouth." 06:22:01 Or, more idiomatically, "The bear had a piece of cheese in its mouth." 06:22:11 yay 06:22:18 `translateto en a piece of cheese 06:22:19 a piece of cheese 06:22:24 Err 06:22:27 `translateto fi a piece of cheese 06:22:29 pala juustoa 06:22:48 Gregor, your bot's translations into English are truly brilliant. 06:22:54 `translateto no a piece of cheese 06:22:56 et stykke ost 06:23:04 The phrase "a piece of cheese" captures every nuance of the phrase "a piece of cheese". 06:23:23 Okay. Next sentence... 06:23:32 tswett: oh i don't know, it's a bit imprecise 06:23:51 i mean, what was the cheese's motivation? 06:24:05 "Kettu pyysi sitä monta kertaa, mutta karhu ei sitä ketulle antanut." 06:24:30 Well, "kettu" means "fox". So... something about a fox. "Karhu" is still "bear". I think "mutta" might be "but". 06:24:37 `translate "Kettu pyysi sitä monta kertaa, mutta karhu ei sitä ketulle antanut. 06:24:39 "Fox asked for it many times, but the bear does it gives the fox. 06:24:52 tswett: It's just Google. 06:25:10 Gregor, your bot's invocations of Google are truly brilliant. 06:25:25 apart from the missing ei -> not, that was pretty understandable... 06:25:36 Indeed. 06:25:47 Well, I don't recognize any of the other words, so I'm just going to move on to the next sentence. 06:26:29 "Kettu kysyi viimein: 'Tiedätkö mistä nyt tuuli käy?'" 06:26:49 The fox does something finally: "Something something something something something?" 06:26:56 `translate Kettu kysyi viimein: 'Tiedätkö mistä nyt tuuli käy?' 06:28:30 `echo ping 06:29:14 Gregor: the source-of-fun has stopped yielding fun! Labor in order to make us feel better! 06:29:34 -!- hagb4rd has quit (Quit: hagb4rd). 06:29:46 No output. 06:30:22 Oh, I'm just going to use a google. 06:30:30 http://i.imgur.com/a4yhf.jpg 06:30:33 El zorro finalmente preguntó: "¿Sabe usted donde el viento es ahora?" 06:30:50 `echo ping 06:30:53 * tswett changes the output language. 06:30:54 The fox finally asked: "Do you know where the wind is now?" 06:31:36 So, I can read a lot of this, but not most of it. 06:32:30 ping 06:33:57 No output. 06:34:05 `echo ping 19 38 59 (resonance mode, damping at level 7) 06:34:14 ping 19 38 59 (resonance mode, damping at level 7) 06:37:13 -!- hagb4rd has joined. 06:42:27 -!- evincar has quit (Quit: Sleep?). 06:57:32 -!- church1 has quit (Ping timeout: 272 seconds). 07:07:02 What is 0/epsilon? 07:12:56 So, I want to find f'(5) where f(x) = x^2 07:14:05 (5+eps)^2 = 25 + 2*5*eps + eps^2 07:14:13 = 25 + 10eps 07:14:28 - 25 = 10eps 07:14:32 /eps = 10 07:14:37 Correct result, awesome 07:15:30 I'd try it with e^x but don't know how to do n^eps, is it 0 or something weird like that? 07:15:53 I can find out! 07:16:25 e^eps is probably 1+eps 07:17:24 e^eps must equal something + eps... 07:17:34 oerjan, why 1? 07:17:46 it has to be close to 1 because eps is close to 0 07:18:44 more generally, i find the approximation e^x ~ 1+x for small x is useful for head estimates... 07:20:12 Now, for the dual part of eps^eps 07:20:42 (1+eps)^(1+eps) = something + 0eps 07:20:42 -!- TLUL has quit (Read error: Connection reset by peer). 07:20:45 o.O 07:21:00 Did I screw that up? Yes I did I think 07:21:06 I think I forgot the derivative of x^x 07:21:45 something + eps 07:22:04 x^x + x^x * ln x 07:23:43 i am assuming that f(x + y*eps) = f(x) + y*f'(x)*eps for f a function differentiable at x 07:24:08 That's what Wiki says I think 07:25:18 -!- TLUL has joined. 07:44:00 -!- hagb4rd has quit (Quit: hagb4rd). 07:49:25 -!- hagb4rd has joined. 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:36:55 -!- Sgeo has quit (Read error: Connection reset by peer). 08:43:08 -!- pingveno has quit (Ping timeout: 260 seconds). 08:45:03 -!- pingveno has joined. 08:49:48 -!- oerjan has quit (Quit: Good night). 09:54:06 -!- MigoMipo has joined. 10:18:45 -!- ais523 has quit (Remote host closed the connection). 10:23:53 -!- Phantom_Hoover has joined. 11:09:36 -!- hagb4rd has quit (Ping timeout: 272 seconds). 11:56:24 -!- TLUL has quit (Quit: *disappears in a puff of orange smoke*). 12:07:09 -!- Zuu has quit (K-Lined). 12:11:06 Vorpal: http://i.imgur.com/fOopp.jpg <-- what the hell is that? 12:18:55 -!- FireFly has joined. 12:18:55 -!- FireFly has quit (Changing host). 12:18:55 -!- FireFly has joined. 12:50:33 -!- hagb4rd has joined. 13:09:59 Vorpal, some kind of hyperdungeon? 13:16:38 Actually, I don't see any odd geometry in that... 13:16:55 * Phantom_Hoover swatpans Ilari --==\#/ 13:17:10 Ouch. 13:22:19 Based on blockiness, I guess its from minecraft... 13:32:35 Phantom_Hoover, ? 13:32:40 Phantom_Hoover, oh the image 13:32:42 Phantom_Hoover, perhaps 13:33:10 Phantom_Hoover, man made in large parts I suspect 13:33:12 The "shadowy" spots look abnormal. 13:36:29 fizzie, same do the cages 13:36:58 it must be man-made 13:37:20 Sure, but I mean "abnormal" in the sense of "not like the usual lighting rules". 13:37:46 fizzie, indeed 13:38:25 fizzie, it's the default texture pack I think 13:38:59 Could be, I haven't looked at that lately. :p 13:40:07 fizzie, btw I'm handing out free records (subject to limited availability) 13:41:08 I'm going to log on soon(ishly) to test things. 13:44:04 fizzie, to test what? 13:44:23 The "don't jump if blocked" best-effort test. 14:06:35 I love the TV Tropes Troper Tales pages... 14:07:26 I bet you thought Wolfram had the largest ego possible without collapsing under its own weight. 14:07:28 You were wrong. 14:08:44 Fortunately, Mary Sue has been cleansed of self-nominations. 14:11:00 In other news, I finally worked out the relationship between differentiation and integration in my head, 3 years after learning calculus. 14:11:44 I am now content with the world. 14:12:26 http://tvtropes.org/pmwiki/pmwiki.php/TroperTales/EverybodyHatesMathematics 14:21:59 wow 14:23:12 Phantom_Hoover: hmm, what's the relation between integration and differentiation? 14:23:25 olsner, seriously? 14:24:13 The whole "int_a^bf(x)dx = F(a)-F(b)" bit? 14:24:24 *F(b)-F(a) 14:24:38 I mean, did you just realize what the words mean, or did you find a more profound relationship? 14:25:46 I realised why it happens in the first place. 14:30:20 And since everybody hates matematics... It is easy to disinform using creative statistics... :-) 14:32:34 Phantom_Hoover: it "happens"? I've always thought integration and differentiation was something you *did* rather than something that just happens 14:33:04 olsner, "the reason differentiation and integration are inverses of each other", then. 14:38:46 I never managed to learn the definition of integration, but for me integration means semi-intelligently guessing a function that has the correct derivative 14:39:28 and then they're simply inverses by definition :) 14:49:04 olsner, yes, but the other meaning of (definite) integration is the calculation of the area under a curve. 14:49:40 Which has, on the face of it, absolutely nothing to do with gradients of curves at a point. 15:08:45 * Phantom_Hoover installs GNUstep with a feeling of self-hatred. 15:12:18 cut wrist, install gnustep? 15:12:35 Not just gnustep! 15:12:39 gnustep-devel! 15:12:56 ("dev" isn't fancy enough for the GNUstep people, apparently.) 15:16:53 OTOH, Oolite is worth it. 15:23:49 http://www.youtube.com/watch?v=D1sXuHnf_lo 15:29:56 i have some NeXTSTEP shit 15:29:59 anyone wanna buy it 15:39:25 No. 15:40:24 I'm only installing GNUstep because Oolite was originally written in Objective-C, and noöne could think of a better way to port it to other platforms. 15:41:01 well I still have two nextstep pizza boxes 15:41:06 and a megapixel monitor 15:41:12 and other BULLSHIT i want to get rid of 15:50:25 -!- elliott has joined. 15:54:19 07:29:56 i have some NeXTSTEP shit 15:54:19 07:29:59 anyone wanna buy it 15:54:20 only a cube. 15:57:52 tru 15:57:57 every1 luvs the cube 15:58:04 but i only have slabs of shit 15:58:14 Quadrescence: well do you have anything that can actually boot 15:59:05 yes 15:59:11 one of the slabs boots up fine 15:59:18 the other doesn't (idk why) 16:01:14 hm what keyboard/mouse ports do they have, wikipedia doesn't say 16:13:23 -!- reiffert has quit (Ping timeout: 276 seconds). 16:13:28 -!- reiffert has joined. 16:15:46 -!- Gracenotes has quit (Remote host closed the connection). 16:19:17 -!- Gracenotes has joined. 16:25:45 Making a case more cubical than flat seems to be a surefire way of attracting people. 16:26:29 I have that SGI Indy slab ("Indigo without the 'go'", referring to the performance), and it's irrefutably more boring than the O2s, no matter that their hardware doesn't differ *that* much. 16:28:02 (The O2 is a sort of a rounded cubeish thing.) 16:28:46 (Admittedly it does also have many more megahurts too.) 16:33:59 -!- poiuy_qwert has joined. 16:35:36 -!- p_q has quit (Ping timeout: 265 seconds). 17:01:06 -!- sftp has quit (Read error: Operation timed out). 17:01:35 -!- sftp has joined. 17:01:43 -!- Sasha has joined. 17:16:00 -!- elliott_ has joined. 17:16:00 -!- elliott_ has quit (Client Quit). 17:16:05 fizzie: ERROR: Permission to fis/mcmap.git denied to ehird. 17:16:06 fizzie: Plzfix? 17:16:25 fizzie: I think you pretty much have to add people individually as contributors :P 17:16:29 I has two useful commits to push. 17:17:51 Can't you make a pull request 17:18:16 Deewiant: Yes, but fizzie said it was going to be public-push, and that sounds more fun than having my own repo. :p 17:20:20 Yes, I can add you as a collabomator there, soon. (What's the two things?) 17:21:08 fizzie: //coords, which does some printin' of coordy actions (because F3 gets overwritten with graphs a lot), and I changed the "pure white" colour to in fact just use the terminal's default colours, so it works on lightbulb-y terminals too. 17:21:11 (i.e. light-backgrounded) 17:21:18 *backgrounded.) 17:23:00 fizzie: Is it "easy" to inject chat packets? 17:23:05 If so, I'll make //coords do that. 17:23:25 (The colour code syntax would be nice, too; I know it involves that wavy S thing.) 17:25:53 Sure. 17:26:12 inject_to_client(packet_new(PACKET_CHAT, "foo")); will probably make 'foo' appear on the client. 17:26:23 (Just #include "common.h" and "protocol.h" for that.) 17:27:58 And the color code syntax is just §-in-UTF8 followed by a character out of [0-9a-f], the palette is also somewhere. 17:28:15 Or you can look at the color code decoding to map between palette and terminal colors. 17:29:13 UTF-8 in strings probably might not be quite safe, but you can use something like "foo \xc2\xa7dbar" to get bar in color d. 17:29:16 fizzie: If I put the actual UTF-8 byte in the source, you'll hate me, won't you? 17:29:21 Aww, see, see, you preempted me. 17:29:26 Yes, and it's not a byte, it's two. 17:29:30 Yes, yes, yes. 17:29:33 You PEDANT. 17:29:38 fizzie: Oh man, I have to use sprintf. Isn't that great? 17:30:31 I'll just make a 96-byte buffer; 's a power of two, and my envelope calculations tell me it'll work right up until Notch switches to 128-bit coordinates. 17:31:15 What should I write in the collaborator thing? Is it a github account name or what? Are you that "ehird" guy? 17:31:41 fizzie: I may be that ehird guy, yes. 17:31:45 And I think that's what you put in there, yes. 17:32:00 I am also that alise guy, but I use that account even less than this one. 17:32:13 -!- Goosey has quit (Read error: Connection reset by peer). 17:32:22 Well, it's there. And ooh, it has a completion thing. 17:32:56 So, wait, are packet_news garbage collected? 17:33:58 No, but when you hand a packet to inject_foo, the corresponding proxy thread will deallocate it when it has been injected. 17:34:11 Ah. 17:34:21 fizzie: What is your favourite colour? 17:34:36 (I need to pick a colour for the mcmap chat messages that isn't red (hMod) or purple (COBOLSERVER 3000).) 17:34:51 Aw, I was going to go all purple. 17:35:10 fizzie: I think ineiros would strike down upon thee. 17:35:36 The pink is quite sexy too, but I guess that's rather close to purple. 17:35:54 -!- j-invariant has joined. 17:36:25 Is yellow used for anything? 17:36:32 Hmm, yes, it is, but I forget what. 17:36:37 Is that the "main" server messages? 17:36:45 I vaguely recall seeing yellow somewhere, but not sure where. 17:36:49 any luck with the differentatiation 17:36:53 I'll go with cyan. 17:37:02 Right, the "left the game" "joined the game" messages are in yellow. 17:37:08 j-invariant: well, yep; it works properly, for Nth derivatives, parameterisable N, and finite shows 17:37:28 j-invariant: basically I added a new constructor Zero that is, semantically, identical to (fix (Dual 0))... but of course all the operations on it terminate strictly and the like 17:37:34 and it can be printed more simply 17:38:18 fizzie: So I want colour 11. So... \xc2\xa7b? 17:38:32 Sounds right. 17:40:59 -!- chickenzilla has left (?). 17:47:47 fizzie: Pushing now. 17:47:54 fizzie: (You will probably *really* want to rewrite cmd_say.) 17:48:12 fizzie: There you go. 17:48:30 fizzie: Three lovely commits; commands now give output to chat, too, in cyan, and //coords works. 17:48:33 elliott, got Oolite working; may not play MC for several days. 17:48:35 To print your current coordinates. 17:48:44 fizzie: Also shows white as the terminal's default colour. 17:48:45 Such happy. 17:50:13 fizzie: Interestingly, (0,0) isn't the spawn; it's three chunks that were presumably the original spawn, then a biome disconinuity. 17:50:21 I guess the spawn was changed right away for whatever reason. 17:56:32 Yeah, I f3'd the spawn a while ago. 17:56:46 Maybe they moved it when starting the game, who knows. 18:01:32 -!- radams976 has joined. 18:02:10 radams976: hi 18:03:15 -!- radams976 has quit (Client Quit). 18:03:25 Don't byte the noobs! 18:05:08 but we can still nibble them, can't we? 18:05:15 Yes. 18:10:42 nybble? 18:11:27 And since everybody hates matematics... It is easy to disinform using creative statistics... :-) <-- only almost all, not all 18:12:39 and a megapixel monitor <-- what 18:14:32 What is "what" about that. 18:14:34 Megapixel = 1M pixels. 18:14:52 fizzie: I've pushed an incredibly important update; it is rather vital that everyone upgrades now. 18:14:59 but where can you even find non-megapixel monitors nowadays? except on like mobile phones? 18:15:11 fizzie: Oh man, I have to use sprintf. Isn't that great? <-- sn 18:15:21 Vorpal: Shut up. 18:15:21 Vorpal: it is the name of NeXT's monitor 18:15:37 Vorpal: (There was no way it could overflow the buffer, as the variables in question are fixed-size.) 18:15:39 (Integers.) 18:15:54 http://www.monitorworld.com/Monitors/next/megapixel.html 18:15:59 Quadrescence, a 18:16:00 ah* 18:16:35 fizzie: I've pushed an incredibly important update; it is rather vital that everyone upgrades now. <-- what is it? 18:16:45 Vorpal: Vital. 18:16:47 Also an update. 18:17:53 elliott, no way 18:18:10 Vorpal: No way what?! 18:18:15 elliott, that it is vital 18:18:19 Of course it is. 18:18:22 * Vorpal slaps test with a super-large, super-smelly, decaying digitally-enhanced reinforced IRC-grade trout 18:18:25 huh 18:18:29 I had that alias here 18:18:29 See? 18:18:31 wtf 18:18:33 Vital. 18:18:34 elliott, I wonder why 18:18:40 I'll remove it from my cleint 18:18:41 Vorpal: Because of the 90s. 18:18:45 client* 18:19:01 http://www.urbandictionary.com/define.php?term=trout-slap <-- Look, it even has pages of Urban Dictionary entries with lots of probably-not-ever-used-more-than-once sexual definitions. 18:19:05 That's the mark of authenticity, that is. 18:19:13 XD 18:20:17 -!- wareya has quit (Read error: Connection reset by peer). 18:20:35 -!- wareya has joined. 18:24:10 "The only time a Singaporean is capable of forming a complete English sentence on IRC" :) 18:24:15 haha 18:26:14 -!- j-invariant has quit (Quit: -). 18:38:05 -!- j-invariant has joined. 18:42:16 HEY GUYS I'm on a plane 18:44:44 Gregor: have you had it with the snakes on it yet? 18:45:31 *sexual joke in poor taste* 18:47:35 fizzie: I'm refactoring all the non-[CHAT] messages to use chat(); that okay with you? 18:47:40 hippos in a helicopter at least rhymes. 18:47:49 Well. 18:47:53 Also apart from [PLAYER] appear/disappear. 18:47:57 Because that would just be irritating. 18:48:13 what is that thing you're working on anyway? 18:48:17 Actually turns out I already did that. 18:48:22 olsner: A Minecraft server proxy that does all kinds of fancy stuff. 18:48:28 oh, nice 18:48:31 I guess 18:48:34 olsner, I assume you play mc 18:48:44 "Assume"? 18:48:45 On what grounds? 18:48:46 (since almost everyone does) 18:48:49 Vorpal: you can assume whatever you want :P 18:48:50 That's ... not even false. 18:48:53 elliott, a Swede. 18:48:54 elliott, too 18:48:59 ... 18:49:10 elliott, like, more than half of the Swedes I know seem to have mc 18:49:45 *more* than half? that implies you know more than two swedes! 18:49:51 git push is so slow. 18:50:11 elliott, blame git or github 18:50:19 olsner, tens! 18:50:21 I'll blame ssh. 18:50:28 Since git pushes are usually very fast and GitHub's HTTP is very fast. 18:50:31 elliott, ssh is fast in general 18:50:39 it seems to imply that anyway, it depends on what it takes for you to think it "seems" like someone has mc 18:50:46 I would like to see bzr push faster than this over ssh. Ha. 18:50:49 specifically, on whether I "seem" to have mc 18:51:00 olsner, you don't seem to have it 18:51:13 olsner, seem was used in the sense of clothing 18:51:14 olsner: LOL CONVERSING WITH VORPAL 18:51:37 What messages are those? 18:51:38 (also to the north-left) 18:51:47 I don't think the map-mode changes make sense in the client stream really. 18:51:48 fizzie: Mode setting ones, and nothing else at all. :p 18:51:54 Well, that's I guess a matter of opinion. 18:51:57 elliott: what's so lol about that? 18:52:01 fizzie: Oh. Well, I've already pushed it. You can revert if you want, it's just that I never look at the console. 18:52:09 fizzie: (And I can easily imagine someone, e.g. redirecting it to a file.) 18:52:13 olsner: olsner, seem was used in the sense of clothing 18:52:32 I don't have a very strong opinion on it, so I guess I'll just let it be. 18:52:45 oh, I missed that line, but that's spelled 'seam' afaik 18:52:52 elliott, randomness 18:53:08 olsner: it is, but it did helpfully derail the conversation without you getting an answer :) 18:53:28 FLOODTIME 18:53:29 * gamax92 has joined ##javascript 18:53:29 may i ask you a question 18:53:29 gamax92: First you have to check the schedule to see whether this is an Approved Questions Hour, then you have to file a question request at the web site in the /topic. 18:53:29 i dont have the question, my friend does 18:53:30 Meh, the cart-riding will need a more complicated thing. :/ 18:53:32 gamax92: Well then he'll have to fill out the question request form. 18:53:33 * gamax92 has left ##javascript 18:53:35 Am I a bad person? :P 18:53:39 -!- Sgeo has joined. 18:53:49 Gregor: Yes, and that's why we love you. 18:54:21 elliott: hmm, did I ask anything that wasn't answered? 18:54:30 :P 18:55:02 olsner: well, OK, you didn't ask a question, but you implied one 18:55:08 it seems to imply that anyway, it depends on what it takes for you to think it "seems" like someone has mc specifically, on whether I "seem" to have mc 18:55:19 elliott: olsner, you don't seem to have it 18:55:34 olsner: olsner, you don't seem to have it olsner, seem was used in the sense of clothing 18:55:39 olsner: this is one of the things that vorpal likes to call "jokes" 18:56:06 fizzie: Can I add timestamps to the [CHAT]/[PLAYER] things? 18:57:03 elliott: hmm, right, and that derailed something? 18:57:21 olsner: yes, the minecart fell off the track. 18:57:22 wait what? 18:57:56 elliott: You mean on-console? Why not. 18:58:34 fizzie: I'm doing all my edits with vi without syntax highlighting or automatic indentation; can I have a hardcore prize? 18:58:47 I'm not sure there is a prize. 18:58:54 fizzie: But I want a prize. 18:59:02 now to find the right way to construct this PDPE 18:59:22 fizzie: Can I conflict with math.h names? :p 19:02:02 oh, this one from a week ago: https://gist.github.com/657234#LID75 In which olsner manages to make me hate long mode. 19:02:12 did you mean that specific line? what's wrong about it? 19:02:23 olsner: MAGIC FLAGS AND BITS AND PGE AND WHAT 19:04:32 mmkay, well paging involves flags, what's the big deal? :) 19:04:45 olsner: DFFFF 19:05:34 fizzie: You do realise that every time you call do_die, it's with "%s", msg, thus making the printf part of do_die rather useless? :p 19:05:52 That's not very true. 19:06:02 Or of it is, it wasn't when I wrote it. 19:06:04 There's the dief macro still. 19:06:09 It's not my fault if I don't use it. 19:06:22 (Because the instances have been changed to stopfs.) 19:06:27 (And I think those still use do_die.) 19:07:12 fizzie: Oh, so you do. 19:07:12 Darn. 19:07:34 fizzie: (I want to make do_die use log(), but I can't, really, because it does two prints.) 19:07:49 elliott, and? 19:07:53 Vorpal: And what? 19:08:04 Prediction: ...logarithms... 19:08:07 elliott, why is it an issues it uses 2 prints 19:08:12 Because log() does one print. 19:08:23 elliott, yes.... and? 19:08:29 And it timestamps them. 19:08:35 So I can't use log() in do_die(). 19:08:40 I do use math.h here and there, I'm not sure how I feel about the name-conflict. 19:08:44 elliott, are they macros? 19:08:50 Vorpal: ...??? 19:08:53 fizzie: OK, I'll rename it. 19:09:06 fizzie: printlog, probably. 19:09:09 Or logprintf. 19:09:15 elliott, do_log 19:09:16 Or log_print :P 19:09:21 do_ is a silley prefix. 19:09:24 log_print is good. 19:09:27 elliott, true 19:09:32 elliott, log_format? 19:09:37 log_fmt 19:09:41 log_printf. 19:09:43 Yes, the do_ prefix is not visible to calling code. 19:09:45 or that 19:09:47 sounds like you want a va_list variant of log or something like that 19:09:52 It's just the underlying function for the die/dief/log/logf macros. 19:09:55 olsner: not really, it's more involved than that 19:10:07 olsner: I need a va_list variant that also takes /another/ format and two extra args for that one :P 19:10:35 olsner: Yes, the code in question does one vfprintf and one fprintf and expects them to be concatenated. 19:10:41 Anyway, you can just use a buffer there. 19:11:10 vararg-macros perhaps? #define foo(fmt, ...) real_log_printf("%d" fmt, timestamp(), ##__VA_ARGS__) 19:11:13 s/log/stop/g 19:11:45 I think the ## magic is an gcc-extension though, without that you'll have interesting issues when doing foo("bar") with no extra args 19:12:43 what's the problem with doing two prints though? 19:14:08 olsner: The "print" adds the timestamp, so the calling code -- which does fprintf(stderr, "DIE: %s:%d: ", file, line); vfprintf(stderr, fmt, ap); -- would end up having those two things split in two separate timestamped lines. 19:14:12 right 19:14:16 -!- pikhq has quit (Ping timeout: 276 seconds). 19:15:03 Incidentally, the ## gcc-onliness is why I have a die() macro and a dief() macro separately. (Though I already have nested functions and whatnot, so gcc-extensions aren't really much of an issue.) 19:15:48 hey 19:15:57 do you guys know some debuggers for DOS? 19:16:05 there's DEBUG 19:16:10 meh 19:16:32 djgpp might include a gdb for dos 19:16:50 i want to tap into one game's memory and check some stuff there 19:16:58 that gdb probably only works with DPMI or dos4gw though 19:17:26 elliott: Have fun fixing conflicts with what I just pushed to github, though. 19:18:02 I also fixed the leak you had added in cmd_slap. 19:18:11 hell..this awesome footage make one's flesh creep 19:18:27 Zuh? 19:18:29 --> http://www.youtube.com/watch?v=cJrtROuQFfk&list=PL408EDD9348488A28&index=11&playnext=4&fmt=18 19:18:33 fizzie: If this were scapegoat ... 19:20:03 I sort of liked the "//goto: usage: //goto x z" over "usage: //goto x z", but whatevers. 19:20:33 hagb4rd: koyaanisqatsi is boring 19:20:59 fizzie: Really? It seemed like super-weird duplication to me. 19:21:06 is it? it's the final scene right 19:21:14 elliott: I'm super-weird like that. 19:21:36 guess you have to tune in someway.. or just be in the right mood 19:21:50 fizzie: Guess how lucky I am? 19:21:56 fizzie: That's right! I get to rewrite handle_chat! 19:22:07 Why's that? 19:22:12 fizzie: log_print 19:23:07 Just use a glib string and g_string_append_printf/g_string_append/g_string_append_whatever instead of those separate prints. 19:23:08 fizzie: Hmm, is there a "more efficient" way than str_join to build up a big ol' string incrementally in glib? 19:23:13 See, look at that, you're so helpful. 19:24:07 GString *s = g_string_new(""); and so on; then at the end you do a "gchar *cstr = g_string_free(s, FALSE);" and it gets rid of the glib string structures but gives you the single c-string back. 19:24:22 glib is so weird. 19:24:51 (But, so I don't end up saying it in my head all the time when coding: LOLOLOL CONSTRUCT A NEW G-STRING ahem.) 19:25:16 sounds like something stuffed with loads of dynamic allocations and indirection... how will you handle out-of-memory errors in log_print? :) 19:25:25 olsner: It's not "real" logging. 19:25:29 I won't! Yaaaay. 19:25:35 olsner: It's just whatever ends up in the stdout of the program. 19:25:43 But you can totally tee it to a file, man. 19:25:49 hagb4rd, why does the rocket change a short way into that video? 19:25:59 fizzie: http://library.gnome.org/devel/glib/stable/glib-String-Chunks.html This is probably better than a GString, but GStrings look more convenient. 19:26:05 (LOLOLOLOL CONVENIENT G-STRING HAHA ahem.) 19:26:24 Phantom_Hoover? ..this is the challanger 19:26:35 * Phantom_Hoover laughs. 19:26:36 You're printing out silly text to the console, I'd really just go with the convenient choice. 19:26:41 That is definitely not the Challenger. 19:27:12 you're right 19:27:30 it's not even a space shuttle 19:27:41 For one thing, the Challenger disaster was 4 years after Koyaanisqatsi was released; for another, that rocket is clearly a Saturn V in the early bits of the video. 19:27:51 It changes to something else after it takes off. 19:28:06 changes? 19:28:11 it blows up 19:28:31 No, I mean the rocket that blows up is not a Saturn V. 19:28:45 yes.. changing some states.. you can say indeed 19:29:07 particle transformation matrix 19:30:47 What. 19:33:48 char stamp[23]; 19:33:48 time_t now = time(NULL); 19:33:48 struct tm *tm = localtime(&now); 19:33:48 strftime(stamp, sizeof(stamp), "%FT%H:%M:%s%z", tm); 19:33:48 printf("%s ", stamp); 19:33:48 vprintf(fmt, ap); 19:33:50 putchar('\n'); 19:34:01 fizzie: Why is, instead of the timezone, it printing :? 19:34:06 There's some garbage after the space but I think that's handle_chat. 19:34:17 2010-12-19T19:30:�` [CHAT] 'Welcome to a322.org Minecraft server' 19:34:17 2010-12-19T19:30:�v�� [PLAYER] appear: fizzief 19:34:17 2010-12-19T19:30: [CHAT] What's that? You think you fixed it? HAHAHAHA 19:34:20 Ooh, no. 19:34:25 The first two have corruption before the space. 19:34:29 So /something/ is WRONG. 19:34:39 Phantom_Hoover, another question: can you tell me which rocket-part it is, focused by the cam in that epic falling sequence 19:35:11 It's a thruster and the tattered remains of the hull above it. 19:35:49 fizzie: How fast can fungot generate babble? 19:35:49 elliott: a worker is any body of the rule defining a specific 19:35:51 fizzie: The command-line version. 19:36:12 Not too fast. I can benchmark quickly. Depends also on the model. How so? 19:36:15 A second-stage thruster, too, since the first stage has at least 3. 19:36:55 thats kind of precise :) thx 19:36:58 -!- Sasha has quit (Remote host closed the connection). 19:37:40 fizzie: Turns out it doesn't matter! 19:38:01 The command-line version is a Perl script, though; one could whip up a trivial C version to be real fast. And it does the whole disk-reading-all-the-time (though I suppose disk cache will take care of that). 19:38:14 The Perl script is probably slower than the Befunge code. 19:39:00 16 words per second with europarl. 19:40:24 `addquote The Perl script is probably slower than the Befunge code. 19:40:52 251) The Perl script is probably slower than the Befunge code. 19:41:13 fizzie: Any ideas w/ my string corruption? 19:42:46 Not immediately. Pastebin the surroundings of the function too? 19:43:15 fizzie: http://sprunge.us/ZBYY 19:43:21 fizzie: Or do you mean the functions around it? 'cuz that would be weird. 19:43:41 Aha... %s must be wrong. 19:43:49 2010-12-19T19:32:[corruption] 19:43:57 fizzie: Why is, instead of the timezone, it printing :? <-- maybe timezone is not set? 19:43:59 %s The number of seconds since the Epoch, 1970-01-01 00:00:00 +0000 19:43:59 (UTC). (TZ) 19:44:01 -!- pikhq has joined. 19:44:02 OK, that explains little, but I want %S. 19:44:04 hagb4rd: no, it is 19:44:08 k 19:44:13 Yes, I managed to not notice that. 19:44:23 Still, that corruption don't look like seconds to me. 19:44:55 I just read %H:%M, looked at your pasted examples, went "hours and minutes, okay" and didn't wonder about seconds. 19:45:07 2010-12-19T19:44:22+ [CHAT] 'Welcome to a322.org Minecraft server' 19:45:08 2010-12-19T19:44:22+  [PLAYER] appear: fizzief 19:45:09 What. 19:45:19 "+" doesn't rightlook. 19:45:36 It's the right character there to be the first-thing-of-timestamp. 19:45:41 Indeed. 19:45:53 Oh, I'm without enough space. 19:45:59 fizzie: Still, I would like it if it appended Z for UTC. 19:46:08 fizzie: In fact, perhaps it doesn't really need to put the timestamp there at all. 19:46:13 fizzie: People know what timezone they're in, right? 19:46:18 Usually. 19:46:43 Or you could s/localtime/gmtime/, put a Z in there manually, and just say it logs in sensible-time instead of local-time. 19:46:44 -!- Sasha has joined. 19:47:01 Or, or, or! Timestamp in Internet time! 19:47:15 Or you could s/localtime/gmtime/, put a Z in there manually, and just say it logs in sensible-time instead of local-time. 19:47:19 If this were meant to be a useful log, sure. 19:47:27 But actually it's just so that you can see general timestamps :P 19:47:53 fizzie: In fact, I probably shouldn't bother logging dates. Nobody *really* wants to log this to a file. 19:48:13 Yes, %H:%M:%S or even [%H:%M:%S] could be okay. 19:48:31 fizzie: There's already bra-kets around the [CHAT] and the like, so that would look weird. 19:48:36 I guess. 19:48:52 It's not a very serious matter, the formatting of this thing. 19:48:54 * elliott separates it out into a print_timestamp function to use in do_die. 19:48:57 fizzie: YES IT IS 19:49:30 Did you already merge in my changes that add more plain printfs inside world.c? :p 19:50:25 fizzie: Not yet! 19:50:37 fizzie: BTW, I'm making DIEs go to stdout, since they're part of the "log". 19:50:39 Is that okay? 19:51:02 -!- pikhq has quit (Ping timeout: 240 seconds). 19:52:05 oh 19:53:46 Sure. 19:54:03 elliott, why are you doing quantum physics in an MC mapping tool? 19:54:22 Phantom_Hoover: Because. 19:54:49 Phantom_Hoover: It's not just a mapping tool, it's nowadays also a slapping tool. 19:55:01 Goody! 19:55:40 -!- pikhq has joined. 19:55:59 java.io.IOException: Bad packet id 200 at gk.b(SourceFile:89) at jq.c(SourceFile:149) at jq.c(SourceFile:9) at pf.run(SourceFile:59) -- ooh, haven't seen that one before. 19:59:02 -!- ais523 has joined. 19:59:35 elliott@dinky:~/code/mcmap$ ./mcmap -x 2 -s 300x a322.org:25566 19:59:35 19:58:53 [DIE] main.c:171: Invalid window size: 300x 19:59:43 fizzie: I think I just unintentionally enterprisey'd your option parsing. 20:00:06 fizzie: Sh... should I put it back? :p 20:00:48 -!- pikhq has quit (Ping timeout: 260 seconds). 20:01:07 What does "enterprisey'd" mean, exactly? 20:01:57 elliott@dinky:~/code/mcmap$ ./mcmap -x 2 -s 300x a322.org:25566 20:01:58 19:58:53 [DIE] main.c:171: Invalid window size: 300x 20:01:59 fizzie: That. 20:02:19 Oh, right. 20:02:26 Well, I don't mind. 20:02:30 YAY ENTERPRISEY 20:02:30 It *is* a bit silly, though. 20:02:36 fizzie: Yes, but, unified functions! 20:02:50 fizzie: The alternative is die_due_to_user_error_f and die_due_to_code_error_f. :P 20:03:01 Actually I think I've seen that line-number-in-user-error thing in some other big software package. Apache? 20:03:42 print_log("[BAD] Unknown packet id: 0x%02x", t); 20:03:43 It's bad. 20:03:56 *log_print 20:04:07 fizzie: Can I make a print_log function that prints the logarithm of a given number? :p 20:04:48 That could actually be a dief there. 20:04:55 Because it's actually going to die. 20:05:06 fizzie: Oh, it is? Wonderful. 20:05:20 Feel free to make it a die instead of log+return 0. 20:05:26 fizzie: "Dief" is such a wonderful word. 20:05:29 It's so... Nazi. 20:05:30 DIEF! 20:05:38 I may be slightly mad. 20:05:56 elliott@dinky:~/code/mcmap$ ./mcmap -x -y -s 300x300 a322.org:25566 20:05:56 20:05:14 [DIE] main.c:144: Option parsing failed: Cannot parse integer value '-y' for -x 20:06:04 I think that the "Option parsing failed:" bit there is slightly redundant. 20:06:23 Those are directly from glib's option-parser, I guess. 20:06:33 Indeed. 20:06:40 At least I can't recall writing such a thing. 20:06:42 Now to pull in your changes. 20:06:48 fizzie: You wrote "Option parsing failed:", though. 20:06:50 Which is just silley. 20:06:52 (Well, lowercase o.) 20:06:54 Oh, I did? 20:07:00 Yes. 20:07:10 Auto-merging main.c 20:07:10 Auto-merging protocol.c 20:07:10 Auto-merging world.c 20:07:10 CONFLICT (content): Merge conflict in world.c 20:07:10 Automatic merge failed; fix conflicts and then commit the result. 20:07:17 fizzie: I think the merge went much more badly than git suggests. 20:07:28 <<<<<<< HEAD 20:07:28 log_print("[PLAYER] appear: %s", name); 20:07:28 ======= 20:07:28 if (name) 20:07:28 { 20:07:29 printf("[PLAYER] appear: %s\n", name); 20:07:31 >>>>>>> dddd7178398e71bc67ef5aaa9312f0a40d8ed4b0 20:07:33 Heh. 20:07:39 It's not much of a conflict there. 20:08:00 Indeed. 20:08:15 fizzie: "VEHICLE"? Heh. 20:08:20 [TRANSPORTATION MECHANISM] 20:08:33 I originally wrote CART, but I think the same thing will apply to BOATs. 20:08:41 fizzie: Anyway, apparently by "a bunch", you mean "three". 20:08:47 Yes, a whole THREE printfs you added! Oh god! 20:08:55 Three's a... bunch. 20:09:22 They are more in the nature of debugging messages than actual sensible user messages, but, well. 20:09:28 Who wouldn't want to see some entity ids? 20:10:09 Vorpal: Coincidentally! I think I fixed the "red streaks" problem. 20:10:30 fizzie: So, uh, I didn't get any debug messages. 20:10:33 Oh, I think I forgot to `make'. 20:10:41 No, I didn't. 20:10:45 20:09:22 [CHAT] 'Welcome to a322.org Minecraft server' 20:10:45 ^C[VEHICLE] Mounted 855718elliott@dinky:~/code/mcmap$ 20:10:46 What. 20:10:57 Oh. 20:10:59 I forgot to loggify them. 20:12:21 fizzie: Mind if I go all OCD and make everything have a four-char [XXXX]? 20:12:36 Nnnno, if you seriously don't have anything better to do. :p 20:13:08 fizzie: It's Christmas, why would I have anything better to do? :) 20:13:23 fizzie: I think I might make the die prefix [GAK!]. 20:13:28 That's four bytes, after all! 20:13:31 Well, six. 20:14:45 Or DIEF, you seemed to like it. 20:15:33 fizzie: So does your thing handle pig-riding? 20:15:54 I don't quite know. 20:15:59 I'm trying to test a boat now. 20:16:26 20:15:49 [DIED] main.c:147: Cannot parse integer value '-y' for -x 20:16:28 SO DAMN ENTERPRISEY. 20:17:43 fizzie: OK, pushed my enterprises. 20:17:59 i don't believe that there's a way to run gdb under DOS 20:18:03 in dosbox for example 20:18:10 I don't quite remember how to make a boat. 20:18:15 nooga: djgpp 20:18:17 no? 20:18:21 fizzie: It's a U shape. 20:18:25 fizzie: Bottom two rows. 20:18:27 Sticks or wood, I forget. 20:18:42 Wood-U worked. 20:19:08 Oo, works. 20:19:55 * elliott considers making his Minecraft start-up script start mcmap. 20:19:56 [VEHICLE] mounted 867873 20:19:56 [VEHICLE] unmounted 867873 by destroying 20:20:07 (That was before your changes.) 20:20:33 fizzie: You might want to remove the IDs and make it (to modify the message in mine) "[INFO] Mounted vehicle.", "[INFO] Dismounted vehicle by destroying.", etc. 20:20:45 fizzie: (It's dismount, not unmount :P) 20:21:35 Dismounted the filesystem. 20:21:46 fizzie: Blame Unix. 20:22:55 Pushed a memory leak fix for your handle_chat. :p 20:25:58 fizzie: It's not my fault C sucks. :p 20:26:19 fizzie: What would be really nice is if scaling scaled the little people indicators too... I know you already know of that, though. 20:27:16 -!- pikhq has joined. 20:28:50 So, my stepdad randomly decided to swap out routers. 20:29:06 His new router hands back 192.168.1.1 for every DHCP request. 20:29:08 Yeah, I should probably just buy a polygon-filler and draw the indicators with that. 20:29:38 Meaning there's several systems on the same network with the same IP address. 20:30:06 pikhq: Completely randomly? :P 20:30:11 pikhq: And: AWESOME. 20:30:17 Erm, sorry, 192.168.1.2, not 192.168.1.1. 20:30:21 But, yeah. 20:30:26 It just hands the same damned IP back. 20:30:27 pikhq: Put OpenWRT on it. 20:30:28 It's the one-person router. 20:30:45 He stopped working on it because "works for me". 20:31:10 elliott: I'll probably do that to the old one. 20:32:00 pikhq: Was there any reason to change the router? :P 20:32:08 elliott: None! 20:32:29 fizzie: Do you really have to buy one? I mean, you just do one more/less pixel each time. 20:33:17 Well, the rectangles are already with FillRect. 20:33:27 The triangle-drawing is a bitmap though. 20:33:35 Whoo, the old one is currently supported by OpenWRT. 20:33:43 I guess eight-directional triangles I could just special-case instead of using a general-purpose polygon routine. 20:33:54 Well, I'll fix that at point X. 20:34:24 fizzie: N-directional triangles would be fun too, though. 20:35:31 Yes, but I don't want to redraw the map all the time just when you move your head around. 20:35:44 (And it seems to send an awful amount of the player-look packets.) 20:35:49 fizzie: You could just redraw the triangules. 20:36:02 The code is not clever enough to repaint only part of the background. 20:36:54 fizzie: But it's enterprisey! 20:37:01 Away now. 20:37:18 fizzie: ENTERPRISEY 20:37:41 Vorpal: Major mcmap updates. 20:40:39 meh 20:40:58 gdb does not recognize this game as executable 20:41:06 nooga: Well, djgpp is like, extended-only. 20:41:14 nooga: Hmm ... 20:41:20 nooga: gdb can do remote debugging via serial port. 20:41:24 the game uses dos4gw i thinkk 20:41:27 nooga: Perhaps you can convince a compiler to cross-compile for DOS with support for that? 20:41:30 Also, djgpp has its own stuff. 20:41:34 nooga: Oh, so you don't have the code. 20:41:36 nooga: I think you're fucked. 20:41:41 Try DOSEmu maybe? It might have gdb support. 20:41:51 fizzie: I think mcmap should come with its own service manager, to restart mcmap if it ever dies. 20:43:56 weeelll 20:44:01 i tried using dosbox debugger 20:44:28 but the game won't run properly when dosbox is in debug mode 20:46:46 fizzie: What would you say little patches of black would be, in post-halloween terrain? 20:47:23 Pumpkins, if you haven't mapped them. 20:47:25 Reeds, too. 20:47:37 Phantom_Hoover: Pumpkins have a mapping. 20:47:44 Reeds, then? 20:47:48 Phantom_Hoover: (You might want to "git pull && make"; there have been a lot of updates t'day.) 20:48:09 Phantom_Hoover: Answer: Shrooms. 20:48:24 elliott, on sabbatical due to getting Oolite back, remember? 20:48:33 Phantom_Hoover: Psht. 20:48:34 grr, bochs' debugger only displays the lower 32 bits of address space when you ask it to dump the page tables 20:48:47 elliott, psht to you too, sir! 20:50:01 olsner: Try remote gdb. :p 20:50:06 (Note: Requires kernel support.) 20:50:13 (I think.) 20:50:14 since it seems I have made my current page table work maybe I won't bother, but it would be really nice if it could a) actually display all mapped pages, b) check for errors in the page tables and complain visibly 20:50:18 (And a serial port driver.) 20:50:29 hmm, how would kernel support be involved in asking bochs what it's emulating? 20:54:06 -!- Phantom_Hoover_ has joined. 20:54:17 olsner: eh? 20:54:25 olsner: remote gdb requires a serial driver, I mean 20:54:29 and I think kernel support 20:55:17 -!- nooga has quit (Ping timeout: 245 seconds). 20:55:28 surely that is not required to connect gdb to bochs 20:55:41 olsner: You mean ... debug bochs itself? 20:55:50 I mean debug your kernel as it runs in qemu/bochs (qemu has better support IIRC). 20:56:00 no, I am talking about debugging the thing running in bochs 20:56:04 Although, actually, bochs has all the support, right? 20:56:08 Can't you just use bochs/gdb? 20:56:23 I can, but gdb is useless for this debugging 20:57:02 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds). 20:57:05 olsner: can't you just do 20:57:08 print (*locationofpagetables) 20:57:10 or is it not that simple 20:57:41 well, I already know what bytes the tables contain, what I'm interested in is what it's being interpreted as so that I can see what's wrong 20:58:18 alright then 20:58:30 fizzie: Hmm, it would be nice if your current (x,z) coordinates were in a corner of the mcmap window. 20:58:58 Why don't any of you file these things in the github? 20:59:27 Anyway, it would also be nice to have (optional) coordinate labels (say 100 block divisions) at the edge of the window too. 20:59:40 fizzie: I'm a developer, dammit, USERS file bugs, not me! 20:59:59 Well, you can also implement that as you will, but you'd better do the text-drawing ELEGANTLY. 21:00:00 o.O' 21:00:02 SDL doesn't do text. 21:00:07 fizzie: I'm not sure what you mean with coordinate labels, though? 21:00:14 Like maps have. 21:00:20 fizzie: Also, I'd just use a TOTALLY SNAZZY BITMAP FONT that I would have JUST MADE UP AT THE TIME. 21:00:21 And ah. 21:00:36 Japanese for "prostitution" is 売春. Literally, "selling youth". 21:00:46 fizzie: But, um, SDL_ttf. 21:00:52 pikhq: That's the japs for ya! 21:00:53 That's not part of SDL. 21:01:01 fizzie: No, but you have it installed already. :p 21:01:10 Because a euphemism ceased to have non-euphemistic usage. 21:01:13 (glib isn't part of SDL either.) 21:01:24 elliott: Not the development packages. 21:01:32 fizzie: Well, that's your fault! 21:01:38 fizzie: I think I had to install glib-dev. :p 21:08:51 -!- nooga has joined. 21:18:15 -!- nooga has quit (*.net *.split). 21:18:18 -!- FireFly has quit (*.net *.split). 21:18:21 -!- ineiros has quit (*.net *.split). 21:18:22 -!- jix has quit (*.net *.split). 21:18:34 -!- wareya has quit (*.net *.split). 21:18:37 -!- bsmntbombdood has quit (*.net *.split). 21:18:39 -!- rodgort has quit (*.net *.split). 21:18:41 -!- yiyus_ has quit (*.net *.split). 21:18:41 -!- fxkr has quit (*.net *.split). 21:18:43 -!- fungot has quit (*.net *.split). 21:18:44 -!- fizzie has quit (*.net *.split). 21:18:49 -!- Sasha has quit (*.net *.split). 21:18:52 -!- MigoMipo has quit (*.net *.split). 21:18:52 -!- pingveno has quit (*.net *.split). 21:18:54 -!- Leonidas has quit (*.net *.split). 21:18:55 -!- tswett has quit (*.net *.split). 21:18:57 -!- yiyus has quit (*.net *.split). 21:19:03 -!- sebbu2 has quit (*.net *.split). 21:19:09 -!- sshc has quit (*.net *.split). 21:19:11 -!- myndzi has quit (*.net *.split). 21:19:15 -!- lifthrasiir has quit (*.net *.split). 21:19:18 -!- j-invariant has quit (*.net *.split). 21:19:26 -!- Ilari_antrcomp has quit (*.net *.split). 21:19:26 -!- Ilari has quit (*.net *.split). 21:19:37 -!- mycroftiv has quit (*.net *.split). 21:19:48 -!- Slereah has quit (*.net *.split). 21:19:56 -!- Phantom_Hoover_ has quit (*.net *.split). 21:19:59 -!- Sgeo has quit (*.net *.split). 21:20:02 -!- elliott has quit (*.net *.split). 21:20:05 -!- hagb4rd has quit (*.net *.split). 21:20:25 -!- olsner has quit (*.net *.split). 21:20:31 -!- Mathnerd314 has quit (*.net *.split). 21:20:44 -!- quintopia has quit (*.net *.split). 21:20:50 -!- Vorpal has quit (*.net *.split). 21:20:54 -!- Gregor has quit (*.net *.split). 21:23:02 -!- nooga has joined. 21:23:02 -!- Phantom_Hoover_ has joined. 21:23:02 -!- Sasha has joined. 21:23:02 -!- Sgeo has joined. 21:23:02 -!- j-invariant has joined. 21:23:02 -!- wareya has joined. 21:23:02 -!- elliott has joined. 21:23:02 -!- hagb4rd has joined. 21:23:02 -!- FireFly has joined. 21:23:02 -!- MigoMipo has joined. 21:23:02 -!- pingveno has joined. 21:23:02 -!- sebbu2 has joined. 21:23:02 -!- bsmntbombdood has joined. 21:23:02 -!- tswett has joined. 21:23:02 -!- Mathnerd314 has joined. 21:23:02 -!- quintopia has joined. 21:23:02 -!- rodgort has joined. 21:23:02 -!- Leonidas has joined. 21:23:02 -!- jix has joined. 21:23:02 -!- ineiros has joined. 21:23:02 -!- yiyus_ has joined. 21:23:02 -!- Slereah has joined. 21:23:02 -!- yiyus has joined. 21:23:02 -!- fxkr has joined. 21:23:02 -!- Ilari_antrcomp has joined. 21:23:02 -!- fungot has joined. 21:23:02 -!- Ilari has joined. 21:23:02 -!- fizzie has joined. 21:23:02 -!- Vorpal has joined. 21:23:02 -!- sshc has joined. 21:23:02 -!- lifthrasiir has joined. 21:23:02 -!- myndzi has joined. 21:23:02 -!- mycroftiv has joined. 21:23:02 -!- olsner has joined. 21:23:02 -!- Gregor has joined. 21:24:04 elliott: I like it, it prevents me from leaving any warnings around. 21:24:05 Dear clog: I love you forever. Please don't die again. 21:24:07 -!- Gracenotes has quit (Ping timeout: 240 seconds). 21:24:38 -!- pikhq has quit (Excess Flood). 21:25:01 -!- pikhq has joined. 21:27:37 -!- oerjan has joined. 21:29:00 fizzie: So how do you feel about the wonderful wonderful GPLv2? 21:32:57 I don't feel very strongly about licenses, as long as they are something sensible. GLfunge is GPLv2, I think. 21:32:59 fizzie: Oh, I'll just bundle https://github.com/antirez/linenoise for simplicity. It can probably do the same things as this. 21:33:05 (editline sucks ass, it turns out.) 21:35:00 I'm not sure I'd go to the trouble of bloating that thing with a real line-editing library (even one that says "20k lines of code" as if twenty whole thousand lines is somehow small), but then again, I'm not the one doing it. 21:35:22 The line-editing will be something like ten times the size of mcmap itself, though. 21:35:32 wc -l *.c *.h => 2433. 21:35:52 fizzie: 21:35:52 * line editing lib needs to be 20,000 lines of C code. 21:35:53 erm 21:35:55 /* linenoise.h -- guerrilla line editing library against the idea that a 21:35:56 * line editing lib needs to be 20,000 lines of C code. 21:36:04 fizzie: It's just from the guy who made Redis; I found it when googlign. 21:36:05 *googling. 21:36:10 fizzie: There's a good chance it does what editline doesn't. 21:36:15 So, *shrug*. 21:36:25 Although it is actually 21k lines. :p 21:36:36 fizzie: But anyway, you're "meant" to just include it in your program. 21:36:38 (And hey, Android uses it.) 21:36:41 Okay, it is a bit more reasonably sized. 21:37:36 fizzie: What, 21k is more reasonable than 20k? 21:38:10 fizzie: You can just place leaves like that? 21:38:13 fizzie: Dude, let us place bedrock. 21:38:22 I'd rather you didn't. 21:38:32 Since it's not possible to actually get rid of it. 21:38:48 fizzie: You - so boring. 21:39:56 hmm, I'm planning to put unobtanium in one of my computer games 21:40:06 the theory being that it's completely indestructable or movable by any means whatsoever 21:40:07 If I'm looking at the right https://github.com/antirez/linenoise then linenoise.c is 599 lines (544 sloc), and linenoise.h is 56 lines (50 sloc); so if there isn't a lot more code hidden somewhere, it does look more reasonably-sized. 21:40:21 Oh, indeed, it is. I wonder how I miscounted. 21:40:21 thus, it's completely useless; it has a bunch of highly useful properties, but there's no way to actually obtain the stuff to use it yourself 21:40:27 ais523: that's bedrock :P 21:40:44 ais523: (bedrock is useful because you can build indestructable buildings out of it; so making it non-unobtainium would make it uselessium) 21:40:50 yep, I thought there might be an equivalent 21:40:53 fizzie: Can I replace mcmap with a shell script that starts mcmap.real under ledit? :p 21:40:55 *it might be an equivalent 21:41:06 You can do that at home. 21:41:12 it's just that unobtainum is a hilarious name for it, as it's normally used as a placeholder name for incredibly valuable fictional materials 21:41:15 Right, but not in polite company. 21:41:31 fizzie: I'd use ncurses, but that would screw up >file. 21:42:40 fizzie: I think I'll try the actual readline. 21:42:48 And TAINT THE CODE. 21:44:33 elliott! 21:44:34 If you *want*, you could add some #ifdefs that let the taint-fearing user disable that bit. 21:44:40 * augur taints elliott's code 21:44:52 fizzie: It is the FSF's considered opinion that that does not prevent the STD from spreading. 21:44:59 Unfortunately, they are probably right. 21:46:27 elliott, the whole clisp thing is rather more complex than "he made it readline-compatible". 21:46:40 Well, you could create a fork in github. (Though would a person then be allowed to contribute same code to both projects?) 21:46:45 Phantom_Hoover_: I know how complex it is. 21:46:48 taint, as in, forced to use GPL? 21:47:09 fizzie: I think I might just include readline and force you to GPL it, because it, unlike all the other libraries, does not mess up when other input comes along. 21:47:34 fizzie: (Perhaps one day someone will write a better line-reader and we can round up all 2 contributors to get them to agree to a license change.) 21:47:36 :p 21:48:03 Well, if you make it work with readline, that's all right for me. 21:52:20 Ooh, silly-todo: Option to rl_ding() when someone mentions your name. :-) 21:52:56 -!- BRASIL has joined. 21:53:28 BRASIL 21:55:07 SAMBA! 21:55:29 olé 21:57:12 elliott: Is rlwrap or equivalent not an option 21:57:14 * oerjan vaguely suspects hagb4rd of confusing spanish and portuguese 21:57:32 Deewiant: Sort of, but it's nicer to have it directly in there (and fizzie won't let me turn mcmap into a shell script.) 21:57:43 But you can do that at home already! 21:57:56 I'd just let people turn it into a shell script 21:58:09 Or make your own startup script start mcmap within some sort of readline-wrapper and minecraft. 21:58:30 I just don't want the "main" branch to require some arbitrary readline-wrappers to run. 21:58:54 fizzie: Right. Thus building it in :P 21:59:01 You don't need to require it 21:59:13 Anyway I'd have to do, like, 99% of the work anyway if I was using fread etc. 21:59:15 Make a script that checks for the existence of rlwrap/whatever in some preferred order and picks the first it finds 21:59:19 In fact more, since readline() handles allocation for me. 21:59:21 So nyah. 22:01:47 * oerjan does a whois and now vaguely suspects hagb4rd of being a native spanish speaker 22:02:04 nope.. right you are 22:02:49 -!- BRASIL has left (?). 22:03:57 elliott: Or you could use glib's "read a line with automagic allocations" function, and the wrapper you prefer. 22:04:20 fizzie: "I'm fizzie look at me I'm fizzie." SORRY FIZZIE I'VE ALREADY WRITTEN THE READLINE CODE AND JUST NEED TO HANDLE SIGNALS 22:04:20 elliott: You could use glib! 22:04:22 (But I don't mind the readline dependency either, so whatever makes you happy.) 22:04:24 I wish it didn't have to be this way. 22:04:29 But it is. 22:04:32 Deewiant: Yeah, using glib is ALWAYS fun 22:04:45 i'd like to learn more languages.. i love spanish, and as far as i know at least written are spanish and port. very similar 22:04:47 "Just need to handle signals" doesn't sound very nice either. 22:06:13 but it sounds very differently @oerjan 22:06:31 hagb4rd: yeah it's just that i think olé is very stereotypically just spanish. however i _did_ have to look it up to check it isn't in portuguese :D 22:06:37 "Just need to handle signals" doesn't sound very nice either. 22:06:43 fizzie: readline is /meant/ to do it, it just isn't doing it properly :D 22:06:50 editline? 22:07:10 I hope you're not sullying my oh-so-pristine utility with ugly and hacky workarounds. 22:07:18 <- doesn't _actually_ know either of them 22:08:16 fizzie: Absolutely not! 22:08:23 Deewiant: Editline fucks up when someone else talks. 22:08:24 Long story. 22:08:34 Also it didn't handle signals either, so shut up and let me fix this bug :P 22:10:21 22:09:41 [DIED] main.c:81: proxy thread (server -> client) write failed 22:10:27 fizzie: That... should that happen? 22:10:35 char *line = readline("> "); 22:10:35 if (*line) add_history(line); 22:10:35 inject_to_server(packet_new(PACKET_TO_ANY, PACKET_CHAT, line)); 22:10:35 free(line); 22:10:55 Well, it happens if you get disconnected for any reason. 22:14:14 fizzie: Oh -- it was "Chat message too long." 22:14:16 fizzie: What's the max length? 22:14:29 About a hundred bytes. 22:14:44 103 or something, IIRC. 22:15:17 Possibly s/bytes/characters, not entirely sure on that. 22:15:38 (It needs to be in UTF-8.) 22:16:05 > /playerlist 22:16:05 22:15:22 [CHAT] Player list (1/10): ehird 22:16:08 fizzie: Booyah. 22:16:18 Now just a bit of signal-handling and WE'RE DONE 22:16:35 OK, so it also segfaults on ^D despite resetting the terminal correctly; I've no idea why. 22:16:49 /who is an alias for that. 22:16:56 Oh, it is? Thanks. 22:17:14 do you guys like electro music?.. in case you 22:17:22 fizzie: It's probably thread-related issues, I bet. 22:17:30 aer in need of a little distraction --> http://www.youtube.com/watch?v=3qCFSYAgbAI&list=PL408EDD9348488A28&index=33&playnext=5&fmt=18 22:17:43 in case ..sry 22:18:07 fizzie: Heh, //coords doesn't work on the console for obvious reasons. 22:18:13 fizzie: Nor //goto. But "whatever", I say. 22:18:23 fizzie: (Unless you have a generic send_chat_to_server_maybe function somewhere?) 22:19:21 No, I don't. You could check for // and call cmd_parse instead of inject_to_server if you like. 22:19:53 * oerjan wonders why you double /'s in minecraft... 22:20:05 The interface for cmd_parse is a bit strange, it'd be something like cmd_parse(line+2, strlen(line)-2); 22:20:12 oerjan: you don't, it's mcmap's command syntax 22:20:18 ah 22:20:21 oerjan: since /foo are server commands, we decided to play it safe 22:20:31 oerjan: (since we intercept the chat packets) 22:20:38 makes sense 22:21:07 As long as the server doesn't start to implement any // commands. 22:21:28 fizzie: I am happy to slit Notch's throat in that case. 22:22:19 -!- MigoMipo has quit (Read error: Connection reset by peer). 22:24:46 Function: void rl_free (void *mem) 22:24:46 Deallocate the memory pointed to by mem. mem must have been allocated by malloc. 22:24:47 Useful! 22:29:13 fizzie: Does glib have any special signal-handler functions? 22:32:42 I don't recall having used any. 22:34:45 The underlying threads are pthreads (at least that'd be my assumption), and those have signal masks if you want to mess with which thread handles signals, but I'm not sure if glib's threading side exposes that. 22:34:55 It's a bit platform-specific weirdness. 22:35:06 Signals and threads don't tend to be a happy combination. 22:36:26 -!- zeotrope has joined. 22:37:53 fizzie: Yeah ... I just want these signal handlers to execute, in, like, "every thread". 22:39:43 As far as I know, you can't do *that* in a plain pthreads thing. With luck you can just make sure it executes in one particular thread. 22:40:16 fizzie: So "just do the readline in another thread" was your way of saying "ha ha". :p 22:40:38 I didn't really know readline dabbles with signals. 22:41:17 In retrospect I guess it has to for the terminal-caused ones, but anyhow. 22:41:18 Function: int rl_set_signals (void) 22:41:19 Install Readline's signal handler for SIGINT, SIGQUIT, SIGTERM, SIGALRM, SIGTSTP, SIGTTIN, SIGTTOU, and SIGWINCH, depending on the values of rl_catch_signals and rl_catch_sigwinch. 22:41:23 fizzie: How else do you think it resets the terminal? 22:41:26 I suppose I could use an atexit... 22:42:07 -!- nooga has quit (Ping timeout: 265 seconds). 22:42:19 -!- Sgeo_ has joined. 22:42:44 An alternate interface is available to plain readline(). Some applications need to interleave keyboard I/O with file, device, or window system I/O, typically by using a main loop to select() on various file descriptors. To accomodate this need, readline can also be invoked as a `callback' function from an event loop. There are functions available to make this easy. 22:42:48 fizzie: WHY DIDN'T YOU SAY SO 22:43:02 -!- Sgeo has quit (Ping timeout: 240 seconds). 22:43:29 -!- nooga has joined. 22:43:41 I'm not entirely sure that will help you. 22:44:05 Probably not. 22:44:07 Given that you can'd do "wait for SDL events" and "select() on a fd" simultaneously. 22:44:48 Also, I think I'll be sleeping now. 22:46:35 I think hooking to atexit is where SDL does it's emergency cleanup too. 22:46:51 Though actually I'm not quite sure. 22:47:48 It might also install signal handlers of its own, because if the SDL_Init is before the blockinmg "wait-for-connections" call, you can't interrupt it with ^C any more. 22:49:39 Are you entirely sure you don't want to do the input-line handlinmg cleanly in another process?-) 22:49:50 fizzie: Was that your lag or mine? 22:50:06 Which lag? 22:50:45 fizzie: Tons of messages came in at once. 22:50:52 Seems 'twas mine. 22:50:58 Could even have been freenode's 22:51:57 fizzie: Dude. 22:52:04 fizzie: That is the first time you have ever not terminated a sentence properly. 22:53:18 SURELY WE ARE IN THE END TIMES 22:54:16 I tried my very best, but my fingers betrayed me. 22:54:54 fizzie: Do you guys not have heating in Finland? 22:55:19 Technically I'm already asleep, so I'll just blame the dream-fizzie. 22:55:53 elliott, I don't have heating in Scotland! 22:55:54 And no, we just cuddle with polar bears when it gets too cold. 22:56:16 fizzie: AWWWWWbrb moving to Finland 23:04:03 * Sgeo_ growls at being unable to block blocks of IPs larger than /16 in MediaWiki 23:04:41 * Sgeo_ wants to block a /0 block 23:05:50 Sgeo_: Um, you do realise you mean a /1, right? 23:06:12 Does /1 include every single IP address? 23:06:33 Sgeo_: It's 1/1 of the address space, so you work it out. 23:07:51 http://www.mediawiki.org/wiki/Help:Range_blocks 23:07:59 That suggests that /1 is half of the address space 23:08:17 Wait, do IPs greater than 127. exist? 23:08:24 Yes they do 23:08:26 ELLIOTT IS TEH WRONG 23:08:42 Oh, indeed ... 23:08:59 Sgeo_: Anyway, it's not "a" /0 block, it's "the" /0 block. 23:11:04 * Sgeo_ WTFs at a spambot talking about a "lethal dose" 23:11:10 Way to bring in the customers there 23:11:30 lethal dose of spam 23:15:08 oerjan: Read as sperm. What. 23:15:11 http://wikisuperosity.com/index.php?title=Special:RecentChanges 23:15:18 "Disclaimer: [it's slow], because it's written in python. Eventually I'll rewrite it an C and it'll be very, very fast." 23:15:27 olsner: haha 23:15:33 olsner: what's that about 23:15:49 elliott: your brain actually managed to invent something worse than a lethal dose of spam. congratulations. 23:15:56 elliott: about that "redo" thing someone posted on progit (make killer) 23:16:06 [[Superosity is the greatest comic in existence. There are many comics in existence that have earned genius-level Comic Quotient's (CQ) for short periods of time. Calvin and Hobbes demonstrated that a CQ of 145 was possible by combining beautiful artwork, kinetic humor, and philosophically balanced characters with a semi-episodic story structure. Jim Davis, the creator of Garfield, once earned a CQ of 136 for a six month period in the late 1980s 23:16:06 and has consistently held himself in the mid 120's by applying a consistently minimalistic banality. Scott Adams, creator of Dilbert, holds the honor of maintaining 128 for more than six years in a row. Family Circus, on the other hand, continues to exist in syndication despite a CQ below 80. 23:16:06 Superosity however, holds the distinction of having achieved an average CQ of 193 over the last ten years. This places it approximately five and a half standard deviations away from the average mainstream comic. This singular fact would appear to be mysterious if not for the concomitant fact that creator Chris Crosby is truly a creative genius of the type that Greek Myths would be written about (and by) if this were presently a Greek World.]] 23:16:13 Sgeo_: Why does this wiki exist, and how can I stop it existing. 23:16:32 olsner: oh, it's chris2's! 23:17:45 elliott, wait, you found genuine content that wasn't touched? 23:17:54 Sgeo_: That is not genuine content, that is a pile of shit. 23:18:03 fizzie: [[mcmap: ../../src/xcb_io.c:249: process_responses: Assertion `(((long) (dpy->last_request_read) - (long) (dpy->request)) <= 0)' failed.]] 23:18:09 fizzie: I AM TOTALLY CLOSE TO WORKING THIS OUT 23:18:24 elliott: who's that? 23:18:41 olsner: he invented tumblelogs and did a bunch of other things too 23:18:46 (w/ http://anarchaia.org/) 23:19:13 olsner: oh -- he did not write the program 23:19:15 just posted the reddit link 23:19:20 -!- Phantom_Hoover_ has quit (Remote host closed the connection). 23:20:20 * Sgeo_ ponders making a Python script that will autoblock every IP 23:20:52 Sgeo_: You could just disable editing. 23:20:55 Or protect every page. 23:21:21 elliott, I think I'd need access to server-side config stuff to disable editing? 23:21:36 Vorpal: fizzie: https://github.com/fis/mcmap; now with chatting support. (I accidentally called it readline in the commit message, oh well.) 23:21:51 Vorpal: Doesn't handle // commands because of internal structure, but it's fully readline-enabled. 23:22:02 I think that redirecting output to a file now doesn't work for some reason, however; I'll fix it later. 23:22:11 Sgeo_: Probably. If the rest of the pages are like that then spam is an improvement. 23:22:47 -!- j-invariant has quit (Quit: leaving). 23:25:24 elliott, genuine content: 23:25:26 http://wikisuperosity.com/index.php?title=List_of_Superosity_Characters 23:26:54 Even more: http://wikisuperosity.com/index.php?title=Boardy 23:32:16 You can never accuse me of not having esoteric taste 23:32:27 Hmm, eccentric might be a better word 23:34:57 elliott: I'm pleasantly surprised at how small the commit is. I was expecting something quite a lot more horrible. (Yes, yes, I'm still asleep.) 23:35:12 fizzie: Yes, well, they do call me the God Of Code. 23:35:24 fizzie: (Really, though, the only bug was ^D and ^C handling, which required thought more than anything else.) 23:35:49 fizzie: (Readline thankfully does the right thing if you \r before printing, \n after, and then force it to redraw the line.) 23:36:07 fizzie: Re: redirecting to a file -- but now it has industry-standard timestamping! 23:36:46 fizzie: BTW, hypothetically, it might be nice if snow-covered things just got tinted. 23:36:52 fizzie: Rather than, you know, becoming invisible in a sea of snow. 23:36:55 (On overhead view.) 23:37:12 elliott: It doesn't quite do completely the right thing. 23:37:23 If you write an input line that's longer than the offending input, the trailing bits are left. 23:37:48 You probably need a \r[new output]\n instead of just \r[new output]\n. 23:38:06 fizzie: Very well then. (I should probably get a global set up for is_doing_readline_stuff to separate all this out.) 23:38:12 01:23:21 [CHAT] Player list (2/10): ehird, fizziefjoi jojoi joi jjoisdfjoisdaof josadf joasdf joosajifd 23:38:12 01:23:35 [CHAT] Hello there, asleep-ghost.joi jojoi joi jjoisdfjoisdaof josadf joasdf joosajifd 23:38:15 fizzie: (And also that'd let you disable readline at compile time, for all the embedded system uses. 23:38:22 uses.) 23:38:24 *uses.) 23:38:37 fizzie: Vorpal apparently runs mcmap on another machine to the one he connects on for no apparent reason. 23:38:45 fizzie: Perhaps we should OPTOMIZE(tm) for LATENCY. 23:38:48 I thought he had quasi-sensible reasons. 23:39:01 fizzie: "Um, uh, RAM something this, full screen that." 23:39:01 Anyway, it tries to be low-latency, though not very hard. 23:39:20 fizzie: It seems that he has a machine with not much RAM and a good GPU, and lots of RAM and a crap GPU. 23:39:22 Mainly what it does is "forward the packet immediately after reading it". 23:39:23 One may speculate freely. 23:39:43 fizzie: Tomorrow, I might see about saving the map state to a file. 23:40:07 Anyway re clean-end-of-line, I don't mind if you just do \x1b[K instead of actually using the proper sequences from terminfo. 23:40:08 Also giving reeds a colour. They need one. 23:40:12 fizzie: Oh, of course. 23:40:20 Given that it already does colors with hardcoded escapes. 23:40:26 I was thinking printing spaces or something; I'm kinda dumb. 23:40:30 Wow, the meds are really helping me focus on anything but homework 23:42:38 Sgeo_: *facepalm* 23:44:11 At some point you could add auto-wrapping (maybe even try it dumbly at spaces/hyphens when it looks okay) to forcibly conform the 100-char limit. Just in case one pastes in something and forgets to think about it. 23:44:17 But now really honestly gone. 23:44:20 -!- reiffert has left (?). 23:45:24 -!- FireFly has quit (Quit: swatted to death). 23:48:09 oerjan: I think you should ban Sgeo_. 23:48:22 oerjan: his request was, after all, in spirit eternal: if I give in to the temptation to IRC instead of homeworking, ban me. 23:48:25 therefore you must 23:48:45 elliott, why do you hate me so> 23:48:46 ? 23:48:56 I hate everyone equally. 23:48:59 You just get special treatment. 23:50:08 -!- hagb4rd has quit (Quit: hagb4rd). 23:52:36 elliott, what do you think of BitCoins? 23:53:11 -!- cheater99 has joined. 23:56:58 -!- cheater99 has quit (Read error: Connection reset by peer). 2010-12-20: 00:00:50 * Mathnerd314 will get some when the getting's good. (but not before) 00:05:09 Mathnerd314: ah but when ordinary people _think_ the getting's good is just when schemes are about to collapse >:) 00:06:01 (applies to stocks, pyramid schemes and bubbles in general) 00:06:03 oerjan: what makes you think I'm an ordinary person? 00:07:45 Mathnerd314: believing you are smarter than the market is the first warning sign >:) 00:07:54 (also a lack of sense of humor) 00:08:31 hmm, I'll agree I should take an economics course or two, but it's pretty hard to claim I'm dumber than average 00:09:07 (and I do have a sense of humor; I just don't use it since it tends to distract from the point at hand) 00:13:47 -!- cheater99 has joined. 00:14:44 what oerjan said 00:15:24 everyone should take an economics course 00:15:30 Sgeo_: well i object to any use of bitcounts to sell data. 00:15:33 Sgeo_: other than that i have no opinion 00:15:34 it should be a prequisite to having an opinion 00:16:39 coppro: and to hell with anyone who self-educates amirite 00:17:00 elliott: self-education is ok. but you have to pass the test. 00:17:28 coppro: heh. guess that'll ensure economics doesn't get too much innovation then! 00:17:44 elliott: no, you're still allowed to innovate 00:17:47 just not to have an opinion 00:18:31 coppro: obviously you're not being serious, but that doesn't stop you being stupid too. 00:19:30 elliott: I was only half kidding 00:19:48 people should actually not be allowed to argue about government spending until they know the definition of the word "externality" 00:19:50 coppro: indeed. it's the best way to say wrong things without being called out on it. 00:19:52 (note: cynical) 00:20:16 coppro: there are plenty of autodidactic geniuses. and there are plenty of college-educated morons. 00:20:31 who passed exams, even. 00:20:53 elliott: I know this fact 00:21:34 -!- cheater99 has quit (Read error: Connection reset by peer). 00:27:03 Everyone should know economics. *Especially* anyone who thinks about touching anything to do with the government. 00:27:35 Also, stupidity should be more painful. 00:27:49 I support this painful-stupidity proposal 00:28:14 * oerjan is strongly against 00:28:49 oerjan: But think of the politicians screaming in pain on the TV. 00:28:57 And the voters! 00:28:59 oerjan: (It would trigger for doing stupid things, not for being stupid, which is a different thing entirely.) 00:32:08 -!- majawana has joined. 00:36:59 Lava pit at (-2241,1966). 00:37:06 ((x,z)) 00:38:15 -!- cheater99 has joined. 00:39:52 Nice tree at (-2009,1653); however I want wood so it shall die. 00:41:32 -!- cheater99 has quit (Read error: Connection reset by peer). 00:43:12 I want to slap everyone who thinks of Bitcoins as a way to be free of transaction fees 00:44:48 -!- hagb4rd has joined. 00:50:30 -!- pikhq has quit (Ping timeout: 260 seconds). 00:50:46 Supposedly "VORPAL WAS HERE". 00:52:52 (-1777,1324) -- nice cave. Explore sometime. 00:57:26 There used to be clay at (-1675,966), but it's all mine now. 00:57:51 Pretty damn tall dual-bodied tree just after that, too. 00:58:13 -!- cheater99 has joined. 01:03:05 -!- cheater99 has quit (Read error: Connection reset by peer). 01:03:49 -!- hIchamAT has joined. 01:04:32 -!- hIchamAT has left (?). 01:19:05 great, there's a convenient instruction for swapping the 'gs' segment when entering/leaving the kernel, but interrupt handlers can be called from both user and kernel mode - you need to figure out which context you came from and swapgs conditionally 01:20:58 -!- cheater99 has joined. 01:23:58 I DID IT 01:25:52 -!- cheater99 has quit (Read error: Connection reset by peer). 01:32:53 elliott, did what? 01:33:05 Vorpal: walked from (-4000,4000) to spawn 01:33:09 you had a sign on the way, i put one next to it 01:33:18 elliott, what did that sign say 01:33:23 I completely don't remember it 01:33:33 Vorpal: VORPAL / WAS / HERE 01:33:40 elliott, wasn't that on the very marker? 01:33:44 ? 01:33:49 -4000, not 4000 01:33:52 it's north-ways 01:33:55 elliott, oh 01:33:56 Vorpal: I put "BUT THEN EHIRD WAS HERE AND IT WAS MUCH COOLER" next to it, anyway. :p 01:34:02 elliott, :P 01:34:34 elliott, the marker at 4k,4k has a sign on top saying "Vorpal was here, and he was great" 01:35:49 -!- Slereah has quit (Ping timeout: 276 seconds). 01:36:48 Vorpal: Anyway, pull mcmap; it has been muchly modified today. 01:40:13 -!- Slereah has joined. 01:43:36 -!- cheater99 has joined. 01:43:46 Vorpal: hm interesting http://www.minecraftwiki.net/wiki/Griefing doesn't list /anything/ about teleportation 01:43:56 I think fizzie may be the first one to discover this rather crippling bug. 01:45:53 The Hacks subsection lists flying and noclip, which are arguably worse 01:46:21 Deewiant: Arguably? 01:46:25 Deewiant: This thing can take down a server for minutes. 01:46:37 Deewiant: Hell, arbitrary lengths of time (travel to 2^60 anyone?) 01:46:52 Oh right, the DOS thing 01:46:55 Forgot about that 01:47:23 -!- cheater99 has quit (Read error: Connection reset by peer). 01:48:06 Deewiant: Maybe I should tell Notch about it on Twitter by pinging him -- you know, full disclosure and all that... :-P 01:50:16 Deewiant: Oh, and you could fill up some poor bastard's disk too. 02:01:53 Vorpal: Yes. At risk. 02:02:29 -!- zzo38 has joined. 02:03:25 Vorpal: Are you so much at risk that you've given up playing? 02:03:52 -!- cheater99 has joined. 02:04:09 elliott, details 02:05:39 -!- cheater99 has quit (Read error: Connection reset by peer). 02:22:24 -!- cheater99 has joined. 02:22:27 who's up for some coffee? 02:25:18 yes 02:25:53 -!- cheater99 has quit (Read error: Connection reset by peer). 02:26:47 -!- majawana has left (?). 02:37:18 -!- augur has quit (Remote host closed the connection). 02:38:08 I want no coffee, please 02:40:41 Vorpal: how's it a mess? 02:42:24 -!- cheater99 has joined. 02:44:13 elliott, well... it's messy 02:44:14 ! 02:44:38 -!- cheater99 has quit (Read error: Connection reset by peer). 02:45:48 -!- augur has joined. 03:01:21 -!- cheater99 has joined. 03:04:05 -!- cheater99 has quit (Read error: Connection reset by peer). 03:15:06 -!- zeotrope has quit (Ping timeout: 265 seconds). 03:15:26 -!- hagb4rd has quit (Ping timeout: 240 seconds). 03:20:24 oerjan, there? 03:20:31 oerjan, math question 03:20:36 -!- cheater99 has joined. 03:20:49 AAAAAAAAAAAAAAAAAAAaa 03:20:51 oerjan, for every m in Z_+ there is an n in Z_+ such that m^n (mod 65) == 64 03:20:55 oerjan, that is the theory 03:20:56 i mean, hi 03:20:57 is it true? 03:21:22 oh hm 03:21:32 lessee 65 = 13*5 03:21:48 oerjan, it was something with prime, right 03:22:10 ok so it's false e.g. for m = 5 03:22:13 hm 03:22:31 actually the equation is not correct for the problem 03:22:43 since the problem in question gives 1 after 64 03:22:46 there is no 0 03:22:54 (stacking items in minecraft) 03:23:07 so it's mod_63 really 03:23:07 so wrong equation 03:23:07 -!- cheater99 has quit (Read error: Connection reset by peer). 03:23:22 elliott, but then you couldn't get stacks of 64 03:23:30 0 = stack of 1 03:23:33 1 = stack of 2 03:23:34 ... 03:23:40 hm 03:23:41 erm 03:23:42 ah 03:23:42 mod_64 really 03:23:43 then 03:23:45 63 = stack of 64 03:24:15 $ factor 64 03:24:15 64: 2 2 2 2 2 2 03:24:54 elliott, yet 3 works 03:25:39 Vorpal: actually the primeness has nothing to do with it, it's false for m = 65 which obviously generalizes 03:25:48 (that equation) 03:25:49 -!- boily has joined. 03:26:44 oerjan, hm 03:27:24 oerjan, then same question but given that instead of 0 it goes to 1 03:27:42 oerjan, so that f(64) = 64, f(65) = 1 03:27:54 Vorpal: you haven't yet defined anything clearly 03:28:00 oerjan, true 03:28:05 oerjan, I don't know how to define it 03:28:15 oerjan, it is an iterative algorithm I want to study really 03:28:25 well then give the bloody algorithm 03:28:29 oerjan, yeah 03:28:31 lets see 03:28:58 you have a number m. You can perform one operation on it. That operation is to double it 03:29:00 however 03:29:21 if it goes to 65 you get 1 back 03:29:33 what if it goes _above_ 65? 03:29:40 anything above 64 gives you the value - 64 03:29:46 ok 03:29:47 such that 66 - 64 = 2 03:29:49 and so on 03:30:06 oerjan: basically there's a bug. you can duplicate a stack of N into two stacks of N. 03:30:19 f(x) = let y = 2*x in if y > 64 then y-64 else y 03:30:21 oerjan: vorpal wants to know: if you duplicate a stack until you have a 64 stack + leftovers, then do the same to the leftovers 03:30:23 oerjan, now, will repeatedly duping it sooner or later give you exactly 64 03:30:25 oerjan: do you ever end up with just 64s? 03:30:26 and no leftovers 03:30:45 so far most it took me is 3 "wraparounds" 03:31:31 oh hm well this is the same as doubling mod 64, really 03:31:40 and asking whether you ever reach 0 03:31:53 oerjan, maybe. 03:31:54 which is indeed true 03:32:00 oerjan, for all starting values? 03:32:08 right 03:32:16 six doublings gives you 0 (mod 64) 03:32:22 right 03:34:06 a stack of odd size should give you that in exactly six 03:34:16 oerjan, probably 03:34:28 hm 03:34:33 oerjan, how do you calculate that 03:34:40 just out of interest 03:34:42 -!- hagb4rd has joined. 03:34:48 oh and i think the most wraparounds are if you start with 63 03:35:18 Vorpal: 2^6 = 64 03:35:24 ah right 03:35:39 Vorpal: well it hits 0 (mod 64) when the number becomes divisible by 2 six times, each doubling adds one 03:36:46 63 -> 62 -> 60 -> 56 -> 48 -> 32 -> 64 with all except the last step wrapping 03:36:57 -!- Quadrescence has quit (Quit: omghaahhahaohwow). 03:37:30 ah right 03:38:11 and that's the most you can get, since the final step hitting 64 cannot wrap 03:38:27 indeed 03:38:38 -!- augur has quit (Ping timeout: 240 seconds). 03:38:57 actually the number of wraps is the same as the number of set bits minus 1, i think 03:39:05 hah 03:39:06 oh wait 03:39:32 yes, i think so 03:39:38 -!- cheater99 has joined. 03:39:56 elliott, ls ~/.minecraft/resources/streaming 03:40:05 elliott, those are records 03:40:15 elliott, but we only have two records 03:40:18 yet there are more .mus 03:40:20 huh 03:40:20 yes, c4183274982347whatever has mentioned it 03:40:30 elliott, so how can we get the other .ogg 03:40:40 elliott, that are missing 03:40:46 $ ls 03:40:46 11.mus 13.mus 13.ogg blocks.mus cat.mus cat.ogg chirp.mus far.mus mall.mus mellohi.mus stal.mus strad.mus ward.mus where are we now.mus 03:40:47 I mean 03:40:58 shrug 03:41:01 surely we can extract the missing ones somehow 03:41:15 .mus looks like Finale music score 03:41:19 or 03:41:23 "SCORE Music Publishing System" 03:41:26 elliott, they are "data" days file 03:41:43 I would guess Finale. 03:41:43 *Maybe.* 03:41:49 elliott, don't think so 03:42:01 why would he distribute that 03:42:02 -!- cheater99 has quit (Read error: Connection reset by peer). 03:42:12 oerjan: BTW: Grains are quite nasty for digestive system. And the bad effects are not limited to digestive system, those can show up as who knows what problems in who knows where (joints, heart, brain, you name it...). 03:42:14 shrug 03:42:19 elliott, probably just metadata 03:42:30 -rw-r--r-- 1 elliott elliott 1.5M Nov 10 18:00 /home/elliott/.minecraft/resources/streaming/strad.mus 03:42:32 Vorpal: DOUBTFUL 03:42:39 probably some tracker thing 03:42:39 elliott, hm 03:42:40 maybe 03:42:45 elliott, yeah 03:42:45 -rw-r--r-- 1 elliott elliott 1.1M Nov 10 17:59 13.mus 03:42:45 -rw-r--r-- 1 elliott elliott 1.1M Nov 10 17:59 13.ogg 03:42:48 -rw-r--r-- 1 elliott elliott 1.3M Nov 10 17:59 cat.mus 03:42:48 -rw-r--r-- 1 elliott elliott 1.3M Nov 10 17:59 cat.ogg 03:42:49 insert obvious theory 03:43:01 elliott, xor? 03:43:12 Vorpal: maybe binary audio data but in another format. but sure, xor to see if you can get the ogg header 03:43:23 -!- hagb4rd has quit (Ping timeout: 240 seconds). 03:43:25 elliott, didn't you write a program for it? 03:43:53 elliott, exactly as many bytes long 03:44:07 if different format I would expect it to differ a bit 03:45:10 Vorpal: a program for what? 03:45:14 but yeah, i expect they're the same data 03:45:29 elliott, a program for xoring router firmware 03:46:05 Vorpal: oh. no, i stole one off the interwebs 03:46:13 -!- boily has quit (Quit: leaving). 03:46:14 but uh, it's just putchar(getchar()^3590835904) :P 03:46:18 easy to do with even python 03:46:21 since all you need to find is the ogg header 03:47:11 yeah 03:47:15 elliott, btw http://www.minecraft.net/resources/ 03:48:00 heh 03:48:08 wonder if you can replace them easily? probably already done 03:49:34 elliott, anyway "meh" at trying to figure out scheme for "encryption" 03:49:49 elliott, presumably decompiling is easier 03:49:50 "meh" at iterating through 256 values, xoring a few bytes, and comparing them? srsly? 03:50:01 elliott, meh at writing any code this time of the day 03:50:34 -!- augur has joined. 03:50:58 -!- hagb4rd has joined. 03:52:01 Vorpal: Well, it's not a simple xor cipher. 03:52:11 elliott, oh? 03:52:29 Tested all combos. 03:52:32 'O,\x8d\xbf' 03:52:37 Should be OggS. 03:52:47 huh 03:53:53 to xor, xor not to xor, that is the question 03:54:15 might be iterative xor of some kind, whatever 03:57:18 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep). 03:58:38 -!- cheater99 has joined. 03:58:38 I sometimes make a stupid mistake. I made a stupid mistake I accidentally typed q=malloc(strlen(s)+strlen(stack_ptr->text)); instead of q=malloc(strlen(s)+strlen(stack_ptr->text)+1); but I fixed it now. Now it can do things like this: 03:58:44 <[:]ra+s2s1[Al1rl2xY]xD> 03:58:47 <[:]ra+s2[;]ra+s10[ddl1xrl2x1+d256-0 1diQY]xD> 03:59:52 Do you think I made some progress with this program now? (I added various other features too, including a few fixed and new data structures.) 04:00:38 -!- hagb4rd2 has joined. 04:00:51 It actually has some similarities to dc and Underload. Do you think it is? 04:02:14 -!- hagb4rd has quit (Ping timeout: 240 seconds). 04:03:57 -!- cheater99 has quit (Read error: Connection reset by peer). 04:04:04 Any Underload program without S can be directly written in TeXnicard by converting one character to one character, in fact. 04:07:03 XD 04:07:16 night → 04:12:56 -!- elliott has quit (Quit: Leaving). 04:13:21 Hay you! What time is it on the moon right now? 04:14:09 heh 04:15:37 i think that question doesn't have a definite answer 04:16:52 any more than "what time is it on earth now" does 04:18:53 oerjan: I believe you. 04:19:53 -!- cheater99 has joined. 04:20:27 although in addition, the day on the moon is a lot longer than on earth, about a month long 04:20:44 Do you like my general plan of TeXnicard? (The plan is it makes .tex and .mf and so on from the .cards file, and then .dvi and .*gf, and then from those it creates MIFF and send the results to ImageMagick to process.) 04:21:07 (Which means, that to use TeXnicard, you also need TeX, METAFONT, and ImageMagick.) 04:21:12 because the moon always has the same face towards the earth, and goes around in a (moon, not calendar) month 04:21:18 *around it 04:22:34 although it's still short compared to venus's day which is only a bit different from a venus _year_ 04:22:36 oerjan: Yes, that is what a "month" is, isn't it? 04:22:48 -!- Wamanuz4 has joined. 04:23:32 yeah but the calendar months aren't exactly those months in our calendar, because they were stretched to get exactly 12 in a year 04:23:32 -!- cheater99 has quit (Read error: Connection reset by peer). 04:24:05 unlike the islamic and jewish ones, afair 04:24:10 oerjan: Yes. I know that. 04:24:38 and probably the chinese too iirc 04:26:20 -!- Wamanuz3 has quit (Ping timeout: 264 seconds). 04:30:11 Will you be part of the TeXnicard contest? 04:30:28 no. 04:30:44 Have you ever used Magic Set Editor? 04:30:56 no. 04:31:48 Do you have any high resolution templates for Magic: the Gathering cards? I should need templates with a better quality than the ones Wizards of the Coast uses. 04:32:56 * oerjan leaves that question for anyone else who might play magic 04:35:42 -!- pikhq has joined. 04:38:00 http://www.engadget.com/2010/12/19/wireless-carriers-openly-considering-charging-per-service/ FUCK YOU PHONE COMPANIES. 04:38:03 FUCK YOU. 04:39:32 Of course, Magic: the Gathering might not be the first templates we make for TeXnicard. But it should be done eventually. However, none of these templates will be included with TeXnicard, you will have to download them separately, because they are not part of TeXnicard. 04:40:23 -!- cheater99 has joined. 04:42:53 -!- cheater99 has quit (Read error: Connection reset by peer). 04:46:14 -!- Sgeo_ has quit (Ping timeout: 240 seconds). 04:46:27 -!- evincar has joined. 04:49:33 -!- poiuy_qwert has joined. 04:59:23 -!- cheater99 has joined. 05:02:32 -!- cheater99 has quit (Read error: Connection reset by peer). 05:10:49 -!- Sgeo_ has joined. 05:19:23 -!- cheater99 has joined. 05:22:02 -!- cheater99 has quit (Read error: Connection reset by peer). 05:36:35 -!- evincar has left (?). 05:38:16 -!- pikhq has quit (Ping timeout: 265 seconds). 05:38:23 -!- cheater99 has joined. 05:39:51 -!- pikhq has joined. 05:40:28 -!- cheater99 has quit (Read error: Connection reset by peer). 05:52:38 -!- hagb4rd2 has quit (Ping timeout: 240 seconds). 05:57:23 -!- cheater99 has joined. 06:00:08 -!- cheater99 has quit (Read error: Connection reset by peer). 06:16:23 -!- cheater99 has joined. 06:19:16 -!- cheater99 has quit (Read error: Connection reset by peer). 06:20:04 I'm addicted to blockexplorer.com 06:20:31 bitcoin is dumb 06:20:42 it's too scarce 06:24:52 ais523: hey, quick random questoin 06:25:04 why does ESR associate you with Discordianism here: http://esr.ibiblio.org/?p=2491 06:28:39 Would you be interested in a program converting MSE set symbol files into TeXnicard format? 06:31:33 not really 06:31:45 I haven't touched MSE code at all in a while 06:31:59 zzo38: Oh, right, you're making something much less revolting than MSE! 06:32:00 :D 06:32:24 This would probably be done by writing METAFONT macros for the various symbol combines, symmetry, and so on, in .mse-symbol files. 06:32:40 pikhq: Are you interested in MSE and/or TeXnicard? 06:33:21 zzo38: I'm a bit interested in TeXnicard, because my experience using MSE in the past has been rather painful. 06:33:51 Especially the Linux port. 06:33:57 Sorry, coppro, but ow. 06:34:50 pikhq: OK. Do you have any suggestions/comments for TeXnicard? I might consider them. (I also found MSE a bit painful, which is one of the reasons I am writing TeXnicard. In addition, it should run the same on Linux as Windows, no need to make separate ports.) 06:35:23 -!- cheater99 has joined. 06:35:33 zzo38: Currently, no real comments, except "Ooooh, good typesetting". 06:35:49 zzo38: Oh, well. It would be nice if it were easier to create new templates for cards. 06:36:08 MSE's whole spriting approach is a bit obtuse. 06:36:26 pikhq: Well, yes, it will use TeX for typesetting the cards (and ImageMagick for rendering them). 06:37:04 pikhq: Yes, it would be nice for a better way to create new templates. What would be good is some GUI program that allows placing the fields. 06:37:16 Mmm. 06:37:54 pikhq: no offense taken 06:38:03 linux port is a rickety thing at bets 06:38:04 After writing the main TeXnicard program, I might write some additional utilities, which can be used for such things as these. 06:38:04 *best 06:38:09 which is kind of why I gave up 06:38:27 -!- cheater99 has quit (Read error: Connection reset by peer). 06:38:32 coppro: I know I spent a full freaking day patching it to *build*. 06:38:36 Not *work*, just *build*. 06:39:04 I'd probably have better luck going through winelib. 06:40:45 pikhq: Well, then good thing that TeXnicard probably will not require any such things as that. If it does require a few patches though, they should be very few, and can be made in a .ch file. 06:41:30 pikhq: really? yuk 06:41:38 I can at least get it to build 06:41:49 but then again, autoconf is happy with my system 06:41:56 (which is itself a miracle) 06:42:08 coppro: What things don't work with MSE in Linux? 06:42:15 zzo38: oh, lots of things 06:42:28 zzo38: there's one menu that crashes it about 50 % of the time 06:42:37 it's like my arch-nemesis 06:42:44 there's some bug deep in wx it's triggering I think 06:43:04 coppro: I was using Gentoo at the time. 06:43:12 coppro: And Gentoo tends to expose a *lot* of build system bugs. 06:43:19 or some random arbitrary input restriction that the debug build doesn't check for and is inconsistent across platforms 06:43:28 wxWidgets absolutely loves those 06:43:54 wxWidgets is a piece of shit 06:45:00 Well, obviously I am not using wxWidgets for TeXnicard. (Any utility programs that go with it probably won't use wxWidgets either.) 06:45:09 zzo38: I would hope 06:45:19 I would not wish wxWidgets upon anyone 06:45:31 Cross-platform UI is basically agony. 06:46:00 Qt is probably the best. wxWidgets... Works sometimes. 06:46:23 GTK is, of course, not native anywhere but X. 06:49:13 yeah 06:49:18 but Qt has its own pains 06:49:30 Yeah, it does. 06:50:03 Well, I will figure out what GUI toolkit (if any) to use, when it is time to write the utility programs. 06:52:00 What pains does Qt have? 06:52:19 Windows and OS X. 06:52:38 also build steps 06:53:01 build systems suck enough already that you don't need MOC to screw things up more 06:54:13 Do you have any advice for me to make TeXnicard, in terms of: random number generators, sorting and grouping, pattern matching, word form adjustment (such as plurals and number to words), ? 06:54:53 -!- cheater99 has joined. 06:55:27 RNG: don't write it yourself, pick a solid algorithm 06:55:44 sorting: don't write it yourself, pick a solid algorithm 06:55:44 -!- cheater99 has quit (Read error: Connection reset by peer). 06:55:55 pattern matching: don't write it yourself, use ML 06:56:15 coppro: TeX. 06:56:21 coppro: He's writing it himself. 06:56:22 :) 06:56:51 coppro: OK, then what solid algorithms should be used? 06:57:30 (For sorting, C does have a qsort command for sorting, which could be used for a part of it, maybe) 06:57:41 And what is ML? 07:00:22 pikhq: I know :P 07:00:28 rofl 07:00:47 zzo38: i think that ML part was a joke 07:00:53 -!- hagb4rd has joined. 07:01:32 oerjan: OK. 07:01:47 But what algorithm to use for random numbers, which is suitable for this program? 07:03:24 And again, what would be best for matching patterns and keywords? 07:04:02 although of course ML _is_ good for writing languages in 07:07:34 -!- pikhq has quit (Ping timeout: 255 seconds). 07:09:31 -!- pikhq has joined. 07:12:05 -!- cheater99 has joined. 07:14:43 -!- cheater99 has quit (Read error: Connection reset by peer). 07:31:23 -!- cheater99 has joined. 07:34:06 -!- cheater99 has quit (Read error: Connection reset by peer). 07:36:17 -!- zzo38 has quit (Remote host closed the connection). 07:37:25 -!- pikhq has quit (Ping timeout: 260 seconds). 07:39:04 -!- pikhq has joined. 07:50:53 -!- cheater99 has joined. 07:53:14 -!- cheater99 has quit (Read error: Connection reset by peer). 07:59:23 -!- hagb4rd has quit (Ping timeout: 240 seconds). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:01:10 -!- Sgeo_ has quit (Quit: Leaving). 08:02:13 -!- hagb4rd has joined. 08:09:38 -!- cheater99 has joined. 08:13:12 -!- cheater99 has quit (Read error: Connection reset by peer). 08:17:10 -!- ais523 has quit (Remote host closed the connection). 08:28:23 -!- cheater99 has joined. 08:30:28 -!- cheater99 has quit (Read error: Connection reset by peer). 08:47:23 -!- cheater99 has joined. 08:49:36 -!- cheater99 has quit (Read error: Connection reset by peer). 09:01:39 "Included in the release today is leaf decay, working server-side inventory, throwable eggs, and less system hungry servers." 09:01:48 I give that thing rather good odds of breaking mcmap. 09:04:25 BUT CAN YOU MAKE OMELETTES? 09:06:23 -!- cheater99 has joined. 09:08:58 Maybe if you craft a bucket of lava, an iron ingot and an egg together. 09:09:03 -!- cheater99 has quit (Read error: Connection reset by peer). 09:10:29 -!- sftp_ has joined. 09:10:49 -!- sftp has quit (Ping timeout: 240 seconds). 09:25:38 -!- cheater99 has joined. 09:28:02 -!- cheater99 has quit (Read error: Connection reset by peer). 09:44:23 -!- cheater99 has joined. 09:47:42 -!- cheater99 has quit (Read error: Connection reset by peer). 09:53:01 -!- sftp has joined. 09:53:05 -!- sftp_ has quit (Ping timeout: 250 seconds). 10:00:29 -!- sftp_ has joined. 10:00:35 10:00:53 -!- sftp has quit (Ping timeout: 250 seconds). 10:04:21 -!- cheater99 has joined. 10:07:35 -!- cheater99 has quit (Read error: Connection reset by peer). 10:19:43 -!- cheater99 has joined. 10:21:05 -!- atrapado has joined. 10:23:42 -!- cheater99 has quit (Read error: Connection reset by peer). 10:27:50 -!- hagb4rd has quit (Ping timeout: 240 seconds). 10:39:42 -!- cheater99 has joined. 10:40:31 -!- cheater99 has quit (Read error: Connection reset by peer). 10:42:07 -!- sftp has joined. 10:42:38 -!- sftp_ has quit (Ping timeout: 240 seconds). 10:46:36 -!- sftp_ has joined. 10:47:00 -!- sftp has quit (Ping timeout: 272 seconds). 10:56:57 -!- cheater99 has joined. 10:58:29 -!- cheater99 has quit (Read error: Connection reset by peer). 11:03:28 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 11:05:38 -!- poiuy_qwert has joined. 11:10:30 -!- sftp has joined. 11:12:09 -!- wareya has quit (Read error: Connection reset by peer). 11:12:13 -!- sftp_ has quit (Ping timeout: 276 seconds). 11:13:01 -!- wareya has joined. 11:15:17 -!- cheater99 has joined. 11:17:00 -!- sftp_ has joined. 11:17:24 -!- sftp has quit (Ping timeout: 272 seconds). 11:19:02 -!- cheater99 has quit (Read error: Connection reset by peer). 11:23:58 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 11:25:38 -!- poiuy_qwert has joined. 11:35:45 -!- cheater99 has joined. 11:39:07 -!- cheater99 has quit (Read error: Connection reset by peer). 11:43:58 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 11:45:38 -!- poiuy_qwert has joined. 11:55:49 -!- cheater99 has joined. 11:58:26 -!- sftp_ has quit (Remote host closed the connection). 12:00:14 -!- cheater99 has quit (Read error: Connection reset by peer). 12:03:58 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 12:05:25 -!- Quadrescence has joined. 12:05:38 -!- poiuy_qwert has joined. 12:16:47 -!- cheater99 has joined. 12:18:58 -!- atrapado has quit (Remote host closed the connection). 12:19:51 -!- cheater99 has quit (Read error: Connection reset by peer). 12:23:58 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 12:25:38 -!- poiuy_qwert has joined. 12:30:40 -!- pikhq has quit (Ping timeout: 255 seconds). 12:32:23 -!- pikhq has joined. 12:36:17 -!- cheater99 has joined. 12:40:49 -!- cheater99 has quit (Read error: Connection reset by peer). 12:43:37 Vorpal, elliott: "Just asking, have you forgot about the drop + pickup = intact item bug?" → "no, that's fixed as part of the server-side inventory". No more infinitely durable diamond pickaxes. 12:43:58 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 12:45:38 -!- poiuy_qwert has joined. 12:47:09 (And a rather weird comment about "'Collaborating' in chests will be way more fun when you can see each others mouse pointers".) 12:48:02 fizzie, ouch, when will it be released 12:48:26 Today. 12:48:31 At some unspecified time. 12:48:57 It might also very easily fix the item-placement thing, but that's probably just a good thing. 12:52:45 fizzie, what item-placement thing? 12:52:54 Oh, right, you weren't around. 12:53:17 I built Deewiant's tree by forcibly placing leaves, yet another instance of server not verifying client-sent values. 12:53:34 But the same thing could obviously be used to place an infinite amount of any block type at all. 12:53:53 (Except possibly bedrock, there is supposedly a special check against that.) 12:55:05 fizzie, heh 12:57:17 -!- cheater99 has joined. 12:58:38 -!- poiuy_qwert has quit (Ping timeout: 240 seconds). 13:00:56 -!- cheater99 has quit (Read error: Connection reset by peer). 13:05:31 fizzie, anything mentioned about torches btw? 13:06:13 Not in the twitter. "Included in the release today is leaf decay, working server-side inventory, throwable eggs, and less system hungry servers." 13:06:22 Or did I paste that already? 13:06:26 Yes, I did. 13:06:42 And the official server-mod support "early next year". 13:07:57 hm 13:08:16 fizzie, time to switch to alternative auth system then 13:08:34 and log in early 13:13:04 -!- poiuy_qwert has joined. 13:16:45 -!- cheater99 has joined. 13:21:47 -!- cheater99 has quit (Read error: Connection reset by peer). 13:27:22 -!- Quadrescence has quit (Quit: omghaahhahaohwow). 13:27:37 -!- Quadrescence has joined. 13:35:22 -!- FireFly has joined. 13:37:30 -!- cheater99 has joined. 13:43:05 -!- cheater99 has quit (Read error: Connection reset by peer). 13:44:17 -!- tswett has quit (Read error: Operation timed out). 13:50:31 -!- Quadrescence has quit (Quit: omghaahhahaohwow). 13:55:50 -!- pikhq has quit (Ping timeout: 240 seconds). 13:58:03 -!- pikhq has joined. 13:58:15 -!- cheater99 has joined. 13:58:24 -!- oerjan has quit (Quit: leaving). 14:01:47 -!- cheater99 has quit (Read error: Connection reset by peer). 14:05:05 -!- Quadrescence has joined. 14:08:02 -!- tswett has joined. 14:18:15 -!- cheater99 has joined. 14:22:13 -!- cheater99 has quit (Read error: Connection reset by peer). 14:37:53 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep). 15:04:39 fizzie, you know those mobile core 2 duo's that make a high pitched noise when they wake up from C4? I can't run mcmap on that laptop due to the noise, it wakes up a lot (even discounting network traffic). 15:05:19 Heh... Reminds me of my other computer that makes noise with high network traffic. 15:05:53 Ilari, well, it doesn't so much here, anyway I tried with a local server and local client on the same computer... and traffic over lo never made noise before 15:06:18 and just client + server does not cause the noise 15:06:30 so something like... 1200 wakeups / second according to powertop 15:06:41 some of that will be network, but it seems far from all 15:06:46 My other box makes a very annoying whine whenever the display card needs to draw anything 3D. 15:07:15 heh 15:07:39 fizzie, anyway, any idea about those extra wakeups? 15:08:49 Not immediately, no. It shouldn't be busy-polling anything when nothing happens, and there aren't any high-frequency timers. (But it's maybe not very performance-optimized in general.) 15:09:05 Heh... 10.3 pinging 10.1, ping times are ~23.4ms. 10.1 pinging 10.3, ping times are ~1.55ms... 15:09:05 ḧm okay 15:09:30 Ilari, asymmetric paths do exist 15:09:37 (might not be the case here) 15:09:58 The paths are symmetric (only one exists). 15:10:14 Ilari, could be slow firewall on one side maybe? 15:10:28 -!- MigoMipo has joined. 15:10:51 Well, one computer (10.1) is much slower than the other, but that doesn't explain why ping times just worsen and worsen... 15:11:20 The first ping time has increased by almost 50-fold from what it was inititally... 15:11:30 Ilari, check load? 15:11:47 if one is swap trashing... 15:12:17 Ilari, also 10.1, is that a 16-bit IP? XD 15:12:38 Load average: 0.00 15:12:48 huh 15:13:01 Ilari, what does (h)top say? 15:13:53 About what? That load average was from top... 15:13:55 fizzie, anyway the system in question seems to jump between C4 mwait (90.7%) and C0 (5.5%) with the rest accounted by in C2 mwait 15:14:01 Ilari, well, memory usage 15:14:27 fizzie, just standing still in MC 15:14:41 -!- elliott has joined. 15:14:45 some bad scheduling from the linux kernel there I suspect 15:15:03 Over half of memory free or discarable. 15:15:11 *discarable 15:15:20 Swap use less than 1MB. 15:15:25 Ilari, how very strange, has it worked well before? 15:16:25 20:30:11 Will you be part of the TeXnicard contest? 15:16:25 20:30:28 no. 15:16:25 20:30:44 Have you ever used Magic Set Editor? 15:16:25 20:30:56 no. 15:16:25 20:31:48 Do you have any high resolution templates for Magic: the Gathering cards? I should need templates with a better quality than the ones Wizards of the Coast uses. 15:16:31 Funny you should mention it, why yes I do! 15:16:38 XD 15:16:42 Ilari, oh wait, is any of the firewalls rate limiting or such? 15:16:43 Note: Last line never happened. 15:16:49 elliott, aww 15:16:53 Pinging IPv6 link-local address of the same box is fast (~0.5ms). 15:16:59 Nope. 15:17:07 22:20:31 bitcoin is dumb 15:17:07 22:20:42 it's too scarce 15:17:09 Ilari, .... what 15:17:10 coppro: divisible to 8 decimal places 15:17:13 Ilari, that's just absurd 15:17:14 22:24:52 ais523: hey, quick random questoin 15:17:14 22:25:04 why does ESR associate you with Discordianism here: http://esr.ibiblio.org/?p=2491 15:17:18 coppro: because esr is a fuckfaced moron? 15:17:18 Ilari, ARP issues? 15:17:29 though arp *should* cache 15:17:56 Both have correct-looking ARP tables. 15:18:06 and routing tables? 15:18:19 Ilari, is it just a switch in between or is the setup more complex? 15:18:34 Seem sane. And yes, only one switch. 15:18:47 also, there was that one network card that notified every n bytes, not every packet 15:18:57 was it that rt8192 one? 15:19:58 elliott: "... I discovered that INTERCAL had nucleated an entire weird little subculture of esoteric-language designers around itself, among whom I had come to be regarded as sort of a patriarch in absentia ..." (esr); did you know that's how you regard him? 15:19:59 coppro: you just told zzo not to write something himself, /thrice/ 15:20:10 fizzie: Yes, I did, thanks to ais523 quoting it. 15:20:26 fizzie: Funny, 'cuz we all seem to be pretty quiet about our esr worship. 15:20:43 fizzie: OH, does he mean how when we came in here every day we said "Praise be to esr, giver upon to us of C-INTERCAL's glory?" 15:20:46 Yeah. Yeah, I remember taht. 15:20:48 *that 15:21:02 elliott, except you linking to a webcomic named after him all the time! 15:21:09 (note, hyperbole) 15:21:11 Vorpal: No, no, it's Eric Raymond, not Eric S. Raymond. 15:21:18 Totally different guy that looks and behaves identically. 15:21:23 hah 15:21:41 fizzie: BTW -- proper readline erasing -- that escape sequence doesn't really work, because readline actually uses multiple physical-terminal-lines (they're physical, you can touch them and they're fuzzy!) 15:21:43 And I just got up! 15:22:12 fizzie: And telling readline "undisplay everything, dammit" is difficult because, well, it's not really designed for multithreaded use -- and how can you call rl_shoo_you_bastard() when readline() is blocking? 15:22:15 But that every n bytes wouldn't explain why it was initially fast... Also, the other direction also slows down, but much slower (factor of about 3 currently) 15:23:12 fizzie: So there isn't really a function for that. There *are* some functions to save and restore internal state, but if I save state, replace the line with "" to get it to be one line, redraw, erase the line, print out whatever, restore the state, and tell it to redraw, it gives me a blank line I can't type into; enter works to send nothingness, ^A^K does nothing but lets me type, and I think ^A might actually work like that -- I suspect it is s 15:23:12 omehow saving the mark and point and whatnot but not the text. 15:23:34 fizzie: Perhaps the text-replacing function actually writes to the pointer; I looked at readline's source and it just did "sp->line = readline_line", except with more words there. 15:24:33 elliott: You could make all output go through the readline'ing thread; have it select() (or alike) on both a pipe (of output, from other threads) and stdin, and call that readline callback interface when stdin has data. Though that would only help for the blocking part, not how to properly interlace input and output. 15:24:41 01:01:39 "Included in the release today is leaf decay, working server-side inventory, throwable eggs, and less system hungry servers." 15:24:41 01:01:48 I give that thing rather good odds of breaking mcmap. 15:24:57 fizzie: Oh, look at that, I can forget mcmap ever existed for a while! 15:25:10 elliott: You could make all output go through the readline'ing thread; have it select() (or alike) on both a pipe (of output, from other threads) and stdin, and call that readline callback interface when stdin has data. Though that would only help for the blocking part, not how to properly interlace input and output. 15:25:22 fizzie: The blocking part ain't no problem; log_print() is called from elsewhere. I was talking as 15:25:30 fizzie: Mr. Readline Architect, circa 1995, not realising multithreading exists: 15:25:44 "But why do you need rl_go_away()? You can't call it while readline() is blocking, so it would never do anything!" 15:25:52 fizzie: The blocking part ain't no problem; log_print() is called from elsewhere. I was talking as 15:25:52 fizzie: Mr. Readline Architect, circa 1995, not realising multithreading exists: 15:25:53 Great. 15:25:58 I've started splitting my IRC lines Minecraft-style. 15:26:09 Anyway, elsewhere, must get home. 15:26:51 05:07:57 hm 15:26:51 05:08:16 fizzie, time to switch to alternative auth system then 15:26:51 05:08:34 and log in early 15:27:01 Vorpal: Or just get an hMod plugin that makes all items durable. 15:27:53 elliott, that works too 15:28:14 Vorpal: So, uh, we should duplicate every block. Now. 15:28:40 What I guess that slowdown might be is that continuous pinging pollutes some connection tracking tables and the system then has to search for the active entry... 15:31:13 -!- j-invariant has joined. 15:32:19 Ilari, hm but ICMP? connection tracking? 15:32:24 well maybe 15:32:40 Ilari, anyway, do you do something strange with contrack and icmp? 15:34:04 Actually there goes that theory... 10.1 has no firewall rules. 15:34:19 Ilari, kernel bug or shoddy hardware? 15:34:39 Both 10.1 and 10.3 run the same kernel version (but diffrent archs). 15:34:40 and does it reach a cap in ping time? Or does it keep getting worse still? 15:34:54 I think it goes worse and worse... 15:35:08 But it is fairly slow process... 15:35:18 Ilari, what does rebooting do to it? 15:35:35 These systems are not to be rebooted. 15:35:41 ah 15:35:48 bbl food is ready 15:36:21 olsner: you're as clever as someone else! 15:36:22 http://www.reddit.com/r/haskell/comments/ejf1t/on_the_search_for_mathematical_truth_and/c18jhx0 15:36:26 "The Dual numbers is actually the same idea as in the Dif numbers, but the Dif implementation has a lazy infinite tower of derivatives. 15:36:26 Also, you can do symbolic derivation with Dif if you want to" 15:36:52 hey elliott I want to program this in haskell http://en.wikipedia.org/wiki/Inverse_limit 15:37:25 j-invariant: are you sure that's even possible? :) 15:37:43 well I asked that question in #haskell and someone just said "try it" 15:37:50 so I don't konw 15:37:57 "The Dif type is the type of differentiable numbers. It's an instance of all the usual numeric classes. The computed derivative of a function is is correct except where the function is discontinuous, at these points the derivative should be a Dirac pulse, but it isn't." 15:38:04 j-invariant: i think that's code for "oh man that looks hard" :) 15:38:14 Gregor: stop making me disconnect from Sine. :P 15:38:42 The best way to stop disconnecting from Sine is to stop connecting to Sine. 15:39:10 I disagree. 15:40:07 abs p@(D x x') = D (abs x) (signum p * x') 15:40:10 why didn't i think of that 15:40:19 my code is way longer 15:41:50 Heh... Floodpinging 10.1 does loads of packet loss (I got 85% packet loss) if done in longer bursts... 15:44:05 hey this is great 15:44:12 it has all the Floating algorithms! :) 15:45:04 -!- sftp has joined. 15:46:12 Ilari, huh. check dmesg 15:46:19 j-invariant: 15:46:20 sin = lift (cycle [sin, cos, negate . sin, negate . cos]) 15:46:20 cos = lift (cycle [cos, negate . sin, negate . cos, sin]) 15:46:24 Ilari, for any strange non-iptables limiting that may happen 15:46:33 lift :: (Num a) => [a -> a] -> Dif a -> Dif a 15:46:33 lift (f : _) (C x) = C (f x) 15:46:33 lift (f : f') p@(D x x') = D (f x) (x' * lift f' p) 15:46:33 lift _ _ = error "lift" 15:46:46 j-invariant: best way to implement sin/cos ever 15:48:09 that last line looks weird 15:48:26 Nothing strange in dmesg... 15:48:36 (that was to elliott, the last line I said) 15:48:41 could you it like sin' = cos ; cos' = -sin ? and get the 4-cycle for free 15:48:42 Vorpal: why? 15:48:50 elliott: what does D denote? 15:48:52 since it can differentiate compositions 15:48:58 tswett: dual numbers 15:49:06 elliott, hm... oh wait misread the type signature. Now it makes more sense. 15:49:06 Ah. Neat. 15:49:06 well, infinitely-stacked dual numbers 15:49:09 j-invariant: hm possibly 15:49:13 j-invariant: wouldn't you have to integrate though? 15:49:30 to take advantage of that 15:52:30 take 42 . show $ sin d 15:52:30 "0.0 + 1.0 + -0.0 + -1.0 + 0.0 + 1.0 + -0.0" 15:52:41 lol @ -0.0 15:54:30 Having -0 is handy in some numerical calculations. 15:54:58 indeed 15:55:01 (in case 0 is some kind of branch split for some function). 15:56:30 *Main> deriv 1 tan (1.1*pi) 15:56:30 1.1055728090000843 15:56:33 j-invariant: yay 15:57:45 Database of fixed SSL _private_ keys... Why do people use non-PFS ciphers? 16:00:03 -!- Phantom_Hoover has joined. 16:00:37 Yes, if ciphersuite is not PFS, you can passively capture session and later decrypt it using server private key. That does not work with PFS ciphersuites... 16:01:25 ha 16:02:26 j-invariant: :( second derivative of tan is 0 here 16:02:31 oh wait no 16:02:38 just "deriv 2 tan" doesn't work 16:04:14 nderiv 0 f = f 16:04:14 nderiv n f = deriv (nderiv (n-1) f) 16:04:16 does not work :( 16:06:09 had a go at inverse limit but it didn't work 16:07:40 * elliott 's brain asks him what it would be like if there was a third type-of-types among Set and Prop called Coset which was defined as a codata, thus allowing infinite types... ow, that hurts 16:08:23 X = X -> X? 16:08:46 j-invariant: that isn't allowed by the codata rules is it? 16:08:48 only X = blah -> X 16:08:58 anyway you couldn't do that unless (->) was in Coset 16:09:05 oh right I se 16:09:12 i.e. if you have Setprop which is a supertype of Set and Prop and then Coset, and both of those are in Type 16:09:16 then (->) could be on Setprop 16:09:19 and you couldn't have a function like that 16:09:24 so Set could be a subset of Coset, and (->) : Set -> Coset -> Coset 16:09:50 or that, yep 16:10:03 j-invariant: but there's curry's paradox there isn't there? 16:10:15 oh, no 16:10:20 curry's paradox is only for X->X 16:10:24 which we couldn't construct 16:10:25 hm interesting 16:10:50 j-invariant: we can construct a proposition, then, that an infinite number of things imply that ...[hang] 16:10:53 useful! 16:11:24 hm i wonder how you'd define coset concretely 16:13:54 plus if you have infinite types you would probably need infinite terms... and they can hold an infinite amount of information 16:15:19 j-invariant: well no, i mean, you can already have infinite terms with codata 16:15:38 so sets : cosets :: terms : codata terms 16:15:44 no? 16:16:40 olsner: I seem to have broken your code somewhere along the line. 16:20:14 elliott: http://www.youtube.com/user/TheCatsters#p/c/E337D7DEA972E632/10/SpCyaNi257w 16:20:34 these cone things are neat, no clue if they can be computed though 16:22:11 j-invariant: so little is computable :( 16:23:33 elliott, down? 16:24:07 Vorpal: Seemingly. 16:24:11 Vorpal: I like how snow is just some elevated floor. 16:24:14 As in, the bit marked SNOW. 16:24:40 elliott, yeah 16:24:45 elliott, added for completeness 16:39:10 Apparently Notch can't rename Minecraft accounts. 16:39:14 Question: Why. 16:39:30 Bad database design? 16:39:37 Also: http://minecraft.net/haspaid.jsp 16:39:40 Ilari: Obviously. 16:39:43 Notch is a terrible coder. 16:40:21 Vorpal: [[@jeb_ @mattmagician points out that minecraft.net/minecraft-server.zip is missing! Could you check if it's in the SECRET_ROLLBACK folder?]] 16:40:29 SECRET_ROLLBACK. 16:40:51 Vorpal: Oh man, I've figured out why updates are always so buggy. 16:40:55 Vorpal: [[The first stage of inventory prediction works fine now.. Now to test rollbacks and errors..]] -- six hours ago. 16:41:04 Vorpal: This man implements, tests and releases things in the space of *hours*. 16:41:07 "Tests". 16:41:29 elliott: The floor is snow, so of course snow is just elevated floor. ;-P 16:41:39 Deewiant: Indeed. Can I blow up the TNT? 16:41:42 Nope. 16:41:47 Deewiant: Can I blow up the TNT, please? 16:41:50 Nope. 16:41:53 Deewiant: Can I blow up the TNT, pretty please? 16:41:55 Nope. 16:42:05 Deewiant: I'm going to blow up the TNT and you have to strangle me in the next 24 hours to stop me. 16:42:13 Nope. 16:42:48 What TNT? 16:43:05 Ilari: In Minecraft. :p 16:43:22 Deewiant: What if I lined the TNT's cage with obsidian? 16:43:26 And then blew it up? 16:43:38 If you just want to blow up any TNT, that can be arranged. 16:43:46 Deewiant: Well, no, it has to be this TNT. 16:43:59 Deewiant: You should ask ineiros for a bedrock walls for the TNT room. :p 16:44:19 Lining it with obsidian would break the layout of the place and can't be done trivially. 16:44:24 So, nope. 16:44:25 What does TNT look like? I hope that game does not mix up dynamite and TNT. :-) 16:44:37 Ilari: It does. 16:44:55 Well, in Painterly (at least with my options) TNT actually is "creeper bombs". 16:45:04 You can make it dynamite too. 16:45:09 Deewiant: If you don't let me blow up the TNT, I'll cry. 16:45:17 Then do. 16:45:22 Deewiant: Waah. 16:45:23 Deewiant: Waah. 16:45:24 Deewiant: Waah. 16:45:24 Deewiant: Waah. 16:45:48 In dynamite, the actual explosive substance is nitroglycerine. TNT is trinitrotolunene, which is itself explosive... 16:46:16 Ilari: Yes, but this way I get to blow up Deewiant's room of TNT, which is way more fun. 16:46:54 I believe there's been a miscommunication: no, you don't get to. 16:47:12 How much TNT is there anyway? 16:48:58 -!- poiuy_qwert has joined. 16:50:12 Wasn't it 22 blocks in each room? 16:50:39 I mean, 22 blocks of the item type that's being presented in the particular room; not 22 blocks of TNT in each room. 16:50:45 Yes, with a few exceptions (chest, sand, gravel) 16:52:13 How much 22 blocks of TNT would be? 16:53:11 One block is supposedly 1 m^3 16:56:21 1m^3 of TNT would be 1654kg, so about 36.4 metric tons... That would give quite an explosion... 17:00:52 elliott, down? 17:01:04 -!- Phantom_Hoover_ has joined. 17:01:19 -!- Phantom_Hoover_ has quit (Client Quit). 17:04:38 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds). 17:30:51 Since a block is a cubic meter, I guess the characters are pretty short. 17:31:12 tswett: We're 1.7 blocks tall. 17:32:40 We're short. 17:32:43 -!- Phantom_Hoover_ has joined. 17:36:46 tswett: Not so short as I. 17:37:47 uh yeah that's short 17:37:54 1.9 is more reasonable 17:38:04 What was that. 17:38:14 Oh god, upgrade. 17:38:17 to tswett 17:39:21 SO WHAT ABOUT THESE OPTIONAL UPDATES EH 17:39:56 * Made SMP servers save chunks way less often in most cases. Chunks don’t resave if they got saved in the last 30 seconds 17:39:59 What the hell did they do before. 17:40:12 * Moving too far away from a container, or having it blow up, closes the inventory screen 17:40:12 * Fixed /kill 17:40:12 * Introduced leaf decay again. It acts differently from before 17:40:13 (1) LAME 17:40:14 (2) LAME 17:40:16 (3) Yay 17:40:22 * On a whim, added super exclusive clan cloaks for Mojang Employees 17:40:22 ... 17:41:00 * pikhq has coffee 17:41:09 kannhąi! 17:41:18 pikhq, coffee is the drink of the DEVIL! 17:41:50 Phantom_Hoover_: Then PRAISE BE UNTO THAT DARK LORD! 17:42:34 Phantom_Hoover_: Man, as an Englishman, I have to say that coffee is a pretty good idea. 17:43:27 elliott, stupid you restarting the client 17:43:34 elliott, if you just reconnected it worked 17:44:01 elliott: Just because you like tea doesn't forbid you from liking coffee. 17:44:11 Vorpal: You realise I could always just use my backup? 17:44:16 pikhq: MIX THEM TOGETHER 17:44:24 elliott, except you couldn't log in then? 17:44:34 Vorpal: *shrug* 17:44:40 Vorpal: I'm not about to never upgrade again. 17:44:47 Anyway -- 17:44:58 Hoover Heavy Industries' tactical and strategic test is complete. 17:45:02 elliott: Not actually that good, sadly. 17:45:15 It was a resounding success, and our skill and quality on the defence and offence fronts is vastly improved. 17:45:31 Our clients will begin to see the higher-quality service in our work immediately. 17:45:42 That is all. 17:46:06 wait. 17:46:08 [[Those of you coming in late may not be aware that (1) INTERCAL is the longest-running and most convoluted joke in the history of programming language design, and (2) all modern implementations of this twisted, sanity-sucking horror are descended from one that I tossed off as a weekend hack in 1990 here in the town of Malvern Pennsylvania (the manual describing the language goes back to 1972 but before my C-INTERCAL there hadn’t been a running 17:46:08 implementation available in about a decade).]] 17:46:10 that's /not even false/ 17:46:13 CLC-INTERCAL 17:46:16 hell, even J-INTERCAL 17:46:26 well, not even true 17:46:29 but not even false, it's way beyond false 17:46:38 it's simply _wrong_ 17:47:07 elliott: I would like to give him the benefit of the doubt and say that at the time he wrote that it may have been true. 17:47:19 I'm not sure why, though. That fucker says stupid shit sometimes. 17:47:34 pikhq: That was written /this year/. 17:47:41 *facepalm* 17:47:47 pikhq: Praising himself for, uh, getting ais to track down all the old C-INTERCAL revisions. 17:48:03 He is such an egotist asshat. 17:48:03 pikhq: "whilst I was off doing the Mr. Famous Guy thing on behalf of open source) I discovered that INTERCAL had nucleated an entire weird little subculture of esoteric-language designers around itself, among whom I had come to be regarded as sort of a patriarch in absentia…." 17:48:23 ... Patriarch? We call him an egotist asshat! 17:48:42 -!- elliott has set topic: ~THE INTERCAL-BASED SUBCULTURE OF ESOTERIC-LANGUAGE DESIGNERS~ ~GREETINGS TO OUR PATRIARCH IN ABSENTIA, ERIC S. "GIGANTIC PENIS" RAYMOND~ ~PREVIOUS ESR WORSHIPS AVAILABLE AT http://tunes.org/~nef/logs/esoteric/?C=M;O=D~. 17:49:02 LMAO 17:49:49 I think I'm going to start referring to ais as "ais523, hail Eris, all hail Discordia!, a doughty Englishman", like esr did in that post. 17:49:51 (http://esr.ibiblio.org/?p=2491) 17:50:14 Does ais523 have anything to do with Discordianism? 17:50:16 -!- elliott has set topic: http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 17:50:20 pikhq: Nope. Not that I know of at least. 17:50:28 Aside from having said "Hail Eris!" once or twice. 17:50:35 Is he a doughty fellow? 17:50:45 Phantom_Hoover_: That's quite subjective. 17:50:55 He is most certainly an Englishman, though. 17:52:11 Ilari: Relevant: http://abstrusegoose.com/329 17:52:14 Ilari: (To you, that is.) 17:52:19 Can we troll him? 17:52:57 Or at least point out that we hold him in an amused sort of contempt? 17:53:33 I doubt he'd listen. 17:53:37 He makes RMS seem humble. 17:56:54 So, which of you guys invented the Internet? Was it you, elliott? 17:57:01 Yes. 17:57:11 I took the initiative of creating the internet 17:57:24 Cool. Good work on that. 17:57:29 I willo-on-haven created the first IMP. 17:57:39 Both of you, its creator and its taker-of-initiative-of-creating. 17:57:47 Though before that, I willo-on-haven changed my name and time traveled. 17:58:35 Is that infix "on" pronounced the same way as the preposition "on", or is it pronounced /ʌn/ or something? 17:58:39 http://upload.wikimedia.org/wikipedia/commons/3/35/Phoc96v1.jpg 17:59:23 You know you have gotten too much milk fat when: Your trousers no longer fit because they are too big... :-) 17:59:42 tswett: I dunno, it's a somewhat obscure H2G2 reference. 18:01:36 pikhq: Not that obscure. 18:02:09 elliott: Really obscure would involve Lintilla, yeah. 18:02:18 (how many people have actually listened to the radio series, anyways?) 18:02:44 2. And a half. 18:08:00 -!- Mathnerd314 has quit (Disconnected by services). 18:08:16 -!- Mathnerd314_ has joined. 18:08:54 -!- Mathnerd314_ has changed nick to Mathnerd314. 18:21:58 i think i'm going to capture conor mcbride 18:22:02 and force him to complete epirgam 18:22:03 *epigram 18:22:44 http://hackage.haskell.org/package/ad ;; automatic differentiation like 10x as polished as mine 18:26:03 ineiros: upgrade plz 18:26:32 Maybe I'll downgrade instead! 18:26:52 Is hMod updated as well? 18:29:04 ineiros: Hey, it might "just work". MIGHT 18:29:16 ineiros: hmm 18:30:15 ineiros: well, if you installed some plugin to stop trying to authenticate with minecraft.net 18:30:34 Now, what to do with this router? 18:30:36 ineiros: then we could just fail to login and keep an older version 18:30:56 -!- sebbu2 has changed nick to sebbu. 18:31:13 ineiros: http://wiki.nexua.org/Plugin:AuthCraft 18:31:14 elliott: Nah, I'm not doing that. 18:31:18 ineiros: AuthCraft is a replacement for MineSecurity since MineSecurity is no longer supported and has inventory bugs. AuthCraft serves one main purpose in two different ways, it allows server-side authentication by making the user create a password upon logging into the server. This is helpful when the MineCraft authentication servers are down, or if you are hosting your own MineCraft server that does not require Minecraft authentication - also 18:31:18 known as offline mode. 18:31:20 ineiros: Aww. Why not? 18:31:32 It would last until hMod is updated 18:31:34 *updated. 18:31:39 And yes, it does in fact support OpenWRT. 18:31:46 hMod's usually been pretty fast. 18:31:55 Ideas? 18:32:12 Anyway, why would you play before the all-important mcmap's fixed either? (Admittedly I've gotten two of the new packets handled already.) 18:34:03 I think ineiros just secretly hates oklopol for not having bought the game yet and wants to make sure he never gets in. 18:34:06 'Tis the only explanation. 18:35:09 ineiros's silence is like unto admitment. 18:39:03 Well, I could just use it as a really overblown switch... 18:46:36 Oh, dur. VLANs. Hooray, having some utility. 18:51:11 ineiros: I am going to CONTINUALLY CONNECT TO THE SERVER. 18:53:45 MOP 18:54:51 I wonder if my https://github.com/fis/mcmap/commit/3a1eae914d55b525004b08225c31e1d3623dd4eb commit message couldn't have been a little harsher on the GPL. 18:55:59 -!- j-invariant has quit (Quit: leaving). 19:06:09 Minor patch 1.0_01 is up 19:07:58 Deewiant: Ain't it grand? 19:08:21 Deewiant: Notch's schedule: Two hours of coding, ten minutes of testing, five minutes of uploading; then ten hours of minor fix updates. 19:08:22 Not really 19:08:26 It's AGILE! 19:08:50 "I’ve also heard about weird item duplication bugs with dropped items" OHOHOHOHOHOHOHO 19:08:54 "and a severe performance reduction." >_< 19:09:35 My GOD he's not joking.d 19:09:40 Deewiant: Is it incredibly slow for you too? 19:09:45 I haven't updated 19:10:25 Deewiant: Not even to beta? Heh. 19:10:32 No, I've just stayed connected 19:11:18 Items have tooltips now 19:11:25 Deewiant: You have not been in Mount Hoover, have you? 19:11:29 -!- zzo38 has joined. 19:11:44 Not in it, no 19:11:53 Vorpal: And you? 19:13:01 -!- zzo38 has set topic: This topic message does not have Theorem-nature. | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 19:14:49 elliott, no 19:17:33 elliott, what was the rarer thing he mentioned in the blog post 19:17:36 has anyone found out? 19:17:50 Vorpal: Dunno. 19:20:27 -!- Sasha has quit (Read error: Connection reset by peer). 19:21:47 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep). 19:23:30 -!- j-invariant has joined. 19:27:13 If you want to make a ROM from NAND-gates, what is the minimum number of NAND gates you will need? 19:28:45 zzo38: do you mean, given n bits of static information: How many NAND gates are needed to give a function 2^(log n) -> 2 that addresses the information? 19:29:37 2 = {0,1} 19:30:35 j-invariant: Actually I mean something a bit different. I mean that if you have a certain number of bits of address, a certain number of bits of data, and a certain file which must be encoded into ROM. 19:31:15 so it is roughly what I said but with the same n bits but to construct the function 2^k -> 2^l instead? 19:31:45 (And there is the possibility that some parts of the data are unimportant, so it doesn't matter what will be read out when accessing that data.) 19:32:28 zzo38: that possibility seems to cloud the issue to me ... 19:32:30 j-invariant: Yes, more like that. 19:32:33 i declare all parts of the data unimportant 19:32:36 tada! i can do it with 0 anythings 19:33:48 You could find a lower bound with some work in terms of information complexity, and an upper bound by construcing the ROM function 19:33:58 elliott: But some of it is definitely going to be important. Like, maybe you have 1024 bytes of ROM, but only 1000 bytes used. 19:34:08 (That means there is 24 unimportant bytes) 19:34:12 I think theyll be quite far apart though, because it's a difficult problem 19:36:01 In addition, there is one more thing, which is the total delay caused by the NAND gates. 19:43:46 I wonder if there is a good way to optimize NAND circuits? good enough that a reasonable solution would be to generate the stupidest possible ROM function then just optimize it to get one with low number of gates/ 19:45:48 Vorpal: If one hears a sort of whooshing, ominous sound like "whrrrrrrrrrrrrrrrrrrrrrrrrrrkowww" in the background when underground in survival single player on peaceful mode WHAT DOES IT MEAN 19:46:04 Vorpal: I thought it was the Nether sound but no, it was like something... I don't know, arriving from another dimension. :p 19:48:16 Mob spawning from mob spawner? 19:48:39 -!- poiuy_qwert has joined. 19:48:47 Phantom_Hoover_: But it's on peaceful. 19:49:50 Phantom_Hoover_: Got a video of the mob spawner noise? 19:50:42 elliott, huh 19:50:55 -!- Sasha has joined. 19:51:02 Vorpal: It was sort of like the noise a train going past really close would make ... except without any train noises, and quiet. 19:51:12 Like the sound of wind going past, except no whistling, and made "gravelley". 19:51:16 *"gravelly". 19:51:34 elliott, oh, gravy! 19:51:41 (no idea) 19:52:47 elliott, mobs still spawn from mob spawners on SSP/ 19:52:54 Even on peaceful. 19:52:59 Just checked; yes, that was the sound. 19:53:03 Phantom_Hoover_: What, creepers etc.? 19:53:05 Or just sheep? 19:53:15 elliott, whatever mob it makes. 19:53:29 Phantom_Hoover_: OK, so by "peaceful", it means "PEACEFUL UNTIL YOU HEAR THAT FUCKING SOUND"? 19:53:42 elliott, yep! 19:53:59 Phantom_Hoover_: The way you're talking implies to me that you found this out in the way known as "the hard way". 19:54:01 Does it mean you cannot hurt each other, and it blocks your movement? 19:54:05 OTOH, avoiding dungeons is a) trivial and b) creeper free IIRC. 19:54:05 [[In Peaceful difficulty, Monster Spawner blocks will still appear, but any spawned mobs will disappear the instant they spawn. This makes it easy to make the aforementioned trap without any trouble.]] 19:54:10 elliott, no, Vorpal told me. 19:54:11 Phantom_Hoover_: Me thinks you are wrong. 19:54:14 [[In Peaceful difficulty, Monster Spawner blocks will still appear, but any spawned mobs will disappear the instant they spawn. This makes it easy to make the aforementioned trap without any trouble.]] 19:54:17 Phantom_Hoover_: Vorpal is usually wrong. 19:54:33 Well, I assume you'd still get the noise from it. 19:54:38 Indeed. 19:54:38 what? 19:54:48 Phantom_Hoover_, of course mob spawners do what elliott said 19:54:48 In the mean time I shall play on mute. 19:55:25 Vorpal: I'm scared though. 19:55:36 Phantom_Hoover_: Avoiding dungeons is not easy when you're building a staircase mine. 19:55:57 elliott, "if you see cobble, act appropriately". 19:56:32 Phantom_Hoover_: Except I /don't/ see cobble, but now every stair down I make I'm going to be scared shitless. :p 19:56:59 Well, if it comforts you, I can hear spiders next to me in my mine constantly. 19:57:25 Phantom_Hoover_: On /Peaceful/? 19:57:47 No, on Normal. 19:58:00 HAVE FUN WITH THAT 19:58:43 Phantom_Hoover_: All I want is some damn iron. 20:01:32 -!- pingveno has quit (Read error: Connection reset by peer). 20:01:54 -!- pingveno has joined. 20:02:55 -!- pingveno has quit (Read error: Connection reset by peer). 20:03:35 elliott: We won't give you any iron!! 20:06:53 -!- pingveno has joined. 20:11:57 Okay, pushed mcmap update to the beta protocol. 20:12:29 Is like a magic. 20:12:45 It's been tested in the Notchy fashion, i.e. not much. I managed to open the inventory, move an arrow from one slot to another, and it didn't yet crash; I could also take a step or two. 20:13:08 fizzie: Can you make that DATA %s print [DATA] %s and the packet print [PACK] or something? Wait, wait, never mind, I *refuse* to argue about the formatting of debug prints. 20:13:34 I'll fix that the next time I have to enable those. 20:13:51 + log_print("IMMINENT CRASH, reading tail for log"); 20:13:52 So kind. 20:13:58 DIEF. 20:14:07 error: Your local changes to 'main.c' would be overwritten by merge. Aborting. 20:14:11 Methinks I'll abandon those changes. 20:14:32 fizzie: Whoa -- please explain how "man git revert" manages to work. 20:16:15 It's easier to see what action actually caused the bug if it prints out that thing before collecting the next 256 bytes or so for the dump. 20:17:13 And I don't know; strace | grep git says it goes directly to git-revert.1.gz, presumably based on some index somewhere. 20:18:20 Incidentally, since the new packets I've seen have had IDs 65, 66, 67, 68 and 6a, I wouldn't be very surprised if there were a 0x69-id inventory-related packet that will still crash mcmap; for example something related to having multiple players do things on the same inventory. 20:18:27 Oh, and I haven't tried chests and such at all. 20:18:42 fizzie: But "man foo bar" = man foo; man bar. 20:18:49 Yes, I know. 20:18:50 So I don't see how an index can override that. 20:19:13 Well, if it tries the whole line with spaces first, and then splitted only after. 20:19:20 Look at the source, of course. 20:19:29 :p 20:19:31 (I just wanted the rhyme-alike.) 20:22:38 Hopefully by the time ineiros has the server updated and my missing packets turn up, some other people have already bothered to figure the protocol out. (I'm a bit suspicious of the 0xae packet too; it might be just trailing edge when some packet-size-change has made the parser be confused as to where another packet ends. In particular, it looks suspiciously much like the player-position-and-look packet's rear end.) 20:23:43 Right, it doesn't actually seem to happen. 20:24:11 It was probably just my messed-up health-update handling that caused me to add that; I'll remove it. (I had a similar issue with a non-existing "0x7f" packet too.) 20:25:28 Dying and respawning seems to leave regions of the map flickering, which is really quite bizarre. 20:25:49 I mean, it shouldn't be able to flicker unless the server keeps sending chunk-updates or block-setting packets. 20:30:17 fizzie: Mind if I make an OMG OPTIMISED build target? 20:30:27 Oh, sure, do that. 20:30:34 It can be OPTOMIZED by default, too. 20:30:36 'Cuz it's, you know, SO SLOW. 20:30:39 fizzie: Very well. 20:30:40 funroll-loops 20:30:47 Deewiant: Ricer ricer ricer. 20:30:49 Deewiant: The funniest loops ever. 20:30:49 4EVA 20:30:54 Do a funroll. 20:32:15 Not just -funroll-loops, but -funroll-all-loops. 20:32:27 The option description is: "This usually makes programs run more slowly." 20:33:38 :D 20:33:52 protocol.c:634: error: dereferencing type-punned pointer will break strict-aliasing rules 20:33:57 fizzie: Your program doesn't compile with -O3 because of -Werror. 20:34:25 fizzie: Which one makes programs run more slowly, -funroll-loops or -funroll-all-loops ? 20:34:30 The latter. 20:34:47 fizzie: Can that type-punning be fixed or should I just disable -Werror for the optimised build? 20:35:13 Yes, it can be fixed with the union trick. I'll do that. 20:35:17 -rwxr-xr-x 1 elliott elliott 68K Dec 20 20:34 mcmap 20:35:18 It's a bit ugly-looking now, anyway. 20:35:24 Heh, the OPTOMIZED(tm) build is smaller. 20:35:29 (It uses -combine -fwhole-program.) 20:38:32 fizzie: 20:38:36 protocol.c: In function ‘packet_double’: 20:38:36 protocol.c:634: warning: dereferencing type-punned pointer will break strict-aliasing rules 20:38:36 protocol.c:639: warning: dereferencing type-punned pointer will break strict-aliasing rules 20:38:36 main.c: In function ‘proxy_thread’: 20:38:37 protocol.c:359: warning: dereferencing pointer ‘state’ does break strict-aliasing rules 20:38:39 Those are all the warnings. 20:39:17 Better protocol.c in place. Though IIRC it would've been okay also to use just a float variable and access that via char *, wasn't there a special exception to strict-aliasing rule that you could access any memory via (unsigned) char*? 20:39:23 Still, the union thing works too. 20:39:24 Who knows. 20:40:15 fizzie: You may want to consider turning on -O2 in the debug build; a lot of warnings are missed without it. 20:40:16 I think I missed that one warning. 20:40:20 fizzie, working on porting to new protocol? 20:40:27 Vorpal: Already done, to some extent. 20:40:32 fizzie, large changes? 20:40:49 fizzie, and is the docs for the protocol public or did they reverse engineer that quickly? 20:40:59 I reverse-neggineered it myself. 20:41:13 Admittedly I don't understand all the inventory packets, but I don't need to, for map-making. 20:41:15 fizzie: HOW OFFENSIVE 20:41:23 fizzie, ah 20:41:31 Health packet went from one byte to two (took me a while to catch that, since it just desynced the packet reading; yay for not having a length field in there) and then a slew of inventory-related packets. 20:41:49 fizzie, why did it go to two bytes I wonder 20:41:51 I have probably not catched them all, I suspect some need interaction from multiple players. So it might still go crashy-crashy. 20:42:03 Caught. 20:42:14 fizzie, caught? 20:42:17 You can access anything through a char* safely but doing something like (a*)(char*)(b*) is no more correct than (a*)(b*) 20:43:34 Deewiant: Well, yes, but "double d; unsigned char *db = (unsigned char *)&d; db[0] = ...; ...; db[7] = ...;" should be fine, assuming that I do put in the proper values? 20:43:41 fizzie: Pushing the OPTOMIZED(tm) version now; to get the old type of build, do "make debug" (which just does @$(MAKE) --no-print-directory DEBUG=1, making it ever-so-slightly slower.) 20:43:56 fizzie: Yes; like said, you can access anything through a char* 20:44:01 (No, "debug: all DEBUG=1" doesn't work; the CFLAGS get set before that happens.) 20:44:15 fizzie: Oh, I broke it. Lemme fix. 20:44:53 Pushing the fix now. 20:44:58 (The problem was that I tried to indent things.) 20:45:31 Deewiant: How was it with the union trick? "union { double d; unsigned char b[8]; } db; db.b[0] = ...; ...; db.b[7] = ...; return db.d;"? 20:45:47 Yes. 20:45:54 "The problem is languages which have such universal type inference don’t provide the same safety that languages with local or no type inference can provide" 20:46:03 j-invariant: heh what 20:46:14 j-invariant: is it trying to say "type inference generates too-general types"? 20:46:22 I think someone got their head screwed on backwards http://www.codecommit.com/blog/scala/universal-type-inference-is-a-bad-thing 20:46:25 fizzie: Yes, basically. Although strictly speaking that is invalid C, all implementations I know of support it. 20:46:50 I'll let it be like that for now then, since I already made it like that. 20:46:54 Hmm, interesting: 20:46:56 main.c: In function ‘log_print’: 20:46:56 /usr/include/bits/stdio2.h:115: sorry, unimplemented: inlining failed in call to ‘vprintf’: function body not available 20:46:56 main.c:496: sorry, unimplemented: called from here 20:47:00 j-invariant: well they're a scala fan, of course their head isn't quite right 20:47:03 "In some sense, type inference weakens the type system by no longer providing the same assurance about a block of code." let me translate that "I never wrote more than one page of ocaml. Certainly never used the module system." 20:47:04 fizzie: What. 20:47:06 fizzie, what 20:47:13 That's what it said when I went "make". 20:47:15 fizzie: Just looks like it's trying to inline vprintf and can't. 20:47:16 Heh. 20:47:17 fizzie: Does it error out? 20:47:23 Well, yes. 20:47:28 fizzie: You /really/ want to get rid of -Werror for the optimised build. 20:47:31 That ... uh, might fix that. 20:47:32 Maybe. 20:47:33 What the fuck. 20:47:44 CFLAGS += -O3 -combine -funroll-loops -fwhole-program 20:47:50 That's not even -fricer level. 20:48:14 elliott, does -funroll-loops actually help? 20:48:18 elliott, have you profiled? 20:48:23 Vorpal: Nope. 20:48:26 And I'm not gonna, either. 20:48:32 elliott, then why do you use it 20:48:36 'Cuz it's ricer. 20:48:45 I doubt it's going to go any /slower/, at least. 20:48:47 elliott, usually it is a pessimisation 20:48:50 Since I can't think of a single unrollable loop in there. 20:48:56 elliott, -Os is better often 20:49:03 Vorpal: Of course it is. 20:49:05 But this is the ricer build. 20:49:15 And -Os is pointless with glibc. 20:49:15 elliott, of what? 20:49:20 mcmap. 20:49:28 ... 20:49:30 The most resource intensive program -- evar. 20:49:32 elliott, why on earth 20:49:38 'S why it needs such optimisation. 20:49:57 elliott, only time when -O3 helps tend to be when you are basically CPU bound in numerical computations 20:50:08 Just like mcmap. 20:50:20 Well, I have dietlibc here. 20:50:23 it isn't really 20:50:30 fizzie: I'll add a target to use gcc -fucking-small and link with dietlibc. :p 20:50:43 (It enables the space-saving optimisations described in Ucking 98.) 20:50:51 *Ucking et al. 98.) 20:53:14 fizzie, does the porting still work btw? 20:53:30 fizzie: Useless dietlibc support added! (Prizes to the first person who can compile glib and SDL with the dietlibc and get mcmap to link.) 20:53:35 For the record, not using -Werror wouldn't have helped; it's an error, not a warning. (Though I have zero clue why bits/stdio2.h defines vprintf with the always_inline option.) 20:53:41 I'M ON A ROOOOOOOOOOOOOOOLL 20:53:47 fizzie: Have you fixed it? 20:54:24 fizzie, what system? And I still don't have pkg-config files for zlib on ubuntu 10.04 LTS btw. 20:54:29 Well, no, not yet. I don't really know what mcmap could be doing wrong there; it just calls vprintf, after including stdio.h and stdarg.h. 20:54:31 (so I need to patch make file every time so far 20:54:32 ) 20:54:36 j-invariant: lol "I am not quite sure I buy your argument." from the /creator/ of Scala 20:54:41 in the comments 20:54:53 Vorpal: You shouldn't need to patch it now. 20:55:11 elliott, oh? You changed it? 20:55:12 nice 20:55:13 heh 20:55:15 Something like "make libs='gio-2.0 sdl zlib' LDFLAGS+='-lzlib'" should work. 20:55:16 Maybe. 20:55:24 IIRC foo+=bar doesn't really work properly from the command line... 20:55:32 properly as in it doesn't execute after the makefile's definitions 20:55:35 so it gets overridden 20:55:36 except, ah 20:55:38 it won't in this case 20:55:41 Something like "make libs='gio-2.0 sdl zlib' LDFLAGS='-lzlib'" should work. 20:55:43 definitely 20:55:45 well, -lz 20:55:48 you know what flags it needs, presumably 20:55:49 erm 20:55:52 Something like "make libs='gio-2.0 sdl' LDFLAGS='-lzlib'" should work. 20:55:55 fff 20:55:58 Or you could keep a local branch with the patched Makefile and "git rebase" on master after pulling, that'll work automagically each time the Makefile doesn't drastically change. 20:56:10 elliott, key stuck? 20:56:15 Vorpal: No, I kept correcting in. 20:56:16 *it. 20:56:23 Vorpal: $ make libs='gio-2.0 sdl' LDFLAGS='-lz' 20:56:27 Fill in appropriate flags for -lz. 20:56:29 That should work. 20:56:41 fizzie, mmm 20:56:43 (But I won't "guarantee" it always will, since libs is, like, a private variable!) 20:56:51 elliott, just -lz worked for me 20:56:57 Vorpal: So that invocation worked? Good. 20:57:05 elliott, well before 20:57:09 elliott, I haven't tried it now 20:57:09 You may want to "make clean" if you have .os lying around; the optimised build won't generate them, so. 20:57:15 elliott, I edited the makefile before anyway 20:57:24 elliott, I don't plan to update just yet, I'm still connected 20:59:05 I can only find a single reference to someone getting that inline-failed message for vprintf in particular (usually it's just their own functions), and there is no resolution, the guy just ends up removing -fwhole-program. 20:59:15 YES!! AN IRON PICKAXE!! 20:59:23 fizzie: what gcc version? 20:59:37 elliott, why not diamond? 20:59:45 elliott, and iron is trivial 20:59:46 Vorpal: Because I don't have any diamond; this game isn't very old. 20:59:51 ah 20:59:55 And no it isn't, I've been mining for iron with stone pickaxes for way too long. 20:59:59 Even now I only have enough for this and one more pickaxe. 21:00:05 I'm building a staircase down, so... 21:00:08 elliott, mcmap? 21:00:13 Vorpal: On single-player? 21:00:15 gcc (Ubuntu/Linaro 4.4.4-14ubuntu5) 4.4.5, Ubuntu whatsitcalled, package version 4:4.4.4-1ubuntu2. Whatever it installs by default, anyway. 21:00:19 elliott, well, minutor then 21:00:24 fizzie: Personally, I would edit the system header to remove that always-inline thing, but I'm crazy like that. 21:00:28 elliott, it is a decent mapping tool when you have the world 21:00:31 gcc (Debian 4.4.5-8) 4.4.5 21:00:31 for me 21:00:47 Vorpal: Cheatin', man. I've only turned Peaceful on because I'm a wimp. 21:00:55 fizzie, my system has gcc 4.4.3 btw 21:00:58 elliott, XD 21:01:08 fizzie, "linaro"? 21:01:12 NO NO NO 21:01:14 A SPIDER JUST SLURPED 21:01:17 BUT I'M ON PEACEFUL 21:01:22 elliott, bug? 21:01:27 THERE IS *NO WAY* A MOB SPAWNER CAN HAVE A SPIDER BE ALIVE FOR LONG ENOUGH TO MAKE A SLURPING NOISE 21:01:31 I CONCLUDE THAT THE BETA HAS BROKEN PEACEFUL MODE 21:01:35 DEAR GOD 21:01:37 whops 21:02:11 wait, is beta 1.0_01 ? 21:02:14 Hearing mob spawner noise + hearing things moving about when there's nothing outside the window, in the day time, and it sounds like it's near you + hearing spider slurp when in your mines, near where the mob spawner was 21:02:15 how does that make sense 21:02:16 = AAAAAAAAAAAAAAAAAAA 21:02:22 Vorpal: It was 1.0, but then he fixed it five minutes later. 21:02:39 "I will work on the MacOSX launch bug tomorrow!" 21:02:41 elliott, yes the _01 I get 21:02:49 elliott, the 1.0 bit I don't get 21:02:52 Vorpal: Because it's the first version of beta. 21:02:57 elliott, 1.0 sounds like final release 21:02:58 oh okay 21:03:06 "Well, holy moly, beta is out. We'll update the website and increase the price now. :D" ;; Aren't you *already* a millionaire? 21:03:09 Vorpal: That's what it says nowadays. Linaro's some sort of linux-on-ARM advocacy group. 21:03:20 fizzie, huh 21:03:27 Apparently it's still 25% off the full price. 21:03:34 How much money does the man want for such a buggy game? 21:03:48 elliott, well hopefully it won't be buggy when it reaches stable 21:03:48 fizzie: http://www.markshuttleworth.com/archives/427 21:03:49 Hmm. 21:04:07 fizzie: Presumably they include Linaro optimisations, but I can't imagine how they'd touch non-ARM-target builds. 21:04:16 Anyway, the headers end up having the always-inline attributes (for vprintf and others) when __GNUC_PREREQ(4,3) and __GNUC_STDC_INLINE__ is defined. 21:05:01 fizzie: Undefined the latter. :p 21:05:03 *Undefine 21:05:46 hm 21:05:55 elliott: http://p.zem.fi/pjsm 21:06:03 fizzie, which ubuntu version? 21:06:04 I don't think they want me to. :p 21:06:10 fizzie: I ... 21:06:14 Vorpal: The official one. 21:06:22 I can never remember the numbers. 21:06:24 10.10? 21:06:25 fizzie: "-D_GNU_SOURCE=1 -D_REENTRANT" Ain't them new? 21:06:27 And yes, 10.10 21:06:38 Right, the Perfect Ten. 21:06:46 I stay on LTS 21:07:09 elliott: Those are added from pkg-config somewhere. 21:07:40 Or maybe not. 21:08:03 Oh, right, for --cflags sdl. 21:08:53 fizzie: Welp, SORRY but your computer is not hardcore enough for the optimised edition. 21:09:34 Heh, with -U__GNUC_STDC_INLINE__ instead I get: 21:09:36 In file included from /usr/include/stdio.h:930, 21:09:36 from /usr/include/SDL/SDL_stdinc.h:37, 21:09:36 from /usr/include/SDL/SDL_main.h:26, 21:09:36 from /usr/include/SDL/SDL.h:30, 21:09:36 from world.c:5: 21:09:37 /usr/include/bits/stdio2.h: In function ‘printf’: 21:09:39 /usr/include/bits/stdio2.h:105: error: invalid use of ‘__builtin_va_arg_pack ()’ 21:10:35 -!- elliott has quit (Read error: Connection reset by peer). 21:11:04 fizzie, what distro does ellitott use? 21:11:14 Debian nowadays, I think. 21:11:17 At least at the moment. 21:11:31 -!- elliott has joined. 21:12:00 ah 21:12:23 I should need a good quality random number generator that will first generate a seed value or take it from user input, and then can generate random numbers based on the algorithm, such that it will be the same all computers (so that you can play duplicate draft). Which algorithm should work good? Is the one in METAFONT good? 21:13:22 I'm not exactly sure how mcmap manages to trigger the problem, since a test program that just has a main and a vprintf-function like that works just fine. 21:13:23 -!- elliott has quit (Read error: Connection reset by peer). 21:13:43 -!- elliott has joined. 21:14:22 fizzie, was it gcc 4.5.x? 21:14:29 if so: not surprised 21:14:34 13:11:04 fizzie, what distro does ellitott use? 21:14:36 Why? 21:14:48 zzo38: mersenne twister 21:14:52 elliott, well not same as fizzie I guess 21:15:12 elliott, but iirc mersenne isn't a CPRNG+ 21:15:16 s/+/?/ 21:15:33 Vorpal: Is zzo38 doing cryptography? 21:15:35 Vorpal: I already mentioned the version, didn't I? 21:15:42 I don't think he is. 21:15:44 4.4.5. 21:15:47 elliott, true, he isn't 21:15:51 fizzie, hm huh 21:16:11 zzo38: You may also want to consider http://en.wikipedia.org/wiki/Blum_Blum_Shub. 21:16:12 fizzie, yes, couldn't find it when scrolling bacl 21:16:14 back* 21:16:25 But Mersenne twister is very popular. 21:16:44 elliott: No. I am looking for one that is suitable for TeXnicard. 21:16:57 zzo38: Welp, Mersenne twister of Blum Blum Shub are my recommendations. 21:17:33 elliott, isn't blum blum shub rather slow (hm, wtf at that name btw) 21:17:44 Vorpal: He's writing this in TeX, it's going to be slow. 21:17:48 "The generator is not appropriate for use in simulations, only for cryptography, because it is very slow." 21:17:50 Blum's the slowest thing in the world. 21:17:55 Vorpal: And it was invented by Blum, Blum and Shub. 21:18:00 But yes, I'd go for Mersenne. 21:18:07 It's just Vorpal whined about not being crypto-ready. :p 21:18:09 elliott: I am writing the program in Enhanced CWEB. 21:18:12 zzo38: Ah. 21:18:15 zzo38: http://en.wikipedia.org/wiki/Mersenne_twister 21:18:18 zzo38: Just use that, everyone does. 21:18:26 There's even pseudocode on the page. 21:18:55 http://en.wikipedia.org/wiki/Mersenne_twister#Implementations <-- Now here's a section that needs extreme cutting. 21:19:14 yeah it's decent if you don't need a CPRNG 21:19:15 MT's very popular indeed. 21:19:35 http://en.wikipedia.org/wiki/Linoleum_%28programming_language%29 LOL BLATANT ADVERTISEMENT 21:19:58 Also Marsaglia (of "Random numbers fall mainly in the planes") posted what he likes best in comp.lang.c not far ago, IIRC. 21:20:26 s/)/ fame)/ 21:20:38 fizzie, planes? is that the thing about PRNG and attractor analysis? 21:20:45 ha! 21:20:53 i just wrote my first trainer 21:20:54 :D 21:21:02 elliott: OK I can use Mersenne twister 21:21:11 nooga, trainer for? 21:21:16 B.A.D 21:21:30 nooga, never heard of it, what is it? 21:21:33 space shooter for DOS by Webfoot, hard to find 21:21:37 nothing special 21:21:47 Vorpal: Well, the high-dimensional lattice structure thing, yes. Probably just that. 21:21:48 I am going to venture -- with sound off -- into the territory of Minecraft on Supposedly Peaceful. 21:21:51 And I will have my fucking sword at the ready. 21:22:16 elliott: finally I just decided to write small, offline memory dump analyser 21:22:16 Armourless no less. 21:22:16 The mcmap build works without -combine -fwhole-program, but of course that's loser-talk. 21:22:20 nooga: heh 21:22:34 instead of patching dosbox debugger 21:22:38 fizzie: As long as you put go-faster flares on, I guess it's okay. 21:22:41 with new functions 21:23:22 O god. 21:23:24 It's too scary. 21:23:28 What is the best way to initialize the seed if no user seed has been specified? 21:23:41 time(NULL)^getpid() 21:23:42 zzo38: "Another issue is that it can take a long time to turn a non-random initial state (notably the presence of many zeros) into output that passes randomness tests. A small lagged Fibonacci generator or linear congruential generator gets started much more quickly and usually is used to seed the Mersenne Twister with random initial values." 21:23:53 zzo38: As for the input to that, try the current time. :p 21:24:42 Gregor: OK. (I want to ensure it works on both Windows and UNIX systems, however. I could put a change tag there if needed.) 21:25:10 zzo38: Don't seed it directly like that. 21:25:26 zzo38: Seed a Fibonacci generator or whatever with that, run it for a bit, and seed the Mersenne twister with its output. 21:26:04 elliott: OK, maybe I can do with Fibonacci generator. 21:26:10 For seeding it. 21:26:31 fizzie I need therapy because of spiders. 21:26:55 I have to pause the game every two seconds because I'm frightened to death that a spider will jump out of a corner and ravage me. 21:27:22 No actually you have to win a big spider more bigger than you. You also need to make a copy of the game on VHS tape. 21:27:24 i HATE spiders 21:27:32 elliott: Just for giggles I tried it with gcc-4.5 in addition to gcc-4.4 too, and what it did was to remove the warning for the vprintf call in main.c:log_print, but add instead two similar warnings for both the printf and the vprintf calls in main.c:do_die. I'm not sure they've quite debugged the whole -combine thing. 21:27:53 fizzie: You could use "cat" instead. :p 21:28:08 fizzie: Now I need therapy. 21:28:21 Also the function for which it gives the warning depends on the order of the source files on the command line. 21:28:36 elliott: No you don't need therapy. You need a VHS tape. 21:28:45 I do? 21:29:01 Yes. 21:29:02 Oh, it's a bit different warning: "/usr/include/bits/stdio2.h:115:1: sorry, unimplemented: inlining failed in call to ‘vprintf’: redefined extern inline functions are not considered for inlining" 21:29:49 You need a VHS tape and a big spider. 21:31:00 [[# This may raise some eyebrows but I'm restricting the use of eval(*), setTimeout(string, ..), setInterval(string, ..) and Function(..). Don't dynamically include a script either (good call @bga_!). This list may grow if I discover another way of getting eval in so please don't bother. This rule targets the dynamic creation and running of js only (creating dynamic animations or whatever is fine). Note that setTimeout and setInterval with functi 21:31:00 on arguments are still okay! I'm doing this for aesthetic reasons, mostly. The most fun of creating a demo is hand tuning it!]] 21:31:12 time(NULL)^getpid() <-- uh, what if pid wraps around in the same second!? 21:31:13 ;P 21:31:17 Apparently the JS1k guy thinks he's cool enough to disallow procedural generation of programs. 21:31:23 Way to eliminate a major source of compression and creativity! 21:31:45 elliott: That's laaaaame 21:31:53 Gregor: Totally is. 21:32:02 elliott, JS1k? 21:32:02 Gregor: Why would you even do that? Dynamic inclusion of scripts, OK. But the others?? 21:32:07 Vorpal: Exactly what it sounds like. 21:32:14 elliott, javascript 1000? 21:32:21 elliott: You should read my eval paper! 21:32:24 Vorpal: *1024 +byte 21:32:26 Gregor: Well, link it already. 21:32:30 http://sss.cs.purdue.edu/projects/dynjs/eval-TR.pdf 21:32:45 If it isn't pun-titled I refuse. 21:33:18 OH BUT IT IS 21:33:24 <3 21:33:24 elliott, have you seen any enemies on peaceful yet? 21:33:37 Vorpal: No, I'm too much of a pussy to unpause for more than a few seconds. 21:33:41 Wow, I can't believe this is 1k: http://js1k.com/2010-first/demo/635 21:33:47 c=document.body.children[0];h=t=150;L=w=c.width=800;u=D=50;H=[];R=Math.random;for($ in C=c.getContext('2d'))C[$[J=X=Y=0]+($[6]||'')]=C[$];setInterval("if(D)for(x=405,i=y=I=0;i<1e4;)L=H[i++]=i<9|L9?0:X;j=H[o=x/u|0];Y=y Z<7&&A(Z%6,w/2,235,Z?250-15*Z:w);i=o-5+Z;S=x-i*u;B=S>9&S<41;ta(u-S,0);G=cL(0,T=H[i],0,T+9);T%6||(A(2,25,T-7,5),y^j||B&&(H[i]-=.1,I++));G.P=G.addColorStop;G.P(0,i%7?'#7e3':(i^o||y^T||(y=H[i]+=$/99),'#c7a'));G.P(1,'#ca6');i%4&&A(6,t/2%200,9,i%2?27:33);m(-6,h);qt(-6,T,3,T);l(47,T);qt(56,T,56,h);A(G);i%3?0:T$-9?1:D);ta(S-u,0)}A(6,u,y-9,11);A(5,M=u+X*.7,Q=y-9+Y/5,8);A(8,M, 21:33:47 Q,5);fx(I+'¢',5,15)}D=y>h?1:D",u);onkeydown=onkeyup=function(e){E=e.type[5]?4:0;e=e.keyCode;J=e^38?J:E;X=e^37?e^39?X:E:-E} 21:33:51 Very very impressive. 21:34:42 no procedural generation kind of ruins it 21:36:09 Yeah. 21:36:14 I SEE A SETINTERVAL BLORP BLORP 21:36:27 Gregor: That's from the last competition; also, he only disallowed *string* setIntervals. 21:36:34 Vorpal: Well, you can still procedurally generate, just not procedurally generate *code*. 21:36:36 I SEE A STRING SETINTERVAL BLORP BLORP 21:36:40 Genetic algorithms vs. genetic programming. 21:36:44 Gregor: That's from the last poop. 21:36:51 http://js1k.com/2010-first/demo/593 MOTHERFUCKING ANIMATED LASERS 21:37:55 Gregor: You should have attributed the opening quote to Douglas "Secretly Satan" Crockford. 21:37:57 You know it's true. 21:38:07 elliott, silly 21:38:14 (lack of code gen) 21:38:17 Yeah. 21:39:57 "To this end, we have built an infrastructure that automatically loads over 10,000 web pages." "And have since put it to work downloading porn." 21:40:20 We probably have a not-insubstantial amount of porn downloaded, yeah. 21:41:42 Gregor: Put up a torrent of all of them :P 21:42:33 $ du -hc cache 21:42:33 6.4G cache 21:43:32 Gregor: So? 21:43:36 Gregor: There are torrents bigger than that. 21:43:45 I wasn't saying that was infeasible at all :P 21:43:52 Also, that's only half our cache. 21:44:00 Gregor: Do eet. 21:44:10 Probably a lot of it ISN'T porn though D-8 21:44:36 Gregor: You probably got some kiddie pr0n in there, too, and also of course heaps of copyrighted material so GOOD LUCK redistributing that :P 21:44:53 " To illustrate the power of eval, consider the following example, which is one way to 21:44:53 implement objects using only functions and local variables." 21:44:57 BRB, ADOPTING THIS IN ALL MYCODE. 21:44:58 *MY CODE. 21:44:59 I really don't think there's child porn in the top 10,000 most popular sites ... 21:45:07 YOU WANNA BET 21:45:08 And: 21:45:12 You didn't consider unpopular sites? LAME 21:46:19 Gregor: What's that new function syntax JS1.93458345whatever introduced? 21:46:24 fizzie, there? 21:46:32 elliott: function(x) x 21:46:39 fizzie, need help debugging the possible collaboration thingy? 21:46:49 (if you have a server I could try going there) 21:46:57 Gregor: To illustrate the power of eval, consider the following example, which is one way to 21:46:57 implement objects using only functions. 21:46:59 Point = function() { 21:46:59 return {x:0, y:0}; 21:46:59 } 21:47:02 Gregor: U JELLY? 21:47:15 CURSES! FOILED AGAIN! 21:47:27 elliott: That doesn't implement objects, it just leans on the pre-existing implementation of objects. 21:47:30 Gregor: Also, does anything actually support function(x) x yet...? 21:47:34 elliott: That doesn't implement objects, it just leans on the pre-existing implementation of objects. 21:47:38 Gregor: So does yours :P 21:47:40 How good is Xorshift random number generator? 21:47:41 eval is a function which is an object. 21:47:42 Also strings. 21:47:45 elliott: Only Mozilla, and it's not even part of standard ES, so nothing will. 21:47:47 zzo38: Not as good as Mersenne. 21:47:50 Vorpal: I'll save that to some point when it naturally crashes; if I have any luck, someone has figured the protocol out by then. 21:47:51 Gregor: lawl 21:47:59 fizzie, hah 21:47:59 zzo38: Oh, wait. 21:48:02 zzo38: It's Marsaglia. 21:48:05 zzo38: Yes, that should be just fine. 21:48:11 zzo38: Just steal the implementation from http://en.wikipedia.org/wiki/Xorshift :P 21:48:36 elliott: That is the page I looked at! The only problem is, what is the best way to seed it? 21:48:46 zzo38: Looks like it comes pre-seeded to me. 21:49:17 zzo38: But, um, if seeding it with time() or whatever isn't enough, you could use a http://en.wikipedia.org/wiki/Linear_congruential_generator. 21:49:21 elliott: I can see that. That is why I need to make it seedable by external. 21:50:03 I ought to use a generator good enough that even WotC could use it for making booster packs and it would be difficult to predict what cards you are going to get. 21:50:44 Gregor: Point = function(){ 21:50:45 return (function(o){ 21:50:45 21:50:45 })(function(f){return f((function(f,x){return x}),(function(f,x){return x}))} 21:50:45 } 21:50:54 Gregor: Skeleton of an example which implements objects using only functions. 21:51:10 (That function it's being called with is lambda-calculus-style (0,0) :P) 21:51:17 elliott: I don't think you fully understand the notion of an illustrative example :P 21:51:29 Gregor: You should have put that in with "..." in the body. 21:51:34 Leaving the body as an exercise to the reader. 21:51:57 Results 21:52:03 Results are left as an exercise to the reader. 21:52:09 " Any assignment to 21:52:10 an undeclared variable in JavaScript, including in an eval, will implicitly declare the 21:52:10 variable in the global scope, becoming globally visible and polluting the namespace. 21:52:10 For instance, executing eval(”x=4”) in a scope that does not include x will declare x in 21:52:10 the global scope and assign it the value 4." 21:52:12 tl;dr javascript sucks 21:52:58 Gregor: Now you've made me want to write Pong In Five Statements D: 21:53:29 [[ Of course the above code could be implemented straight- 21:53:29 forwardly without eval as: 21:53:29 Resources[”message ” + userInput]]] 21:53:36 Gregor: Ever considered Resources.messages[userInput]? :P 21:54:16 elliott: That's not the above code. 21:54:21 elliott: That's code similar to the above code. 21:54:26 Gregor: No, but it is a better solution :P 21:54:36 elliott: Yes, it is, and we go into that later. 21:54:46 Gregor: Your eval("Resources.message_" + validate(userInput)) isn't the same code as that either. 21:54:51 Depending on the definition of validate :P 21:54:57 Fair enough *shrugs* 21:55:06 elliott: If using Xorshift, what would be the best way to modify the registers for seeding? Should we change "w"? Should we add the seed number to all of "x" and "y" and "z" and "w"? How should it be entered into a bibliography? 21:55:11 Gregor: I'm jus' pickin' on you 'cuz I'm jealous. 21:55:44 Jealous of all the porn our autostuff downloaded. 21:55:47 zzo38: * Marsaglia (July 2003). "Xorshift RNGs". Journal of Statistical Software Vol. 8 (Issue 14). http://www.jstatsoft.org/v08/i14/paper. 21:55:51 zzo38: would be the bibliography reference. 21:56:07 ... XD 21:56:11 elliott: OK. What formatting should be used? 21:56:36 The seed set for xor128 is four 32-bit integers x,y,z,w not all 0, while the seed set for MWC is three 32-bit integers 21:56:36 x,y,z and an initial c zzo38, doesn't bibtex handle that? 21:56:41 zzo38: Basically, it comes pre-seeded. 21:56:57 zzo38: So I would change all of them. 21:57:08 elliott, won't it generate the same stream all the times if the seed is the same? 21:57:17 zzo38: Just set x, y, z and w according to successive values of whatever seeder RNG you have, seeded itself with time() or similar. 21:57:19 I think I will put the bibliography directly before the index. 21:58:47 elliott: I am not using BibTeX. I am using Enhanced CWEB to write this program, I told you already. What would be a very simple seeder RNG for this? 21:59:33 Vorpal: It can use seed from timer (and possibly other things), but it is OK if it generate the same stream with the same seed, it is supposed to be like that so that you can enter the seed manually in case you want to play duplicate draft, or something similar. 22:00:03 zzo38: I did not say BibTeX. 22:00:04 mhm 22:00:10 Vorpal said BibTeX. 22:00:13 yeah 22:00:16 OK 22:00:32 Vorpal: OK you tell me the formatting to use, then. 22:00:33 zzo38: Simple seeder RNG would be Fibonacci generator or linear congruential generator. 22:00:57 elliott: OK. 22:03:19 * nooga cracker 22:03:38 btw. who did this skyway's levels renderings? 22:03:50 nooga: ? 22:06:27 pikhq: OMake review: Oh hey the website looks nice. And so simple too! 22:06:27 $ omake --install 22:06:28 omake: Symbol `FamErrlist' has different size in shared object, consider re-linking 22:06:28 OMakeroot already exists, overwrite (yes/no)? yes 22:06:28 *** omake: creating OMakeroot 22:06:28 *** omake: creating OMakefile 22:06:29 *** omake: project files OMakefile and OMakeroot have been installed 22:06:31 *** omake: you should edit these files before continuing 22:06:33 pikhq: Fuck this shit. 22:06:35 pikhq: (All builds are similarly noisy.) 22:06:45 And you get stuck with a useless OMakeroot file that apparently you usually don't need to edit. 22:09:28 zzo38, no idea if you don't use bibtex 22:11:52 Vorpal: I am using Enhanced CWEB to write this program. You can just tell me what parts ought to be bold and so on, and what paragraph formatting you think is good for bibliography. 22:13:25 elliott: God that's stupid. 22:13:52 zzo38, I don't know, doesn't it depend on citation style? 22:13:55 pikhq: It even tells me that it's looking for g++ when I try to compile a C file, and when it finds it, then looks for gcc. 22:13:58 Why did you have to look for g++? 22:14:34 pikhq: I am starting to think that the best short-term solution is to write a GNU Make library of sorts... 22:14:46 pikhq: So you can just do "include lib.make" and have most everything sorted. 22:14:48 Vorpal: I don't know either. What does citation style means? 22:16:06 I'll let elliott explain 22:16:15 I'll let Vorpal explain 22:16:21 (hardvard, oxford, Vancouver and so on) 22:16:33 Harvard, Oxford, Vancouver, Pyongyang. 22:16:49 Pyongyang citation style‽ 22:17:03 Which style should I use? 22:17:07 zzo38: Pyongyang! 22:17:14 You just credit everything to Dear Leader. 22:17:16 It's really simple. 22:17:19 Here's what a citation looks like: 22:17:22 [1] Dear Leader. 22:17:29 pikhq: Actually, a GNU make library would be really useful... 22:18:02 elliott: That is no good! I need to use a proper style. Which style is good for literate programming? 22:18:48 zzo38: No idea. 22:20:28 elliott, stop trolling zzo38 22:20:55 Vorpal: I use the Pyongyang style all the time![1] 22:20:56 [1] Dear Leader. 22:21:28 elliott: I don't really care what style you use. But for me it is insufficient. 22:21:59 PRAISE BE TO THE DEAR LEADER OF THE DEMOCRATIC PEOPLE'S REPUBLIC OF CHOSON! 22:22:22 elliott: you broke my code? it works for me :) 22:22:34 olsner: not when you define a Floating instance :P 22:22:37 and also add | Zero 22:22:43 pikhq: map = $(foreach a,$(2),$(call $(1),$(a))) 22:22:44 pikhq: o = $(call map,origin,o map MAKE) 22:22:50 pikhq: This is an actual example from the GNU make documentation. 22:22:56 *vomit* 22:23:44 define hello 22:23:44 hello: ; 22:23:44 @echo hi 22:23:44 @echo bye 22:23:44 endef 22:23:45 $(hello) 22:23:50 pikhq: Valid GNU make. (Yes, the ; is required.) 22:23:55 pikhq: So this means a library is actually feasible ... 22:24:03 define hello 22:24:03 hello: ; 22:24:03 @echo hi 22:24:03 @echo bye 22:24:03 endef 22:24:04 This even works. :p 22:25:40 Well, I put some macros in the limbo area for bibliography. I still don't know what style to use. 22:26:18 And I still don't know what parts to make bold, slanted, etc 22:27:55 -!- j-invariant has quit (Quit: leaving). 22:28:38 pikhq: Do you know how to disable all implicit Make rules? 22:30:23 elliott: make --help or man make? 22:30:38 olsner: asking pikhq is easier 22:30:56 ... but slower 22:31:00 but easier 22:32:08 I know what it is now that I've looked it up in the make -h output, you could too 22:32:51 elliott, and you tell me to google for stuff? 22:33:06 olsner: i'm busy reading the whole manual 22:33:09 which is much less useful 22:33:24 I wish you could write $(foo bar, baz) for $(call foo, bar, baz) 22:34:21 ah, making every multiple-word variable expansion a function call ... I can't see why that wouldn't work, it's such an obvious improvement too 22:34:59 why do you read the *whole* manual when all you want to know is one option? 22:35:29 that's like... an implementation of 'head' that always reads to EOF before printing anything 22:35:53 "ooh, found it! now I just have to remember it until I get to the end of the manual!" 22:38:41 olsner: :D 22:39:18 olsner: right now I'm grappling with the seemingly-impossible task: "Turn 'a b c' into 'a,b,c'." 22:39:34 $(shell) and sed 22:41:03 joinwith = $(if $(2),$(firstword $(2))$(if $(wordlist 2,$(words $(1)),$(1)),$(1)$(call joinwith,$(1),$(wordlist 2,$(words $(1)),$(1))),),) 22:41:05 YAAAAAAAAAAAAAAAAAAAAAAAAAAAY 22:41:08 pikhq: YAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAY 22:41:13 * elliott gushes blood from every pore 22:41:15 YAAAAAAAAAAAAAAAAAAAAAAAY 22:41:23 elliott: wtf, my eyes are bleeding :( 22:41:31 olsner: YAAAAAAAAAAAAAAAAAAAAAY 22:42:30 olsner: doesn't even work :D 22:42:58 make it work, then comment it out and replace with the silly sed solution 22:43:06 olsner: that's not PORTABLE to OS/2 22:43:24 well, wtf *is* portable to OS/2? 22:43:32 aha i had $(1) instead of $(2) 22:43:33 EASY 22:43:34 MSITAKE 22:43:35 *MISTAKE 22:44:08 hmm, on second thought, I might have made some code that worked on both Linux and OS/2 :( 22:44:14 -!- Phantom_Hoover_ has quit (Quit: Leaving). 22:44:24 define joinwith 22:44:24 $(if $(2), 22:44:24 $(firstword $(2)) 22:44:24 $(if $(wordlist 2,$(words $(2)),$(2)), 22:44:24 $(1) 22:44:24 $(call $(0),$(1),$(wordlist 2,$(words $(2)),$(2))) 22:44:26 ,),) 22:44:28 endef 22:44:30 i give up 22:44:32 there has to be another way 22:45:07 EMPTY := 22:45:07 SPACE := $(EMPTY) # 22:45:07 COMMA := , 22:45:16 olsner: that comment is solely there to show that, yes, gnu make is crazy! 22:45:18 SPACE := # 22:45:20 DOES NOT WORK 22:45:21 but 22:45:23 SPACE := $(EMPTY) # 22:45:23 DOES 22:45:51 (I don't remember if I had any code that was shared, or if the OS/2 and Linux parts were disjoint) 22:46:02 olsner: you wrote OS/2 parts? why :D 22:46:16 elliott: because it needed to run on OS/2 22:46:27 or it *involved* OS/2 is more correct 22:47:24 "The value function provides a way for you to use the value of a variable without having it expanded" 22:47:26 MWAHAHAHAHA 22:47:29 olsner: why. 22:47:37 elliott: because. 22:47:39 "The eval function is very special" 22:47:43 *because? 22:47:44 In the really, really retarded sense of "special". 22:48:08 ifdef bletch 22:48:08 ifeq "$(origin bletch)" "environment" 22:48:09 bletch = barf, gag, etc. 22:48:09 endif 22:48:09 endif 22:48:11 funny, mr. manual; 22:48:13 that's how i feel about gnu make 22:48:48 Mark writes, "advice that is true for life as well as code." 22:48:48 # The colon is very important. DO NOT TOUCH. 22:48:58 :D 22:49:23 [["This is used all over our app," writes Anthony Arnold, "I get rid of them when I see them. What's wrong with !String.IsNullOrEmpty((s ?? "").ToString())" 22:49:23 public static bool IsRealString(object s) 22:49:23 { 22:49:23 return s != null && !String.IsNullOrEmpty(s.ToString()); 22:49:23 }]] 22:49:31 Why is that even on the daily wtf? 22:49:39 ZOMG IT DOESN'T USE THE *ABSOLUTE NEWEST* CONSTRUCTS 22:49:43 NOT PRESENT IN MOST OTHER LANGUAGES 22:49:45 IT'S EVIL CODE 22:49:45 SPACE := $(EMPTY) # <-- why not " " ? 22:49:52 Vorpal: you mean SPACE := " "? 22:49:59 elliott, yeah 22:49:59 that defines it to literally be quote mark, space, quote mark 22:50:01 duh 22:50:05 elliott, oh... 22:50:09 elliott, how silly 22:50:09 elliott: hopefully that's sarcasm and that other construct is considered equally bad 22:50:12 you are clearly a make n00b luz3r 22:50:18 olsner: I doubt it 22:50:23 olsner: oh wait 22:50:26 olsner: just looked at it :D 22:50:28 yeah okay 22:50:28 lol 22:51:25 or maybe the submitter thinks that's the best way to do it and the wonder of clarity 22:51:27 elliott, C#? 22:51:36 Vorpal: prolly 22:51:38 what the heck does ?? do there 22:51:41 and as the readers we're supposed to go "lol, the *real* wtf, etc" 22:51:45 I do not remember 22:52:11 presumably s ?? foo means s != null ? s : foo 22:52:13 yep 22:52:19 olsner: btw i want to get rid of implicit rules in the makefile, not on the command line 22:52:29 so -h does not help :P 22:53:08 elliott, all:\n$(MAKE) - realall 22:53:14 (NOTE: DON'T DO THIS) 22:53:21 echo $(subst $(SPACE),$(COMMA),$(LD.FLAGS)) 22:53:23 HAHA IT WORKS 22:53:26 you could ... $(filter) on MAKEFLAGS (or whatever it's called), then call make recursively if implicit rules are not disabled 22:53:34 Vorpal: I might, actually, except the way olsner does it. 22:53:38 I can't really think of a cleaner solution. :p 22:53:54 elliott, you would need one per target 22:53:55 !! 22:54:02 Vorpal: nope 22:54:05 put an if around your whole makefile, and use MAKECMDGOALS along with a catch-all rule to implement the wrapper 22:54:05 Vorpal: %: \n ... 22:54:11 elliott, oh my 22:54:13 but yeah, what olsner said 22:54:31 and remember to handle an empty list of goals 22:55:25 I remember doing this once (not for the purpose of adding -r though) and deciding that it didn't end up that ugly after all 22:55:25 olsner, won't the first rule be invoked then? 22:55:56 Vorpal: put everything in an if so only the wrapper part is visible when you've decided you need to wrap 22:56:01 why not BSD make 22:56:06 isn't it much nicer iirc 22:57:05 elliott, didn't mk have problems with spaces in the filenames? 22:57:26 mk, yes, I think so. 22:57:34 what about make? 22:57:36 BSD make is less featureful, so I can't bend it into usefulness. 22:57:44 Vorpal: It works *if* you take precautions at every point to make it work. 22:57:51 Vorpal: Which my library *will* but *nothing* else does. 22:58:04 elliott, a make library? 22:58:13 Vorpal: Yes. 22:58:20 Vorpal: The idea is that you can make your Makefile look something like this: 22:58:26 include useful.make 22:58:29 a make library? intriguing 22:58:36 $(call c-program, foo, *.c) 22:58:38 Or the like. 22:58:45 elliott, does it do the deps thingy then 22:58:49 so you get those .d files 22:58:50 Vorpal: Yes, it will. 22:59:03 Vorpal: It'll also hopefully have easy ways to add pkgconfig libraries to the mix, without manually doing $(shell pkg-config ...). 22:59:20 elliott, and if the package only has foo-config? 22:59:33 as in /usr/bin/motif-config (I hope not!) 22:59:35 Vorpal: Well, then you get to add support yourself. Or maybe I'll have specific stuff for that :p 22:59:39 Also, *allegro-config would be more realistic. 22:59:55 elliott, well okay, I don't know which packages still use only that old style 23:00:06 allegro would be reasonable to presume 23:00:10 it is so.... backwards 23:00:17 Allegro is nice though. :p 23:00:24 elliott, SDL isn't bad either 23:00:30 Allegro does more stuff for you. 23:00:45 elliott, true, but it feels rather outdated somehow (yes yes, allegro 5...) 23:00:45 Ugh, how can one make a submake not print "make[1]:"? I want to use $(MAKE) to be a Good Citizen but I don't want it to think "ooh, recursion!". 23:00:52 I have used SDL. It does work. 23:00:59 no one doubted that 23:01:11 if (oneHundred == 100) { oneHundred /= 2; } 23:01:26 olsner, dailywtf? 23:01:35 olsner: What is the point of such a code? 23:02:30 zzo38: Indeed. 23:02:46 TeX sometimes makes overfull boxes. I fixed it by setting \emergencystretch=\hsize 23:04:24 olsner: Yes I have seen that code in Daily WTF. 23:05:04 elliott: Don't use a submake? 23:05:20 pikhq: Give me another way to disable the default set of implicit rules. 23:05:34 (Than filtering on MAKEFLAGS and re-making with --no-builtin-rules if it isn't there.) 23:05:44 Oh! 23:06:18 So that's what you're doing. 23:07:11 pikhq: Yeah. 23:07:12 elliott, just manually redefine a replacement for each built in rule 23:07:16 ;P 23:07:24 Vorpal: There is no way to know exactly what built-in rules are defined. :p 23:07:35 Except maybe INVOKING MAKE TO ASK IT!11271892 (Even if this is possible: NO.) 23:07:47 elliott, make -p 23:07:57 elliott, then write a parser in make 23:08:07 elliott, generate a makefile, and include it 23:08:09 or something 23:08:20 elliott, note: not a good idea 23:08:31 lawl# 23:08:33 *lawl 23:08:35 -!- zzo38 has quit (Remote host closed the connection). 23:09:05 elliott, hm is make classified as an expert system or not? 23:09:19 Yes. 23:09:27 In fact "Recursive Make Considered Harmful" explicitly describes it as one. 23:09:30 -!- MigoMipo has quit (Read error: Connection reset by peer). 23:09:41 elliott, I wonder if you could turn it into a probabilistic expert system! 23:11:17 Aha. 23:11:18 MAKELEVEL=0. 23:11:53 make: *** No rule to make target `sdf'. Stop. 23:11:53 make: *** [sdf] Error 2 23:11:56 Now to get rid of that pesky second line. 23:12:06 pikhq: 23:12:06 .RECIPEPREFIX 23:12:06 The first character of the value of this variable is used as the character make assumes is introducing a recipe line. If the variable is empty (as it is by default) that character is the standard tab character. For example, this is a valid makefile: 23:12:06 .RECIPEPREFIX = > 23:12:06 all: 23:12:08 elliott, not sure you can 23:12:09 > @echo Hello, world 23:12:10 The value of .RECIPEPREFIX can be changed multiple times; once set it stays in effect for all rules parsed until it is modified. 23:12:13 LOL WAT. 23:12:26 elliott, what is a "recipe" in make 23:12:43 oh 23:12:44 Vorpal: The actual shell script with make variable inclusions and the like. 23:12:47 right 23:12:50 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep). 23:13:02 elliott, can it be set to two chars 23:13:09 elliott, so you can do space indented makefile 23:13:11 or even mixed 23:13:21 .RECIPEPREFIX := $(SPACE) *should* work. 23:13:28 But you'd really want space-or-tab, which I think is impossible. 23:13:32 ah 23:13:55 elliott, I know it would confuse the hell out of most editor's mode for makefiles 23:14:03 emacs would probably hate you 23:14:05 same for kate 23:14:11 GNU Make really could do with a "break compatibility" option so that it can have saner syntax. 23:14:27 But, then, GNU would fuck it up somehow. 23:14:31 yeha 23:14:32 yeah* 23:14:35 write your own? 23:15:01 pikhq, all of this channel would thank you 23:15:08 Like turn $@ into $THE_TARGET_FOR_THIS_HERE_GNU_(GNU'S_NOT_UNIX)_MAKE_RECIPE_WILL_BE_PUT_IN_PLACE_OF_THIS_STRING 23:16:44 Vorpal: Hey, my plan if this doesn't work out is to write my own Make-alike. 23:16:56 Vorpal: Where in $(...), the code in ... is just interpreted in a pure, functional language. 23:17:02 With PROPER LISTS, god dammit. 23:18:22 hah 23:18:28 you don't need lists, you can just use space-delimited strings! it's so much easier! 23:18:54 olsner: Especially when your filenames have spaces in them! 23:19:20 since you can't use such files with make, make users will not create such files :D 23:19:29 olsner: you can, actually 23:19:32 just reaaally painfully 23:20:02 elliott, what about filenames with : in them 23:20:26 can you do foo: bar is a nice file.interesting extension.really fun : something 23:20:30 Vorpal: I think foo\:: bar might be valid 23:20:31 if not, 23:20:34 foo := foo: 23:20:35 $(foo): bar 23:20:36 probably is 23:20:39 elliott, hah 23:20:51 when in doubt, make a fucking variable 23:21:09 elliott, mpw make! 23:21:15 (just because) 23:21:18 elliott, ever used it? 23:21:33 it has it's own syntax, using non-ascii for stuff like : and \ 23:21:43 (macroman ftw) 23:22:00 elliott, ? 23:22:02 Vorpal: i've seen it. 23:22:06 when trying to compile your cfunge port 23:22:14 elliott, I didn't port cfunge... 23:22:18 elliott, I ported ick 23:22:32 porting cfunge would be insane 23:23:12 oh joy, there's commas in my function argument 23:23:19 time to mutilate my vital organs 23:23:23 hah 23:23:46 elliott, the issue is that make is doing this on a textual level 23:23:51 you don't say 23:23:59 elliott, I mean, it is rather insane 23:23:59 oh wait my cat function seems broken 23:24:00 neat! 23:24:02 even for shells 23:24:02 just like real cats 23:24:11 always...broken 23:24:34 ok you know what? fuck $(LD.FLAGS) for now 23:24:48 elliott, why are you using that name 23:24:55 elliott, LDFLAGS is kind of more common 23:25:00 HAHAHAHAHAHAHAHA THE ISSUE IS THAT I HAD NEWLINES IN MY MACRO 23:25:13 Vorpal: this is not the channel for "common" and you know it 23:25:16 elliott, wait what 23:25:18 Vorpal: because "CFLAGS" is stupid; I'm rationalising all the variable names and then defaulting them to the common name 23:25:26 elliott, ah 23:25:26 e.g. CC.FLAGS := $(CFLAGS) 23:25:28 elliott, nice idea 23:25:31 I may end up lowercasing it to cc.flags for less annoyance :P 23:25:34 elliott, seen it done before though 23:25:46 elliott, WHY NOT SHOUT WHEN YOU CAN. ALSO IT'S TRADITIONAL! 23:26:23 "Tradition, tradition, where would we be without tradition" <-- I know this is a quite from somewhere, but I can't remember where 23:26:58 define default 23:26:58 $(eval,ifndef $(1) 23:26:58 $(1) := $(2) 23:26:58 endif) 23:26:58 endef 23:27:00 (I think, some play) 23:27:01 aww, doesn't quite work 23:27:02 (or such) 23:30:26 hahaa it works 23:30:31 elliott, how? 23:30:35 define default_body 23:30:36 ifeq ($$(origin $(1)), undefined) 23:30:36 $(1) := $(2) 23:30:36 endif 23:30:36 endef 23:30:37 default = $(eval $(call default_body,$(1),$(2))) 23:30:43 whaaat 23:30:54 that makes no sense 23:30:57 I'm not sure why the make example for ?= uses origin like that though 23:31:01 Vorpal: I think that 23:31:01 $(eval 23:31:02 foo 23:31:03 bar) 23:31:06 gets all its whitespace flattened 23:31:11 whereas a multi-line macro can have any whitespace it wants 23:31:17 i.e. $(foo bar baz) has all its newlines normalised to spaces 23:31:22 whereas the body of a multi-line macro does not 23:31:24 thus explaining the above 23:31:25 elliott, ouch 23:31:46 " If the variable variable-name has an empty value, the text-if-true is effective; otherwise, the text-if-false, if any, is effective. The rules for expansion and testing of variable-name are identical to the ifdef directive." 23:31:46 ah 23:31:48 so origin is morep recise 23:31:50 *more precise 23:32:29 elliott, ...what does origin do now again? 23:32:41 -!- cheater99 has joined. 23:32:46 -!- cheater99 has quit (Read error: Connection reset by peer). 23:32:48 Vorpal: horrible things: http://www.gnu.org/software/make/manual/make.html#Origin-Function 23:33:11 elliott, *decides to leave minecraft running overnight* 23:33:21 I hope it won't do anything insane like swap trash 23:34:25 elliott, oh my 23:35:27 -!- cheater99 has joined. 23:36:11 quote = '$(subst ','\'',$(1))'#' 23:36:15 Vorpal: Guess what that comment is for. 23:36:27 Vorpal: Answer: To stop Emacs thinking the rest of the Makefile is in a quote. 23:36:39 elliott, emacs fails parsing then 23:36:40 EXAMPLE USAGE: 23:36:41 define c-program 23:36:41 ; 23:36:41 $(call cat, $(CC) $(CC.FLAGS) $(CPP.FLAGS)) \ 23:36:41 -o $$(call quote,$$@) \ 23:36:41 $$(foreach src,$$^,$$(call quote,$$(src))) 23:36:43 endef 23:37:02 elliott, I have no idea what that does. I never used call in make even 23:37:08 -!- cheater99 has quit (Read error: Connection reset by peer). 23:37:10 Vorpal: 23:37:13 foo = $(2) $(1) 23:37:16 $(call foo,a,b) => b a 23:37:23 yearh 23:37:26 yeargh* 23:37:30 Vorpal: quote = '$(subst ','\'',$(1))'#' 23:37:35 elliott, did it turn a variable into a function? 23:37:36 Vorpal: So, we have literal ', a call, and a literal '. 23:37:40 The call transforms ' into '\''. 23:37:41 So: 23:37:45 $(call quote,a' b) 23:37:46 -> 23:37:50 'a'\'' b' 23:37:51 !!!!!! 23:37:52 Wow. 9 months after the election, Iraq finally forms a government. 23:37:54 Which is how you shell-represent "a' b". 23:37:58 Vorpal: And yes, it does; string-based! 23:38:00 Vorpal: Remember that 23:38:01 !!!!!!!!!!!!!!!!!! 23:38:01 define foo 23:38:02 ... 23:38:02 endef 23:38:05 just defines a string too. 23:38:15 elliott, not a string foo? 23:38:18 XD 23:38:22 Yes yes yse. 23:38:23 *yes. 23:38:25 yeah 23:38:46 wow, $(flavor ...) looks even worse 23:38:49 $ make 23:38:49 than origin 23:38:49 cc -o 'foo' 'foo.c' 23:38:50 Bit ugly though. 23:38:52 SOLUTION? 23:38:53 Another function! 23:39:00 That only quotes if there's any quote-needing characters. 23:39:01 To quote. 23:39:16 I am, by the way, laughing. 23:39:24 elliott, oh? 23:39:29 Yes. 23:39:31 This is very silly. 23:39:43 elliott, yes, yes it is 23:39:59 OK, I think if I do 23:40:03 $(info text...) 23:40:03 This function does nothing more than print its (expanded) argument(s) to standard output. No makefile name or line number is added. The result of the expansion of this function is the empty string. 23:40:04 uh 23:40:07 @echo ? 23:40:12 Vorpal: Anywhere in the makefile, silly. 23:40:13 $(filter-out %a%,$(1)) 23:40:14 erm 23:40:16 elliott, oh right 23:40:20 $(filter-out %a%,$(1))$(filter-out %b%,$(1))$(filter-out %c%,$(1))... 23:40:25 for every single safe character 23:40:28 then I can do kwote 23:40:32 elliott, this in absurd 23:40:44 Wait, no. Argh. 23:41:15 I think I'm going to start listening to emo just to accurately convey my mood right now. 23:41:21 elliott, ouch 23:41:24 elliott, that's bad 23:41:29 elliott, you need a VHS (??) 23:41:33 * elliott slits the wrists of his inner programmer 23:41:36 Vorpal: And a big spider! 23:41:40 elliott, and that 23:41:46 SCCS 23:41:47 Any file n is extracted if necessary from an SCCS file named either s.n or SCCS/s.n. The precise recipe used is ‘$(GET) $(GFLAGS)’. The rules for SCCS are terminal (see Match-Anything Pattern Rules), so SCCS files cannot be generated from another source; they must actually exist. 23:41:48 WHY DOES THIS EVEN EXIST 23:41:50 elliott, and a big RMS plush figure 23:42:08 Vorpal: Oh man, I would buy that if and only if it's in the pose of eating stuff it picked from its feet. 23:42:15 ...and then promptly burn it. 23:42:15 Twice. 23:42:21 elliott, I doubt rms does that 23:42:26 HAHAHA 23:42:30 elliott, what? 23:42:40 elliott, [citation needed] 23:42:42 Vorpal: http://www.youtube.com/watch?v=I25UeVXrEHQ 23:42:42 -!- oerjan has joined. 23:42:46 Vorpal: skip to 1:47 23:42:54 elliott, not sure I will... 23:42:55 Vorpal: (Note: You really, really don't want to.) 23:42:55 but hm 23:43:08 elliott, indeed I won't 23:44:06 Vorpal: Writing a make replacement sounds SO lovely right now. 23:44:08 elliott, "8.12 Functions That Control Make" <-- don't all in some sense 23:44:21 elliott, keyword: NOT TEXTUAL 23:44:26 (as in, binary file format!) 23:44:29 Sexual make. (Wait, what?) 23:44:30 07:16:25 20:31:48 Do you have any high resolution templates for Magic: the Gathering cards? I should need templates with a better quality than the ones Wizards of the Coast uses. 23:44:35 07:16:31 Funny you should mention it, why yes I do! 23:44:37 07:16:38 XD 23:44:52 IT'S GOOD TO SEE YOU ENJOYING YOURSELVES 23:44:56 07:16:25 20:31:48 Do you have any high resolution templates for Magic: the Gathering cards? I should need templates with a better quality than the ones Wizards of the Coast uses. 23:44:56 07:16:31 Funny you should mention it, why yes I do! 23:44:56 07:16:38 XD 23:44:56 IT'S GOOD TO SEE YOU ENJOYING YOURSELVES 23:45:02 IT'S GOOD TO SEE YOU ENJOYING OURSELVES 23:45:12 elliott, wait what 23:45:18 elliott, wait what 23:45:19 elliott, you mean "good to see us" 23:45:24 It's good to see wait what! 23:45:26 redundant elliott is redundant 23:45:28 elliott, wait what 23:45:28 elliott, you mean "good to see us" 23:45:32 IT'S GOOD REDUNDANT 23:45:54 elliott is indeed redundant (not just redundant elliott!) 23:46:14 after all, we have Gregor 23:46:32 Gregor serves my purpose? 23:46:35 Vorpal: that X Y is X is an old meme 23:46:40 oerjan: he probably knows. 23:46:42 one would assume. 23:46:42 elliott, well no, but zzo fills the rest 23:46:43 perhaps. 23:46:50 Vorpal: I will cause your death. 23:46:52 elliott: _probably_, but he _is_ Vorpal 23:47:01 Vorpal: that X Y is X is an old meme <-- you don't say!??!?! 23:47:07 :P 23:47:35 elliott, I can only presume that is your intention 23:47:37 pikhq: Quick, help me design a Make replacement. 23:47:43 elliott, use macroman 23:47:45 (not) 23:47:58 Macro Man. 23:47:59 call it "fake" 23:47:59 elliott, should it be TC? 23:48:04 Vorpal: Why not :P 23:48:12 oerjan: Bake. Cake. Shake. Lake. Sake. Rake. 23:48:14 Quake. 23:48:17 Take. 23:48:21 elliott, well... there are arguments in both directions 23:48:26 elliott, but yeah, TC 23:48:38 Vorpal: Not making it TC would make it harder to support useful features. 23:48:40 elliott, I seem to remember that "rake" is taken 23:48:44 for some build system 23:48:46 Indeed. So's cake. 23:48:49 elliott, is it? huh 23:48:55 So's bake, it seems. 23:48:55 elliott, no that's a lie! 23:49:03 Sake is taken too. 23:49:13 elliott, construct? 23:49:23 hm too long 23:49:27 Vorpal: Cons, the tool that SCons is inspired by :P 23:49:33 ah... 23:49:42 elliott, is cons even worse than scons? 23:49:51 Well, it's Perl. YMMV. 23:49:53 ah 23:49:58 YMMV indeed 23:50:17 -!- poiuy_qwert has joined. 23:50:26 elliott, make is a Swedish word btw 23:50:29 Vorpal: At Least It's Not CMake(TM) 23:50:40 elliott, alinc? 23:50:48 What does make mean in svedish? 23:50:56 elliott, "husband" 23:51:08 elliott, also w 23:51:32 elliott, so you could call the program spouse? 23:51:57 Heh. 23:52:11 elliott, this is like taking cockney rhyme to a new level 23:52:14 or something 23:52:18 "emake" is my work-in-progress name, but. That's boring. 23:52:20 (Extended Make) 23:52:24 elliott, emake is used 23:52:30 shake has quite a nice qwerty-feel. 23:52:35 Oh, right, erlang. 23:52:38 yep 23:52:40 Thankfully nobody uses erlang :P 23:52:47 elliott, I think there is another emake too 23:53:33 elliott, you mean, last.fm, ubuntu (couchdb), Ericsson, ejabberd (forgot the company behind it) and so on? 23:53:46 Vorpal: Yep. 23:53:48 None of those exist. 23:53:51 elliott, ah 23:53:58 elliott, so ubuntu is a lie? 23:53:58 -!- cheater99 has joined. 23:54:04 Yes. 23:54:17 elliott, explains why the bug reports seem to stay open forever 23:54:19 Mark Shuttleworth has actually just managed to embed mind-control into an .iso; your screen is, in fact, blank for the duration of Ubuntu's use. 23:54:25 It's a sick, sick joke he is playing on us all. 23:54:30 elliott, lucky I'm on arch 23:54:31 Ugh, "%: Makefile" doesn't do the right thing. :P 23:54:32 brb 23:54:32 atm 23:54:49 elliott, so what *does* %: Makefile do? 23:57:29 elliott, mc data values make no sense 23:58:11 elliott, a number of blocks, wall signs, furances, pumpkins and so on, can face different directions 23:58:23 you would think east/west/south/north would be same for all 23:58:25 no 23:58:29 heh 23:59:09 Ground levers: 23:59:10 * 0x5: Lever points west when off. 23:59:10 * 0x6: Lever points south when off. (Note that unlike the other types of switch, this version will not power wires around the block it is sitting on.) 23:59:11 what? 23:59:26 -!- cheater99 has quit (Ping timeout: 240 seconds). 23:59:31 lol 2010-12-21: 00:00:07 elliott, also stairs use a different direction-encoding scheme 00:00:09 as well 00:00:22 as ladders YET another one 00:06:18 -!- Mathnerd314 has quit (Ping timeout: 260 seconds). 00:10:14 -!- pikhq has quit (Ping timeout: 240 seconds). 00:12:30 -!- pikhq has joined. 00:18:41 -!- Sgeo has joined. 00:22:06 ifneq "$(findstring $(SPACE),$(CURDIR))" "" 00:22:06 $(error Your work area is under a directory whose name contains a space. While it's possible to beat make into working with such directories, it's surprisingly hard and causes more problems than it solves. So, sorry, but don't do that) 00:22:06 endif 00:22:16 --salma-hayek, another (and much larger, multi-file) make "framework" 00:22:25 If I fail this course, my GPA will go from 3.86 to a number larger than 3.61 00:22:35 elliott, you will do it I presume? 00:22:41 Sgeo, GPA? 00:22:56 Vorpal: GPA = stupid numeric measure of success in USA 00:22:57 -!- cheater99 has joined. 00:23:02 elliott, ah 00:23:09 Vorpal: And I don't know if I'll do it; it really is a *huge* pain and it's also impossible to use lists like that, I think. 00:23:11 4.0 being straight As 00:23:23 Sgeo, so don't fail it? 00:23:36 Vorpal, do half a semester's worth of work in one night? 00:24:12 Sgeo: On, what, xor swapping in Perl? 00:24:21 elliott: make framework == fail, make library == potentially not fail 00:24:23 Sgeo, so why didn't you? 00:24:37 olsner: "framework" in so far as it defines targets like "all" and "clean" for you :P 00:24:39 Vorpal: "GPA" = "Grade Point Average". Essentially an averaging of grades, with A=4.0, B=3.0, C=2.0, D=1.0, F=0.0. 00:24:40 Vorpal, I missed a deadline, then got scared of checking whether it would be possible to submit 00:24:41 Sgeo, I mean, why didn't you work 00:24:44 And it kind of snowballed 00:24:50 ... 00:24:52 "Scared"? 00:24:54 What? 00:24:56 Sgeo: ? 00:24:57 at least using the framework/library distinction I read in a random blog post a while ago, dunno if there's any official definition of it 00:24:58 night → 00:25:04 It's a very bizzare "measure" of academic performance. 00:25:13 olsner: well with make it's more like... ball of mud vs. ball of mud :D 00:25:17 Especially as the given out grades are essentially arbitrary. 00:25:47 elliott, yes, scared 00:25:53 Sgeo: Howso exactly? 00:25:58 Of the thing closing so I couldn't submit work 00:26:09 "scared of checking whether it would be possible to submit" 00:26:15 Sgeo: You said scared of checking. 00:26:17 Not scared of it closing. 00:26:32 Well, I ended up not checking. Or looking at it. Or doing anything else 00:26:37 Sgeo: ...why? 00:27:10 -!- sftp has quit (Ping timeout: 272 seconds). 00:27:26 -!- cheater99 has quit (Ping timeout: 240 seconds). 00:27:48 Gregor: You... forced a new WebKit build into Safari? 00:27:50 WHY GOD WHY 00:27:59 elliott, early adapter? 00:28:09 Well, I ended up not checking. Or looking at it. Or doing anything else 00:28:09 Sgeo: ...why? 00:28:11 Question not answered yet. 00:28:35 elliott, because I was scared. 00:28:45 Sgeo: Of /what/ 00:28:47 grades are useless 00:29:03 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 00:29:04 Of it being too late to do anything 00:29:12 except for getting into the next level of education where you can achieve: more useless grades 00:29:13 elliott, you think that this was rational? 00:29:15 It wasn't 00:29:15 Sgeo: Yes, but you said scared of /checking/. 00:29:21 No, but irrational is one thing. 00:29:23 Completely stupid is another. 00:29:39 olsner: but then you get a ph.d.! 00:29:57 * pikhq declares it to be time for more Shin Megami Tensei: Persona 3 FES 00:30:08 elliott: orly? I didn't 00:30:24 olsner: then you didn't get enough useless grades 00:30:31 pikhq: do what i said :P 00:30:41 -!- poiuy_qwert has joined. 00:31:23 eugh, these x86 assembly instructions are so damned long :( 00:32:42 olsner: write your OS in MIPS and then just write a MIPS emulator in x86 asm 00:34:14 or ARM, I have arbitrarily decided that I like ARM assembly more than MIPS 00:34:21 MIPS is easier to decode though 00:35:03 olsner: yes but with mips you can, one day, perhaps run on jsmips 00:35:37 perhaps! 00:35:37 -!- pikhq has quit (Ping timeout: 276 seconds). 00:36:00 or maybe look into Alpha which has that PAL thingy 00:36:04 which sounds cool 00:36:07 olsner: alpha is super-complex :P 00:36:08 iirc 00:36:56 -!- pikhq has joined. 00:37:12 hmm, right, not so cool to emulate... but potentially for writing stuff in 00:37:25 olsner: write it in MIX, not MMIX, MIX 00:37:36 as in, write a microkernel directly in PAL or something 00:37:43 Man. This game has an in-game calendar. 00:37:48 The End of the World is marked on it. 00:38:18 "By default, the Make rules should compile and link with ‘-g’, so that executable programs have debugging symbols. Users who don't mind being helpless can strip the executables later if they wish." 00:38:20 not sure what you can do with it though, and wikipedia didn't have a complete description so I'll assume there's not a lot of online information about it 00:38:26 yeah, I use the debugging symbols in my binaries ALL THE TIME 00:38:43 olsner: define pal 00:39:07 20100131, in fact. 00:39:29 elliott: it's a microcodeish thing that allows you to define custom assembler instructions (really function calls into PAL code) 00:39:49 olsner: psht, why not overwrite the actual microcode of the x86 00:39:50 -!- cheater99 has joined. 00:39:55 to do bytebytejump! 00:40:00 pikhq: heh 00:40:17 elliott: that would be awesome, if only you could make your own 00:40:28 maybe I should get a job at intel or something 00:40:40 olsner: you can 00:40:57 olsner: linux lets you write to microcode with a file in /proc if it's enabled at kconfig time 00:41:04 olsner: for applying microcode updates from intel 00:41:07 or something 00:41:12 olsner: all you have to do is figure out the format and instructions! 00:41:25 ... and intel's private key for microcode updates? 00:42:32 olsner: well, let's put it this way 00:42:39 olsner: either you can figure it out by reading the linux kernel source, 00:42:46 olsner: or /intel's cpus actually check the key themselves/ 00:42:56 now, the latter would be an amazing feat of silicon 00:42:57 but i doubt it 00:43:31 as I understand it, what's in linux is just glue code for sending the contents of intel's microcode files into the cpu 00:43:59 olsner: so you're saying the cpu actually has silicon/microcode on it to verify a public key? 00:44:00 hmm 00:44:00 i.e. mostly useless for anyone wanting to construct their own microcode file 00:44:25 elliott: the key wouldn't actually have to be assymetric, would it? 00:44:39 oerjan: well no i was about to correct that but decided not to :D 00:44:49 *asymmetric 00:45:36 elliott: it could also have plain x86 code that does it - every x86 cpu comes with an x86 cpu after all 00:45:50 olsner: well, yes. 00:45:54 olsner: TIAS :P 00:46:02 (I accept no responsibility if etc.) 00:46:14 TIAS? 00:46:19 olsner: Try It And Snorkel 00:46:22 Or See. 00:46:24 But probably snorkel. 00:46:41 I do wonder what happens if you send random data as the microcode thing 00:46:50 olsner: TIAS! 00:47:01 (Tiaras Impede Actually Snorkelling) 00:47:02 * oerjan watches olsner brick his computer 00:47:50 -!- cheater99 has quit (Ping timeout: 240 seconds). 00:48:43 olsner: so how can I make everything depend on the Makefile I wonder 00:48:45 you must answer 00:49:13 this sounds promising: "The microcode update is volatile and needs to be uploaded on each system boot i.e. it doesn't reflash your cpu permanently, reboot and it reverts back to the old microcode." 00:50:40 olsner: it probably won't brick it then! now cat /dev/urandom to it 00:51:04 olsner: http://www.urbanmyth.org/microcode/ 00:51:08 olsner: this may help sorta 00:51:17 elliott: yep, found 00:51:44 what's the filename for microcode again? 00:51:48 i wanna see if i can cat it :P 00:52:13 it's a text file, with many sets of updates (for different models, presumably), each is a list of 32-bit hexadecimal values 00:52:31 you can: apt-get install intel-microcode :) 00:52:34 heh 00:53:10 dammit, make needs a 00:53:20 $(.WHAT_DEFAULT_GOAL_WILL_BE_AT_THE_END_OF_EVALUATION) 00:54:09 most of the data sets seem to have a header (a bunch have 12 words, the last entry in the file has 36 words of header) 00:57:23 olsner: please tell me you're actually gonna try writing to the file 01:00:35 -!- cheater99 has joined. 01:01:06 first problem: finding out which of all these updates belong to my CPU model 01:01:06 SOON THERE SHALL BE SATAN 01:01:24 AND I SHALL BE INVINCIBLE 01:03:31 nice, the code that teases apart the file-of-all-updates into the right per-cpu update is in the kernel 01:04:20 heh 01:04:20 -!- cheater99 has quit (Read error: Connection reset by peer). 01:07:57 elliott@dinky:~/code/useful-make$ ls 01:07:58 foo.c foo.d Makefile useful.make 01:07:58 elliott@dinky:~/code/useful-make$ rm foo.d 01:07:58 rm: cannot remove `foo.d': No such file or directory 01:07:59 spot the error 01:08:27 foo.d\ \ Makefile? 01:09:36 olsner: nope 01:10:43 olsner: GUESS AGAIN MY FRIEND 01:18:33 olsner: answer: \ foo.d 01:21:06 -!- cheater99 has joined. 01:23:13 -!- cheater99 has quit (Read error: Connection reset by peer). 01:25:20 hmm, looks like I won't have time to do this microcode thingy until after christmas 01:25:45 According to the academic calendar, the grades are due in a week 01:25:51 So maybe I can still pull this off 01:28:42 (it suddenly involved a reboot because I don't have kernel modules installed for my running kernel) 01:29:22 olsner: rebooting takes until after christmas? 01:29:22 and microcode loading (which might print some numbers when running) and msr reading (which could also tell me those numbers) both require loading some specific kernel modules 01:29:26 elliott: yep 01:29:30 :D 01:29:36 olsner: can't you just modprobe 01:29:37 no time for planned downtime! 01:29:39 the one advantage of dynamic modules! 01:29:44 they save uptime 01:29:59 hmm, using modprobe solves not having the modules installed? 01:30:24 olsner: well you can always recompile the kernel, install it, and use modprobe, no>? 01:30:25 *no? 01:30:33 or even just compile the modules themselves? 01:30:34 and modprobe them? 01:30:48 Makefile:2: *** commands commence before first target. Stop. 01:30:50 SHUT UP YOU PIECE OF SHIT 01:31:24 lol it was because i had indentation 01:33:55 I'm starting to think I put about as much effort into school as a high school dropout, I just happen to be lucky 01:34:35 hmm, I could just reinstall the kernel package I had when I last booted :) 01:35:22 dmesg after modprobe microcode says: sig=0x10677, pf=0x10, revision=0x703 <-- those are the droids I should be looking for 01:35:53 There's snow in Australia right now. 01:35:58 On the summer. Fucking. Solstice. 01:37:56 w.t.f.is.this. 01:38:04 define compile 01:38:04 @echo $(call quote,$(1)) 01:38:04 $(2) 01:38:04 endef 01:38:04 works 01:38:07 define compile 01:38:07 @echo $(call quote,$(1)) 01:38:08 @$(2) 01:38:10 endef 01:38:12 says missing separator 01:38:16 pikhq, therefore, Global Warming is a lie! 01:38:19 AND 01:38:22 define compile 01:38:22 @echo $(call quote,$(1)) 01:38:23 @$(2) 01:38:23 endef 01:38:25 works, but still prints $(2) 01:38:31 WHAT THE FUCK IS HAPPEN;FGHING 01:39:21 define c-dep-rule 01:39:21 $(1).d : $(1).c ; $(call compile,DEP $(1).c, 01:39:21 $(CC.INVOKE) -M -MG \ 01:39:21 -MT $(call quote,$(2)) \ 01:39:21 -MF $(call quote,$(1).d) \ 01:39:22 $(1).c) 01:39:23 endef 01:39:25 pikhq: behold the ugly 01:40:09 -!- cheater99 has joined. 01:40:57 oh, i needed MOAR BACKSLUSHES 01:41:12 nope wait avoided 01:42:46 elliott@dinky:~/code/useful-make$ make 01:42:47 DEP foo.c 01:42:47 CC foo.c 01:42:47 elliott@dinky:~/code/useful-make$ make clean 01:42:47 rm -f 'foo' 'foo.d' 01:42:49 pikhq: Oh god this is hideous. 01:43:13 -!- cheater99 has quit (Read error: Connection reset by peer). 01:44:14 hmm, this thing only contains 2012 bytes of microcode 01:45:04 when the snow crust carries a man at summer solstice, spring will be late 01:45:25 olsner: I think they only contain "patches". 01:46:33 (ancient northern norwegian proverb) 01:46:56 grr, forgot about how 4-byte ints take 4 bytes each - it's actually 8k :) 01:49:26 define c-program-body 01:49:26 $(call c-program-rule,$(1)) 01:49:26 $(call c-dep-rule,$(1),$(1)) 01:49:26 $(if $(cleaning),,-include $(1).d) 01:49:26 endef 01:51:05 pikhq: olsner: http://sprunge.us/ejFR useful.make 01:51:07 http://sprunge.us/YEbG Makefile 01:51:12 Warning: MOST HIDEOUS HACK IN THE HISTORY OF HACKS. 01:51:22 FEATURES CODE LIKE 01:51:22 quote = '$(subst ','\'',$(1))'#' 01:51:23 "The language for Apex is sort of a combination of TECO and Sam." 01:51:27 and 01:51:29 define c-dep-rule 01:51:29 to-clean += $(1).d 01:51:30 $(1).d : $(1).c ; $(call compile,DEP $(1).c, 01:51:30 $(cc.invoke) -M -MG \ 01:51:30 -MT $(call quote,$(2)) \ 01:51:30 http://scientopia.org/blogs/goodmath/2010/12/19/apex-my-editor-project/ 01:51:30 -MF $(call quote,$(1).d) \ 01:51:32 $(1).c) 01:51:34 endef 01:51:48 oerjan: <3 01:52:07 but, dammit, Apex is already a cpressey language! 01:53:32 nobody gonna call me out on that? :P 01:54:07 -!- FireFly has quit (Quit: swatted to death). 01:54:15 pikhq: not gonna cry at my useful.make? 01:58:06 elliott: google does not seem to support that claim much 01:58:28 oerjan: it was actually a language i managed to trick cpressey into semi-designing before he buggered off irc :) 01:58:36 heh 02:00:09 -!- cheater99 has joined. 02:04:09 -!- cheater99 has quit (Read error: Connection reset by peer). 02:09:01 elliott@dinky:~/code/useful-make$ make 02:09:01 DEPfoo.c 02:09:01 CCfoo.c 02:09:01 foo.c: In function ‘main’: 02:09:01 foo.c:2: error: expected ‘;’ before ‘}’ token 02:09:02 (command was: cc -o 'foo' 'foo.c') 02:09:03 make: *** [foo] Error 1 02:09:05 aww yeah 02:09:11 define do 02:09:12 @echo $(call quote,$(SPACE)$(SPACE)$(1)$(TAB)$(2)); $(strip $(3)) || ( \ 02:09:12 exit=$$$$?; \ 02:09:13 echo ' (command was: '$(call quote,$(strip $(3)))')'; \ 02:09:15 exit $$$$exit \ 02:09:18 ) 02:09:19 endef 02:09:21 I'm a four-dollar programmer. 02:09:23 pikhq: ^ 02:18:22 elliott: There is no God. 02:18:32 pikhq: No -- I am god, see. 02:18:40 pikhq: I got the number of $s right on my *second try*. 02:18:43 No, you are Loki. 02:18:49 I went straight from $? to $$$$?. 02:18:49 What language is this? 02:18:52 That is how in tune I am with make right now. 02:18:54 Sgeo: Make. 02:18:56 Sgeo: Make, of the GNU variety. 02:19:01 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 02:19:08 * Sgeo decides not to learn it 02:19:16 Sgeo: It's not a language, it's a build system. 02:19:22 A BUILD SYSTEM THAT I HAVE PERVERTED 02:19:25 GAHAHAHAHAHA 02:19:34 Oh, that's alright then 02:19:37 NO IT'S NOT 02:19:43 IT IS SO, /SO/ NOT ALL RIGHT 02:20:22 Oh it's "Oh. Well, that's all right then" 02:20:39 -!- cheater99 has joined. 02:20:49 -!- poiuy_qwert has joined. 02:22:29 http://www.american-buddha.com/hitchhikersolong8.htm how is this legal? Or is it not? 02:22:45 Clearly it is totally legal. 02:23:19 -!- cheater99 has quit (Read error: Connection reset by peer). 02:25:38 Sgeo: Copyright is enforced via civil law. Making it trivial to violate without fear of retribution if you're not a big enough target. 02:28:06 pikhq: http://sprunge.us/STBN useful.make, slightly less horrific version. 02:28:20 pikhq: Semi-recommended reading now, as it merely provides insight into using and abusing make, rather than also inflicting mortal pain :P 02:32:05 pikhq: No? 02:38:36 * pikhq attempts to gain 20 to 30 levels 02:39:01 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 02:39:18 pikhq: REEAD IT 02:39:23 I could beat the game, but I want to completely break it first. 02:40:05 pikhq, what game is this? 02:40:07 -!- cheater99 has joined. 02:40:15 Wait, didn't I ask previously? 02:40:16 Shin Megami Tensei: Persona 3 FES 02:40:41 AKA "really fucking hard". 02:40:41 * Sgeo wishes that all the effort that goes into mining Bitcoins was redirected to Folding@Home 02:40:51 -!- poiuy_qwert has joined. 02:41:53 -!- cheater99 has quit (Read error: Connection reset by peer). 02:46:09 ah, I have now found the microcode that matches my CPU (both rev 0x705 and 0x703) 02:46:32 (change random parts and go? :D) 02:46:37 The mooks have mediarahan. WHY. 02:46:42 (mediarahan is a full party heal) 02:47:53 incidentally, the size of the patch doubled in size between those two revs 02:48:31 * Sgeo wishes that all the effort that goes into mining Bitcoins was redirected to Folding@Home 02:48:34 i suppose you hate hashcash, too 02:48:50 elliott, how much effort is put into hashcash, anywhere? 02:48:59 Does Hashcash even see use? 02:49:02 Sgeo: um, very little, just like bitcoins 02:49:24 People apparently have purchased lots of expensive GPUs for Bitcoins 02:49:30 Sgeo: So? 02:50:00 fizzie: Would you be upset if I replaced the mcmap makefile with another one that's about 11 lines long, much clearer, and depends on an awful hideous monstrosity file I'm writing called useful.make? :-) 02:52:30 real0m1.961s 02:52:30 Aha. 02:52:42 mcmap's current Makefile is broken and doesn't generate the .ds. 02:56:23 -!- poiuy_qwert has quit (Read error: Operation timed out). 02:56:54 -!- poiuy_qwert has joined. 02:58:39 -!- cheater99 has joined. 03:01:25 -!- cheater99 has quit (Read error: Connection reset by peer). 03:04:25 pikhq: So... you ever generated filenames with spaces in them using make? 03:04:39 Not really. 03:05:17 pikhq: Darn. 03:05:25 pikhq: (I'm trying to fix useful.make's handling of that right now.) 03:14:47 pikhq: I should just give up, shouldn't I. 03:17:39 -!- cheater99 has joined. 03:20:40 -!- cheater99 has quit (Read error: Connection reset by peer). 03:22:15 WHY DOES IT DO THIS TO ME 03:22:40 elliott, because you don't go to sleep at night 03:22:51 it's just 3:22 am fuck off 03:23:01 * Sgeo was trying to be humerous 03:23:04 humouros 03:23:08 I can't spell today 03:24:07 Ok, now I'm cracking up 03:26:17 pikhq: So... do you happen to know a variant of $(foreach) that works for escaped spaces? 03:30:20 im afraid to make my videogame :( 03:31:43 augur, don't turn into me >.> [yes I know that makes no sense] 03:31:51 Not really. 03:34:02 Sgeo: wat 03:34:21 augur, crippling fear preventing you from getting something done 03:34:28 Sgeo: oh, well 03:34:35 im afraid to do it because i want to EXPERIENCE the game 03:34:50 and if i MAKE the game, ill be intimately familiar with it from the outset 03:34:58 there wont be anything wondrous to experience 03:35:37 hm which one of you talented young minds wants to write about something interesting on my BLOG 03:36:17 Quadrescence: i don't know. such a shame that links can only be clicked once before they expire forever 03:36:23 i hope you choose wisely 03:37:09 -!- cheater99 has joined. 03:37:52 i know : ( 03:38:37 Wait what? 03:39:48 anyway if someone is interested in posting something cool i'm totes down with it but ideally it should probably contain a little math or compsci 03:40:47 -!- cheater99 has quit (Read error: Connection reset by peer). 03:41:28 oh WRITE about something 03:41:32 i thought you said read 03:41:40 no write 03:41:48 just link to the #esoteric logs 03:41:52 instant blog post 03:41:57 no #esoteric logs are terrible 03:42:03 they are the worst ever 03:42:16 i don't think you'll find much support for that statement on #esoteric 03:42:34 especially considering how popular logreading is 03:45:30 so anyway are there any interested ppl 03:49:08 doubtful, i can't recall ever seeing anyone in here do any work voluntarily 03:49:58 it's not really work 03:50:18 it's an outlet to Talk About Something Interesting 03:50:35 through work 03:50:56 -!- augur has quit (Read error: Connection reset by peer). 03:51:13 -!- augur has joined. 03:52:08 elliott: well i don't want someone writing who'd feel like they're doing work 03:57:02 pikhq: So this horrible hack turns out to be really nice actually: http://sprunge.us/HBNM 03:57:09 -!- cheater99 has joined. 03:59:53 pikhq: Hey ho? 03:59:53 -!- cheater99 has quit (Read error: Connection reset by peer). 04:11:13 Hee ho! 04:11:48 elliott: That's pretty nice if you ignore the contents of useful.make. 04:12:51 pikhq: It's getting better, actually: http://sprunge.us/MbZN 04:13:05 Oh, ignore the commented-out defines... 04:13:12 You're making GNU make usable. 04:13:14 God. 04:13:26 -!- kanzure has joined. 04:13:36 what iz this place 04:15:03 この場所は皆が英語で話せる所です。けど、僕は英語で話したくないので、日本語で話してる。^_^ 04:15:30 kanzure: a place of death and diere 04:15:32 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 04:15:34 and DIEF DIEF DIEF 04:15:35 elliott: lovely 04:15:39 -!- cheater99 has joined. 04:15:42 kanzure: or a channel for esoteric programming languages 04:15:43 YOU DECIDE 04:16:05 i will, fine 04:16:15 kanzure: we're all awaiting your decision! 04:16:28 pikhq: Apparently, because you talk in English, you speak Japanese. 04:16:30 pikhq: A feat of logic. 04:16:49 elliott: Google Translate fails horribly. 04:17:07 elliott: It turns a negative into a positive and ignores the "want to" suffix. 04:17:10 pikhq: :P 04:17:37 "This is a place where everyone speaks English. But, since I don't want to speak English, I'm speaking Japanese." 04:18:55 -!- poiuy_qwert has joined. 04:18:55 -!- cheater99 has quit (Read error: Connection reset by peer). 04:21:29 fizzie: Can I replace the Makefile with http://sprunge.us/HBNM plus a 100-line-or-so-black-box include file? :p 04:26:05 elliott: diere? dief? 04:26:38 oerjan: Dief! Dief! Dief! 04:26:52 * oerjan feels severy whooshed 04:26:59 *severely 04:27:47 oerjan: dief is the name of a macro in mcmap's code; I just felt it suitably ... die-y. It sounded very Nazi in a wonderful way! (Best sentence. Best sentence.) 04:27:50 DIEF! 04:28:02 (Pronounced "dye-ff".) 04:28:39 apparently it means "thief" in dutch 04:28:47 but then, no one understand dutch anyhow 04:28:51 *understands 04:29:07 * oerjan hits his fingers for bad spelling 04:34:39 -!- cheater99 has joined. 04:39:10 -!- cheater99 has quit (Read error: Connection reset by peer). 04:41:44 oerjan: Especially not the Dutch. 04:41:56 It's a big game they play with foreigners.\ 04:41:58 that was implied. 04:42:08 Much like Swedish without the bork bork bork. 04:42:37 or the danish http://www.youtube.com/watch?v=s-mOy8VUEBk 04:44:07 LOG QUOTE OF THE DAY 04:44:08 16:10:03 * oerjan has _never_ masturbated to the curry-howard isomorphism. should i try it? 04:44:28 * oerjan has no recollection of that quote 04:44:39 it was after 04:44:45 16:09:24 HEY LOOK GUYS I CAN PRETEND I'M A MATHEMATICIAN BECAUSE I CAN WRITE PROOFS IN COQ fapfapfapfapfap etc 04:44:45 16:09:31 * Sgeo_ should probably learn what the Curry-Howard isomorphism 04:44:46 16:09:33 *is 04:44:51 (and some other stuff, but) 04:45:42 i am pretty sure i didn't actually try it, though 04:45:55 oerjan: you have done a disservice to science. 04:46:37 Dear Facebook: When I download my data, I want to download all of it. That includes the messages to/from a girl who blocked me. 04:46:44 win2 6 04:47:00 coppro: TYPE BETTER 04:47:06 and lose some windows 04:47:08 Sgeo: MEGAN 04:47:09 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 04:47:27 elliott, I thought you hated xkcdsucks 04:47:57 xkcd sucks, xkcdsucks is just stupid as of late 04:48:04 http://xkcdexplained.com/ is perfect though 04:48:29 elliott, it seems to have ended 04:48:46 Yes, that's part of what's so perfect about it. 04:49:18 -!- poiuy_qwert has joined. 04:51:43 I do kind of like the latest xkcd, though the "bitches" bit seems overdone 04:51:53 Randall is now making references to his own comic 04:52:33 Actually, the latest xkcd is awesome, especially if you subtract the flaws. It's a wonderful message 04:55:39 -!- cheater99 has joined. 04:56:02 oerjan: look what you have done: 04:56:04 ./08.11.01:01:10:32 * psygnisfive manually masturbates oerjan for feminine hysteria 04:56:04 ./08.11.01:01:17:32 * psygnisfive manually masturbates oerjan for fun 04:56:14 damn you! 04:56:41 i am _so_ sorry for destroying your innocence in this way 04:56:52 *MWAHAHAHA* 04:56:57 why did it have to be so 04:57:28 01:15:07 * oerjan is not particularly hysterical today, or feminine for that matter. 04:57:29 01:15:38 perhaps. 04:57:29 01:17:22 doubly good then! 04:57:29 01:17:32 * psygnisfive manually masturbates oerjan for fun 04:57:29 01:19:37 hey, a deer outside the window 04:57:29 01:26:12 cute :D 04:57:31 01:36:12 Yeah, that mundane magic page is one of the most brilliant things I've read in a long time. 04:57:34 01:36:44 Er, misread that as "hey, a deer masturbates outside the window" "cute". 04:57:38 01:37:08 thank you, fizzie. 04:58:07 -!- cheater99 has quit (Read error: Connection reset by peer). 04:59:18 not that there is anything wrong with that. 04:59:50 oerjan: as a deer, i concur. 04:59:53 -!- elliott has quit (Quit: TO CUTENESS!). 05:00:17 MY MIND'S EYE! MY POOR MIND'S EYE! 05:01:09 it's just the universe's way to attempt to shock you out of procrastination. 05:02:05 I may have more time than I thought 05:02:21 If I don't have as much time as I now think I might have, I might as well accept the 3.6 GPA 05:14:39 -!- cheater99 has joined. 05:16:48 Sgeo: Hardly anybody will care about your GPA. 05:18:17 -!- cheater99 has quit (Read error: Connection reset by peer). 05:28:37 Eclipse begin! 05:28:55 wait, now? 05:29:31 Total lunar eclipse tonight; it's penumbral right now. 05:29:47 Should be more obviously visible in about an hour when the moon hits the umbra. 05:29:52 wait now 05:29:55 And be total about an hour after that. 05:29:57 oh yeah 05:29:58 good 05:30:01 thought I had my timing off 05:30:13 i know that, i just thought it was several hours until it 05:30:35 The penumbra screws your concept of timing! 05:31:26 sadly the moon here looks like it's about to set :( 05:32:47 oerjan: http://upload.wikimedia.org/wikipedia/commons/6/6d/Visibility_Lunar_Eclipse_2010-12-21.png According to this, you will just barely be able to totality as the moon sets. 05:33:07 Erm, to see totality 05:35:09 -!- cheater99 has joined. 05:36:03 I think I'm going to eat 05:36:19 -!- cheater99 has quit (Read error: Connection reset by peer). 05:36:21 I won't miss anything if this is the last time I look at the moon for the next hour, will I? 05:36:29 nope 05:36:34 the real fun is when you get totality 05:36:42 or at least when the umbra hits 05:36:46 Sgeo: Well, the moon will be slowly darkening for the next hour. 05:36:59 Not much to see until it gets close to the umbra, though. 05:53:09 -!- cheater99 has joined. 05:55:38 -!- cheater99 has quit (Read error: Connection reset by peer). 06:12:09 -!- cheater99 has joined. 06:15:08 -!- cheater99 has quit (Read error: Connection reset by peer). 06:24:01 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep). 06:31:39 -!- cheater99 has joined. 06:34:01 eclipse! 06:34:48 Hooray! 06:35:13 ever so slightly 06:35:22 * oerjan just took a trip outside to check 06:36:59 -!- cheater99 has quit (Read error: Connection reset by peer). 06:36:59 It's actually pretty nice here. 06:37:01 Straight up. 06:38:06 um i am assuming it cannot look much different in america :D 06:38:21 oerjan: Well, it's just a nice night out, and the moon is straight up. 06:38:49 (no, but seriously, don't you know? The American moon is MUCH better than yours!) 06:39:01 (why else do you think we had to go there?) 06:39:02 AND made of cheese, too 06:39:17 ours is just made of cardboard 06:41:00 Yeah. We go and mine it, because it's the only way for America to get good cheese. 06:41:20 sounds legit to me 06:46:46 pikhq: where are you?? 06:48:39 * Sgeo is still eating :/ 06:53:09 -!- cheater99 has joined. 06:54:05 augur: Colorado. 06:54:12 o 06:57:12 -!- cheater99 has quit (Read error: Connection reset by peer). 07:14:09 -!- cheater99 has joined. 07:17:59 -!- cheater99 has quit (Read error: Connection reset by peer). 07:21:20 -!- oerjan has quit (Quit: leaving). 07:34:39 -!- cheater99 has joined. 07:37:58 -!- cheater99 has quit (Read error: Connection reset by peer). 07:42:42 Totality. :D 07:43:05 pikhq is Facebook-stalking me =P 07:43:26 And Mr. Totality is an enemy combatant obviously 07:43:30 I FACEBOOK-STALK EVERYONE. 07:43:40 But especially you. 07:54:21 pikhq: it's still lighter on one side...will it not get totally red? 07:54:39 -!- cheater99 has joined. 07:55:16 quintopia: It will towards the time of greatest eclipse, 08:16:56 UTC. 07:55:47 ah 07:56:57 -!- SgeoN1 has joined. 07:57:10 -!- cheater99 has quit (Read error: Connection reset by peer). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:08:05 -!- FireFly has joined. 08:11:48 -!- boily has joined. 08:14:09 -!- cheater99 has joined. 08:16:22 -!- cheater99 has quit (Read error: Connection reset by peer). 08:24:24 -!- boily has quit (Quit: leaving). 08:29:42 -!- atrapado has joined. 08:33:09 -!- cheater99 has joined. 08:33:50 -!- SgeoN1 has quit (Quit: Bye). 08:37:20 -!- cheater99 has quit (Read error: Connection reset by peer). 08:54:09 -!- cheater99 has joined. 08:57:27 -!- cheater99 has quit (Read error: Connection reset by peer). 08:58:18 -!- atrapado has quit (Read error: Connection reset by peer). 08:59:37 -!- Sgeo has quit (Ping timeout: 255 seconds). 09:14:09 -!- cheater99 has joined. 09:19:55 -!- cheater99 has quit (Read error: Connection reset by peer). 09:35:46 -!- Slereah has quit (Ping timeout: 260 seconds). 09:36:39 -!- cheater99 has joined. 09:40:45 -!- cheater99 has quit (Read error: Connection reset by peer). 09:53:15 -!- frodatio has joined. 09:53:31 -!- frodatio has left (?). 09:53:34 2.98 /8s in APNIC pool (the allocation threshold is about 2 /8s)... 09:56:39 -!- cheater99 has joined. 09:59:41 -!- cheater99 has quit (Read error: Connection reset by peer). 10:16:09 -!- cheater99 has joined. 10:19:49 -!- cheater99 has quit (Read error: Connection reset by peer). 10:20:46 -!- Slereah has joined. 10:25:16 -!- Sasha2 has joined. 10:28:25 -!- javawizard has joined. 10:33:10 -!- Sasha has quit (*.net *.split). 10:33:13 -!- jcp has quit (*.net *.split). 10:33:13 -!- dbc has quit (*.net *.split). 10:33:22 -!- javawizard has changed nick to jcp. 10:34:04 -!- dbc has joined. 10:34:56 -!- ais523 has joined. 10:36:39 -!- cheater99 has joined. 10:40:37 -!- cheater99 has quit (Read error: Connection reset by peer). 10:40:56 -!- ais523 has quit (Remote host closed the connection). 10:47:59 -!- ais523 has joined. 10:57:09 -!- cheater99 has joined. 10:59:58 -!- cheater99 has quit (Read error: Connection reset by peer). 11:04:17 -!- cal153 has quit (Ping timeout: 265 seconds). 11:12:13 -!- oerjan has joined. 11:13:40 Totality. :D 11:13:51 it got too cloudy here :( 11:16:39 -!- cheater99 has joined. 11:20:15 -!- cheater99 has quit (Read error: Connection reset by peer). 11:35:15 -!- ais523 has quit (Remote host closed the connection). 11:36:39 -!- cheater99 has joined. 11:38:29 -!- atrapado has joined. 11:40:43 -!- cheater99 has quit (Read error: Connection reset by peer). 11:40:45 -!- atrapado has changed nick to roper. 11:40:58 -!- roper has changed nick to atrapado. 11:57:01 -!- cheater99 has joined. 11:59:57 -!- cheater99 has quit (Read error: Connection reset by peer). 12:16:01 -!- cheater99 has joined. 12:18:34 -!- ais523 has joined. 12:20:25 -!- cheater99 has quit (Read error: Connection reset by peer). 12:28:09 -!- ais523 has quit (Read error: Connection reset by peer). 12:29:27 -!- ais523 has joined. 12:36:33 -!- cheater99 has joined. 12:37:17 hmm, a page linked from reddit turned out to be incapable of scrolling without javascript turned on 12:37:24 of all the things that people use javascript for, that's pretty weird 12:37:33 (I opened it in w3m, in the end, so it wouldn't use the CSS either) 12:39:02 -!- cheater99 has quit (Read error: Connection reset by peer). 12:49:28 -!- pikhq has quit (Ping timeout: 276 seconds). 12:50:59 Javascript or is it javashit? :-) 12:51:02 -!- pikhq has joined. 12:52:32 Ilari: there's nothing fundamentally wrong with JavaScript (in fact, it's a very nice language, although the DOM is irritating), but people try to use it in all sorts of contexts where they probably shouldn't 12:55:01 -!- cheater99 has joined. 12:58:16 -!- cheater99 has quit (Read error: Connection reset by peer). 13:14:31 -!- cheater99 has joined. 13:17:56 -!- cheater99 has quit (Read error: Connection reset by peer). 13:34:01 -!- cheater99 has joined. 13:36:23 -!- cheater99 has quit (Read error: Connection reset by peer). 13:46:56 -!- Sasha has joined. 13:49:39 -!- Sasha2 has quit (Ping timeout: 250 seconds). 13:52:29 -!- cheater99 has joined. 13:58:07 -!- cheater99 has quit (Read error: Connection reset by peer). 14:15:32 -!- cheater99 has joined. 14:16:25 -!- Slereah has quit (Ping timeout: 255 seconds). 14:19:19 -!- cheater99 has quit (Read error: Connection reset by peer). 14:36:28 -!- cheater99 has joined. 14:41:07 -!- cheater99 has quit (Read error: Connection reset by peer). 14:58:00 -!- cheater99 has joined. 15:01:22 -!- cheater99 has quit (Read error: Connection reset by peer). 15:02:53 -!- ais523 has quit (Remote host closed the connection). 15:15:17 -!- Slereah has joined. 15:18:30 -!- cheater99 has joined. 15:19:42 -!- hagb4rd has joined. 15:19:56 -!- wareya_ has joined. 15:22:08 -!- cheater99 has quit (Read error: Connection reset by peer). 15:22:52 -!- wareya has quit (Ping timeout: 240 seconds). 15:33:26 -!- sftp has joined. 15:40:06 -!- cheater99 has joined. 15:44:56 -!- cheater99 has quit (Read error: Connection reset by peer). 15:56:16 -!- elliott has joined. 15:56:27 http://www.foxnews.com/opinion/2010/12/21/woke-kids-lunar-eclipse/ ;; apparently this is what passes for an article these days 15:57:07 erm then again clicking a random link on that page only seems to show a tagline for me too, so maybe Fox don't want me to see their articles for fear of mocking them :D 16:02:06 -!- cheater99 has joined. 16:04:22 -!- Phantom_Hoover has joined. 16:05:35 -!- cheater99 has quit (Read error: Connection reset by peer). 16:12:50 -!- j-invariant has joined. 16:13:25 "Times like these will never happen again.". Err... TLEs happen about once per 17 months on average (oh, and there's apparently two next year) and are visible from about half of the planet at once... 16:14:07 misinformation in the news 16:14:19 that's something that will happen again! 16:16:21 Ilari: yeah I think there's more article but the server isn't showing it 16:16:33 nope wait 16:16:39 http://www.foxnews.com/world/2010/12/21/report-evacuated-suspicious-odor/ was just a tagline before but it isn't now 16:16:47 so heh, the entire article is "Times like these will never happen again." 16:17:05 maybe he means that the democrats and gays are going to band together and blow up the moon 16:17:16 elliott: I got a decent chunk of cats done in coq now 16:18:00 the proofs are awful though, don't know how to sort that 16:18:04 j-invariant: This many? http://www.stitching-dreams.co.uk/images/Bundle%20of%20KittensMed.jpg 16:18:12 More seriously though, cool. 16:18:23 For some reason I can't seem to access anything under nasa.gov (it won't resolve). 16:18:23 I forget why I abandoned my impl. based on that one paper... 16:18:25 hehe 16:18:40 I do know that whenever I start doing algebraic structures, it fails round about at ... what point was it 16:18:48 Im going on the catsters youtube videos 16:18:51 Doing the resolutions manually works, no idea why the recursive nameserver can't resolve it. 16:19:11 I think it was the first one that was just two other structures combined 16:19:16 I think all my operations became ambiguous or something 16:19:30 elliott: well that's useful actually - if you know what it is that made you give up I could try it out (too see if what I have falls apart or not) 16:19:35 but it worked *really* nicely before that with coercions and all ... can't remember if I ever did it with categories though 16:19:50 j-invariant: well, that was when i gave up doing algebraic structures, not categories :) 16:20:01 j-invariant: An implementation of the structures with categories would be interesting, though. 16:20:25 Preferably with coercions from stronger structures to weaker ones, and then defining "op" on e.g. magmas 16:20:31 so that all calls to op downcast the structure or whatever 16:20:34 -!- co345at_office_i has joined. 16:20:34 dude u want this http://ihaxor.hpage.com/get_file.php?id=911760&vnr=411870 16:20:34 -!- co345at_office_i has left (?). 16:20:35 I think I would need an example of algebra done inside category theory to get me started though 16:20:35 well 16:20:36 you do like 16:20:44 For some reason it started to wrk... 16:21:05 Definition {A : Magma} (x : A) (y : A) := op A x y 16:21:08 I think 16:21:09 erm 16:21:12 Definition opp {A : Magma} (x : A) (y : A) := op A x y 16:21:18 oh, to hell with it, I've forgotten; I'll try again! 16:21:26 j-invariant: yeah i'm not sure how to do it with categories really 16:21:42 j-invariant: I have a feeling that Coq-with-categories would end up being a lot of fluff to get it cooperating with the categories 16:21:45 And yes, NASA does confirm the two TLEs for next year... :-> 16:22:42 hacking a complex makefile while writing Coq ... this can only go well 16:22:44 elliott: proofs are really verbose - I think I have to have my categories act as a model of an abstract theory or something, so all the mess doesn't leak in to proofs 16:23:02 foo 16:23:06 -!- cheater99 has joined. 16:23:19 j-invariant: you could do that thing where you declare a model with axioms and then you "prove" them according to a concrete structure 16:23:23 though i've forgotten how to do that in coq 16:23:26 something with sections or something 16:23:26 or modules 16:23:38 I'll look into that 16:23:42 -!- j-invariant has quit (Quit: leaving). 16:24:24 elliott, it's Section ., then some Variable declarations, then End. IIRC. 16:24:34 Phantom_Hoover: right, yes 16:24:44 Where each Variable is an axiom. 16:24:48 then you can code everything to the "axioms" which you have actually proved according to the gnarly concrete structure 16:26:12 -!- cheater99 has quit (Read error: Connection reset by peer). 16:28:03 Ilari: um the unusual thing is supposedly that the eclipse is on the same day as the solstice (in american time zones) 16:29:07 * elliott takes a look at dude u want this http://ihaxor.hpage.com/get_file.php?id=911760&vnr=411870 16:29:10 i read something about this only happening every 500 years. 16:29:22 well it's a folder called psyBNC2.3.1 but that actually contains what looks like mIRC :P 16:30:11 oerjan, I fail to see the actual *significance* of that. 16:30:12 !haskell 17/12 * 365 16:30:39 oh j-invariant left i was just about to say something i remembered 16:30:45 Phantom_Hoover: it's news! 16:30:46 I mean, extremely improbable astronomical things happen pretty regularly, since there are a lot of them. 16:30:58 !echo hi 16:30:59 hi 16:31:07 !haskell 17/12 * 365 16:31:08 517.0833333333334 16:31:53 Gregor: i think it would be somehow nice if the timeout stuff didn't include the time EgoBot needs to drag itself out of bed, is my suspicion 16:32:51 :D 16:33:03 oerjan: you see, botte does everything really quickly ... 16:34:05 ecord Magma := mkMagma { 16:34:05 M : Set; 16:34:05 o : M -> M -> M 16:34:05 }. 16:34:05 Coercion Magma_to_Set (m : Magma) : Set := M m. 16:34:10 that's the basic idea 16:34:12 except *Record 16:34:14 no it doesn't, because it's not _here_ 16:34:29 except that since Coq is stupid we need 16:34:36 Record Magma := mkMagma { 16:34:36 magmaM : Set; 16:34:36 magmaO : M -> M -> M 16:34:36 }. 16:34:43 because otherwise we get clashes later, because coq is a douchebag 16:34:47 so moving on, anonymous log-reader, 16:35:30 Record Magma := mkMagma { 16:35:30 magmaM : Set; 16:35:30 magmaO : magmaM -> magmaM -> magmaM 16:35:30 }. 16:35:30 Coercion Magma_to_Set (m : Magma) : Set := magmaM m. 16:35:31 Definition o {M : Magma} (a : M) (b : M) := 16:35:33 magmaO M a b. 16:35:35 see that??? BEYOOTIFUL 16:35:47 this is the point where i get bored for a while 16:38:12 no it doesn't, because it's not _here_ <-- haven't you realised that elliott does not know the difference between present and future tense by now? 16:38:32 ah yes, timeless elliott 16:38:32 that's disturbingly close to the truth :) 16:38:57 IT'S NOT LEFT-RECURSIVE DAMMIT I TOLD YOU IT HAS NO ASSOCIATIVITY 16:39:02 elliott, I would say it *is* the truth based on the data we have 16:39:13 fuck off, I'm battling Coq 16:39:25 also very elliottish 16:43:28 YES IT FUCKING WORKS 16:43:36 -!- cheater99 has joined. 16:44:17 what, why are you complaining 16:44:18 dammit coq 16:44:43 "Error: Notation _ * _ is already defined at level 40 with arguments 16:44:43 at level 40, at next level while it is now required to be at level 40 16:44:43 with arguments at next level, at next level." 16:44:59 i am pretty sure those two are equivalent :D 16:45:04 oh wait no 16:45:09 the first one is at level 40 i think 16:49:26 -!- cheater99 has quit (Read error: Connection reset by peer). 16:52:58 pikhq: "The convention of using the same suffix ‘.l’ for all Lex files regardless of whether they produce C code or Ratfor code makes it impossible for make to determine automatically which of the two languages you are using in any particular case." 16:54:53 "Ratfor was invented by the people who invented C. After inventing C, they realized that they had made a mistake (too many semicolons) and they fixed it in Ratfor, although it was too late for C." --Stanford 16:55:03 (Okay, so not STANFORD THEMSELVES.) 16:56:00 elliott, scapegoat question 16:56:08 I'll try. 16:56:37 elliott, have I understood it correctly in that it allows you to, for example, filter commits by some commiters (such as esr) 16:56:50 Not "really". 16:56:53 Sort of. Kinda. 16:57:35 I mean, yes, you could use a script to whitelist every non-esr commit, and in a hypothetical infinitely-flexible version, you could define a branch to be "not-authored-by-esr", but in the version I'm planning to implement, no, there is no native support for that. 16:58:03 I think branches will end up as, in my version, explicitly-whitelisted or automatic, to control whether patches trickle in without being explicitly pulled in. 16:58:44 elliott, ah. Because based on that rather simplistic explanation there are some obvious issues. Trivial one being, committer a writes a function foo, but you filter him. In another file, committer b (which you white list) changes something to call this function foo. 16:59:02 (and the obvious issue arise) 16:59:12 for x in ; do \ 16:59:12 @echo ' RM$x'; rm -f $x || ( exit=$$?; echo ' (command was: rm -f $x)'; exit $$exit ); \ 16:59:12 done 16:59:14 Well that's not right ... 16:59:30 Vorpal: Obviously patches to patches you don't have don't get applied. 16:59:43 elliott, so the compile will then break as one would expect 16:59:50 No shit, sherlock. 16:59:52 But no, what you describe is not a feature of scapegoat at all, it is merely something that can be done with an extended, general implementation. 17:00:06 Therefore don't tell me how useless it is, I /know/ how useless it is; good thing it's not a feature, then. 17:00:28 It's simply that if you let branches be predicates for whether a patch is accepted, then 17:00:28 elliott, right, I saw you discuss this some days ago with ais. 17:00:35 (\p => p.author != (hash of esr)) 17:00:41 is a valid branch, albeit one with rather few files in it. 17:00:48 (given C-INTERCAL, which he wrote most of) 17:00:49 hah 17:01:54 The idea was that @tip would point to a complex formula specifying "the most recent (or was it oldest?) maximally-merged branch". 17:02:12 But at that point you've got a full programming language and at least for now I've vetoed it, and will special-case @tip. 17:02:43 elliott, ah, but TC branch description sounds fun! 17:02:52 It would definitely not be TC. 17:05:23 http://www.mcsweeneys.net/links/dreamjobs/dreamjobs5.html Ouch. 17:06:38 -!- cheater99 has joined. 17:09:06 WHAT THE FUCK MAKE 17:09:11 HOW CAN A VARIABLE /LOSE/ VALUES 17:09:30 -!- cheater99 has quit (Read error: Connection reset by peer). 17:09:35 to_clean += $(1) $(2:.c=.o) $(2:.c=.d) 17:09:41 fff 17:09:42 OH 17:09:45 it's to-clean 17:09:47 not to_clean 17:10:38 underscoring the difference 17:15:07 pikhq: http://sprunge.us/gZOC 17:15:21 pikhq: useful.make -- now with implicit rules and more readability! 17:16:38 fizzie: Heh, I was just about to whine at you for making a curses dependency, but I see you've made it readline. 17:27:08 -!- cheater99 has joined. 17:28:57 -!- cal153 has joined. 17:30:28 -!- cheater99 has quit (Read error: Connection reset by peer). 17:31:14 -!- atrapado has quit (Read error: Connection reset by peer). 17:33:04 -!- MigoMipo has joined. 17:33:30 -!- oerjan has quit (Quit: Good night). 17:37:58 -!- olsner has quit (Quit: Leaving). 17:41:03 Vorpal: quick! what's the variable name of the tree in which we're out-of-tree-building to? 17:41:11 BUILDDIR is ugly because of the repeated D 17:44:44 elliott, ANITVPATH? 17:44:54 Vorpal: wut. 17:44:54 (since iirc VPATH works kind of the other way) 17:45:12 (well, not really) 17:45:24 *ANTI, then 17:45:32 oh 17:45:33 right 17:45:38 didn't notice the typo 17:45:40 yeah I'm not sure whether to get source files from another directory, or to put build files in another directory 17:45:52 "GNU Standard" is to put build files in . and look for sources elsewhere, but that's a bit inconvenient 17:46:01 as opposed to "make" by default putting stuff into build/ 17:46:13 elliott, it is kind of useful when you have a configure script and you have different builds against the same tree 17:46:25 Vorpal: "make BUILDDIR=x" "make BUILDDIR=y" 17:46:26 etc 17:46:48 elliott, make DEBUG=1 BUILDDIR=debug vs. cd debug && make 17:46:54 Vorpal: also, the Makefile would have to figure out what directory it's in to figure out where all the files are, which just screams "MORE GNU MAKE FUNCTION FUN" to me :) 17:46:56 elliott, make DEBUG=1 BUILDDIR=debug vs. cd debug && make 17:46:57 you mean 17:47:06 make DEBUG=1 BUILDDIR=debug vs. cd debug && ../configure --enable-debug && make 17:47:08 elliott, it is a bit messier without a configure script yes 17:47:11 first one sounds nicer to me 17:47:16 elliott, the thing with configure is that you do it once 17:47:20 then just make in the future 17:47:25 as you update the version control 17:47:36 Vorpal: 99.999999999999999999999% of times that's not what happens. 17:47:46 elliott, it is when you are a developer 17:47:52 because the makefile changes. or because you remove the source tree. or any number of reasons. (yes, i know /you/ don't0 17:47:53 *don't) 17:47:55 as a developer -- 17:48:02 it's easiest just to keep the default build/ directory. 17:48:04 -!- cheater99 has joined. 17:48:07 hell, you could even make DESTDIR=debug by default if DEBUG is on 17:48:09 elliott, as an end user, sure it isn't 17:48:12 and then 17:48:13 $ make 17:48:13 vs. 17:48:18 erm 17:48:18 and then 17:48:20 $ make debug=1 17:48:21 vs. 17:48:24 elliott, quite 17:48:24 $ cd debug && make 17:48:32 the former is actually more convenient because you don't have to cd back afterwards 17:48:37 (if you want to) 17:48:45 elliott, often you want do run the binary though 17:48:48 if you are a developer 17:48:50 Vorpal: build/mcmap :P 17:49:24 elliott, I tend to not trust that for anything large. Imagine: wesnoth: can not find data files 17:49:24 Vorpal: and for users, "$ cd mcmap && make" is much nicer than "$ cd mcmap && mkdir build && make -f ../Makefile" 17:49:32 which is how it'd look in this case 17:49:40 well 17:49:41 Vorpal: i.e. programs that need to be installed to be tested 17:49:43 (i.e. bad programs) 17:49:52 -!- hagb4rd has quit (Ping timeout: 245 seconds). 17:49:56 elliott, well, they tend to often run from the build dir too 17:50:05 because the devs get fed up with installing when testing 17:50:07 Vorpal: add a "make test" target 17:50:11 .PHONY: test 17:50:18 test: mcmap ; cd build; ./mcmap 17:50:21 elliott, that is probably for the regression test suite 17:50:23 *: build/mcmap 17:50:26 Vorpal: try-it-out ffs 17:50:32 mcmap doesn't even have an install target :P (although if I can convince fizzie to let me replace the Makefile with one using useful.make, it'll automagically get one) 17:50:32 elliott, also mcmap need options 17:50:40 Vorpal: oh jesus shut up and write a shell script 17:50:40 -!- cheater99 has quit (Read error: Connection reset by peer). 17:50:51 elliott, I didn't say your solution was bad 17:51:01 elliott, just that the alternative isn't as bad as you make it out to be 17:51:07 Sure. But it is without a configure script. 17:51:14 gnu make is so broken :( You can't make targets depend on variable values. 17:51:15 as in 17:51:19 %.o: %.c $(CFLAGS) 17:51:19 as in 17:51:23 elliott, sometimes a configure script is the sanest option 17:51:24 if CFLAGS change, the objects need rebuilding 17:51:28 Vorpal: not for mcmap. 17:51:34 elliott, well duh 17:51:39 if CFLAGS change, the objects need rebuilding 17:51:39 elliott, I was thinking larger thing. 17:51:45 Vorpal: yeah, no, configure is never the right option. 17:51:54 elliott, Gregor disagrees 17:52:00 so does pikhq 17:52:13 actually, pikhq hates autotools almost as much as i do. 17:52:24 Vorpal: but nice argument from authority... 17:52:26 elliott, yes but he think it is the least of bad alternatives iirc 17:52:33 Vorpal: no, he likes makefiles. 17:52:38 Gregor: If you ever want to update me on your current opinions... just let me know. 17:52:47 Gregor: After all, you are like unto a god, and everything you say is immediately entered into my mind. 17:53:13 elliott, well, I pretty much agree with Gregor's arguments for why configure is sometimes good. That is why I refer to him instead of restating them 17:53:19 since I know he told you before 17:53:41 not appeal to authority thus 17:53:46 Vorpal: Actually, he said configure is better than SCons, CMake, and plain-untailored-Makefiles when stuff is semi-complex and needs to be portable. 17:53:48 This is because: 17:53:53 1. SCons sucks ass. 17:53:58 sure, when you *can* avoid configure that is a good idea 17:54:03 2. CMake sucks ass. 17:54:06 I do not love configure either 17:54:13 3. Retards can't write Makefiles. 17:54:20 but in some cases it is the least bad of options 17:54:28 Only if you ignore the right option. 17:54:32 elliott, how do you crosscompile with useful.make? 17:54:45 elliott, specifically a cross toolchain 17:54:46 Vorpal: make cc=your-crosscompiling-gcc-name 17:54:48 (not canadian) 17:55:10 Vorpal: But, uhh, if you're going to form opinions based on what is essentially a 115-line proof of concept ... 17:55:18 elliott, of course not 17:55:23 It does everything mcmap's current Makefile does, plus some. 17:55:30 elliott, mhm 17:55:39 Now why the fuck is it not regenerating the .ds at this point ... 17:55:41 *not regenerating 17:56:01 bbl 17:57:02 elliott: Right, the curses bits are there just because I used the curses attempt as a basis for the readline thing. Anyway, basically what it does is to use rl_replace_line("", 0); rl_redisplay(); to make the "readline area" contain just "> ", then wipe that with \r\e[K, print out the output, then rl_insert_text() the old text back and rl_forced_update_display() it on screen. (But since messing around with the readline buffer isn't exactly safe while some code 17:57:02 is inside readline(), I had to use that alternative, callback-driven interface.) 17:57:57 fizzie: Rite. 17:58:19 I would have to see the useful.make before I can make any sensible decisions; the current Makefile isn't exactly complicated either. (Especially if you get rid of the build-it-with-"-combine -fwhole-program" parts, which would I think happen also with the include useful.make solution.) 17:58:39 fizzie: The current Makefile has such features as "doesn't actually build the .d files properly". 17:58:50 (This is why useful.make seemed to be almost half a second slower at building the whole program.) 17:59:02 Or at least it didn't build them properly last time I checked. 18:00:15 (useful.make isn't exactly the *prettiest* thing -- GNU Make metaprogramming, yay -- but it doesn't do anything "awful", it's just a bit ugley. It's something I'm planning to maintain separately and beyond mcmap, though, so it's not like I've made the Makefile simpler by just shoving it into another file. It's more generic than that.) 18:00:21 Also this will give an install target for free. 18:00:30 And do out-of-tree builds. 18:01:03 Well, "whatever". As long as the build system doesn't get in the way. 18:01:14 MWAHAHAHA WORLD DOMINATION SHALL BE MINE 18:02:02 I did switch from pkg-config zlib to just plain '-lz', since that is such a quasi-standard thing, and my work-workstation didn't have zlib installed inside pkg-config either. 18:03:26 Oh, I dropped the debug target for "make debug=1", but to be fair, "make debug" was pretty slow because of the recursion. 18:03:43 Oh, and I did some protocol-updates based solely on that one wiki; I was a bit suspicious of one of their changes. Will have to test those new things tonight. 18:04:04 -!- j-invariant has joined. 18:05:00 I definitely don't care about the build system speed, given the size of the project. (So far things like "make clean; make debug" have been <2 seconds.) 18:05:03 elliott, that mc bug with peaceful in single player you mentioned 18:05:08 did you confirm actual monsters? 18:05:17 Vorpal: No, I'm too much of a pussy to. 18:05:31 j-invariant: I remembered how I did the structures. 18:05:37 elliott, I haven't seen anything about it elsewhere 18:06:12 (Food now.) 18:07:18 elliott: want to have a look at my draft? 18:08:18 elliott, sure it was on peaceful? 18:08:31 I should try and define a group 18:08:34 -!- cheater99 has joined. 18:08:37 elliott, maybe you changed it by mistake 18:08:41 or a bug changed it 18:09:10 j-invariant: sure 18:09:13 Vorpal: no, it was peaceful. 18:09:34 j-invariant: Record Magma := mkMagma { 18:09:34 magmaM : Set; 18:09:34 magmaO : magmaM -> magmaM -> magmaM 18:09:34 }. 18:09:34 Coercion Magma_to_Set (m : Magma) : Set := magmaM m. 18:09:35 Definition op {M : Magma} (a : M) (b : M) := 18:09:36 magmaO M a b. 18:09:38 Infix "*" := op (at level 40, no associativity). 18:09:40 j-invariant: that's the basic idea 18:09:42 then you do things like 18:09:44 Record Semigroup := mkSemigroup { 18:09:46 semigroupMagma : Magma; 18:09:48 semigroupIsAssociative : 18:09:50 forall a b c : semigroupMagma, 18:09:52 a * (b * c) = (a * b) * c 18:09:54 }. 18:09:56 (that code doesn't work because * is already defined in coq, but whatever) 18:10:44 j-invariant: but iirc this falls down later 18:10:48 j-invariant: but yeah i'd like to see your draft 18:10:49 I have been putting up with things like magmaO M a (magmaO M b c) everywhere 18:10:54 heh 18:11:13 j-invariant: the nice thing about the coercions is, you can have "Foo" be a InsertStructureHere with all the proofs bundled in and the like, 18:11:16 j-invariant: but also say (x : Foo) 18:11:21 because of the coercion to Set 18:11:56 http://coq.pastebin.com/1jd3Ey51 18:12:50 -!- cheater99 has quit (Read error: Connection reset by peer). 18:13:26 looking 18:14:09 j-invariant: you've certainly got much further than i ever did 18:14:16 worries me slightly that the category definitions are a bit ugly though 18:14:27 but wow 18:14:39 I'm surprised myself, I didn't expect to be able to defined CAT 18:15:05 remind me to photoshop a picture of a cat to be made out of smaller versions of itself sometime 18:15:07 cat of small cats 18:15:18 IIRC the paper I read defined Cat 18:15:34 very nice though 18:17:35 I wonder if I keep going with it.. if it will not collapse 18:17:55 j-invariant: I hope not, it'd be awesome if you could get the algebraic structures on top of that... then it might be a decent alternative to the crappy coq stdlib 18:18:18 yeah notice I use -nois which means nothing from Coq library gets used 18:18:39 yeah ... for some reason that didn't undefine the * notation for me though when i did those structures just now 18:19:14 fizzie: Pushed the new build system; if you don't look at useful.make it's all nice and pretty. "make" does an OPTOMIZED(tm) build (well, just -O3; -funroll-loops is probably not helpful), "make debug=1" does a DEBUGGERISED(tm) build. "make clean" works, "make install" doesn't exist right now, "make objdir=foo" does what you'd expect, and you can set CFLAGS and the like if you don't know what cc.flags is. 18:19:32 fizzie: It niceifies the build output by default, but prints out the full command whenever anything goes wrong; V=1 makes it print everything (and this is automatically turned on if you use -n.) 18:19:45 "make clean all" fails to generate the .ds properly due to an obscure bug, but I'm looking into that now. 18:19:59 And I used -lz rather than pkg-configging zlib. 18:20:05 It builds into build/ by default. 18:21:28 (But "make objdir=." does work, if you're crazy.) 18:21:57 elliott, can't reproduce the issue you mentioned on peaceful in my games 18:22:09 Vorpal: Well, it /was/ near a mob spawner. 18:22:14 elliott: but if you look at say lines 370 to 417. All that crap does is prove that Ff o (eta o nu) = (Ff o eta) o nu = (eta o Gf) o nu = eta o (Gf o nu) = eta o (nu o Hf) 18:22:17 Because my STAIRCASE MINE IS ABOVE A MOB SPAWNER AAAA. 18:22:21 elliott, hm, don't know anyone near me 18:22:29 Vorpal: *any one :p 18:22:37 j-invariant: yeah, it is a bit verbose ... but 18:22:39 elliott, nor any two 18:22:45 j-invariant: at least you proved it, I never got anywhere near that with mine 18:23:24 crazy idea: Maybe you could make a new category theory proof language... which uses Coq under the hood? 18:23:45 it could even just be commutative diagrams 18:24:48 Vorpal: No sounds so far... 18:24:56 j-invariant: that would be nice ... sounds complicated though :) 18:25:02 yeah 18:25:06 bbl 18:25:08 j-invariant: it'd be nice if category theory turns out to be a useful basis for "typed" computation 18:25:17 j-invariant: like how intuitionistic logic is useful for that, via type theory 18:25:23 and lambda calculus 18:25:47 Vorpal: what scares me a bit is that i have various tunnels of varying litness.. 18:26:02 yeah I don't see how that's possible because all the functions in category theory are just A --> B.. that's my ignorance though 18:26:16 j-invariant: it is a bit hard to imagine yeah 18:28:03 -!- pikhq has quit (Ping timeout: 240 seconds). 18:30:06 -!- cheater99 has joined. 18:30:23 -!- pikhq has joined. 18:31:07 elliott, hm 18:31:07 -!- cheater99 has quit (Read error: Connection reset by peer). 18:31:43 Vorpal: I mean, can a spider spawned by a mob spawner manage to trigger off do-a-slurp-sound before it evaporates? 18:32:03 elliott: do you happen to know what's the "simplest nontrivial theorem" for monoids? 18:32:08 elliott, no clue 18:32:22 elliott, I never seen them show up either like that 18:32:25 j-invariant: alas no 18:32:26 I'll try and define moniod but I don't know what to say about them 18:32:38 http://en.wikipedia.org/wiki/Monoid#Relation_to_category_theory :-) 18:32:50 "Likewise, monoid homomorphisms are just functors between single object categories. So this construction gives an equivalence between the category of (small) monoids Mon and a full subcategory of the category of (small) categories Cat. Similarly, the category of groups is equivalent to another full subcategory of Cat." 18:32:52 j-invariant: prove that :P 18:34:08 huh I have n oidea how to define a subcategory.. 18:34:48 j-invariant: maybe it's just (ob A) subtype-of (ob B)? 18:34:49 i think the name was ob 18:34:50 i forget 18:34:53 the type of the category 18:39:26 ah that could work 18:39:47 j-invariant: i guess you might need to include that the operations are equivalent but i forget so 18:39:49 uh 18:39:56 basically the main thing would be having the types be subtypes i think 18:40:06 "operations are equivalent" <-- Functor :D 18:41:00 -!- Sgeo has joined. 18:44:52 elliott, beta is laggy as fuck 18:44:54 elliott, on a local game 18:45:04 Vorpal: pretty, but restarting it helps 18:45:08 i keep opening minecraft twice by mistake 18:45:15 uh? 18:45:20 *pretty laggy, 18:45:23 elliott, anyway it is way slower than alpha 18:45:32 Vorpal: now i've fallen into a cavern and there's diamond but i'm busy running around scared shitless putting torches everywhere because oh god what if there really are monsters 18:45:49 elliott, I found no indications of that 18:46:04 elliott, the game is from pre-halloween btw (not that it should matter) 18:47:04 elliott, I considered doing some mega scale engineering in that game, smoothing out the discontinuities somewhat, at least for the areas I visit 18:47:12 Vorpal: there is also gold though... and iron ... and diamond 18:47:24 you fell? 18:47:25 elliott, how? 18:47:25 i have 64+33 coal though so I can come back to that 18:47:36 elliott, did you dig right below yourself 18:47:38 Vorpal: turns out when i removed a block to make my stairs go down further 18:47:39 no 18:47:41 i just didn't notice 18:47:44 since it was obscured by darkness 18:47:55 elliott, so why didn't you use torches? 18:48:29 Vorpal: I was about to place them FFS 18:48:30 it looked solid 18:48:33 heh redstone, too bad i don't need it 18:48:36 -!- cheater99 has joined. 18:48:59 SERIOUSLY? a single diamond? 18:49:01 fuck y'all 18:49:27 shietloads of redstone though ... and coal 18:49:45 but i have enough coal for now 18:50:16 elliott, lightstone on bottom of deep sea is pretty from the surface 18:50:22 like random lights spread out 18:50:24 heh 18:50:26 especially nice at night 18:50:42 and uh there's also water and lava and stuff so I bet these caverns branch a lot but I have lots of iron and a single diamond 18:50:44 so this is enough forn ow 18:50:46 *for now 18:50:53 I have until Sunday 18:51:19 note to self: bunch of torches + torch on cobblestone = entrance to cavern 18:51:42 more gold! wish gold was useful in any way at all 18:51:43 elliott, idea to make creeper safe: small island, middle of ocean, 10 high obsidian tower. 3x3 or such. With ladder inside 18:51:46 apart from like, compass 18:51:48 elliott, and steel door 18:51:52 elliott, at both ends 18:51:54 Vorpal: heh 18:51:58 -!- cheater99 has quit (Read error: Connection reset by peer). 18:51:59 elliott, then at top, a floating castle 18:52:05 or at least 18:52:12 structurally unsound 18:52:18 elliott, the castle need not be obsidian 18:52:34 which saves on both annoyance and "fuuuu that was misplaced" 18:52:45 well, probably make it obsidian just near the shaft 18:52:56 elliott, do you think this is safe? 18:53:41 Vorpal: well, the castle would need to have no holes in the top. 18:53:47 *on the top 18:53:53 and you'd still see enemies if it had a glass ceiling :) 18:54:04 elliott, you could cover it with torches on top 18:54:08 without too much issues 18:54:44 elliott, but obviously, and exit there would use doors 18:54:53 (iron probably) 18:55:13 elliott, still it is a lot less annoying than a obsidian fort on the ground 18:55:16 what's to stop a creeper getting in the obsidian fort? or is the top closed? 18:55:24 elliott, well yes 18:55:39 elliott, there could be doors to the top but as I said it would be floating above any ground 18:55:42 Vorpal: what's to stop a creeper getting on top, and blowing up your castle's connection to the obsidian? 18:55:43 elliott, and it would be lit on top 18:55:44 wouldn't matter, but 18:55:52 elliott, how could it 18:55:57 Vorpal: spawning there 18:56:04 elliott, but it is LIT ON TOP! 18:56:08 as I said several times 18:56:09 Regarding the slowness, from Notch's Twitter: "I have a scary feeling the lag some people get might be leaf decay. Grraaaaahhh!!" 18:56:16 Vorpal: it doesn't spawn there, it spawns below the castle 18:56:19 on top of the obsidian 18:56:30 elliott, uh 18:56:33 Deewiant: Misread as "lead decaf". 18:56:33 elliott, what? 18:56:44 nm. 18:56:45 elliott, the obsidian shaft goes from ground to middle of bottom of castle 18:56:50 elliott, how could it spawn on top 18:57:03 so it's not floating? 18:57:11 elliott: http://p.zem.fi/kdvd -- is there a reason it does DEP for all but one of the source files twice? 18:57:16 elliott, no, I corrected that above 18:57:28 fizzie: Um, what. Let me take a look at useful.make. 18:57:54 elliott, while a floating castle is indeed awesome, it has the disadvantage of being annoying to enter and exit 18:58:00 fizzie: Can you clean and run it with V=1? 18:58:09 (Don't do make clean all, do make clean; make all V=1.) 18:58:39 cc -Wall -Werror -std=gnu99 -pthread -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/SDL -O3 -M -MG -MF build/map.d map.c 18:58:40 cc -Wall -Werror -std=gnu99 -pthread -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/SDL -O3 -M -MG -MF build/map.d map.c 18:58:45 How strange, it's doing the exact same thing twice. 18:58:56 I suspect an objdir bug at this point. 18:59:02 Since it worked fine before I added objdir support. 18:59:33 http://p.zem.fi/g1cc but yes, it looks like that. 18:59:43 Hah... (about PCRM): "If these guys are against your dietary recommendations, you're probably doing something right, so I'm going to take this one as a win." 19:00:04 * elliott does make -d V=1 2>&1 >foo to check 19:01:30 Prerequisite `map.c' is older than target `build/map.d'. 19:01:30 Prerequisite `build' is newer than target `build/map.d'. 19:01:30 Prerequisite `Makefile' is older than target `build/map.d'. 19:01:30 Must remake target `build/map.d'. 19:01:50 fizzie: It seems it decides it needs to do it all again after it re-makes after satisfying the .d dependencies the first time. 19:02:35 Aha... hmm. 19:03:20 fizzie: Pushing a fix. 19:03:38 tl;dr if you just want something to exist, not to update when it gets newer, make it a |-dependency. 19:03:41 Oh, there's a client update too? 19:04:29 It's weird how it nowadays sends trees (or at least their leaves) before any other blocks. 19:04:33 Pushin' now. 19:04:35 Must be leaf-decay-related. 19:05:06 fizzie: Fixed. 19:05:44 http://zem.fi/~fis/what.png -- that thing in the upper-left corner does not fill me with confidence. 19:05:46 " * Mysteriously, with the 1.2.0_02 update on November 4th, all Jack-O-Lanterns on worlds were converted back into pumpkins." 19:05:46 *"* 19:06:14 It also isn't static, it keeps flickering. 19:07:13 gold tools are stupid, right? 19:07:20 what is new in 1.0.2? 19:07:27 The durability is the same as wood, wasn't it? 19:07:30 Vorpal: "on November 4th" 19:07:31 fizzie: Heh. 19:07:37 fizzie: Also, that top-left is REAL. It's CHAOS. 19:07:43 elliott, reading comprehension failure 19:07:47 elliott, you that is 19:07:55 elliott, now read what I said again 19:07:56 wait, compasses are IRON 19:08:03 Vorpal: oh. 19:08:05 Vorpal: bugfixes. 19:08:16 elliott, nothing on his blog, nothing on minecraft wiki 19:09:16 Yay I'm on fire. 19:09:34 -!- cheater99 has joined. 19:09:52 http://zem.fi/~fis/what2.png -- it's also not the only chaotic region. 19:10:26 fizzie, it's the even rarer thing! missingno 19:11:33 fizzie: Visit it and SEE THE CHAOS. 19:12:29 I've visited, but nothing special is visible to the client. 19:12:41 It might be that it goes over y=128, though. 19:13:04 -!- cheater99 has quit (Read error: Connection reset by peer). 19:13:15 Deewiant: BTW, you're missing gold and iron ore from your emporium. 19:13:24 I know. 19:13:24 fizzie: It does? How? 19:14:08 Well, protocol-wise the y coordinates go all the way up to 255, so he might have just relaxed the limits. 19:14:25 The room is slowly filling with smoke... 19:14:29 It might also be that the trees at max-alt are related. 19:14:40 I didn't bother exactly counting which height it was at. 19:14:41 I feel that chimneys should prevent this. 19:14:55 It sucks having your house in a boring area. 19:15:10 fizzie: Can you actually build above 128 though, now? 19:15:27 http://www.minecraftwiki.net/wiki/Soul_Sand Since when is it called soul sand. 19:15:29 I'll try to get up there to see. 19:15:34 http://www.minecraftwiki.net/wiki/Netherrack Since when is it called netherrack. 19:15:46 Stupid tooltips. 19:15:46 "That's a nice netherrack you've got there." 19:15:58 Yeah, I can't even figure out that name ... at all. 19:16:18 http://www.reddit.com/r/Minecraft/comments/eoxvk/sincere_thank_you_to_notch_for_the_tooltips/c19ufzq?context=3 19:16:24 rack as in wrack, I guess 19:16:26 "# The name "Netherrack" is not a misspelling of "Netherrock". [2] 19:16:26 # It could also possibly be based on one or more of several definitions of rack having to do with suffering." 19:17:41 The server-side inventory did fix that item-placement thing. 19:18:06 I should eat 19:18:10 * Phantom_Hoover makes a respirator out of a blanket. 19:18:22 http://evilmousestudios.com/tronic/ Heh, someone got to the "single-colour texture pack thing" before me (well, sort of), except theirs is HD. 19:19:41 Teleporting still works, though with health on it's a bit dangerous. (Read: you pretty much die always.) 19:21:08 fizzie, how does it work? 19:21:50 wait, gun powder is sulphur now? 19:21:56 (says tooltip) 19:22:20 half-step is stone slab 19:22:51 Phantom_Hoover: The server trusts client-sent "player position" packets pretty much absolutely, except it checks whether the path would go through solid blocks; so our teleportation command just sends two faked player-position commands, one to move from (px,py,pz) to (px,+128,pz), then another from there to (tx,+128,tz), where p is current player position and t the target. 19:23:09 Then gravity will take care of getting the player down from y=128. 19:23:37 fizzie, you can target lakes 19:23:40 for porting 19:23:43 That's true. 19:23:56 -!- pikhq has quit (Ping timeout: 264 seconds). 19:24:03 fizzie, you need to indicate if a lake is 1 or 2 deep! 19:24:34 Lakes aren't everywhere. 19:24:57 elliott, common enough that it is still somewhat useful 19:25:05 Maybe it could keep the player flying with repeated move packets, and construct a temporary water basin below, then let you drop. 19:25:07 Vorpal: But a322 has health off anyway. 19:25:19 fizzie: Actual flying is a known griefer thing, so that should actually work. 19:25:20 -!- pikhq has joined. 19:25:20 elliott, yep, but it breaks armour 19:25:34 elliott, only in classic iirc 19:25:34 Vorpal: But there's no health ... you don't need armour ... 19:25:38 Ah, okay. 19:25:46 Still. 19:25:47 Vorpal: But there's no health ... you don't need armour ... 19:25:49 elliott, I like the look of the armour 19:25:55 I might check whether you still get falling damage even if you "move" the player down from the highest point, but I suspect it just counts the drop from max-y to ground. 19:25:56 So don't teleport. 19:26:07 fizzie: Move down 128 times. 19:26:22 I think it will still count the whole thing as a single jump. 19:26:31 But I'll test at some point. 19:26:47 Oh *joy*, a lava lake. 19:27:11 There's also a byte on the movement packets that is set when the player is on the ground, I'm not sure exactly what that does. The wiki says it's for "detecting flying". 19:27:14 elliott, yet another one 19:27:23 elliott, or at the old altitude? 19:27:59 fizzie, for large drops and such? 19:29:28 elliott, course literature in one of your favourite areas. I have no doubt you will say the book sucks 19:29:40 ("Interaction design") 19:29:57 Vorpal: Interaction design != HCI. 19:30:06 Vorpal: Anyway most HCI stuff is bullshit. 19:30:10 elliott, yeah 19:30:16 elliott, course literature and so on 19:30:34 and it seems to cover HCI in parts at least 19:30:36 -!- cheater99 has joined. 19:31:20 And I died. 19:31:53 elliott, authors are Sharp, Rogers and Preece. If those names mean anything to you (they don't to me) 19:32:00 To be explicit: I died, losing most of my possessions, and will now be transported to a spawn point from which I have no idea how to get to my house, which I built after wandering frustratedly at the bad map. 19:32:06 Vorpal: Don't to me. 19:32:19 elliott, anyway, why didn't you mark your path and so on 19:32:27 elliott, or use an inventory editor and teleporter 19:32:38 elliott, or next time, create a new world when you find the current one sucks 19:32:48 Vorpal: Because as I said, I was wandering frustratedly. The first coal I found, after walking for, like, a day, I punched through. 19:32:49 Light streamed in. 19:32:52 The mountain was ONE DEEP. 19:32:54 I got ONE PIECE OF COAL. 19:33:05 -!- cheater99 has quit (Read error: Connection reset by peer). 19:33:07 Then finally I found a nice mountain with trees and set up shop. 19:33:15 elliott, I would have generated a new map at that point 19:33:22 Vorpal: I /was/ regenerating the world; I'd done it like five times, and decided I'd stop. 19:33:35 Heh. A tree I hollowed out. 19:34:26 Aw, mcmap is definitely not as pretty as some of the competition, like the http://minecraftam.com/ thing. 19:34:52 fizzie: But who uses mcmap for the map? 19:34:57 >:P 19:35:10 It's the only thing I use it for, when I use it 19:35:23 fizzie: Looks like it needs a server mod to work. 19:35:25 (automap) 19:35:34 I may be wrong. 19:35:42 I don't think it does. "The mod/map is entirely clientside, meaning you can use it in singleplayer or on any SMP server, regardless of what mods it has." 19:35:52 "# The mod/map is entirely clientside, meaning you can use it in singleplayer or on any SMP server, regardless of what mods it has." 19:35:53 Hmm. 19:35:54 But it is a client-side mod, not a nifty proxy tool like ours. 19:36:00 Oh, it's talking about http://minecraftam.com/MM.aspx. 19:36:03 fizzie: Yeah, proxies are more fun. 19:36:30 fizzie: If you made your map lighting-savvy (i.e. torches light thiings up), and jigged the colours a bit, I think it'd be fine. 19:37:05 SMP server? 19:37:36 Sgeo: "Survival multiplayer." 19:37:37 Aw, mcmap is definitely not as pretty as some of the competition, like the http://minecraftam.com/ thing. <-- sure, but which one runs on my system? mcmap, it has less requirements 19:37:42 Ah 19:39:53 fizzie, it's path marking thing looks useful 19:39:56 to ehird at least 19:40:10 -!- Sgeo has left (?). 19:40:14 -!- Sgeo has joined. 19:40:21 Linden Lab closed the Teen Grid 19:40:33 This is not as big a victory for anti-age-segregationists as it sounds 19:41:15 Users between 13-16 have to be with an "affiliated organization" separate from the main part of SL 19:41:20 erm, 13-15 19:41:40 All 1 people in here who play or care about Second Life thank you for that information. 19:41:47 it doesn't sound like a victory either way 19:41:50 I mean, who cares about SL 19:41:58 (in here at least) 19:42:23 Vorpal: BUT BECAUSE I'M BETWEEN 13 AND 16 ... NOBODY UNDERSTANDS M3... 0R MY UNKONVENSIONAL SPELUNG... WITHOUT SOMEWHERE I CAN BE TRULY UNDERSTOOD... A SECOND LIFE... 19:42:29 ..... HOW WILL I BE ABLE TO AVOID CUTTING MYSELF????/ 19:42:38 ;__; 19:42:46 MOVING ON 19:42:48 octocat_sad.gif 19:42:57 fizzie, is that github? 19:43:09 Yes, I got it the other day. 19:43:21 http://www.youtube.com/watch?v=8hm3E2cGQE4 19:43:27 http://github.com/images/error/octocat_sad.gif and then some sort of "the server, it is error" page. 19:43:41 (The error is a reference to those.) 19:43:45 (I think.) 19:43:46 elliott, "Minecraft AutoMap requires Windows, the .NET Framework 4, and the XNA Framework 4.0." 19:43:52 Vorpal: Mono :P 19:43:57 elliott, not xna iirc 19:43:57 Okay, so XNA might be difficult. 19:44:09 elliott, also last I looked mono went to 3.5 19:44:11 not to 4 19:44:20 It goes to etc. 19:44:30 elliott, 11? 19:44:35 AAAAAAAAA MY EYES 19:44:36 Yes yes. 19:44:45 Phantom_Hoover, what 19:45:10 Vorpal, DID I MENTION THIS ROOM IS FULL OF SMOKE 19:45:26 AND I CAN'T OPEN THE DOOR OR THE SMOKE DETECTOR WILL GO OFF 19:45:33 It's not the nicotine that kills! It's the smo-oo-ooke, the smoooke! 19:45:45 Phantom_Hoover, so put out the fire 19:45:52 Cancer, it's the smoke! Heart disease, it's the smoke. It's the smoooooooooke! 19:46:06 It's the, it's the inhalation, it's the smooooke, the smooooooooke! 19:46:24 Phantom_Hoover, and there is this thing in fireplaces that kind of open and closes above them 19:46:27 did you open it 19:46:32 not sure what the English word is 19:46:34 Vorpal, I'll get in trouble if the fire goes out! 19:46:37 spjäll in Swedish 19:46:41 Phantom_Hoover is burning his parents. 19:46:48 Phantom_Hoover, so talk to some grown up? 19:47:01 Vorpal: Phantom_Hoover is *burning his parents*. 19:47:05 Vorpal, they didn't CARE 19:47:09 Also they live in Antarctica and there is nobody else within a seventy mile radius. 19:47:11 On account of being on fire. 19:47:17 uh 19:47:24 sure 19:47:37 It's the smooooooooke. 19:48:24 * Phantom_Hoover opens the door anyway. 19:50:38 -!- cheater99 has joined. 19:52:36 -!- cheater99 has quit (Read error: Connection reset by peer). 19:52:50 "The first time I played the game I didn't know that I'd picked up clay, and I was wondering why the hell cooking eggs turned them into bricks..." 19:53:37 http://i.imgur.com/WNTDy.png whoa. 19:54:33 OH GOD I CAN SEE FOREVER 19:58:44 "Get this. Framerate goes back to normal if you're beside trees and you look straight up at the sky... 19:58:44 Look back down, and I'm right back to 2fps from 40-60fps looking up." 19:58:47 Vorpal: Notch quality. 19:59:06 I propose we define "notch" to mean "very low/poor". It even SOUNDS like it means "small". Notch. 19:59:52 "Notch" already has a meaning or ten. 20:00:13 Crud 20:00:16 I MISSED MY FINAL 20:00:57 you're a retard 20:01:11 missed missed or can-still-run-to-be-late missed 20:01:20 missed missed 20:01:28 Sgeo, why did you do that 20:01:28 I must admit though, the "Crud" part is a lie 20:01:33 It's an optional final 20:01:35 oh 20:01:36 Sgeo, alarm clock? 20:01:43 That can only help one's grade... my grade cannot be helped 20:01:48 lol 20:01:57 I have to write a final tomorrow 20:02:00 last one 20:02:05 stupid balsdkfjals 20:02:12 anyway, I'm going in search of food 20:02:14 see yzs 20:03:26 Vorpal: I MADE IT BACK HOME 20:03:33 "Notch" already has a meaning or ten. 20:03:37 Oh, it does, doesn't it... 20:04:17 HA I've lost all my iron. 20:05:08 "Noun, sense 1. An affectionate synonym for 'vagina'. See also gash. Noun, sense 2. Someone with whom you basically just get drunk and/or high and have sex, usually on a short term basis. Compare to "your girl" or "a ho", both are higher on the intimacy ladder." (Urban Dictionary.) 20:05:56 Also the OED site has gone all multimedia and web 2.1 on me. 20:06:06 fizzie: For every word, there is a sexual definition for it on Urban Dictionary. 20:06:17 Wrong. 20:06:20 Most likely several. 20:06:36 Deewiant: You know, I had this /terrible/ feeling you were about to say "Wrong." when I said that. 20:06:53 Deewiant: I decided amending it to s/every/almost every/, but then I decided not to edit my joke just because of you :P 20:07:12 *considered 20:07:22 Well, OED 'notch': "4. In various /fig./ uses. a. /coarse/ slang. The female genitals." 20:07:33 fizzie: Still. :p 20:07:42 fizzie: BTW, does mcmap >foo work with the new IO superplexer? 20:08:01 if (pipe(pipefd) != 0) 20:08:01 goto no_terminal; 20:08:02 ... 20:08:02 no_terminal: 20:08:02 return; 20:08:02 } 20:08:04 Yes, without isatty(0) && isatty(1) it should just write into stdout as usual and not start it. 20:08:07 One would think "return;" might suffice. 20:08:20 Right, I was planning to have some sort of initialization done below there. 20:08:27 fizzie: But can it support reading from plain stdin? 20:08:29 But then I couldn't invent anything to initialize. 20:08:36 Well, no, it doesn't do that at the moment. 20:08:41 'cuz then we can have RIDICULOUSLY BLOATED BOTS that require Minecraft to be running for no good reason! 20:09:00 Well, I can certainly add that. 20:09:07 It sounds like a good thing to have! 20:09:38 Anyhoo, also on OED 'notch': "N. Amer. colloq. and regional. to the notch and variants: to the right standard, to perfection, exactly." That can't be right... 20:09:48 elliott, nice (about getting back) 20:10:06 -!- cheater99 has joined. 20:10:50 "notch effect n. Materials Sci. the increase in the susceptibility of a specimen to fracture caused by the presence of a notch." -- but this could be generalized into some sort of software breakage use. 20:12:02 fizzie: Have you got a testing server up on the beta server or something? My computer isn't strong enough to run the server properly, and I'd like to do some mcmap codeine. 20:12:16 -!- cheater99 has quit (Read error: Connection reset by peer). 20:14:33 No, I've just been running it locally, and I don't feel like starting to add port-forwarding rules and all that to open things up. 20:14:53 fizzie: Woot, I have a commit on my hands and no way to test it :P 20:15:19 console.c:114: error: pointer targets in passing argument 1 of ‘cmd_parse’ differ in signedness 20:15:19 cmd.h:4: note: expected ‘unsigned char *’ but argument is of type ‘char *’ 20:15:21 Oh please. 20:17:32 Where are you getting a char * for cmd_parse, anyway? 20:17:40 That can only help one's grade... my grade cannot be helped ← ...how 20:18:07 You've made it clear that the course is for simpletons and you are failing? 20:18:31 Or alternatively, what do you need cmd_parse for? 20:18:32 fizzie: readline. 20:18:37 fizzie: And for //foo at the console. 20:18:42 It already works. 20:18:49 fizzie: Really? Does inject_to_server do It? 20:18:50 *do it? 20:19:00 https://github.com/fis/mcmap/commit/c336bce1afe12eb80f18bef1686766f4d8f43ee4 20:19:11 Okay, I *think* it works. 20:19:16 -!- wareya_ has quit (Ping timeout: 276 seconds). 20:19:17 I haven't actually tried it. 20:19:31 Anyway, I reworked it so that inject_to_server'd packets are processed as if they came from the client. 20:19:43 So it should be indistinguishable from client-sent chat. 20:19:50 Ah. 20:20:01 fizzie: What happens if you do //slap <99 chars>? 20:20:05 In-game. 20:20:13 And what happens if you type "a" 101 times at the console? 20:20:20 You probably will get kicked. 20:20:27 Right ... 20:20:58 Or actually not at 101, but certainly at 105 or so. It was somewhere around there. 20:21:11 Either truncating or auto-splitting could be a nice feature. 20:21:25 Truncating would be more IRCy. :p 20:21:34 (Auto-splitting would be more "user-friendly IRC client"y.) 20:21:56 "The Alpha server will check the message to see if it begins with a '/'. If it doesn't, the username of the sender is prepended and sent to all other clients (including the original sender). If it does, the server assumes it to be a command and attempts to process it. A message longer than 100 characters will cause the server to kick the client. This limits the chat message packet length to 103 bytes. Note that this limit does not apply to incomi 20:21:56 ng chat messages as the server may have prepended other information, not limited to, but usually including, a username." 20:22:09 fizzie: Infalliprotocollywiki says it's 100. 20:22:09 Ah, so it was 103 bytes per packet. 20:23:12 I wonder if it's 100 characters or 100 bytes. Could be either. 20:23:30 Easy (but boring) to check. 20:23:44 Hey Deewiant, set up a server so I can test things. (I'm just going to bug random people until somebody does.) 20:23:57 Tell me how (I'm on Windows) 20:24:51 Deewiant: Run minecraft_server.exe. 20:25:01 (I've seen that mentioned on the download site.) 20:25:01 Deewiant: What fizzie said. 20:25:07 Link it. 20:25:08 Deewiant: Also turn off monsters and PvP, or I'll eat your soul. 20:25:09 It's 100 bytes, not 100 chars. 20:25:22 elliott: I'll put it on "hard". 20:25:25 Deewiant: http://minecraft.net/download/Minecraft_Server.exe 20:25:25 http://minecraft.net/download/Minecraft_Server.exe?v=1292963092965 20:25:29 Deewiant: And you can't control the difficulty. 20:25:32 Just monsters and pvp on vs off. 20:25:40 Meh, lame. 20:25:44 I think. 20:25:50 elliott: If you're going to be the only person there, how does PvP matter?-) 20:26:04 fizzie: Because Deewiant will probably drop in and punch me to death. 20:26:05 And it seems to be 100 bytes, not 100 characters. 20:26:10 -!- wareya has joined. 20:26:19 "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" works, "äääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääää" kicks me off. 20:26:27 It doesn't have any pvp/monster settings 20:26:39 Deewiant: Yes it does. 20:26:41 But, tar.us.to:25565 may or may not work. 20:26:46 That's the "server.properties" file it generates somewhere. 20:26:48 This GUI doesn't, and the help command doesn't list any. 20:26:53 Same directory, I think. 20:27:14 20:26:38 [DIED] main.c: 106: proxy thread (client -> server) write failed 20:27:18 Did you just take it down, Deewiant? 20:27:24 [INFO] ehird [/91.105.117.134:33325] logged in with entity id 4393 20:27:25 [INFO] ehird lost connection: disconnect.overflow 20:27:31 Lolz whats. 20:27:40 fizzie: Your mcmap, 'tis insufficient. 20:27:41 Now it happened to fizzie too. 20:27:43 It works now, second connect. 20:27:52 Then I got kicked off. 20:27:59 I connected, got packet updates for a while, then got dumped. 20:28:00 Without an error thist ime. 20:28:01 *this time. 20:28:10 'tis weird; it works if I connect to localhost. 20:28:11 fizzie: Nice beta support :P 20:28:20 fizzie: Are you surey ou're on the beat server? 20:28:20 *beta 20:28:23 *sure you're 20:28:27 Well, yes. 20:28:29 -!- cheater99 has joined. 20:28:35 Well, TEST FAST. 20:28:37 WELL THIS WORKS 20:28:38 2010-12-21 21:15:44 [INFO] Starting minecraft server version Beta 1.0 20:30:10 Trying without mcmap now. 20:30:35 Deewiant: EOFException even without mcmap. 20:30:42 Well, I don't know. 20:30:44 22:27:49 server -> client packet 0xff size 4294967048 20:30:45 Deewiant: Concludion: ERGO ROUTER FAIL (or server fail or something) 20:30:48 That's probably not all right. 20:32:00 Haven't had problems with any other kinds of servers thus far, so I blame the software. 20:32:50 -!- cheater99 has quit (Read error: Connection reset by peer). 20:32:51 Deewiant: Considering it works for fizzie, that's a rather odd conclusion. :p 20:33:01 Does it work for fizzie? 20:33:10 fizzie says it works for fizzie. As in, using a server on localhost. 20:33:10 Oh, his server, you meant. 20:33:14 He's not running it on Windows. 20:33:33 Deewiant: Does it say "Beta 1.0" for the version? (Though I don't suppose there are any others yet.) 20:33:42 [INFO] Starting minecraft server version Beta 1.0 20:33:49 And it's Java, you know, write once, run anywhere, platform-agnostic. 20:33:54 Deewiant: Y'could try: 20:33:54 http://minecraft.net/download/minecraft_server.jar?v=1292963598077 20:33:56 java -Xmx1024M -Xms1024M -jar minecraft_server.jar nogui 20:34:13 That's what I use to start it; though it might be just timing-related things, or worldgen-related things. 20:34:23 I've written Java software with Windows-only hacks to make stuff work better. 20:34:41 No, you don't understand, write once, run ANYWHERE. 20:34:47 (I've been indoctramotated.) 20:34:49 Anywho, nogui version running. 20:35:00 The noogie version. 20:35:23 Shrug. 20:35:26 Write everywhere, run once. 20:35:36 Crash, give up. 20:36:15 fizzie: So hey, dem forwarded ports. 20:36:20 :p 20:36:28 Blonk. Yes, it certainly does seem to break even on a direct connection. 20:36:36 Deewiant: Any interesting messages in the server console? 20:36:47 This time it printed a few SocketExceptions. 20:36:57 java.net.SocketException: Software caused connection abort: recv failed 20:36:57 at java.net.SocketInputStream.socketRead0(Native Method) 20:37:04 java.net.SocketException: Connection reset by peer: socket write error 20:37:05 at java.net.SocketOutputStream.socketWrite0(Native Method) 20:37:12 Between ehird's join and quit 20:38:00 http://www.minecraftforum.net/viewtopic.php?f=17&t=110437 "my friends server has just been updated but me and a few other people are constantly crashing with errors such as: - internal exception: Java.EOFException - minecraft connection lost Internal exception: java.net.socket exception: socket caused connection abort: recv failed" 20:38:16 Notch Engineering strikes again. 20:38:25 It's Notch quality 20:38:27 *quality. 20:38:33 "I'm having exactly the same problem - I've tried on multiple servers, and on both my mac and pc machines - I tried updated java to the latest version, I've tried deleting my MC /bin directory and getting new files downloaded, nothing seems to be working." 20:38:48 "I'm beginning to hate Java -_-" 20:38:50 Hate the Notch, not the game. 20:39:04 Although hate Java too. 20:39:06 So basically just hate. 20:40:53 Deewiant: Ooh -- "Bad packet id 158". 20:40:57 fizzie: ^ 20:40:58 Is the server-ip in server.properties an address to bind to or its external IP? 20:41:04 DESYNCHRONISPORPOISE 20:43:13 Deewiant: No idea. 20:43:31 gah, -22 C outside 20:44:09 who called -10 C or whatever it was "really fucking cold" last week or so? 20:44:13 pikhq i think 20:44:14 How much snow? 20:44:30 Deewiant, well, it snowed a lot yesterday and the day before that 20:44:38 Deewiant, but it rarely snow when THIS cold 20:44:39 cm-depth 20:45:10 Deewiant, snow blower used yesterday, hasn't snowed since then. So about 1 cm where it was used. Almost 2 meters in other places 20:45:26 Deewiant, hard to tell what it actually is since it tends to blow up against walls around here 20:45:29 Don't you have weather services? 20:45:45 Deewiant, you mean, the weather services us with a lot of snow? ;P 20:45:56 Deewiant, sure, there is SMHI 20:45:57 I mean that snow depth is a well-defined value :-P 20:46:05 That they should report 20:46:10 Deewiant, and I don't know where to find it on there 20:47:31 isthesnowdepthinswedentodayreallyfuckingdeep.com: "YES" 20:47:37 There's your value. 20:48:06 elliott, well, at least over a meter I'd say 20:48:11 but I can't find official values 20:48:51 fizzie: The command-output-appears-as-CHAT is a regression. 20:48:59 -!- cheater99 has joined. 20:49:02 fizzie: It's all neon-coloured and unreadable now for those of us with lightbulb terminals. 20:49:21 elliott, no one uses those anyway 20:49:23 so a feature 20:49:23 Vorpal: Use http://www.smhi.se/vadret/vadret-i-sverige/snodjup 20:49:24 not a bug 20:49:41 Vorpal: I use one, and I'm the only person who isn't fizzie who's contributed code, so there. 20:50:02 Doesn't the same apply for server-sent yellow messages? 20:50:12 Deewiant, closest observation is 32, but it is not very near 20:50:20 Deewiant, and due to wind it is much deeper locally 20:50:41 I think it's more harmonically harmonious when it does the same color-thing it does for all; there's the no-color option already, anyway. 20:50:45 fizzie: Yes, but that's "less" problematic. 20:50:53 I don't mind the colours, I just don't like command output to be arbitrarily coloured. 20:51:00 fizzie, easy fix, force bg to black 20:51:03 The only reason they're coloured in the client is because there's no other good way to indicate. 20:51:11 In the console, there's [INFO] vs [CHAT] to indicate. 20:51:20 elliott, make it an option 20:51:23 (Especially considering that the coords response isn't chat by any reasonable definition of CHAT.) 20:51:23 -!- cheater99 has quit (Read error: Connection reset by peer). 20:51:23 I prefer coloured 20:51:32 Vorpal: I'm talking to fizzie, not you. 20:51:36 elliott, calling it a regression is just wrong 20:51:51 It's chat by the definition that "it's something sent to the client as chat". 20:52:08 fizzie: Well, yes, but //coords is more info generated by mcmap than chat. 20:52:17 Also, it makes //command and /command outputs work exactly the same. 20:52:27 fizzie: I mean, this way, /mode changes/ come out as [CHAT]... which is just weird. 20:52:42 I didn't want mode changes to be reported to the client chat, anyway. :p 20:52:48 Anyway, -c is broken. 20:52:51 > //coords 20:52:51 20:52:11 [CHAT] §b//coords: x=-601, z=-16, y=68 20:53:11 Hmm, ^D is broken too, I'll fix that. 20:53:13 I didn't want mode changes to be reported to the client chat, anyway. :p <-- nor me 20:53:18 Is there any special way to restore the terminal or is it atexited? 20:53:50 console_cleanup() does the readline term-deprep if readline has been initialized. 20:53:59 fizzie: What about closing sockets and stuff? 20:54:25 What did you want ^D to do? 20:54:46 fizzie: Quit; but I've already made it do that. 20:54:46 If you want to exit, just exit; the cleanup is also atexit'd. 20:54:49 OK. 20:55:12 Indeed, 'tis worky. 20:55:32 And right, the nocolor-mode doesn't actually parse the color codes at all. I guess it would be better if it did but just didn't print the escape codes. 20:55:35 fizzie: I'm going to let it send blank messages 'cuz that's totally useful. (If that's okay.) 20:55:42 -!- olsner has joined. 20:55:52 If it's possible, sure. 20:56:04 I haven't tried a zero-length string chat message. 20:56:05 It is, yes. 20:56:29 Well, if the server doesn't mind getting those, by all means make it possible to send those too. 20:56:41 Considering I've sent many before, yes. :P 20:57:06 > 20:57:07 20:56:29 [CHAT] ! 20:57:07 > 20:57:07 20:56:30 [CHAT] ! 20:57:07 > 20:57:10 But they show as blank in Minecraft. 20:57:19 fizzie: I think there's a printing code bug. 20:57:28 fizzie: ! might be printing 1 char of an uninitialised buffer. 20:57:29 Maybe. 20:57:40 It didn't print ! before you rewrote the console code, so. 20:58:03 Hmm. 20:58:18 I can take a look at that if you want. 20:58:28 Well, it's possibly something to look at. 20:58:31 If you push the empty-message sending version. 20:58:43 Doing so. 20:59:25 fizzie: Done 20:59:27 *Done. 20:59:31 Okkay. 20:59:47 Okkkkkkkkay. 21:00:56 fizzie: Hmm. Should I make debug=1 builds go into a debug/ directory? I think I keep accidentally mixing -g and -O3 objects. 21:01:03 (Or I could just make debug=1 be the default. 21:01:10 *default.) 21:01:18 I find it a good idea to give each configuration its own output directory 21:01:55 mm 21:02:15 -!- Goosey has joined. 21:02:22 Anyone know of a good high traffick image hosting site? 21:02:36 Goosey: lemonparty.org 21:02:44 It hosts an image and it's high-traffic. 21:02:55 No 21:02:58 I'm not going there 21:03:01 you bastard 21:03:13 Nice try though 21:03:49 fizzie: Got any nicer target directory names than _debug and _build? :p (Underscores to allow mental filtering-out in directory listings.) 21:05:03 (I am slowly -- but steadily -- leading mcmap onto the path of Java EE.) 21:05:13 (I plan to port useful.make to Ant in a few days.) 21:05:24 aieee! 21:05:42 to ... ant? 21:06:00 olsner: Yes. But it will also require Maven. 21:06:07 elliott, maven? 21:06:17 Vorpal: You really don't want to know. 21:06:29 elliott, actually I do 21:06:38 http://en.wikipedia.org/wiki/Apache_Maven#Example 21:06:39 have fun. 21:06:42 it can't be worse than ant 21:06:49 No, but it's close. 21:06:59 * Vorpal waits for browser to load 21:06:59 And yes, those XML files get WAY more enterprisey and generic and bloated for even simple projects. 21:07:18 p.s. http://i.imgur.com/T1cao.jpg 21:07:24 Phantom_Hoover, different course 21:07:29 -!- cheater99 has joined. 21:07:38 Sgeo: I was unaware your college offered non-moronic courses? 21:07:55 elliott, I presume maven still doesn't do proper dependency handling 21:08:12 The course I'm failing seems to be decent, except for problems that are my problems and not the course's 21:08:18 Vorpal: Fucked if I know. 21:08:25 elliott: Bugfixed the no-color mode: https://github.com/fis/mcmap/commit/188d632 (and that's actually your bug; it used to be a fwrite(msg, 1, msglen, stdout); and you log_print'ified it even though obviously (for some values of...) msg might not be null-terminated. (Otherwise I wouldn't have had a msglen parameter.) 21:08:40 elliott, no, the optional final course is a chemistry course, a bit moronic, but I'm not failing it 21:09:15 fizzie: Well, uh, your mother. 21:09:37 fizzie: And no, you didn't quite bugfix it in that it still spews colour codes :P 21:09:47 But yeah. 21:10:26 In fact I'll fix thatn ow. 21:10:30 that now. 21:10:44 elliott, make it an option! 21:10:48 -!- cheater99 has quit (Read error: Connection reset by peer). 21:10:54 fizzie, I do like the colour codes btw. 21:11:04 Vorpal: You like it spewing colour codes when colour is off? 21:11:05 makes output easier to read 21:11:16 Vorpal: Please stop pinging me about mcmap. 21:11:17 elliott, oh, hm. If it is turned off ... 21:11:22 The no bitching policy applies. 21:11:26 Right, well, yes. It might be best that you just use the color-code parsing routine always, and nocolor-test away the escape-code outputs. 21:11:30 elliott, not to you, only to fizzie 21:11:35 elliott, I never agreed it to you 21:12:01 Vorpal: Stop pinging me to whine about mcmap. 21:13:03 fizzie: Pushed what "might" be a fix; untested due to lack of server that'll stay up long enough to check. 21:13:44 The humans are dead 21:14:29 elliott, why 21:14:38 Vorpal: Because I said so. 21:14:42 elliott, local server? 21:14:54 Not enough processing power to run Minecraft, the server, and mcmap at the same time. 21:15:05 At least, not without waiting a minute for it to stabilise. 21:15:12 (Probably.) 21:15:20 elliott, uh, mcmap is not heavy. So run server on one computer, client and mcmap on another 21:15:22 problem solved 21:15:29 elliott, I /know/ you have an imac too 21:15:29 so 21:15:32 Vorpal: I do not have reasonable access to another computer. 21:15:40 elliott, so where is the imac? 21:15:42 The iMac is in a box and there's no free sockets here that I know of. 21:15:47 ah 21:15:48 My router also only has one Ethernet port. 21:15:55 elliott, wireless? 21:15:59 I don't see why the fix wouldn't work; and I've put in quite a lot of untested code. 21:16:05 Vorpal: Or I could just push without testing, like Notch. 21:16:10 elliott, hah 21:16:13 And like me! 21:16:17 mcmap: at least as stable as the game itself! 21:16:36 At least I haven't sold a million copies of mcmap and made them auto-update. :p 21:16:40 when will ineiros update the server 21:16:48 Vorpal: When hMod updates and he's sufficiently drunk. 21:16:55 (Obviously one can only upgrade servers when inebriated.) 21:17:01 I can take care of the latter, but I don't know how to speed up the former. 21:17:17 fizzie: Get hey0 drunk too? 21:18:12 fizzie: So, do you want to have some fun by looking into my GNU Make metaprogramming bug? 21:18:28 It would make "make clean all" SLIGHTLY more convenient for all mcmap users! 21:20:30 Nnnnot right now. 21:21:20 define c-program-body 21:21:20 to-install += $(1) 21:21:20 to-clean += $(1) $(2:.c=.o) $(2:.c=.d) 21:21:20 $(objdir)/$(1): $(2:%.c=$(objdir)/%.o) Makefile | $(objdir) ; \ 21:21:20 $(call do,LINK,$(objdir)/$(1),$(cc.link) -o $(objdir)/$(1) \ 21:21:21 $(2:%.c=$(objdir)/%.o)) 21:21:22 $(if $(cleaning),,-include $(2:%.c=$(objdir)/%.d)) 21:21:24 endef 21:21:26 fizzie: HOW CAN YOU NOT WANT TO DEBUG THINGS LIKE THAT 21:26:59 -!- cheater99 has joined. 21:27:44 * elliott pushes 21:28:02 Okay, I think the build system "vaguely" complete now. 21:28:24 Being able to set objdir in a less hacky manner in the Makefile should be possible (need to figure out how to handle that in useful.make), and an install target would be useful, but it's pretty good. 21:28:53 Although you have to do "make clean debug=1" for it to clean a debug build properly. Although that might be the Right Thing. 21:31:29 -!- cheater99 has quit (Read error: Connection reset by peer). 21:34:25 Heh. Lua lets you drop parens for single-argument functions. 21:34:28 Well, seemingly. 21:34:35 Oh, only for string and list literals? What. 21:41:52 changequote(` ',` 21:41:53 ') 21:41:54 MWAHAHAHA M 21:41:55 *M4 21:42:18 -!- pikhq has quit (Ping timeout: 255 seconds). 21:45:43 elliott, what're you doing m4 for? 21:45:49 Phantom_Hoover: No reason whatsoever. 21:46:59 -!- cheater99 has joined. 21:47:46 -!- cheater99 has quit (Read error: Connection reset by peer). 21:49:33 I motion that m4 be made an honourary esolang. 21:49:46 -!- Mathnerd314 has joined. 21:50:10 All in favour? 21:52:06 Phantom_Hoover: It always has been. 21:55:00 But not OFFICIALLY! 21:55:33 That reminds me, I still have to send a message to Fidelity 21:57:22 Sgeo, what are the properties of the entity you call Fidelity? 21:57:53 Phantom_Hoover, possibly having possession of materials related to BancSTAR 21:58:18 Sgeo: Wait, it's a *person*? 21:58:19 Called Fidelity? 21:58:32 There are *people* called Fidelity? 21:58:33 elliott, wait, I implied it's a person? 21:58:45 Hmm. Okay, so you didn't. 21:58:54 Oh it's that! 21:58:58 You realise a corporation would prefer to forget bancstar ever existed right? 21:58:59 Sgeo, I assume he assumed it was Alluded To Female. 21:59:15 elliott, uh. female names like that were once common (not that specific attribute) 21:59:32 There are people called Faith and Hope 21:59:37 Vorpal: Well yes, but it's also 2010 here. 21:59:43 And... Fidelity? 21:59:43 Sgeo, in direct violation of Hoover's Naming Law. 21:59:51 Faith and Hope I can kind of understand, even though they're terrible names. 21:59:52 Fidelity?? 22:00:02 elliott, I think Honesty also happened 22:00:25 Vorpal: I think this is God's way of telling us that he likes eugenics. 22:00:59 What was that Python-y-syntaxed language that was on the level of C? 22:01:06 Cython? 22:01:07 "Felicity". If you EVER have the urge to call a child "Fidelity", at least extend that kindness to it. 22:01:20 Oh, the think like Vala but with Pythony syntax1 22:01:22 Sgeo: No. 22:01:23 ! 22:01:23 Unrelated to Python. 22:01:27 And no, not that either (Genie). 22:01:39 The homepage had a screenshot of some mandelbrot program written in it, I think. 22:01:46 Low-fi site, IIRC it had no CSS. 22:02:08 Phantom_Hoover, Felicia Day? 22:02:27 Sgeo, what? 22:02:40 "Felicity" kind of sounds like "Felicia" 22:02:45 ... 22:03:03 Sgeo, and "Seth" sounds a bit like "Zath". 22:03:08 With a voiced "th". 22:03:09 Which sounds a bit like Zach. 22:03:12 Which sounds a bit like Exactly. 22:03:16 THAT IS WHAT YOU ARE CALLED NOW. 22:03:16 Which sounds a bit like Eggsactly. 22:03:21 Which sounds a bit like eggs. 22:03:23 I've been called Zach before 22:03:25 Which are OVARIES. 22:03:30 -!- cheater99 has joined. 22:03:31 What I'm saying is, Sgeo is ovaries. 22:03:40 Via logic. 22:03:41 elliott sounds a bit like "Elliot" which sounds a bit like "Eliott". 22:03:53 Phantom_Hoover: I will make your intestines into a stew. 22:03:54 Q.E.D. 22:04:11 elliott, sorry, is that sound a ł rather than an l? 22:04:30 heh 22:04:34 "Thou‑Shalt‑Not‑Commit‑Adultery Pulsifer?" he said, when she'd finished. 22:04:35 "That sort of name was quite common in those days," said Anath­ema. "Apparently there were ten children and they were a very religious family. There was Covetousness Pulsifer, False‑Witness Pulsifer‑" 22:04:35 Wow, I didn't realise that the Soviety government owned Tetris. :) 22:05:01 fizzie: Suffer-The-Little-Children-Onto-Me Jones. 22:05:17 elliott, fun fact: my real name has an "mhn" in it! 22:05:26 Phantom_Hoover: Phantomhn Hoover? 22:05:35 That's the principle! 22:05:52 Phantomhnoover 22:06:00 Phantom_Hoover: I don't think I ever want to know your real name, you're just Phantom to me. 22:06:05 It would be weird. 22:06:10 -!- Phantom_Hoover has changed nick to Phamhntom_Hoover. 22:06:28 -!- elliott has changed nick to J_Edgar_Hoover. 22:06:33 Phamhntom_Hoover: BROTHER. 22:07:17 fizzie, good omens? 22:07:17 -!- cheater99 has quit (Read error: Connection reset by peer). 22:07:21 Vorpal: Yes. 22:07:27 Vorpal, you need to *ask*? 22:07:41 fizzie, how can you quote books in about 30 seconds? 22:07:42 Phamhntom_Hoover, yes, well, it was some time ago I read it 22:07:54 I think Pyramids is underquoted 22:07:58 but that's just me 22:07:58 Surely you don't have a library a metre to your left. 22:08:00 Phamhntom_Hoover: It's this thing called computers, they can sort and search data pretty fast! 22:08:15 fizzie, but did you know that putting books on computers is PIRACY? 22:08:47 God, I love weird little phonemes that appear in about 2 languages. 22:08:49 http://ngrams.googlelabs.com/datasets ← the worst pirates of them all. 22:09:05 Gyaah, I like Pyramids but I don't want to support Vorpal by quoting it. 22:09:18 http://en.wikipedia.org/wiki/Voiced_labiodental_plosive 22:09:25 Von Labiodental. 22:09:31 It isn't used in _a single language_. 22:09:37 "It's used in TWENTY!" 22:09:45 It turns up occasionally in two. 22:10:03 Phamhntom_Hoover: NameDB (which is pretty small, only 30000 names) says there's two "mhn"-containing names, Adhamhnan (Irish-Gaelic, "little Adam") and Domhnall (Scots-Gaelic, "ruler of the earth"). 22:10:18 fizzie, no comment. 22:10:19 J_Edgar_Hoover, take for instance this stunned seagull (note: quoting from memory, YMMV) 22:10:36 Naming someone "ruler of the earth" sounds a bit... suspicious. 22:10:44 Phamhntom_Hoover: Didn't you say it started with A? 22:10:48 Or is that my bad memory? 22:10:50 J_Edgar_Hoover, no comment. 22:10:57 -!- J_Edgar_Hoover has changed nick to Adhamhnan. 22:11:08 does /usr/share/words contain person names? 22:11:13 "Frankly, we should be catching these people earlier. I mean, if you have a kid named 'Death-tron' enrolled in school..." 22:11:15 Suspiciously close to "Saddam", I might add. 22:11:16 As in HUSSEIN. 22:11:31 Vorpal, yes, that's what takes up all your disk space! 22:11:33 fizzie: Source? 22:11:38 Googling just showed one archived TV Tropes discussion page. :p 22:11:51 Adhamhnan: That Ozy and Millie webcomic, though I located that quote from the aforementioned tvtropes discussion page. 22:12:04 Last time I was reminded of it I actually bothered to find the actual strip too. 22:12:20 " In other news, Penguin Classics has decided not to publish all the commas removed from Humboldt’s Gift by Mr. Bellow while he was originally revising the manuscript." 22:12:21 Wat. 22:12:23 *"In 22:12:43 o.O 22:12:53 Adhamhnan, it's cited to Ozy and Millie, so the original source will be a PNG. 22:13:06 Phamhntom_Hoover: Right. Unless someone goes and transcribes them all. 22:13:07 The template I made is #411 on most transcluded templates 22:13:09 http://www.ozyandmillie.org/d/20040603.html 22:13:13 IT'S THEORETICALLY POSSIBLE 22:13:17 Sgeo: Ego ego ego. 22:13:31 fizzie, Jesus. 22:13:38 How the hell did you do that? 22:13:39 fizzie is Jesus. 22:13:44 Adhamhnan, you reminded me of it recently 22:13:46 He just flipped through every comic, sequentially, until he found that one. 22:13:50 With his cyborg mind. 22:13:52 Phamhntom_Hoover: That's nothing strange: it's in a published book, and Google books search finds things inside the speech bubbles. 22:13:55 (Jesus is a cyborg.) 22:14:00 I KNEW IT 22:14:01 fizzie, O.o 22:14:04 http://www.google.com/search?tbs=bks%3A1&tbo=1&q=ozy+and+millie+%22death-tron%22&btnG=Search+Books 22:14:05 fizzie: ...I love you. 22:14:10 I cannot ever imagine thinking, 22:14:16 "Oh! I remember! They published those comics in a book." 22:14:20 "Hmm... Google transcribe books..." 22:14:23 "To Google Book Search!" 22:14:26 It even highlights the word inside the bubble. 22:14:33 "Aha, there it is... now what comic number is it... there we GO..." 22:14:36 "...aaaaand link it." 22:14:38 In, what, seconds. 22:15:13 Well, the book name says it's 2004, and after seeing it in context, I remembered the whole sequence was about eradicating evil, so that was just "/evil" in the 2004 archive. 22:15:15 -!- zzo38 has joined. 22:15:40 elliott: equality of functors is annoying..... 22:15:40 fizzie: Do you have anything, you know, useful in your brain? :p 22:15:43 (Not that I do.) 22:15:49 j-invariant: isn't it just equality of functions? 22:15:52 which is, admittedly, just as annoying 22:15:56 -!- Adhamhnan has changed nick to elliott. 22:16:27 if you just have simple functions f,g : X -> Y then f = g is forall x, f x = g x. 22:16:40 right... are the functors more complex? 22:16:42 oh, they are, aren't they 22:16:59 Let C,D be categories and F,G : C -> D functors. Then we need to say that forall X, FX=GX and only then can we even state that for all f : X -> Y, Ff = Gf 22:17:11 because Ff and Gf have different types (unless FX=GX and FY=GY) 22:17:21 and Coq does not like that... 22:17:59 j-invariant: you could do it in the same way as subtypes? maybe? 22:18:11 j-invariant: except, just use a bijection 22:18:15 j-invariant: i.e. make it Ff <==> Gf 22:18:21 well I don't know about subtypes 22:18:23 where <==> is just a function bijection 22:18:29 well by subtypes i just mean like... 22:18:32 yeah just go for a bijection? 22:18:41 forall f:X->Y, Ff <===> Gf 22:18:48 where <===> is just two functions, both ways 22:18:52 and a proof of equality 22:18:56 Phamhntom_Hoover: Incidentally, I think it's done with OCR, and it's not especially good, since the regular-google excerpt text contains "HAVE ft WD NAMED DEATH-TRON", so it's gotten the "A KID" part wrong. 22:18:57 i.e. to (fro x) = x and fro (to x) = x 22:19:33 I can sort of see A → ft, but W → KI is a bit less believable. 22:19:54 Heh 22:19:55 Or the other way around. 22:19:56 *Heh. 22:19:59 * Phamhntom_Hoover laments the lack of names equivalent to "dark lord". 22:20:29 Phamhntom_Hoover: "Phantom Hoover". 22:21:47 elliott: line 306 of http://coq.pastebin.com/hRgqWQ6H - same thing as before except with SET now 22:22:22 j-invariant: looks pretty good to me? I might be missing something 22:22:34 OCaml: worth learning? 22:22:50 Phamhntom_Hoover: Maybe. 22:23:01 Worse than Haskell? 22:23:02 Phamhntom_Hoover: It's like Haskell but impure, strict and unsafe. Also very, very, very, very, very, very fast. 22:23:08 it's a type error "Hom' (MapOb C D G X) (MapOb C D G Y)" while it is expected to have type "Hom' (MapOb C D F X) (MapOb C D F Y)". 22:23:08 Competitive with C. 22:23:14 j-invariant: ahh 22:23:15 but we know that GX = FX... 22:23:24 j-invariant: you need to do equality elimination? 22:23:25 elliott, speed is for the weak! 22:23:29 -!- cheater99 has joined. 22:23:35 j-invariant: like make it H and prove FX=HX and GX=HX 22:23:45 I might just start fresh and see if I can set things with this in mind 22:25:46 I'm not sure if A=B means we have a map A-->B 22:26:11 -!- cheater99 has quit (Read error: Connection reset by peer). 22:26:17 it's more "use A or B, doesn't matter" 22:26:36 j-invariant: well yeah, but you can say A<=>B instead of A=B if coq doesn't like A=B 22:26:37 and it's the same 22:26:44 (obviously you have to define <=>) 22:26:54 well, "the same" 22:27:01 every set of the same cardinality is equal by that definition 22:27:02 "We paid for a product, whether it was finished or not, and we as customers deserve to have a working product. Therefore using us as guinea pigs throwing nonfunctional code at us is not right." Yet another way to solve any sort of an energy crisis would be to figure out a way to extract energy from all this indignation. 22:27:19 that might be too relaxed? 22:27:35 j-invariant: maybe ... but it'll definitely work 22:27:41 j-invariant: and i personally think sets with the same cardinality *are* the same :) 22:27:57 Phamhntom_Hoover: It's like Haskell but impure, strict and unsafe. Also very, very, very, very, very, very fast. ← so wait, it doesn't have the nice bits of Haskell but is faster? 22:28:00 fizzie: At the same time, anyone complaining about a bug in ANY WAY and saying that Minecraft isn't tested at all gets told "lol UR the tester". 22:28:08 fizzie: Which is just silly. 22:28:13 Phamhntom_Hoover: It's still a functional language. 22:29:01 Anyone know that Python-ish C-level language? I distinctly recall it ... 22:30:56 Aww man, you were able to store things in your 2x2 inventory crafting area until the beta update. 22:30:58 I didn't know that. 22:31:37 Vorpal: The super-rare thing is just a single person's special outfit. 22:31:52 fizzie: "The downside of the mojang cape is that everyone thinks it's an item and therefore they can kill me to receive one" --C41813981398189. 22:31:55 fizzie: I think we have a duty here. 22:32:12 [["The mojang cape is [...] an item and therefore they can kill me to receive one" --/r/Minecraft; hopefully intentional.) 22:32:15 *(" 22:32:27 Heh, clevur. 22:33:02 But wasn't the cape thing already mentioned in the same list as the "even more rare" thing? 22:33:18 fizzie: Jeb doth beggeth to differ; http://i.imgur.com/XJDhN.png 22:33:42 I suggest we track Notch down and brutally murder him, repeatedly, in a futile attempt to get the cape. 22:33:50 Or just because DAMMIT NOTCH. 22:33:57 elliott, then what? 22:34:02 Phamhntom_Hoover: Then we kill him some more. 22:34:04 Oh, okay; so it's a single-person special thing in addition to the cape. 22:34:11 Why are we suggesting to kill notch? 22:34:12 Who else will be masochistic enough to develop his code further? 22:34:18 Goosey, because he's an IDIOT. 22:34:26 Other than that 22:34:32 Because CAPE. 22:34:52 Goosey: Because god dammit Notch. 22:34:57 lol 22:35:16 This is for a bug. And this is for another bug! And we'll be here until Saturday! 22:36:08 Speaking of Minecraft 22:36:13 It's so fucking laggy 22:36:29 Goosey: Yes, it's because of DEAF LECAY. 22:36:31 I can play crysis, but not minecraft? 22:36:32 elliott, "This is for a bug! This is for the 43 bugs and 3 "fixes" of entertaining aspects of gameplay you removed in the bugfix!" 22:36:42 So if i delete all the trees in an area....:D 22:36:44 Phamhntom_Hoover: This is because you're Swedish! 22:36:52 This is just because I hate you! 22:37:02 fizzie: http://twitter.com/Ridder_Graniet/status/17306802005741569 http://twitter.com/notch/status/17306923489566720 22:37:17 "Notch could be the ultimate troll if he wanted to be. 22:37:18 How hilarious would it be if he made one more release which was incredibly and purposefully broken and then retired from Minecraft." 22:37:28 Isn't he already making releases that are incredibly and purposefully broken? 22:37:29 I'd do it 22:37:35 I can't think of any other explanation for the bugs. 22:37:46 " please make that minecraft can handle ä,ü and ö" " coming tomorrow, I fixed it before I left work today" -- I didn't even know they were broken. 22:37:48 I'm going to block the patch updater and run old minecraft :/ 22:37:55 http://i.imgur.com/SQhzh.png What. 22:38:00 Goosey: good luck using SMP 22:38:01 elliott, because Notch does not actually understand coding. 22:38:07 Phamhntom_Hoover: http://i.imgur.com/SQhzh.png Indeed. 22:38:23 I don't play smp much 22:38:24 too broken 22:38:36 Phamhntom_Hoover: LOL DUPLICATION. 22:38:39 "Every time you throw a tool, two or more of that same tool are thrown. Each of those, when picked up, can also duplicate when thrown. 22:38:39 When you die, every tool you have is thrown, and is subject to the same duplication. 22:38:39 The best part is is that duplicated tools are unusable. The server detects them as duplicates, and thus are immediately destroyed after one use. Add this to the few PKers that camp the spawn point and you get tools everywhere." 22:38:45 LOL SMP 22:38:47 It still eludes me why anyone would decide to have two completely separate lumps of code for single- and multiplayer/ 22:38:53 Goosey: SMP isn't all that buggy if you disable the survival part. 22:38:55 i.e. health. 22:39:04 It's *obvious* that SP is just a special case of MP. 22:39:11 http://i.imgur.com/GNrcO.jpg MY SOULMATE 22:39:50 elliott, inventory 22:39:52 "Beta, taking everything working in alpha and breaking it, and then adding leaf decay." 22:39:53 "You can either have leaf decay or everything else, make up your minds." 22:40:05 Goosey: Well, it's server-side now. So duplication is broken. :p 22:40:09 (It was a feature!) 22:40:12 Idc about leaf decay 22:40:16 I'm not playing MC until Notch fixes things to ineiros' high standards. 22:40:18 fizzie: "The downside of the mojang cape is that everyone thinks it's an item and therefore they can kill me to receive one" --C41813981398189. <-- hah 22:40:26 "It is complete anarchy in there right now... 22:40:27 The laws of physics don't even apply. I got in a boat and sank through the ground." 22:40:32 I'd still like to know if adding 360*24*60*60*1000 to the value in ~/.minecraft/bin/version will automagically block the updating functionality (for the next year) without disabling the logging-in thing. 22:40:44 *cough* 22:40:53 Turning and turning in the widening gyre 22:40:54 The falcon cannot hear the falconer; 22:40:54 Things fall apart; the centre cannot hold; 22:40:54 Mere anarchy is loosed upon the world, 22:40:54 The blood-dimmed tide is loosed, and everywhere 22:40:54 The ceremony of innocence is drowned; 22:40:56 The best lack all conviction, while the worst 22:40:58 Are full of passionate intensity. 22:41:03 Didn't you know that was about the Minecraft beta? 22:41:30 (And not a single fuck was given that day.) 22:41:40 "on one server I got in a boat, which forced me out of the server from some java socket error. then when I came back both me and the boat were still there. then the boat left my clone sitting in the air and decided to repeatedly smash itself into a stone wall. this all took place in my mine." 22:41:54 "on one server I got in a boat, which forced me out of the server from some java socket error. then when I came back both me and the boat were still there. then the boat left my clone sitting in the air and decided to repeatedly smash itself into a stone wall. this all took place in my mine." 22:41:56 erm 22:41:58 "Inaccurate. That JPEG has a much better framerate than Minecraft on Windows 7 64 currently.{I used to get 30-40 in Alpha on Far}" 22:41:59 -!- cheater99 has joined. 22:42:05 0 FPS, fuck yeah. 22:42:29 `addquote I can play crysis, but not minecraft? 22:42:40 252) I can play crysis, but not minecraft? 22:43:01 I'm not playing MC until Notch fixes things to ineiros' high standards. 22:43:07 Maybe we should just get the hellworld out again. 22:43:15 elliott, I used to get 150-160 :/ 22:43:19 YOU WANT CHAOS?! I'LL GIVE YOU CHAOS!! 22:43:21 now I get 10-15 at best 22:43:43 Honestly 22:43:47 when I think of the source for minecraft 22:43:53 If MC were any less fun to play, I wouldn't be playing it until Notch left and Donald Knuth rewrote it from scratch. 22:44:04 I can't help but think how terribly obfuscated and inefficient it is 22:44:05 Maybe they should just get rid of Minecraft. If more people want it someone can make using GNU GPL v3 or later version, with different people, might improve slightly. 22:44:15 it probably looks like rat shit 22:44:18 Goosey: I don't think anyone's actually analysed the performance. 22:44:18 Goosey, the best part is that Notch is going to RELEASE it! 22:44:26 `addquote Maybe they should just get rid of Minecraft. If more people want it someone can make using GNU GPL v3 or later version, with different people, might improve slightly. 22:44:26 Once everyone's stopped buying. 22:44:27 253) Maybe they should just get rid of Minecraft. If more people want it someone can make using GNU GPL v3 or later version, with different people, might improve slightly. 22:44:43 Which, given the state of beta, I would estimate to be in about 3 weeks. 22:44:58 I'd still like to know if adding 360*24*60*60*1000 to the value in ~/.minecraft/bin/version will automagically block the updating functionality (for the next year) without disabling the logging-in thing. <--- does that work? 22:44:58 http://www.youtube.com/watch?v=NbTEVbQLC8s 22:45:03 for now I mean 22:45:06 vorpal 22:45:07 let me try 22:45:15 -!- cheater99 has quit (Read error: Connection reset by peer). 22:45:16 Vorpal: If I knew, I wouldn't have to wonder. 22:45:38 I have a copy of the old version 22:45:38 fizzie: You could just try, with an old backup. 22:45:40 I have a feeling it won't, since it'd be so easy I'd have seen it on the forumlons. 22:45:40 If you have one. 22:45:53 fizzie: If you mean minecraftforum, um, the average IQ is something like "duck" there. 22:46:13 loaded flatgrass 22:46:14 no lag 22:46:17 stupid trees 22:46:17 Also, I have gotten the updates when I've just copied the minecraft.jar in place and left the new-version "version" file in place, so I think it does check the .jar files too, but that's just me. 22:46:26 BURN THE TREES. 22:46:32 http://www.youtube.com/watch?v=NbTEVbQLC8s 22:46:35 what is this terrible thing 22:47:00 elliott, come on do the Qt 4 dance! 22:47:03 gtfo 22:47:15 fizzie: Why hasn't someone modded the client to say to the server, "oh ho, yes, yes, I am version 34589734589345 and my hash is bork"? 22:47:16 Sgeo, go download Oolite and play it for a while. It should stop you talking for a while. 22:47:17 Goosey, so did changing that version actually work? 22:47:23 * Sgeo wants there to be a GTK+ dance 22:47:25 fizzie: It's _possible_, by definition, anyway. 22:48:14 Maybe someone has; I haven't tried to find out a way to play with the old version (and still participate in the authentication stuff) very hard. 22:48:59 Vorpal, nope :/ 22:49:55 Does *nobody* know of that language? 22:51:21 elliott, which language? 22:51:45 Vorpal: It had a Python-y syntax but was about as low level as C. *Not* related to Python like Cython is or anything. 22:51:59 Can you tell us anything more about it? 22:52:04 Quite barebones web page; I think it had no CSS or something although IIRC there was a screenshot on the left or right with some mandelbrot written in it running... I think with a tiling WM, unantialiased X fonts? 22:52:06 fizzie: Nope, I don't recall much. 22:52:09 It was on reddit once, I think. 22:52:12 elliott, vala? 22:52:12 I'm not very helpful. :p 22:52:14 Vorpal: No. 22:52:18 Vorpal: Vala isn't Python-like at all. 22:52:24 elliott, okay 22:52:26 Genie, which is Vala's alternative "frontend", is, but no. 22:52:33 It had indentation-based syntax etc. 22:52:50 elliott, no clue 22:52:54 Grr 22:52:57 *Grr. 22:52:59 :p 22:53:11 -!- zzo38 has set topic: The closer you are to the batsman, the sillier you are. | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 22:53:15 elliott, only indention based languages I know of are: python, haskell, make 22:53:28 or at least, only ones I can remember atm 22:53:38 elliott, was it mentioned in here? 22:53:38 Vorpal: It wasn't a well-known thing. 22:53:43 I think I linked it ... maybe. 22:53:43 elliott, if so you could grep the logs 22:53:55 I'm stumped. 22:54:07 I try to look at the MSE codes to learn some things that I might or might not use to make TeXnicard. 22:54:16 j-invariant: My arms are a bloody stump. 22:55:36 One thing that might be very likely to block the updates would be just to rewrite the "version" field of the response the launcher gets for "http://www.minecraft.net/game/getversion.jsp?..." (with a transparent-Squid and a script or whatever) to whatever you have; that way the launcher just won't try to download new packages, but it will still use the has-logged-in session ID for server connections. (Of course assumes the server is old enough to speak the same 22:55:36 protocol.) 22:55:57 Phamhntom_Hoover, oolite looks... primitive? 22:56:12 Minecraft looks... primitive? 22:56:15 Phamhntom_Hoover, heck, even vegastrike has better graphics 22:56:25 elliott, fair enough, but in a different way 22:56:29 Dammit, elliott, I was going to say the same 22:56:34 Vorpal: Oolite is an Elite clone. 22:56:35 So. 22:56:39 elliott, hm okay 22:56:56 And to that you would have responded with indignation 22:56:57 Vorpal: If it looks better than http://upload.wikimedia.org/wikipedia/en/c/c4/BBC_Micro_Elite_screenshot.png, it's doing it right. :p 22:56:58 idea: induction on syntax 22:57:11 j-invariant: to implement a compiler? 22:57:24 Vorpal, well, there are expansion packs with extremely advanced graphics. 22:57:24 or interpreter, whatever 22:57:29 for equality of functors 22:57:40 So much so that I cannot use them since they break my graphics card. 22:57:41 j-invariant: ah 22:58:11 Phamhntom_Hoover, ever played EV override? 22:58:15 Phamhntom_Hoover, you might love it 22:58:16 No. 22:58:19 http://en.wikipedia.org/wiki/Oolite_%28video_game%29#Critical_reception_and_reviews Rather well-praised. 22:58:33 I'm not going to say I like it, but I got Vegastrike's interstellar movement stuck in my head. The idea of being fast when little gravity is acting on you, and slowing down near large masses 22:58:54 Phamhntom_Hoover, classic mac, doesn't run under sheepshaver. So you need a real classic mac for it. Or an ppc mac os x with classic emulation 22:58:57 Sgeo, how utterly silly. 22:59:01 a* 22:59:17 Vorpal, Oolite is cross-platform in a beautifully hideous way! 22:59:33 Phamhntom_Hoover, right, ev override was shareware 22:59:47 Phamhntom_Hoover, ambrosia software (I presume you heard about it) 23:00:11 10.10.27:18:53:21 ===> Checking for vulnerabilities in python26-2.6.6nb2 23:00:11 10.10.27:18:53:21 Package python26-2.6.6nb2 has a denial-of-service vulnerability, see http://secunia.com/advisories/41279/ 23:00:11 10.10.27:18:53:32 same for python25 23:00:11 10.10.27:18:53:38 i guess i could try python24 23:00:22 It uses Objective-C and the original Mac version was very OS X dependent, so all ports use the GNUstep libraries! 23:00:24 elliott, looks like freebsd 23:00:28 Vorpal: NetBSD 23:00:32 elliott, ah 23:00:34 s/NetBSD/Big Brother/ 23:00:38 s/Big Brother/Friend Computer/ 23:00:43 s/Friend Computer/NO YOU CAN'T INSTALL PYTHON/ 23:01:17 (ambrosia software is right up there along with spiderweb software amongst "cool sharware companies") 23:01:21 elliott, don't you agree? 23:01:27 Maybe. 23:01:27 Vorpal, see http://wiki.alioth.net/index.php/Griff_Industries for the ultra-cool OpenGL my-computer-breakery. 23:01:29 -!- cheater99 has joined. 23:01:40 Vorpal: Ambrosia soured me a bit. 23:01:57 elliott, how so? 23:02:05 <3 Microsoft Allegiance 23:02:08 They have this audio tool that lets you multiplex/redirect/etc. audio streams that I used to be able to record what's coming out of the sound and save it; except that its 23:02:21 its? 23:02:30 i hate day/night cycle 23:02:31 "trial period is over" mode was to randomly say "Hey, this is not registered, I am a generic female voice" (well, not /exactly/ that) over your recordings. 23:02:31 elliott, stop doing mc cutting on irc! 23:02:37 I JUST WANT TO BUILD DAMNIT 23:02:40 Very irritating. 23:03:00 elliott, ev override had unusual trial period over stuff too 23:03:05 Vorpal: btw http://en.wikipedia.org/wiki/Multiwinia 23:03:11 elliott, heard about it 23:03:27 <3 Introversion 23:03:30 elliott, oh and introversion is also right up there among cool companies 23:03:41 Introversion is *the* coolest company. 23:03:49 One disc has Windows/Mac/Linux binaries, and is the only disc sold. 23:03:54 Another disc has the freaking SOURCE CODE. 23:03:59 And they allow mods to be redistributed. 23:04:03 or I could just add another axiom to Category 23:04:19 So you can *buy a disc with the source code on* and *redistribute your modifications, even as binaries*. 23:04:22 Meh, I rather disliked Uplink. Loved the music, not so much the game 23:04:29 Then again, I only tried the trial version 23:04:32 Is Darwinia better? 23:04:34 The game is awesome. 23:04:38 Sgeo, that is because, as has been established, you have terrible taste. 23:04:45 Darwinia I haven't played due to not having a good enough computer when it came out. 23:04:46 Introversion is *the* coolest company. <-- no 23:04:50 Vorpal: Yes. It really is. 23:04:56 elliott, they never released the final darwinia upgrade for linux 23:05:05 elliott, that took them down a notch 23:05:06 Vorpal: I see. So what company is better? 23:05:15 If you can't name one: SORRY, still the coolest. 23:05:16 elliott, I had great fun once I worked out that with a single relatively-high risk hack you can get a million currencies. 23:05:18 elliott, well, I don't know any. But they are not perfect 23:05:27 Phamhntom_Hoover: Heh. I could never get the storyline to start. 23:05:28 elliott, still they are cool, but that thing soured me a bit 23:05:28 brb. 23:05:28 -!- cheater99 has quit (Read error: Connection reset by peer). 23:05:43 Maybe I shouldn't have read about the storyline 23:05:54 So you can go from crappy starting equipment, with some bank-oriented upgrade to OMGAWESOME supercomputer. 23:06:00 Darwinia I haven't played due to not having a good enough computer when it came out. <-- wait what 23:06:07 *upgrades 23:06:11 Maybe I'll try it agan 23:06:13 again 23:06:15 elliott, darwinia (awesome awesome) has *retro* graphics 23:06:30 Is there a Darwinia trial? 23:06:32 elliott, it is low polygon 23:06:37 Sgeo, think so 23:06:38 Sgeo, there's a demo. 23:06:43 Awesome 23:06:46 ah yeah demo 23:06:50 not the full thing of course 23:06:53 Maybe after Monday I'll try it 23:07:03 Sgeo, first thing: disable mouse gesture interface 23:07:07 it is bloody annoying 23:07:07 Uplink doesn't work on modern Linux systems, though, due to the evils of shared libraries. 23:07:10 And Braid. And get back to work on the Project 23:07:17 Phamhntom_Hoover, ouch 23:07:23 Vorpal, I know! 23:07:24 And ban all IPs on Wikisuperosity 23:07:26 ANd and and 23:07:28 Phamhntom_Hoover, was uplink the nuclear war one? 23:07:38 Vorpal, Uplink's the "hacking" one 23:07:40 Vorpal, no, the Hollywood hacking simulator. 23:07:45 oh 23:07:48 I never played it 23:07:50 sounds cool 23:08:14 OTOH, after completing the storyline about 5 times and hacking into every system in existence twice I got bored. 23:08:16 it had a real shell 23:08:31 you could delete a box's os 23:08:38 and it'd die 23:08:42 forever 23:08:46 NB: never side with ARC in the story mode; spreading that virus is ridiculously hard/ 23:09:09 I downloaded a revelation.exe from a fansite once. Never opened it, never intended to 23:09:34 Except maybe in a VM 23:09:36 Phamhntom_Hoover, I presume a chroot with older linux would work 23:09:40 Phamhntom_Hoover, when approx? 23:09:51 wait... 2001 23:09:53 Also, if you run the revelation you get from the Arunmor campaign, you get a 30-second, autonomous way of taking out any server. 23:10:02 Vorpal, it was their first game. 23:10:07 little chance of automagic deb chroot then 23:10:15 Subversion looks so cool. 23:10:27 Phamhntom_Hoover, link? 23:10:37 you could deposit into a bank 23:10:40 and 23:10:40 http://www.introversion.co.uk/subversion/ is the development blog. 23:10:56 the money woiyuold be there 23:11:01 It's extremely sporadic. 23:11:05 in a new game 23:11:17 elliott, oh, if you got caught? 23:11:20 would 23:11:22 yup 23:11:24 Phamhntom_Hoover, what is the game about? 23:11:28 Phamhntom_Hoover, subversion I mean 23:11:38 In the full version, at least, you could hack into the police servers and get people framed. 23:11:41 <3 the Uplink music 23:11:47 It's a pretty common mission. 23:11:52 yep 23:12:13 Although IIRC you can't get the elliptic curve decipherer in the demo, so good luck with that. 23:12:47 Vorpal, Subversion is AFAIK a Mission Impossibley game where you're the nerd in the van. 23:13:34 Phamhntom_Hoover, awesome 23:13:40 DEFCON is also pretty cool. 23:13:47 Phamhntom_Hoover, that was the nuclear one 23:14:02 Especially since you can have a pretty good time in MP even if you only get the demo. 23:14:25 http://www.youtube.com/watch?v=RXyHhyDzE7w LISTEN TO IT 23:15:23 You know what else was awesome? 23:15:29 The soundtrack for Micro Men. 23:15:51 Of course, since it was a fringe docudrama that only aired on BBC 4, it'll never be released. 23:15:59 Phamhntom_Hoover, have a copy of uplink? 23:16:16 Vorpal, on the old family Mac. 23:16:20 Not on this computer. 23:16:22 Anyway, http://www.youtube.com/watch?v=2y8IkcUGV9w 23:16:23 Phamhntom_Hoover, for linux? 23:16:35 buy it. 23:16:37 Skip forward until music is playing. 23:16:45 elliott, if it doesn't run any more... 23:17:09 quake ii still runs! 23:17:12 I loved that thing... 23:17:14 elliott, advocating purchasing data? 23:17:15 just use a chroot 23:17:17 elliott, it's libgtk1 IIRC. 23:17:21 I think the world is ending 23:17:22 so? 23:17:28 Or some other stupidly low version. 23:17:29 Phamhntom_Hoover, *gah* 23:17:36 Sgeo, it's purchasing from INTROVERSION. 23:17:38 Q.E.D 23:17:47 Vorpal, watch Micro Men to take your mind off it. 23:18:06 Phamhntom_Hoover, nah, after I listen to the video Sgeo linked 23:18:19 it reminds me of Perfect Dark music (but more awesome than that) 23:18:27 (though Perfect Dark was a pretty awesome game) 23:18:43 Man, that music brings back memories. 23:18:53 (The Uplink music.) 23:18:58 Try the game(s) I made. I made many different kind. 23:19:29 zzo38, you are not Introversion. 23:20:12 You can download the soundtrack from Introversion I think 23:20:24 that soundtrack is long 23:20:41 Phamhntom_Hoover: You are correct about that. But maybe try it anyways. 23:20:47 Vorpal, are you watching Micro Men 23:21:09 Phamhntom_Hoover, no, the one Sgeo linked 23:21:23 According to a YouTube commentor, there may be a glitch in the video 23:21:27 Vorpal, the Uplink soundtrack is long, obviously. 23:21:31 -!- cheater99 has joined. 23:21:42 Phamhntom_Hoover, I will watch the other one when you help me find uplink (I bought darwinia, after I tried it) 23:21:49 (I never buy something before trying) 23:22:10 Vorpal, what time? 23:22:18 Vorpal, http://www.introversion.co.uk/uplink/downloads/uplink-demo-1.54.sh 23:22:18 7:50 some awesomeness 23:22:30 You should be able to fix it better than I. 23:22:41 Phamhntom_Hoover, I meant full version 23:22:45 Do you like this kind of game http://zzo38computer.cjb.net/games/xnazzyball.png or http://zzo38computer.cjb.net/games/meskilb.png or http://zzo38computer.cjb.net/games/oldgamescreen/009.png or http://zzo38computer.cjb.net/games/DiskCatch2.png or http://zzo38computer.cjb.net/mzx1/ASCMZXTO/screen.png 23:22:54 Vorpal, not sure. 23:23:04 I think I got the Mac version from Ambrosia. 23:23:10 zzo38, NO. 23:23:10 zzo38, DF clone? 23:23:13 Probably you don't know without a description. 23:23:15 Phamhntom_Hoover, they were involved? 23:23:25 Sgeo: What is DF clone? 23:23:29 Vorpal, they're Introversion's Mac distributor AFAIK. 23:23:37 zzo38, I hate puzzle games in general 23:23:43 Phamhntom_Hoover, ah 23:23:44 zzo38, the graphics of that last screenshot look like they're from Dwarf Fortress 23:23:47 For Darwinia, Multiwinia, DEFCON and Uplink. 23:23:51 ah 23:24:09 Phamhntom_Hoover, their trial-over stuff is on crack however 23:24:10 Sgeo: They aren't. They are the CP437 character set, though. 23:24:18 Sgeo, but less literate. 23:24:19 (as exemplified by elliott) 23:24:34 Vorpal, are you watching Micro Men yes 23:24:34 -!- cheater99 has quit (Read error: Connection reset by peer). 23:24:36 *yet 23:24:40 Phamhntom_Hoover, uplink still 23:24:48 Phamhntom_Hoover, several minutes left 23:24:53 Phamhntom_Hoover, sorry about upstaging you 23:25:04 Sgeo, you watch Micro Men. 23:25:14 After the Uplink soundtrack is over 23:25:16 It's like the best thing the BBC have made since forever. 23:25:37 Phamhntom_Hoover, well. We will see. 23:25:56 Vorpal, there's glitching around 11:20 23:26:07 Phamhntom_Hoover, but uplink music reminds me of Perfect Dark in parts 23:26:08 not all parts though 23:26:13 but I guess that is only natural considering the genre 23:26:20 Glitching ends before 11:30 23:26:24 Hey, I have a copy of Perfect Dark somewhere!! 23:26:43 Phamhntom_Hoover, well, it doesn't work well under mupen64plus 23:26:47 Phamhntom_Hoover, that is all I can say 23:26:47 For the last screen-shot, if you want information (and list of things that are not true in the "Criticize" section), see: http://www.digitalmzx.net/wiki/index.php?title=Super_ASCII_MZX_Town 23:26:51 I've never *played* it, and I'm not entirely confident it or the second-hand N64 work, but.. 23:27:04 Phamhntom_Hoover, hah 23:27:14 Phamhntom_Hoover, it is, or was, an awesome game 23:27:30 Vorpal, <3 Rogue Squadron, incidentally. 23:27:39 Vorpal: the only reason pirating minecraft was acceptable for demoing is because there is no demo offered. you can easily figure out whether you'll like uplink from the demo. if you just want to pirate it, fine, but don't phrase it as trying-before-you-buy. 23:27:42 and don't expect Phamhntom_Hoover to help you 23:28:05 Phamhntom_Hoover, never played that 23:28:09 Phamhntom_Hoover, genre? 23:28:22 Vorpal, space-sim-but-not-really. 23:28:27 Phamhntom_Hoover, hm 23:28:50 It *should* be a space sim, but exactly one of the levels are in anything that could be called space. 23:28:52 Sgeo: Now do you like this game? 23:29:35 It hardened me against escort missions early on. 23:29:48 Vorpal: the only reason pirating minecraft was acceptable for demoing is because there is no demo offered. you can easily figure out whether you'll like uplink from the demo. if you just want to pirate it, fine, but don't phrase it as trying-before-you-buy. 23:29:48 and don't expect Phamhntom_Hoover to help you 23:30:06 "Some of the puzzles do not work correctly except on the author's computer" 23:30:26 Oh, those criticisms are all jokes? 23:30:42 We're not supposed to kill BIG_MONSTER? 23:30:47 Sgeo: That isn't true, though. Everything in the criticisms list is untrue. 23:30:51 elliott: axioms like forall {X X' Y}, ObEq X X' -> Hom X Y -> Hom X' Y can't be realized 23:30:57 Rogue Squadron and OoT were basically the first games I played. 23:31:05 zzo38, Criticisms says to kill the BIG_MONSTER... 23:31:05 j-invariant: goodbye constructivism :P 23:31:15 there needs to be a way... 23:31:44 Sgeo: Yes you shouldn't kill BIG_MONSTER. (You can't, anyways. But even if you could, you shouldn't. You should kill MEDIUM_SIZE_MONSTER though, because they are bad and BIG_MONSTER can help you to beat them.) 23:32:25 Understand? 23:32:38 * Sgeo decides not to trust zzo38 to write cross-platform software 23:32:54 * Phamhntom_Hoover decides not to trust zzo38 for ANYTHING. 23:33:14 "so you have to use the same forked version of MegaZeux that zzo38 wrote" 23:33:34 Sgeo: This game is cross-platform software. Most of the software I write is cross-platform software and most of it works. (I have even tested some of my programs on Linux and they work.) 23:33:46 -!- pikhq has joined. 23:34:08 Phamhntom_Hoover, so what about that micromen 23:34:15 Phamhntom_Hoover, decent music, but that's it 23:34:18 zzo38, I meant in the sense of "is likely to write his own fork of the platform and make it run exclusively on that" 23:34:19 Sgeo: That is for Part II. Part I does not require it (but does work with my version of MegaZeux). I have only compiled my forked version of MegaZeux on Windows, but it should work on other operating system, too. 23:34:30 Vorpal, Philistine. 23:34:34 Phamhntom_Hoover, hm? 23:34:35 I expected as much! 23:34:45 Phamhntom_Hoover, I loved uplink music! 23:35:02 i bet Vorpal wouldn't even like the IT crowd! 23:35:07 RABBLE RABBLE 23:35:09 I love The IT Crowd! 23:35:10 Sgeo: O, that is what you mean. Still, you should be able to compile the one with PZX-feature on any operating system with C and SDL. 23:35:19 elliott, well, I did show him the "Have you tried turning it off and on again clip". 23:35:23 elliott, is that the one I seen a clip from where the technobable made sense? 23:35:28 He responded positively. 23:35:30 Vorpal: Probably. 23:35:36 Vorpal, that's a sign of QUALITY. 23:35:43 elliott, something about the global interrupt table in the NT kernel or such 23:35:50 which made absolutely perfect sense 23:35:52 I've only seen seasons 1 and 2 :( 23:35:55 Phamhntom_Hoover, quite! 23:36:00 Vorpal: yes, that 23:36:15 Sgeo, Season 3... hmm... 23:36:25 I'm trying to remember if there's been a Season 4. 23:36:28 Phamhntom_Hoover: What things you didn't trust me with? Maybe some things I cannot properly be trusted but some things I can do it why didn't you trust it?? 23:36:32 I've only seen sporadic episodes; last I watched was the (Street) Countdown one. 23:36:43 elliott, I read about NT internals (don't ask why, I don't know). And I can tell you it was a perfectly sensible (if somewhat unlikely) problem description 23:36:50 elliott, was that the one where Moss ends up justifying the Iraq war? 23:37:09 Phamhntom_Hoover: I forget. 23:37:23 No, wait, that one was the one where he invents the bra. 23:37:29 Vorpal: IIRC it had one issue 23:37:40 Vorpal: in that he said you wanted X to happen when in fact you didn't, i.e. the opposite 23:37:40 elliott, oh? 23:37:42 or something 23:37:46 Why don't you tell me why? If you tell me why and it is a genuine mistake, I can attempt to correct it. 23:37:46 elliott, ah could be 23:38:01 elliott, don't remember exactly 23:38:05 I'm making practical applications for redstone :/ 23:38:16 Goosey, such as the CPU? 23:38:23 well that would lag... 23:38:26 Until redstone can control an automatic mining machine, I don't acre. 23:38:27 *care. 23:38:45 that would pwn 23:38:51 Vorpal, obviously one of the idiots on the 8th floor tried writing his own drivers for the printer and called Moss for help. 23:39:02 Phamhntom_Hoover, haha 23:39:09 THINGS THAT NEED TO HAPPEN: BOfH cameo on the IT Crowd. 23:40:26 XD 23:40:29 -!- cheater99 has joined. 23:41:01 Even better: the BOfH IS Renham Industries' network operator. 23:41:25 *Reynholm, you ... thing. 23:41:34 http://www.reynholm.co.uk/ 23:41:56 elliott, shh! 23:42:06 wat 23:42:14 Moving from the sublime to the ridiculous: Richmond is the BOfH in disguise! 23:42:24 Do you like any of the games in this list? BJACK BUMPERSH COLORSOL COLORSPI DANCEKEY DOWN ELEMENTA FATHER GIVEAWAY HACKBITS KNAR MAKETEN MAZEMAN MINES MUDCAGE MUTCHNAM PUZGEN PUZZLEX QCOOKIE SKEDALS SNAKEBIT SOVMINGA STARSTAK STARWARS STEPTILE STOKER WUMPUS9 . 23:44:56 END THE VELOCIRAPTORS TYRANNY! BOARD UP YOUR HOMES! 23:44:56 -!- cheater99 has quit (Read error: Connection reset by peer). 23:45:35 zzo38, NO, WE DON'T AND WE NEVER WILL 23:45:53 * Goosey hides after remembering this is a akcd hate club 23:45:59 Akcd! 23:46:02 The best web comic! 23:46:10 http://akcd.com/ THE BEST SPAM PAGE 23:46:17 xkcd... 23:46:26 Goosey: Note: I only hate xkcd post-around-comic-400. 23:46:31 It used to be excellent. 23:46:43 Phamhntom_Hoover: What did you not like about this game? 23:46:44 why is it not anymore? 23:46:54 and I like the black hat guy though :/ 23:47:02 Goosey: Because Randall went insane? 23:47:02 "so you have to use the same forked version of MegaZeux that zzo38 wrote" 23:47:05 whoops 23:47:05 Or just ran out of ideas. 23:47:15 "Your helpdesk request has been successfully received. You have been automatically allocated the ticket number O65LRV2T. Please record this number in a safe place." 23:47:59 -!- cheater99 has joined. 23:50:08 -!- cheater99 has quit (Read error: Connection reset by peer). 23:51:02 * Sgeo has a Reynhold Industries ID card! 23:53:02 SQL Query: SELECT `userid`, `username`, md5(`password`) FROM `intranet_users` 23:53:56 I am still in progress of Part II game, so I didn't put SMALL_MONSTER yet, but SMALL_MONSTER is neither good nor bad. Now BIG_MONSTER is good, MEDIUM_SIZE_MONSTER is bad, and SMALL_MONSTER is neither good nor bad; this works isn't it? 23:54:11 Sgeo: Now I am going to steal your ticket number and sell it in the black market for access cards. 23:56:51 hm 23:57:02 I created a semi controllable oscillator in mc 23:57:14 there are known oscillators 23:57:21 mine changes speed bitch 23:58:03 -!- j-invariant has quit (Quit: leaving). 23:58:29 * Sgeo sics a female dog on Goosey 2010-12-22: 00:04:01 what is the point in even trying to protect a game 00:04:09 its going to get cracked anyways 00:05:35 Make it harder for lazier people to pirate it 00:05:56 It's just a matter of copying and pasting a cracked exe 00:06:02 I'm lazy and I can do that 00:06:06 -!- cheater99 has joined. 00:06:13 then again I also crack my own games sometimes, so I guess I'm not that lazy 00:08:41 1 or 2 requests a second shouldn't accidentally DoS anyone, should it? 00:09:12 Target is using Dreamhost 00:11:10 -!- cheater99 has quit (Read error: Connection reset by peer). 00:11:31 Sgeo: um that's not a very good idea prolonged 00:11:59 :/ 00:12:22 -!- Phamhntom_Hoover has quit (Ping timeout: 245 seconds). 00:14:07 elliott, hm? 00:15:25 Sgeo: well how long would you be making such requests for 00:15:34 ~18 hours 00:16:08 Maybe not all at one time 00:16:11 -!- zzo38 has quit (Quit: You forgot about the AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA****************************\\\\\\\\\\\\\\\\\\\\\\). 00:16:31 At any rate, I just contacted someone who might have administrative control of the wiki 00:17:02 "Hi. Do you have control over the wiki? Unofficial policy seems to be 00:17:02 that unregistered edits should be disabled for the time being. I've 00:17:03 been contemplating writing a bot to ban IPs, but I'd really rather 00:17:03 not. There should be a simple setting somewhere, I think." 00:17:14 Sgeo: 1-2 edits a second for 18 hours? 00:17:15 L O L 00:17:25 elliott, 1-2 bans a second 00:17:30 *requests 00:17:37 i'm assuming it's on a shitty server 00:17:39 which i find very likely 00:18:39 All I know is Dreamhost 00:19:12 -!- j-invariant has joined. 00:20:19 well maybe 00:20:21 WHY NOT 00:20:27 it'll probably be slightly slower. 00:21:15 I improved http://esolangs.org/wiki/Main_Page 00:27:07 -!- cheater99 has joined. 00:29:57 -!- cheater99 has quit (Read error: Connection reset by peer). 00:31:28 CVSup is written in Modula-3. 00:34:12 Seriously! What is this language! 00:37:50 MediaWiki.org uses what looks like a Linspire icon 00:40:02 I MUST FIND THIS LANGUAGE. 00:42:31 LOL at http://www.mediawiki.org/wiki/MediaWiki:Newarticletext 00:46:04 -!- cheater99 has joined. 00:49:27 -!- cheater99 has quit (Read error: Connection reset by peer). 00:53:23 tswett: hey, any slashes program ending with \ is invalid, right? 00:59:30 * Sgeo slashes elliott's head off 01:01:28 tswett: And what about //foo/? Does that terminate immediately, or $wtf forever? 01:05:39 -!- cheater99 has joined. 01:09:31 -!- cheater99 has quit (Read error: Connection reset by peer). 01:18:15 *Main> run "/abc/def/abc" 01:18:15 "" 01:18:17 Tha's no' ri'. 01:21:54 *Main> replace "abc" "def" "helloabc" 01:21:54 "defc" 01:21:55 what 01:22:01 oh! 01:23:44 -!- Gracenotes has joined. 01:25:37 -!- cheater99 has joined. 01:27:56 -!- j-invariant has quit (Quit: leaving). 01:31:34 -!- cheater99 has quit (Read error: Connection reset by peer). 01:33:00 the name of the game. the length of the string. the crime of the time. the dog ate my moon. 01:33:01 Deep. 01:45:13 -!- MigoMipo has quit (Quit: Quit). 01:47:37 -!- cheater99 has joined. 01:49:46 -!- FireFly has quit (Quit: swatted to death). 01:50:58 -!- cheater99 has quit (Read error: Connection reset by peer). 02:05:14 Oh my God 02:05:15 This 02:05:16 is 02:05:17 the 02:05:17 most 02:05:24 epic keygen music I have ever heard 02:05:54 The dancing pirate is awesome too 02:06:35 -!- cheater99 has joined. 02:07:39 -!- cheater99 has quit (Read error: Connection reset by peer). 02:23:35 -!- cheater99 has joined. 02:24:08 Someone's playing DDR, I see. 02:24:52 ? 02:28:04 -!- cheater99 has quit (Read error: Connection reset by peer). 02:33:13 -!- oerjan has joined. 02:36:39 tswett: hey, any slashes program ending with \ is invalid, right? 02:36:48 indeed not 02:36:50 the program just terminates 02:36:52 any slashes program consisting solely of \, you mean 02:36:53 according to my interpretation of the spec 02:36:54 right 02:36:57 well, no 02:36:59 oerjan: foo\ 02:37:01 that prints foo and exits 02:37:06 yep 02:37:08 because when there's not enough program to execute, program execution stops 02:37:15 i wrote a haskell slashes impl 02:37:18 the spec is quite clear on that point. 02:37:27 http://sprunge.us/ICgN 02:37:29 probably very slow 02:37:37 but quite elegant 02:37:42 otoh the perl implementation may not be entirely correct on //.../ stuff, there was a discussion 02:37:48 mine infloops on that 02:37:52 i read the discussion 02:38:26 ah yes it was a perl special case feature interfering 02:44:00 -!- cheater99 has joined. 02:44:35 http://www.youtube.com/watch?v=98ew0VtHmik 02:46:26 Goosey, wtf? 02:46:26 -!- cheater99 has quit (Read error: Connection reset by peer). 02:48:32 pikhq: I figured how to do N-arg c lambdas. 02:48:58 pikhq: basically fn((int a, int b, int c), ...) using "join_args_commas args" inside fn and "join_args_semicolons", this also lets us do type inferrence 02:49:03 this is just a note to self, amend http://sprunge.us/IOdM tomorrow 02:49:42 Also pikhq should link me to his copyable lambda code so I can base it off that. 02:50:02 Sgeo, Revolution 02:55:42 elliott: ^ 02:55:55 (yoy forgot to ping yourself ;) ) 02:55:56 oerjan: ? 02:55:59 oh 02:55:59 heh 02:56:05 *you 02:57:37 -!- elliott has quit (Quit: Leaving). 03:02:33 -!- cheater99 has joined. 03:06:41 -!- cheater99 has quit (Read error: Connection reset by peer). 03:22:33 -!- cheater99 has joined. 03:27:06 -!- cheater99 has quit (Read error: Connection reset by peer). 03:31:10 -!- oerjan has quit (Quit: leaving). 03:42:33 -!- cheater99 has joined. 03:43:55 -!- cheater99 has quit (Read error: Connection reset by peer). 03:51:58 -!- augur_ has joined. 03:54:38 -!- augur has quit (Ping timeout: 240 seconds). 03:56:59 -!- augur_ has changed nick to augur. 04:00:00 -!- cheater99 has joined. 04:06:10 -!- cheater99 has quit (Read error: Connection reset by peer). 04:06:43 -!- sftp has quit (Remote host closed the connection). 04:19:37 It has been *years* since I played FFX, and I still have the freaking Hymn of the Fayth stuck in my head. 04:19:47 Dammit UEMATU! 04:20:33 -!- cheater99 has joined. 04:24:15 -!- cheater99 has quit (Read error: Connection reset by peer). 04:36:39 -!- pikhq has quit (Ping timeout: 260 seconds). 04:38:16 -!- pikhq has joined. 04:40:03 -!- cheater99 has joined. 04:42:09 -!- cheater99 has quit (Read error: Connection reset by peer). 04:50:06 Hah... PCRM has published bottom 5 cookbooks for the year... Of course, knowing what PCRM does, good work from writers of those 5. 04:50:57 ha 04:52:39 PCRM, CSPI, PETA... All part of same bunch... 04:55:15 And all have doublespeak names... 04:56:41 they're in league with each other? 04:56:58 AFAIK, Yes. 04:58:03 -!- cheater99 has joined. 04:59:28 And the "best" cookbooks of the year on list PCRM did are all vegan (caveat!) or vegetarian (not so good). 05:00:24 caveat? 05:00:37 Essentially means "Watch out!" 05:01:02 -!- cheater99 has quit (Read error: Connection reset by peer). 05:01:04 I know what a caveat is 05:01:07 what is the caveat? 05:02:20 Vegan diet without supplementing leads to nutrional defiencies. 05:02:47 k 05:02:59 And that it isn't good for health even when when supplementing is an understatement. 05:03:52 xkcd is only funny today because of previous xkcd 05:04:08 Oh, and having herbivore without signaficant predators in any ecosystem is a recipe for disaster. 05:08:25 Even with plant-based diet one must choose the animal products well to avoid trouble with defiencies. And there are some plant products that are not acutely toxic but still just plain unfit for human consumption. 05:09:26 Ilari: There is no indication that a cultivating omnivore is no less dangerous 05:11:40 Perhaps... But that "herbivore on top of food chain" disaster has been seen time and time again... 05:11:57 Sure 05:12:07 But our situation has never truly occurred 05:12:12 in the known history of life 05:14:17 -!- Gracenotes has quit (Ping timeout: 265 seconds). 05:16:57 -!- cheater99 has joined. 05:17:17 And also, agriculture as presently practiced is really destructive to the environment and health. 05:17:47 sure 05:18:06 an obvious economical consequence that will not be overcome until necessary 05:19:31 -!- cheater99 has quit (Read error: Connection reset by peer). 05:20:08 elliott: I met someone with more nostalgia than myself. 05:20:15 Really destructive to health: Second worst health-related disaster humankind has ever experenced. 05:20:46 Ilari: why do you say health? 05:20:54 also what do you consider #1? 05:22:23 Actually, #1 was also related to agriculture... 05:22:32 and that is? 05:23:00 The beginning of agriculture with cereal grains. That was REALLY ugly. 05:23:10 oh, yes 05:23:17 but we got over that one, more or less 05:23:24 hmm? 05:24:43 One can tell from remains of human skull around the time of beginning of argriculture if it is remains of hunter-gatherer or of member of agricultural tribe with one look if one knows what to look for... 05:25:10 The diffrence is just so massive. 05:25:19 Yeah, not about to abandon agriculture, thank you very much 05:26:02 Well, there are way better ways (for human health and environment) to do agriculture than what is presently done. And the reason why these changes are not done is economics. 05:29:09 It is cheaper to do half-assed job and expend lots of fossil resources than to do it properly. 05:31:31 This is closely related to reasons why seed oils and margarine are promoted as "healthy" and why butter is demonized as "unhealthy". 05:32:49 Ilari: economics is not about money 05:35:31 -!- cheater99 has joined. 05:36:09 Oh, and organization closely related to PCRM (CSPI) is the one who made restaurants switch from frying with tallow, lard and co to frying with partially hyrogenated plant fats (the unhealthiest fats in existence). 05:37:21 Ilari: no 05:38:01 the public has thankfully managed to straighten out the difference between saturated, cis-unsaturated, and trans-unsaturated fats, thankfully 05:39:47 -!- cheater99 has quit (Read error: Connection reset by peer). 05:40:53 Oh, and don't forget the diffrence between trans fats from partial hydrogenation (why these are even allowed?) and vaccinic acid/conjugated linolic acid (seem to be healthy). 05:42:26 yeah, that's true 05:42:38 our body can process a few naturally-occuring trans-unsaturated fats 05:43:38 Still, one often hears statements about fats that can be only explained by 1) Who gives the statement has absolutely no clue about what they are talkin about. 2) The statement is just plain disinformation. 05:43:53 Or intentional attempt to mislead the public... 05:46:56 Wonder what is efficency of conversion of linolic acid into archadonic acid in the body... Is it real bad like ALA->EPA/DHA conversion or way better than that? 05:47:38 Ilari: do you understand why trans fats are bad for you? 05:50:25 Oh, and techno trans fats don't occur alone. Hydrogenation also produces dihydrovitamin-K1 from vitamin K1. Little is known about that compound, but the little that is known is chock full of red flags... 05:54:18 Ilari: I repeat my question 05:55:23 Nope, the biochemical basis of why trans fats are unhealthy could be rather interesting reading... 05:56:00 -!- cheater99 has joined. 05:59:24 -!- cheater99 has quit (Read error: Connection reset by peer). 06:01:35 Hmm... Eldaic acid (the infamous trans fat) has the double bond in position 9 (and most well-known desaturase acts on just that position)... 06:02:45 desaturating position 6 would create C=C-C-C=C group (which is somewhat unstable). 06:15:33 -!- cheater99 has joined. 06:18:48 -!- cheater99 has quit (Read error: Connection reset by peer). 06:35:02 -!- cheater99 has joined. 06:38:51 -!- cheater99 has quit (Read error: Connection reset by peer). 06:54:59 -!- cheater99 has joined. 06:56:25 -!- oerjan has joined. 06:58:11 -!- cheater99 has quit (Read error: Connection reset by peer). 07:00:43 "For your Consideration, The Firms of Dutton & Riverhead Books of New York City, Publishers of Ken Follett, Darin Strauss, David Rees, and the RZA, Present in the English Language: A Further Compendium of Complete World Knowledge in "The Areas Of My Expertise" Assembled and Illumined by Me, John Hodgman, A Famous Minor Television Personality*, Offering More Information Than You Require On subjects as Diverse As: The Past (As There Is Always 07:00:43 More of It), The Future (As There is Still Some Left), All of the Presidents of the United States, The Secrets of Hollywood, Gambling, The Sport of the Asthmatic Man (Including Hermit-Crab Racing), Strange Encounters with Aliens, How to Buy a Computer, How to Cook an Owl, And Most Other Subjects, Plus: Answers To Your Questions Posed via Electronic Mail, And: 700 Mole-Man Names, Including Their Occupations." 07:00:49 *Formerly a Former Professional Literary Agent and Professional Writer, AKA "The Deranged Millionaire" 07:00:52 Now there's a title. 07:04:13 pikhq: i only know of it due to hodgman's association with joco and the list of hobo names 07:14:00 -!- cheater99 has joined. 07:14:20 How difficult would it be to port zzo38's MegaZeux stuff to Flash? 07:17:10 -!- cheater99 has quit (Read error: Connection reset by peer). 07:32:59 -!- cheater99 has joined. 07:37:06 -!- cheater99 has quit (Read error: Connection reset by peer). 07:41:16 -!- sexygirl153 has joined. 07:41:19 -!- sexygirl153 has quit (Client Quit). 07:42:06 cal153: THAT WAS TOO OBVIOUS 07:42:34 launched 2 copies of mirc by mistake >.> 07:43:06 you mean that is your _actual_ alternative nick? very well then. 07:43:21 indeed so 07:53:01 -!- cheater99 has joined. 07:55:03 Hmm... New set of IPv4 allocation reports is coming soon... 07:57:26 -!- cheater99 has quit (Read error: Connection reset by peer). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:06:45 Hmm... 2.96x/8... 08:09:43 IPv6 depletion is still at 0.027%. Wonder if they manage to deplete even one IPv6 block next year (oh, and there are 506 of them free currently)... 08:13:03 -!- cheater99 has joined. 08:16:34 -!- cheater99 has quit (Read error: Connection reset by peer). 08:18:17 -!- Gracenotes has joined. 08:18:22 elliott: Build system weirdness: http://p.zem.fi/bow4 -- the actual link failure is because on some systems just having "gio-2.0" is not enough to pull in gthread fluff, so libs also needs "gthread-2.0"; but it fails in a bit funny way. 08:18:39 With V=1 it fails the way you'd expect, with the failing link step last and no extra fluff after. 08:19:54 At least no weird header / library incompatiblities. 08:22:49 I think a quoting thing is involved. 08:23:06 Corresponding useful.make snippet: 08:23:08 define do 08:23:09 echo '$(SPACE)$(SPACE)$(1)$(TAB)$(2)'; \ 08:23:09 $(strip $(3)) || ( \ 08:23:09 exit=$$?; \ 08:23:09 echo ' (command was: $(strip $(3)))'; \ 08:23:09 exit $$exit \ 08:23:11 ) 08:23:13 endef 08:24:20 And it ends up executing: echo ' LINK _build/mcmap'; cc [..] || ( exit=_build/cmd.o _build/console.o [..]; echo '...'; exit xit ) 08:25:26 Yes, just stupidly quadruplicating the $$s into $$$$s makes it work. 08:26:10 I'm assuming some double-expansion there somewhere; maybe once on the definition and once on use? 08:26:26 (GNU Make 3.81.) 08:32:31 -!- cheater99 has joined. 08:35:50 -!- cheater99 has quit (Read error: Connection reset by peer). 08:51:33 -!- cheater99 has joined. 08:57:47 -!- cheater99 has quit (Read error: Connection reset by peer). 09:11:57 -!- cheater99 has joined. 09:14:29 -!- cheater99 has quit (Read error: Connection reset by peer). 09:19:01 -!- Sgeo has quit (Read error: Connection reset by peer). 09:30:35 -!- cheater99 has joined. 09:37:50 -!- cheater99 has quit (Read error: Connection reset by peer). 09:53:31 -!- cheater99 has joined. 09:57:31 -!- cheater99 has quit (Read error: Connection reset by peer). 10:02:49 -!- Mathnerd314 has quit (Ping timeout: 276 seconds). 10:05:33 -!- MigoMipo has joined. 10:13:31 -!- cheater99 has joined. 10:14:45 -!- cheater99 has quit (Read error: Connection reset by peer). 10:30:01 -!- cheater99 has joined. 10:34:05 -!- cheater99 has quit (Read error: Connection reset by peer). 10:46:21 -!- MigoMipo has quit (Remote host closed the connection). 10:50:05 -!- cheater99 has joined. 10:54:25 -!- cheater99 has quit (Read error: Connection reset by peer). 11:10:33 -!- cheater99 has joined. 11:14:52 -!- cheater99 has quit (Read error: Connection reset by peer). 11:29:33 -!- cheater99 has joined. 11:34:02 -!- cheater99 has quit (Ping timeout: 245 seconds). 11:45:40 -!- cheater99 has joined. 11:48:19 -!- cheater99 has quit (Read error: Connection reset by peer). 11:48:59 -!- Vorpal_ has joined. 11:49:28 -!- Vorpal has quit (Ping timeout: 272 seconds). 12:04:33 -!- cheater99 has joined. 12:10:24 -!- cheater99 has quit (Read error: Connection reset by peer). 12:25:59 -!- cheater99 has joined. 12:30:10 -!- cheater99 has quit (Read error: Connection reset by peer). 12:33:52 -!- Vorpal_ has changed nick to Vorpal. 12:45:59 -!- cheater99 has joined. 12:48:39 -!- cheater99 has quit (Read error: Connection reset by peer). 13:04:33 -!- cheater99 has joined. 13:08:26 -!- cheater99 has quit (Read error: Connection reset by peer). 13:14:39 "* Rewrote Leaf Decay for the seventeenth time, and as a result.. 13:14:39 * .. fixed HUGE fps drops in single player 13:14:39 * .. fixed players getting spammed with data and getting disconnected in SMP 13:14:39 * .. felt like a sexy programming god 13:14:39 * Fixed the item dupe bug in SMP" 13:14:55 I'm not sure that third subitem there is a good sign, but at least it's (supposedly) fixed now. 13:17:21 -!- Phantom_Hoover has joined. 13:19:51 Has MC been patched to a working state yet? 13:22:45 That's what they say. 13:22:52 "* Rewrote Leaf Decay for the seventeenth time, and as a result.. 13:22:52 * .. fixed HUGE fps drops in single player 13:22:52 * .. fixed players getting spammed with data and getting disconnected in SMP 13:22:52 * .. felt like a sexy programming god 13:22:52 * Fixed the item dupe bug in SMP" 13:22:54 I'm not sure that third subitem there is a good sign, but at least it's (supposedly) fixed now. 13:23:00 This was just before your join. 13:23:46 Oh, and the beta 1.1 update he posted was further updated to 1.1_01 because 1.1 "contained a bug where no text worked anywhere in the game because the newly made font.txt didn’t make it into package when building.." 13:24:00 But such issues are the norm when you're dealing with a "sexy programming god". 13:24:20 NOTCH: the man with the ego to dwarf Wolfram's. 13:24:35 -!- cheater99 has joined. 13:25:00 "Of course, that font bug doesn't happen except when testing through the live system.. Hold on.." -- "Yes, I ran the game right after it went on the live system, and saw the bug =)" 13:25:18 http://en.wikipedia.org/wiki/Infinity_%28MMOG%29 13:25:19 So he doesn't have any sort of system in place that'd test the binary blob he pushes into the world-wide updates. 13:25:23 How clevur. 13:26:14 "groooan, updated to 1.1_02, mandatory for client and server, fixing the container not opening with empty hands bug [7 minutes ago via web]" 13:26:15 I like the fact that it has 4 awards despite the fact that only a combat simulator with next to no of the promised features has been released. 13:26:42 fizzie, this is the first time I've ever seen you actually mocking someone. 13:27:40 -!- cheater99 has quit (Read error: Connection reset by peer). 13:27:51 It's like the sort of stuff I do with mcmap, except that I have an audience of, uh, four, instead of 855793. 13:43:35 -!- cheater99 has joined. 13:46:45 -!- cheater99 has quit (Read error: Connection reset by peer). 13:52:58 -!- ais523 has joined. 14:02:59 -!- cheater99 has joined. 14:06:45 -!- cheater99 has quit (Read error: Connection reset by peer). 14:12:58 -!- Phantom_Hoover has quit (Read error: Connection reset by peer). 14:14:22 hmm, a site seems to have replaced an article with an entirely different article about a vaguely similar subject, in response to it being slashdotted 14:15:36 -!- Phantom_Hoover has joined. 14:16:58 -!- j-invariant has joined. 14:21:38 oerjan, as a mathematician, what is your opinion on whether 0 \in N? 14:23:07 it differs by mathematical subject 14:24:33 0 is round and N is all acute-angly, I don't thing the former belongs in the latter. 14:24:51 -!- cheater99 has joined. 14:25:36 Incidentally, I wonder if programmers in general (due to the whole zero-indexing thing) are more likely to put 0 in N than a random sampling of other people. Maybe someone should do a poll. 14:25:48 -!- cheater99 has quit (Read error: Connection reset by peer). 14:29:54 -!- elliott has joined. 14:32:30 00:25:26 Yes, just stupidly quadruplicating the $$s into $$$$s makes it work. 14:32:38 fizzie: But I just /replaced/ them with $$s from $$$$s. 14:32:50 Fair enough though. 14:33:00 It's because I use do both in template rules and real rules. TODO: fix. 14:34:00 23:04:13 pikhq: i only know of it due to hodgman's association with joco and the list of hobo names 14:34:04 the hobo names are in the previous book. 14:34:45 23:41:16 --- join: sexygirl153 (~cal@c-24-4-207-72.hsd1.ca.comcast.net) joined #esoteric 14:34:45 23:41:19 --- quit: sexygirl153 (Client Quit) 14:34:47 2004 repeats itself 14:36:41 06:25:36 Incidentally, I wonder if programmers in general (due to the whole zero-indexing thing) are more likely to put 0 in N than a random sampling of other people. Maybe someone should do a poll. 14:36:49 fizzie: I think 0 should be in N but accept that it usually isn't 14:40:17 $ make 14:40:18 LINK_build/mcmap 14:40:18 cc: _build/cmd.o: No such file or directory 14:40:18 cc: _build/console.o: No such file or directory 14:40:18 cc: _build/main.o: No such file or directory 14:40:18 cc: _build/map.o: No such file or directory 14:40:20 cc: _build/protocol.o: No such file or directory 14:40:22 cc: _build/world.o: No such file or directory 14:40:24 I, uh, regret adding OBJDIR support. 14:43:27 -!- cheater99 has joined. 14:45:26 fizzie: Oh well, actually turns out $$ -> $$$$ works perfectly for everything. Pushed it without realising I'd not done anything else, sorry if that causes conflcits. 14:46:53 -!- cheater99 has quit (Read error: Connection reset by peer). 14:46:56 when things don't work, add more dollars 14:47:02 what escaping format is there that requires quadrupling of dollars? 14:47:40 ais523: GNU Makke 14:47:42 *Make 14:47:46 ais523: GNU Make metaprogramming 14:47:47 to be exact 14:48:35 heh, you're trying to show GNU make TC? 14:48:40 ais523: no 14:48:45 ais523: this is actual code used in an actual project :) 14:48:49 boring 14:48:52 ais523: well, the latter because ... I bugged fizzie until he let me put it in 14:49:06 ais523: /boring/? I've practically proved GNU make TC /accidentally/ in the process of using it 14:49:14 which, if you've ever used GNU make, you will understand is not very usual 14:49:26 define clean-recipe 14:49:26 $(foreach x,$(to-clean),$(call do,RM,$(objdir)/$(x),rm -f $(objdir)/$(x)) 14:49:26 ) 14:49:27 $(call do,RMDIR,$(objdir),rmdir $(objdir) 2>/dev/null || true) 14:49:27 endef 14:49:27 clean: ; $(clean-recipe) 14:49:32 that newline before the ) is *required* :) 14:49:40 and you must define clean like that ... I'm still not sure why 14:49:54 I'm more used to portable make than GNU make 14:50:03 ais523: define c-program-body 14:50:03 to-install += $(1) 14:50:03 to-clean += $(1) $(2:.c=.o) $(2:.c=.d) 14:50:03 $(objdir)/$(1): $(2:%.c=$(objdir)/%.o) Makefile | $(objdir) ; \ 14:50:03 $(call do,LINK,$(objdir)/$(1),$(cc.link) -o $(objdir)/$(1) \ 14:50:04 $(2:%.c=$(objdir)/%.o)) 14:50:05 $(if $(cleaning),,-include $(2:%.c=$(objdir)/%.d)) 14:50:07 endef 14:50:09 ## $(call c-program,foo,foo.c bar.c) -- compiles foo.c and bar.c into foo 14:50:11 c-program = $(eval $(call c-program-body,$(strip $(1)),$(strip $(2)))) 14:50:13 ais523: GNU Make is SO MUCH MORE FUN. 14:50:39 the actual escaped thing, btw: 14:50:40 define do 14:50:40 @echo '$(SPACE)$(SPACE)$(1)$(TAB)$(2)'; \ 14:50:40 $(strip $(3)) || ( \ 14:50:40 exit=$$$$?; \ 14:50:40 echo ' (command was: $(strip $(3)))'; \ 14:50:42 exit $$$$exit \ 14:50:44 ) 14:50:46 endef 14:53:10 elliott: I do hope it's a GNUmakefile and not a Makefile! 14:53:21 Deewiant: You hope wrong :-) 14:53:38 Deewiant: The Makefile itself is perfectly portable to any make with, uh, "include file" and "$(call foo,bar,baz)". 14:53:53 Deewiant: But if it doesn't have its own implementation of useful.make built in, well, I even included a GNU Make one for you. 14:54:04 See? It's kindness. 14:54:18 Do most makes have that stuff? :-P 14:54:49 Deewiant: Only decent ones. Sadly, there are no decent makes. 14:54:51 Incidentally, I'm not entirely certain the deps work; "make ; touch world.h ; make" => Nothing to be done for `all' for the latter case. 14:55:14 fizzie: Hmm 14:55:39 Another objdir-related thing, I believe. 14:55:42 _build/cmd.d: /usr/include/SDL/SDL_timer.h /usr/include/SDL/SDL_version.h world.h 14:55:42 _build/console.d: /usr/include/glib-2.0/gio/gzlibdecompressor.h console.h world.h 14:55:43 _build/main.d: common.h protocol.h console.h map.h world.h 14:55:43 _build/map.d: /usr/include/SDL/SDL_timer.h /usr/include/SDL/SDL_version.h world.h 14:55:43 _build/world.d: /usr/include/glib-2.0/gio/gzlibdecompressor.h map.h world.h 14:55:47 fizzie: Indeed X-D 14:55:51 Since "make objdir=. ; touch world.h ; make objdir=." rebuilds the necessary bits. 14:55:54 fizzie: I swear this thing was perfect and un-buggy before I added objdir. 14:55:57 Do you believe me? :P 14:56:19 Hmm, am I going to have to set cc's output here? 14:56:50 Well, you can give it an objprefix. 14:56:58 Oh, wait. 14:56:58 Hmm. 14:57:37 Wait. 14:57:42 fizzie: Why would it be objdir-related? 14:58:07 I mean, the CWD in all the .d files' context is the mcmap source tree root. 14:58:12 So the filenames are *right*. 14:58:12 I just based that judgement on the fact that objdir=. makes it work. 14:58:19 hey I think I solved the problem elliott but I have to go 14:58:22 Oh, sure, I agree, I'm just confused. 14:58:24 j-invariant: awesome! how? 14:58:48 well it seems a bit weird but I define equality of objects in terms of equality of morphisms 14:58:58 j-invariant: that sounds really nice 14:59:06 so A = B is defined as having f : A -> B, g : B -> A, with fg = id and gf = id 14:59:30 I haven't typed it up yet but we'll see! 14:59:44 j-invariant: wait 14:59:48 j-invariant: that's just a bijection! 14:59:54 j-invariant: that's what i've been telling you to do all along :-) 15:00:10 oh geez you are right 15:00:17 yeah I remember yuo saying that.. 15:00:36 well, at least i know i'm a perfect, infallible genius now 15:00:37 well I think it will work anyway bbl 15:00:41 lol 15:01:03 it makes the definition of a category simpler too 15:01:06 -!- j-invariant has quit (Quit: leaving). 15:02:24 OH 15:02:27 world.o: world.c \ 15:04:21 exit: 1: Illegal number: 4957exit 15:04:26 $L"~!O_)!_)£O_)@~F:! 15:04:53 -!- cheater99 has joined. 15:04:59 Heh, sounds like it got the $$ PID there now. :p 15:05:04 yep 15:05:11 fizzie: you know what? I'm making two nearly-identical do functions 15:05:18 one with $$, one with $$$$ 15:05:36 I'm not going to look inside useful.make anwyay. 15:05:40 GOOD 15:05:42 nobody should 15:05:44 -!- FireFly has joined. 15:05:54 it's the skeleton in your beautiful build system's closet 15:09:01 -!- cheater99 has quit (Read error: Connection reset by peer). 15:14:44 fizzie: Hey, hMod is actually beta'd; https://github.com/traitor/Minecraft-Server-Mod/ 15:14:46 Just not as a release. 15:14:51 Quick! Get ineiros intoxicated! 15:15:14 https://github.com/traitor/Minecraft-Server-Mod/blob/master/build.xml Ahahahant. 15:15:55 [Minecraft-Server-Mod] http://bit.ly/gRtj3z Erik Broes - Added item.getDamage()/item.setDamage() 15:15:57 I like the last one. 15:21:58 You might consider adding also "-MT $(objdir)/$*.d" in addition to "-MT $(objdir)/$*.o" (you can use multiple -MTs), that way it should then rebuild the depfile also when any of the headers change. (Currently I think it only rebuilds deps when the associated source file itself changes.) 15:23:04 $(objdir)/%.d: %.c Makefile | $(objdir) 15:23:04 $(call do,DEP,$<,$(cc.invoke) -M -MG -MT $(objdir)/$*.o -MF $@ $<) 15:23:07 fizzie: Hmm. 15:23:12 fizzie: Yes, you are right, I will do that. 15:24:17 Indeed. 15:24:41 fizzie: "make clean all" still doesn't work, though, because make is astonishingly braindead. 15:25:28 As for hMod, I'm not sure even an intoxicated ineiros would care enough to start testing pre-release things. 15:25:56 I have a theory that ineiros is Notch. 15:26:22 fizzie: Can you make very, very sure he's not Swedish? 15:26:46 Well, he doesn't *look* Swedish, but of course you never know. 15:26:51 -!- cheater99 has joined. 15:27:44 fizzie: Hell, I've seen *you* (well, in a dream), and you didn't look Finnish! 15:28:06 Then again, I'm pretty sure you were on the blacker side of brown. So maybe not very accurate. 15:28:22 Also you wore sunglasses and were bald. 15:28:39 Wait, were you bald or did your hair just look like thick fibre-optic cables... 15:28:46 Oh, for heaven's sake, I don't know. 15:28:46 -!- cheater99 has quit (Read error: Connection reset by peer). 15:28:56 I'm not sure if there's any sort of product to test for Swedishness. 15:29:10 Incidentally, http://www.amazon.com/Parent-Child-Testing-Product-Pack/dp/B002A6HXL6/ -- "Parent Child Testing Product, 5 Pack", $10035.98. 15:29:19 fizzie: Erm, Lutefisk : Norwegians :: ? : Swedes? 15:29:56 fizzie: Man, that parent child testing product looks judgemental. 15:41:59 pikhq: I just had a horriterrible idea. 15:42:48 pikhq: You know the GNU System thing you mentioned? 15:46:51 -!- cheater99 has joined. 15:50:01 -!- cheater99 has quit (Read error: Connection reset by peer). 15:52:55 -!- sftp has joined. 15:59:52 elliott: Surströmming. 16:00:00 oerjan: Right. 16:00:04 fizzie: Feed him that and see if he survives. 16:00:33 elliott, only a very small group of swedes like surströmming 16:00:33 oerjan: just checking, you being a lutefisk fan, Surströmming isn't something delicious? :D 16:00:35 (I know what it is.) 16:00:45 Vorpal: nope all of you 16:00:50 elliott, the majority think it is weird and wouldn't touch it. 16:00:58 http://upload.wikimedia.org/wikipedia/commons/7/7c/Surstroemmngsklaemma.png every swede eats this every day 16:01:26 elliott, then I'm no Swede by your definition. Nor is some 90% of the rest of population 16:01:39 Vorpal: of course 16:01:51 elliott, it is a local speciality in parts of north Sweden. 16:02:07 elliott: by all i've read, surströmming is far more vile than lutefisk 16:02:07 (and always beware of that) 16:02:13 oerjan, quite 16:02:28 oerjan, and lutfisk occurs in Sweden to. 16:02:41 oerjan, almost none like it these days 16:02:59 northern sweden sounds like crazy land 16:04:35 elliott, quite 16:13:17 What the heck is that (and I hope that milk is whole milk...)? 16:14:12 Ilari: It's DISGUSTINGNESS 16:14:26 "Surströmming with potatoes, onion on tunnbröd." 16:14:59 Ilari: Surströmming itself is, of course, rotting fish. 16:15:09 Because god dammit, we're Swedes, we're vikings, we're HARDCORE. 16:15:36 [[In April 2006, several major airlines (such as Air France and British Airways) banned the fish citing that the pressurized cans of fish are potentially explosive. The sale of the fish was subsequently discontinued in Stockholm's international airport. Those who produce the fish have called the airline's decision "culturally illiterate," claiming that it is a "myth that the tinned fish can explode."[6]]] 16:15:41 I support cultural illiteracy. 16:15:54 Or at least pretend that way... Well, in the past, real hardcore people existed... 16:26:30 The lagging in mc is somewhat fixed 16:26:34 i get 40 fps now 16:35:03 oerjan: as the premier wiki sysop, you should slap cpressey for decreasing the sum total of the world's happiness significantly: http://esolangs.org/w/index.php?title=Talk:Brainfuck&curid=1138&diff=20541&oldid=20540 16:37:12 erm 16:37:16 "In addition, no well-defined algorithm has yet been devised that a universal Turing machine is demonstrably incapable of executing." --[[Esolang:Turing machine]] 16:37:18 that's just stupid 16:37:35 either we define well-defined algorithm = list of instructions in a TC language, and it's a tautology 16:37:53 or "determine whether a Turing machine halts" is a well-defined algorithm that a UTM is demonstrably incapable of executing 16:37:54 -!- wareya has quit (Read error: Connection reset by peer). 16:38:02 someone rewrite that 16:38:51 -!- wareya has joined. 16:49:35 Because god dammit, we're Swedes, we're vikings, we're HARDCORE. <-- only some madmen up north 16:50:11 What the heck is that (and I hope that milk is whole milk...)? <-- why do you hope that 16:51:45 elliott, hm I just had the mad idea of a brainfuck supercompiler 16:52:23 Bah, if it's not a specialiser I don't acre. 16:52:24 *care. 16:52:50 elliott, well, I was thinking along the lines of partial evaluation 16:52:52 (Okay, so supercompilers do usually do something close to specialisation.) 16:52:57 Vorpal: Specialisation == partial evaluation. 16:53:29 elliott, but it seems rather tricky for bf, since the alias analysis is basically a hell, and figuring out previous state is not always that easy. 16:53:53 elliott, yes quite 16:54:18 elliott, I never claimed those were different. 16:54:25 Yes, well, the more abstract a language it is the better you can compile it (dynamism is a separate factor that makes compilation more difficult; it just happens that more abstract languages tend to be more dynamic). 16:54:36 So it's hardly surprising that compiling BF well is near-impossible. :p 16:54:42 elliott, mutable state makes it a lot trickier too 16:54:59 Vorpal: Well, mutable state is effectively an anti-abstraction and an element of dynamism, so yeah. 16:55:13 elliott, oh *looks up what dynamism is exactly* 16:55:24 Vorpal: Dynamic languages are very dynamic. 16:55:29 Vorpal: Changing things at runtime = dynamism. 16:55:38 ah 16:55:45 Vorpal: Scheme's ability to redefine + is dynamism; it makes Scheme harder to compile efficiently, since you can't inline calls to it. 16:55:54 elliott, is "things" here code? or data too? 16:55:58 Anything. 16:56:20 Smalltalk's extreme late binding is dynamism; it makes Smalltalk harder to compile because you have to do a lot of table lookups by strings, rather than hardcoding memory locations to load, store, and jump to. 16:56:31 elliott, by /strings/? 16:56:44 Vorpal: Yes; "foo abc: 3" looks up "abc:" in foo and passes it 3. 16:56:55 Vorpal: If you change the abc: method, and call whatever method did "foo abc: 3", it will get the new method. 16:57:06 This is because everything is looked up at the latest possible moment -- right when it's used, i.e. late binding. 16:57:06 elliott, can't you compile identifiers into some table and then use that integer to look up 16:57:08 Which is dynamism. 16:57:11 like an atom table 16:57:16 Vorpal: Sort of. 16:57:18 Well, yes. 16:57:21 But it's not quite that simple. 16:57:24 Anyway, it was just an example. 16:57:25 hm 16:57:28 yeah 16:57:42 elliott, but doing it by strings sound incredibly stupid 16:57:51 sounds* 16:57:53 Well, yes; I forget how most Smalltalks do it. 16:58:20 elliott, now you made me imagine a bashtalk (along the lines of bashforth) 16:58:49 Vorpal: BTW, the insane idea I was going to tell to pikhq but he's not here: GNUGNUGNU/Linux. It's Linux, and then everything on top of that that can feasibly be GNU *IS*. That means even GNU inetutils. Additionally, everything is done The GNU Way, no matter how impractical that is. 16:58:54 Vorpal: For instance, all package management will be done with GNU stow. 16:59:15 elliott, what does inetutils contain now again 16:59:19 Vorpal: ping etc. 16:59:22 ah 16:59:24 elliott, stow? 16:59:32 Vorpal: inetutils is maintained by the *wonderful human being* called ams. 16:59:34 You may have heard of him. 16:59:51 Stow is: 16:59:52 "GNU Stow is a program for managing the installation of software packages, keeping them separate (/usr/local/stow/emacs vs. /usr/local/stow/perl, for example) while making them appear to be installed in the same place (/usr/local)." 16:59:54 elliott, the tla sounds familiar, that is all 17:00:06 Its design is based on Carnegie-Mellon's Depot. 17:00:07 http://www.gnu.org/software/stow/manual.html 17:00:28 elliott, the separate thing reminds me of gobolinux and such 17:00:41 Yes, well, it's a much older concept than that. :p 17:00:47 GNU Stow is positively bleh. 17:00:55 pikhq: Heh, have you actually used it? :) 17:00:57 Vorpal: Anyway ams is an IRC jackass and troll. 17:01:12 Vorpal: Who is probably rms' secret lover or something. 17:01:16 elliott: Yes; the GNU System testing images used it. 17:01:36 pikhq: They're HURD-based, though, aren't they? 17:01:45 elliott, not familiar 17:01:46 elliott: IIRC, it's intended to be replaced with Stowfs. 17:01:48 elliott: Yeah. 17:01:54 elliott, I think I heard ams in some other context 17:02:03 pikhq: See, mine is meant for Linux, because then we can SPREAD THE GOSPEL to other platforms. 17:02:12 oh duh 17:02:14 pikhq: Anyway stow seems like a "good idea" to me apart from the implementation details. 17:02:15 Vorpal: ? 17:02:20 pikhq: i.e. using symlinks. 17:02:29 elliott, of course it sounded familiar. AMS. 17:02:34 Vorpal: heh 17:03:02 elliott, which seems to be rather overloaded btw 17:04:10 elliott: Yeah, stow's actually quite alright aside from implementation details. 17:04:17 Vorpal: once he asked me a question about C99 and I first quoted POSIX to him, which he said didn't count because it wasn't C99, I pointed out that it was unlikely to contradict the C standard (IIRC it was the behaviour of free(NULL) or something); I then found a C99 draft standard /newer/ (2007) than C99 itself, and quoted that to him, and he said that a draft didn't count since it wasn't C99, I said I don't have a copy of C99 to hand but I doub 17:04:17 t it changed since C99 was published, and then he called me a liar because C99 wasn't published in 2007, and then when I said he was being awfully rude to someone who went out of their way to help, he /ignored me. 17:04:23 elliott: Which is why stowfs was a WIP. 17:04:23 That was before I knew who he was. 17:04:26 Pleasant chap. :p 17:04:41 elliott, heh 17:04:51 Vorpal: (Later he started whining at the distro maintainers to make all software in the repositories Free As In FSF because it was an issue of "respect" for your users.) 17:05:00 Vorpal: (Apparently he doesn't actually /use/ the distro.) 17:05:09 elliott, as for POSIX not contradicting, true. However POSIX may define something that C99 leaves undefined. That happened. 17:05:16 Vorpal: Although he did ask about progress on a MIPS port, so he could run it on some netbook by the same company as rms' TOTALLY-FREE netbook. 17:05:18 (The one he uses.) 17:05:26 ~Free As In FSF netbook buddies~ 17:05:32 elliott, as for POSIX not contradicting, true. However POSIX may define something that C99 leaves undefined. That happened. 17:05:34 yes, but still. 17:06:08 elliott, also, I have run into systems that don't follow the C standard on free(NULL). I think they were all ancient or embedded though 17:06:19 Of course, even if it is a behavior unique to POSIX, that's still quite important. 17:06:22 Vorpal: yes, but he was very explicit about wanting C99's take. 17:06:40 After all, most everything but Windows these days are going to give credence to POSIX. 17:06:47 s/are/is/ 17:06:51 Vorpal: but just lol @ calling someone who quotes a draft of a post-1999 revision to C99 a liar for implying that C99 was published in 2007. 17:07:06 indeed wtf 17:07:25 pikhq: Anyway, the GNU Operating System seemingly does not include an init system. 17:07:29 At least from scanning http://www.gnu.org/software/software.html. 17:07:57 elliott: 404! 17:07:57 elliott, what does hurd use then? 17:08:06 pikhq, remove the final dot 17:08:09 elliott: But anyways, I'm reasonably certain it uses init. 17:08:16 Vorpal: Um, HURD? I think it just uses a shell script. 17:08:19 Or SysV. 17:08:22 elliott: 404! 17:08:22 elliott, ah 17:08:23 What's 404? 17:08:33 elliott: HTTP Error 404! 17:08:35 elliott, it is file not found 17:08:42 pikhq: wat. 17:08:44 http://www.gnu.org/software/software.html 17:08:45 ^ not 404 17:08:46 (note: totally not what you meant) 17:09:00 pikhq, as I said, you probably copied the ending dot on the line 17:09:06 elliott: The . at the end got into the link because it's entirely valid! 17:09:14 pikhq: Your client sucks donkey dick! 17:09:25 pikhq, quite, but I made my client apply a heurstic at that. 17:09:26 (Technical term for clients that are too correct about URLs.) 17:09:48 elliott: Your URL is a giant donkey dick! 17:09:51 Maybe I should have my site have all pages end in .html. 17:09:57 Deewiant: *.html.. 17:10:01 Deewiant: I terminated your sentence for you. 17:10:17 http://www.gnu.org/software/mdk/ oh man so useful 17:10:39 I love how some of the software links just go to empty directories. 17:10:59 http://www.gnu.org/software/myserver/ GNU HTTPD! 17:11:18 elliott: Well, it's not like GNU only hosts things useful to the GNU system. 17:11:27 pikhq: No, but that's a list of GNU packages. 17:11:36 i.e. the bulk of the platonic ideal GNU Operating System. 17:11:38 elliott: Here's what it takes to get it into GNU proper: give a FSF copyright assignment. 17:11:43 And most of it is USELESS. 17:11:46 pikhq: Well, yes. 17:12:00 But still. That list is an amazing glob of worthlessness, with like 10 useful things in it. 17:12:08 Yeah, well. Yeah. 17:12:25 hmm, wtf? reddit shows a link on /r/programming/ at +1009 with 852 comments 17:12:32 ais523: what about it? 17:12:39 but when I click at it, it's on +0 with 3 comments 17:12:47 ais523: cache... but still, wow. 17:12:52 that's quite a cache effect 17:12:52 "reddit is under heavy load right now, sorry. Try again in a few minutes." 17:12:53 http://www.gnu.org/software/mdk/ oh man so useful <-- missing ending dot! 17:13:05 I'll try again later 17:13:22 http://codu.org/projects/trac/ggc http://codu.org/projects/trac/gggc 17:13:24 hmm, it's actually happening to every link there 17:13:27 http://codu.org/projects/trac/ggggc 17:13:32 The displayed karma is random. 17:13:32 I think I've figured out Gregor's versioning system. 17:13:36 "Duplicate the first letter." 17:13:54 "Prepend g." 17:14:14 Deewiant: Maybe the first one was called c, and it collected everything, not just garbage. 17:14:35 What was the acronym for that, anyways? 17:14:45 "Gregor's General-purpose Generational Garbage Collector." 17:14:54 Ah, right. 17:14:58 The Gs! 17:15:19 [# Never ever EVER have interior pointers. Ever. EVER. GGGGC relies on all GC pointers being to the base of an object.]] 17:15:22 *[[# 17:15:32 Gregor: Any way to relax that? I really want to use GGGGC for this project, but ... 17:15:40 hmm, it'd be simpler still to have a GC that required all pointers to be NULL 17:15:46 then you could just garbage-collect everything on the heap 17:15:46 Gregor: What if the interior pointers are always to the start of a given element in a structure? 17:15:53 Gregor: (And I can specify which element at pointer-creation-time.) 17:16:21 elliott: Interior pointers make garbage collection both painful and slow. 17:17:12 elliott, why do you need interior pointers? 17:17:13 pikhq: Let's put it this way: the only kind I really need is "__typeof__(s->x) *foo = gc_pointer_to(s, offsetof(s, x));". 17:17:17 Vorpal: 'cuz I do. 17:17:22 Well. 17:17:23 Maybe. 17:17:52 elliott, just keep an extra pointer around? 17:17:55 elliott, to the base I mean 17:18:50 hmm, wait 17:18:55 would this even disallow (some_string + n)? 17:19:13 elliott, well duh 17:19:21 right 17:19:24 any way to relax that Gregor? :P 17:19:39 elliott, some_string[n] 17:19:46 no, I need a fix in the _GC_. 17:19:49 Vorpal: note: strings will always have their lengths encoded before them. 17:19:58 so the GC will always know where a string ends, even just having a pointer to the start 17:20:07 * Phantom_Hoover returns. 17:20:15 elliott, elliott: Interior pointers make garbage collection both painful and slow. 17:20:28 elliott, and the GC will always know the end anyway 17:20:37 same as free() does know the end of the allocated block 17:20:41 Vorpal: Yes, but in this case it's /one special case/. I realise it won't be as fast, I just need it decent. 17:20:45 It'll still beat boehm. 17:21:11 elliott, why is indexing so hard? 17:21:13 just wondering 17:21:28 Vorpal: The question is not "do I need (s+n)?", it's "can I make GGGGGGGGGGGGC support (s+n)?". 17:21:45 elliott, do you know /why/ it is slow to suppor that? 17:21:50 Yes 17:21:52 support* 17:21:53 *Yes. 17:21:54 stupid numpad 17:22:12 elliott, what XD 17:22:27 I pressed the . numpad key, but numlock was off so it did [del], which did nothing since i was at eol. 17:22:44 I used the numpad . because I had already completed the sentence, and moved my hands away without realising. 17:22:48 So it was the closest .. 17:22:50 *".". 17:22:52 my numpad seems broken btw 17:23:02 somehow , -> 0 and 0 -> nothing 17:23:08 I don't like my numpad, it gives me bad habits. 17:23:09 wtf 17:23:21 I only recently started being able to type numbers with the normal row. 17:23:43 I think I might just use boehm. 17:23:44 elliott, only time I use numpad is for navigation in various games 17:23:47 It's good enough. 17:24:03 elliott, interior pointers is an option for boehm iirc. And it slows it down even more 17:24:21 Vorpal: Presumably on by default due to the commonness of (s+n)... 17:24:56 elliott, I think it is a global-variable-before-GC_init() style of option 17:24:59 not sure 17:25:08 Vorpal: Default. 17:25:13 pikhq, hm 17:25:14 Right. 17:25:18 pikhq, that's stupid 17:25:22 Not really. 17:25:22 Vorpal: It tries not to break behavior of anything that's valid C. 17:25:26 (s+n) is very common. 17:25:49 Though it will gleefully change various forms of undefined behavior, which can break programs. 17:25:51 pikhq, but if you were doing manual memory management you would need a pointer to the base anyway, or you couldn't call free() on it 17:28:49 Vorpal: I mean using (s+n) temporarily, calling a function with it. 17:28:53 Not throwing away s completely from the program. 17:29:01 (What, would GGGGGGGGGGGGGGGGGGGGGGGGC support that?) 17:29:49 elliott: I'm not sure GGGGC is conservative. 17:30:05 ... No, wait, it'd have to be. 17:30:18 I think? 17:30:19 pikhq: It isn't. 17:30:25 Okay, then. 17:30:26 pikhq: You have to do all reads and writes through a macro because Gregor is a masochist. 17:30:31 Well, a sadist. But he uses it himself. 17:30:33 So masochist too. 17:30:43 There is no freaking way you're getting internal pointers to work without much pain and agony. 17:30:59 pikhq: yes, but is string_function(s+n) okay, as long as you keep a hold of s in the calling function? 17:31:08 In other news: bsnes's unsupported game list is down by one. 17:31:34 elliott, if the parent function still holds a pointer to it? 17:31:39 Vorpal: Yes. 17:31:44 elliott: Does it move objects around in memory? 17:31:53 And, of course, rewrite pointers? 17:31:58 If it doesn't, then that will work. 17:32:03 elliott, then I don't see why it is an issue if you also have an internal pointer 17:32:43 It should be fine then. 17:32:59 So can OGGGGGGGGGGGGGGGGGGGGGGGGGGC collect garbage in a separate thread, too? :p 17:33:09 elliott, O? 17:33:21 elliott, also define each of those Gs you just used 17:33:30 ;P 17:34:04 OGGGGGGGGGGGGC was just a reference to that OGC name thing. 17:34:13 elliott, OGC? 17:34:18 Uh, http://www.eatliver.com/img/2008/3028.jpg. 17:34:26 UK government organisation. 17:34:33 ah 17:35:00 [[A spokesman for OGC said: “It is true that it caused a few titters among some staff when viewed on its side, but on consideration we concluded that the effect was generic to the particular combination of the letters OGC - and it is not inappropriate to an organisation that’s looking to have a firm grip on Government spend.”]] 17:35:09 "and it is not inappropriate to an organisation that’s looking to have a firm grip on Government spend." 17:35:27 elliott, yeah wtf about that 17:35:38 Vorpal: It's called a joke. 17:35:54 elliott, is it really that far fetched 17:35:57 if so ugh 17:36:04 Vorpal: "that far fetched"? 17:36:06 It's bloomin' obvious. 17:41:57 back 17:42:06 elliott, I guess I must have used a bloom filter then 17:42:16 (okay, bad pun) 17:45:32 -!- Sgeo has joined. 17:45:48 -!- Mathnerd314 has joined. 17:47:59 -!- j-invariant has joined. 17:54:26 -!- oerjan has quit (Quit: Good night). 18:15:19 elliott? 18:16:39 hi 18:17:47 this isomorphism notion is Ob -> Ob -> Type, rather than -> Prop. Do you think that matters? I could redefine what an equivalence relation is to allow Type instead of Prop 18:18:01 j-invariant: yeah i don't think it matters 18:18:05 j-invariant: Coq Prop is rather restricted IMO 18:18:35 I just don't want to go another 300 lines and realize I made a mistake 18:19:45 elliott: and what about equality of maps? should f = g be in Prop or Type? 18:20:53 j-invariant: I think if one thing is in Type all of them should be 18:21:01 j-invariant: but, is it possible to make the isomorphism -> Prop by restricting it? 18:21:04 if not, eh, it doesn't matter 18:21:14 I end up putting sets into Type all the time, no reason not to put Props there 18:21:19 coq doesn't have proof irrelevance anyway 18:21:59 it's just for equality of functors, we have F=G meaning that Ff=Gf but Ff : FX -> FY and Gf : GX -> GY 18:22:13 so we need a way to cast FX <-> GX 18:22:55 yeah 18:23:08 it seems fine to me 18:23:46 Gregor: is extensive generic (void *) hackery ok with GGGGGGGGGC? 18:38:11 elliott: I don't see how any GC can manage that, if it actually collects things 18:38:20 what about storing pointers in files and reading them back later? 18:38:46 ais523: actually, I just mean having things like linked lists with (void *) elements 18:40:24 hmm, today I learnt that most new Windows software with an auto-updater installs its executables the equivalent of suid root 18:40:29 to avoid UAC prompts when it updates 18:40:33 that... defeats the point 18:40:33 heh 18:48:40 -!- OoS has joined. 18:48:43 Hi :-) 18:48:53 hi 18:49:54 I'm just clearing out some old computer books to make space for a few new ones :-/ 18:54:10 OoS: BUY MORE BOOKSHELVES 18:54:42 oh, I just keep them mixed with a bunch of other books in a pile on the floor 18:54:48 or occasionally, in other people's bedrooms 18:55:01 (general rule of house physics: people are loath to throw out anything in their own bedroom, you can exploit this fact) 18:55:14 I have 14 shelves of books (mostly programming / computing / caving) 18:55:38 Plus more in boxes / cupboards :-( 18:55:42 ais523: that's brilliant 18:55:48 ais523, hah 18:56:12 ais523: now progress to Joey Hess stage -- use that for all possessions, and live in yurts 18:56:23 ais523: wouldn't work, my girlfriend loves to throw stuff out 18:56:27 optimal debian-developing hobo status achieved 18:56:44 elliott, who is that guy 18:57:05 Vorpal: http://kitenet.net/~joey/blog/ 18:57:08 Vorpal: he wrote the debian-installer 18:57:11 among other things 18:57:21 Besides, I'm getting rid of stuff I likely won't need. Assembly programming books for 68000, 6809... 18:57:26 he lives in a yurt. http://kitenet.net/~joey/yurt/ 18:57:35 elliott, oh the guy with palm investigation? 18:57:38 Vorpal: yeah 18:57:45 Vorpal: his living expenses are flat 0, IIRC 18:57:54 he lives in a yurt. http://kitenet.net/~joey/yurt/ <-- as in, permanently? 18:57:57 Vorpal: yes. 18:58:11 elliott, somewhere warm I assume? or a hoax? 18:58:24 Dunno how warm it is. Probably relatively. 18:58:28 not a hoax, no, he really lives like that 18:58:43 Erdős famously did the "hobo mathematician" thing. 18:58:59 elliott, uh, does he have a more normal house as well? 18:59:04 Vorpal: No. 18:59:05 fizzie, oh? I didn't know that 18:59:10 Vorpal: As I said, his expenses are roughly 0. 18:59:17 Mortgage or rent = expense. 18:59:30 elliott, aiee! http://kitenet.net/~joey/blog/pics/snowyurt.jpg 18:59:34 Vorpal: "Possessions meant little to Erdős; most of his belongings would fit in a suitcase, as dictated by his itinerant lifestyle. Awards and other earnings were generally donated to people in need and various worthy causes. He spent most of his life as a vagabond, traveling between scientific conferences and the homes of colleagues all over the world." 18:59:37 ... "He would typically show up at a colleague's doorstep and announce "my brain is open," staying long enough to collaborate on a few papers before moving on a few days later. In many cases, he would ask the current collaborator about whom he (Erdős) should visit next. His working style has been humorously compared[by whom?] to traversing a linked list." 18:59:37 Vorpal: you're a swede, be more hardcore. 18:59:51 elliott, well, we have thick walls for a reason 18:59:58 Vorpal: VIKING 18:59:59 elliott, it's around -25 C outside now 19:00:02 Vorpal: VIKING 19:00:06 elliott, I'm not :P 19:00:48 It's -12.75 in Otaniemi now (it's far easier to browse to outside.hut.fi than to amble to the thermometer in the window), but they've predicted -15 to -25 for christmas. 19:01:23 Vorpal: oh ofc, I forgot ikiwiki 19:01:26 Vorpal: he wrote ikiwiki too 19:01:42 The yurt looks cool. I've slept in worse places. 19:02:04 it would be kinda cool to do the hobo thing, but i need an internet connection... and heating 19:02:11 well 19:02:14 a good internet connection, rather 19:02:28 He's got both :-P 19:02:30 Meh, outside.hut.fi should really respond to finger requests, that's how all the cool internet-connected coffee pots / cola vending machines / etc. used to be connected. 19:02:32 elliott, see image on the page you linked 19:02:50 fizzie, what XD 19:03:02 Deewiant: I see no evidence of a /good/ internet connection 19:03:11 elliott: I see no evidence of a bad one 19:03:17 elliott, ethernet 19:03:25 It's America, isn't it? 19:03:28 So it's gonna be like 2 Mbit. 19:03:29 heh 19:03:31 elliott, who knows where the ethernet goes 19:03:38 elliott, presumably to a *HOUSE*? 19:03:39 Into a dead badger, obviously. 19:03:41 Running Linux. 19:03:49 Vorpal: I think it's some way away from a friend's house or something. 19:03:55 elliott, hm 19:03:57 I don't have his living situation exactly memorised, that would be creepy :P 19:04:05 Vorpal: See for example the finger RFC (1288) chapter 2.5.5 "Vending machines": http://www.ietf.org/rfc/rfc1288.txt 19:04:05 fizzie, -12? that's nothing 19:04:22 slow to load 19:04:50 IETF tends to be. There's faster places to get RFCs from, of course. 19:05:11 fizzie, wait a second.... this isn't april 19:05:14 fizzie, so wtf 19:05:27 Fingering vending machines sounds a bit niche. 19:05:36 It's what all the cool universities had. 19:06:06 "Vending machines should NEVER NEVER EVER eat money." <-- this make it sound like a joke rfc (it is too unrealistic) 19:06:14 I think I had one Internet book from the pre-web era, it listed a few fingerable vending machines around the world. 19:06:20 (also, doesn't fit into a serious rfc, would use MUST then) 19:06:33 fizzie, XD 19:07:17 It's very useful to see how many bottles of cola there are in some California university's cs department's corridor X. 19:07:19 "Sound implementation of Finger is of the utmost importance. Implementations should be tested against various forms of attack. In particular, an RUIP SHOULD protect itself against malformed inputs. Vendors providing Finger with the operating system or network software should subject their implementations to penetration testing." 19:07:30 uh, that last sentence sounds.... 19:07:54 (seriously, was finger named to maximise uncomfortableness of using the names?) 19:10:26 Earnest named his program after the idea that people would run their fingers down the who list to find what they were looking for. 19:10:47 The earliest Finger RFC (742) from 1977 is pretty non-modern; port numbers in octal and it isn't really much of a protocol at that point. 19:12:29 why would anyone write port numbers in octal? 19:13:07 "ICP to socket 117 (octal, 79. decimal) and establish two 8-bit connections." 19:15:12 -!- j-invariant has quit (Quit: leaving). 19:15:20 -!- micahjohnston has joined. 19:15:26 Earnest named his program after the idea that people would run their fingers down the who list to find what they were looking for. 19:15:27 Seriously? 19:15:31 That's the stupidest etymology ever. 19:16:26 fizzie, ICP? 19:17:14 Vorpal: I don't really know what it refers to; I strongly suspect it's not the modern web-cache thing. 19:17:29 RFC123 speaks of ICPs. 19:17:33 fizzie, I don't know the modern meaning either 19:17:50 ICP was on ARPANET 19:18:03 http://en.wikipedia.org/wiki/Network_Control_Program 19:18:24 ah 19:18:53 Right. Anyway, the ICP socket number 79 does match the current Finger TCP port number, so I guess they just reused that. 19:19:34 And maybe ICP socket numbers used to be in octal, then. 19:21:23 One wonders if some day this "HTTP" thing will sound equally quaint and historical. 19:21:44 One would hope so. 19:22:18 You had to use your hands? etc. 19:22:35 elliott, that sounds even dirtier! 19:22:42 Video Game Boy #1: You mean you have to use your hands? 19:22:43 Video Game Boy #2: That's like a baby's toy! 19:22:49 (Thank imdb for the really-useful character names.) 19:23:06 elliott, what movie is it from? 19:23:19 Bttfii. 19:23:26 Pronounced "butt-fee", clearly. 19:23:50 elliott, oh back to the future 19:23:52 right 19:23:56 was ages since I saw that 19:24:08 Number two. :p 19:24:17 elliott, also ages ago I saw it 19:24:27 elliott, was it 3 in total? I don't remember 19:24:29 Hahah: http://www.theasylum.cc/product.php?id=174 Titanic II. 19:24:35 Is there anything The Asylum won't push out? 19:24:43 Vorpal: Yes. Unless they've made Bttfiv. 19:24:58 elliott, "the asylum"? 19:26:00 Vorpal: The people who brought you such quality films as "The Da Vinci Treasure", "Pirates of Treasure Island", "Snakes on a Train", "AVH: Alien vs Hunter", "Transmorphers", "The Terminators" and "Paranormal Entity". 19:26:10 Also Sir Arthur Conan Doyle's Sherlock Holmes with ROBOTIC DINOSAURS. 19:26:11 elliott, snakes on a train? 19:26:15 http://en.wikipedia.org/wiki/The_Asylum 19:26:17 Vorpal: Yes. 19:26:19 elliott, also I never heard of any of these movies 19:26:25 Vorpal: No -- but you may have heard of 19:26:30 The Da Vinci Code 19:26:33 Pirates of the Caribbean 19:26:35 Snakes on a Plain 19:26:39 Alien vs Predator 19:26:40 s/Plain/Plane/ 19:26:41 Transformers 19:26:42 elliott, yes, the first is a book and suchs 19:26:43 Terminator 19:26:44 sucks* 19:26:46 and Paranormal Activity. 19:26:47 yes of course 19:26:53 elliott, not the last one 19:26:57 but all the other ones 19:27:07 Right. Now observe: http://upload.wikimedia.org/wikipedia/en/3/32/Quartermainskulls.jpg 19:27:39 And now you understand what The Asylum does. 19:27:41 elliott, what an obvious rip off 19:27:43 (Well, probably.) 19:27:59 elliott, how come lucasfilm didn't sue them? 19:28:01 Vorpal: Yes, but to be fair, the Sherlock Holmes film that http://en.wikipedia.org/wiki/Sherlock_Holmes_%282010_film%29 rips off did NOT have exploding dinosaurs, as far as I am aware. 19:28:03 elliott, or is it parody? 19:28:09 Vorpal: Not parody... well, sort of. 19:28:44 Vorpal: It's hard to distinguish the two sides close to the line dividing super-blatant, super-terrible ripoffs and super-blatant, super-terrible ripoffs that make fun of themselves. 19:29:01 But god dammit, ROBOTIC DINOSAURS. 19:29:24 "As to where this film fits into the Canon of Sherlock Holmes is unclear." --Wikipedia 19:29:29 XD 19:29:39 In the BEST PLACE. 19:30:37 -!- Phantom_Hoover_ has joined. 19:30:39 -!- Phantom_Hoover has quit (Read error: Connection reset by peer). 19:30:43 "Not to be confused with Sherlock Holmes (2009 film)." I was confused there a bit; I saw some Sherlock Holmes trailers somewhere, and wondered how I managed to miss exploding dinosaurs. 19:31:02 fizzie: UNFORTUNATELY YOU SAW ONLY THE TRAILERS FOR THE INFERIOR MOVIE 19:31:12 Seriously, I would rather watch the terrible one with exploding dinosaurs. 19:31:16 The inferior movie looked quite silly too. 19:32:02 I mean, purely based on the trailer it looked like it was more explosions and action and so on, whereas from the "Sherlock Holmes" part I was expecting something, you know, that'd have involved, I don't know, thinking. 19:32:35 Trailers tend to concentrate on explosions and action. 19:33:11 I always dislike trailers for that reason 19:33:12 fizzie: From what I've heard it was actually a pretty good film. 19:33:20 It was. 19:33:21 fizzie: Supposedly they slowed some of the fight sequences to fit more thinking in there. :p 19:33:33 You want a bad trailer? 19:33:34 http://www.youtube.com/watch?v=ND7tU8JME_g 19:33:36 Try Office Space's. 19:33:38 That's true, and Holmes is a pretty active guy even in the books; it just looked somewhat overdone. 19:34:11 "...comes a movie about people who go to work" You know, I don't recall Office Space involving very much going to work at all. 19:35:26 elliott, Sherlock Holmes actually got pretty good writeups according to WP/ 19:35:32 Phantom_Hoover_: fizzie: From what I've heard it was actually a pretty good film. 19:35:34 The Asylum's version. 19:35:38 Oh. 19:35:39 Awesome. 19:36:05 "CIA sets up Wikileaks Task Force. They're calling it WTF." 19:36:28 elliott, .. are they trying to put the entire plot in the trailer? 19:36:33 elliott, where is that from? 19:36:39 Sgeo: Pretty much. 19:36:40 Vorpal: reddit. 19:36:44 http://www.washingtonpost.com/wp-dyn/content/article/2010/12/21/AR2010122105498.html 19:36:47 "Officially, the panel is called the WikiLeaks Task Force. But at CIA headquarters, it's mainly known by its all-too-apt acronym: W.T.F." 19:36:58 elliott, XD 19:38:03 Conclusion: the Asylum's film titles are utterly hilarious. 19:40:44 TRANSMORPHERS 19:41:39 There is something seriously messed up with my graphics drivers. 19:42:31 well then fix it 19:42:32 duhhh 19:42:59 -!- wareya has quit (Ping timeout: 240 seconds). 19:43:08 Gregor: YO ARE YOU THERE 19:43:15 Never 19:45:15 Gregor, websplat on google results pages is weird 19:45:35 -!- wareya has joined. 19:45:51 Vorpal: That's how Google does images. 19:46:03 Gregor, ah 19:46:24 Gregor: Does SPS actually work at all? 19:46:30 OK, correction. 19:46:42 Gregor: How easy would it be to port SPS to non-apt? 19:47:08 And, um, oh, it looks like you've thrown out all the code... which was in D. 19:47:17 SO I GUESS THE QUESTION IS IRRELEVANT 19:48:42 Gregor, the flags on http://wiki.inspircd.org/Main_Page don't get the proper yellow border 19:48:44 any idea why? 19:49:09 Gregor, they don't seem to use !important 19:50:43 ...What on earth has that got to do with Gregor. 19:51:43 elliott, websplat... 19:51:49 Ohh. 19:52:24 elliott, it was mentioned less than 1/5th of a screenful above 19:58:10 Apparently, Vorpal assumes that everyone has the same setup as him 20:02:13 -!- OoS has left (?). 20:04:40 Gregor: PING. 20:06:15 ugh, my OS makes it unnecessarily ugly to write haskell code 20:06:39 Sgeo, well, even on a small monitor it would be in the same screenfull 20:06:54 elliott, how do you mean? 20:07:15 Vorpal: all the OS' structures are strict, and it has several unsafe operations due to them being immutable 20:07:33 Vorpal: for instance, a directory can't be a lazy tree accessed purely, because it can change, and it's evaluated strictly 20:07:42 meaning efficient directory-traversing haskell code has to iterate, impurely 20:08:49 elliott, hm, what does directory traversing haskell code do now normally? 20:10:03 elliott, what OS? 20:11:56 Phantom_Hoover_: any :) 20:11:58 Vorpal: Be ugly? 20:12:07 Vorpal: Do a lot of IO, basically. 20:17:24 Blargh 20:17:41 Gregor: what 20:17:56 elliott: What was that latest ping, the one that wasn't discovering that SPS killed itself :P 20:19:22 Gregor: Nothing at all, I just wanted to see you try and answer my question that is now a non-question. 20:19:26 elliott, ever finished adventure? 20:20:14 elliott, as in. /usr/games/adventure 20:20:18 Vorpal: nope 20:20:23 Vorpal: navigation and spelunking 20:20:25 my two mortal enemies 20:20:39 elliott, ... why do you play minecraft then? 20:21:01 Vorpal: CUBE 20:21:02 elliott, anyway, I find adventure somewhat hard to navigate in, simply because it is textual. I can't really visualise where I am thus 20:34:07 -!- Sasha2 has joined. 20:34:08 -!- Sasha has quit (Ping timeout: 264 seconds). 20:39:53 In other news, the repeal of DADT has been signed into law. 20:40:31 Why do I say "In other news"? 20:40:48 Dunno. Did you or I start saying it first? 20:41:07 I dunno. 20:43:52 wow, someone made a page with what xyzzy did in hundreds of different text adventure games 20:44:15 -!- calamari has joined. 20:47:57 -!- sebbu has quit (Read error: Connection reset by peer). 20:48:03 -!- calamari_ has joined. 20:48:37 -!- calamari has quit (Ping timeout: 245 seconds). 20:48:45 -!- sebbu has joined. 20:48:49 -!- calamari_ has changed nick to calamari. 20:52:38 -!- calamari has quit (Read error: Operation timed out). 20:56:31 Phantom_Hoover_: http://lumeniki.referata.com/wiki/Mercan 20:56:48 http://lumeniki.referata.com/wiki/Merca "Songist" 20:56:54 Note insanity. 20:57:45 http://lumeniki.referata.com/wiki/Bodily_excretion 20:57:49 MY FAVOURITE BODILY SECRETIONS 20:58:51 -!- Phantom_Hoover__ has joined. 21:01:06 Phantom_Hoover__: 21:01:06 http://lumeniki.referata.com/wiki/Bodily_excretion 21:01:06 MY FAVOURITE BODILY SECRETIONS 21:01:15 Doodie, nightwater, smells, nosechewiw and misstrasauce. 21:01:43 That is creepu. 21:01:46 *creepy 21:01:48 And insane. 21:01:57 -!- Phantom_Hoover_ has quit (Ping timeout: 245 seconds). 21:02:15 -!- calamari has joined. 21:03:00 That IS creepu. 21:03:30 The most crêpe thing I have ever seen. 21:03:40 Previous versions had "Menstrual blood" 21:03:49 At the top? :p 21:03:58 Sadly, no :( 21:04:00 Aww, no, he hates menstrual blood. 21:04:07 Sgeo: Sadly? Are you like, a fan of menstrual blood? 21:04:22 Phantom_Hoover__: http://lumeniki.referata.com/wiki/Jesus_%28carnation_Norm_Chomskywalker%29 21:04:27 what 21:04:31 Ah, yes. 21:04:48 This guy doesn't seriously think he's a yeti, does he? 21:04:55 That has cut deeply through his vaguely-manifested sanity. 21:05:01 He loves Noam Chomsky. 21:05:11 I like Chomsky. 21:05:21 Phantom_Hoover__: http://lumeniki.referata.com/wiki/EncyclopediaDracula apparently ed gives you diarrhoea 21:05:25 He really likes Chomsky. 21:05:29 In the dramatica sense, not the... other sense. 21:05:34 Somebody add Santorum to that bodily-excretions list :P 21:05:40 http://lumeniki.referata.com/wiki/Norm_Chompsky 21:05:44 HOW MANY CHOMSKY ARTICLES ARE THERE 21:05:52 http://lumeniki.referata.com/wiki/Chomsky 21:05:53 elliott, FAR TOO MANY 21:06:04 Gregor: http://lumeniki.referata.com/wiki/Mostsade what 21:06:14 Gregor: But sandorum is only partly excretion! 21:06:19 Gregor: *santorum 21:06:23 Is there any way to get this guy some mental health help? 21:06:34 "Free software vs closed source" ;; rms would cry at this title 21:06:37 elliott: It's only partially /bodily/, it's all excretion in that it's excreted. 21:06:43 Sgeo: I like him just how he is 21:06:51 Gregor: You excrete lube? 21:06:53 Sgeo, the thing is, he's been showing some sanity lately. 21:07:19 I mean, actual, coherent, well-thought-out arguments. 21:07:19 elliott: Excreted just means that it comes out of the body, and after the acts that produce santorum, that's where it comes from :P 21:07:39 Is the Venn Diagram correct? 21:07:43 Gregor: Well, sure. ARGUABLY 21:08:00 Clearly we must EXPERIMENT to determine for sure. Who volunteers?! 21:08:29 Sgeo, what Venn diagram? 21:08:38 Phantom_Hoover__, the wiki logo 21:08:46 Does it display all possible combinations? 21:09:31 Gregor: So, how easy would a HYPOTHETICAL SPS IMPLEMENTATION be to port to non-APT? 21:09:32 Sgeo, that is... that is not a Venn diagram. I don't think it's *meant* to be a Venn diagram. 21:09:51 Phantom_Hoover__: http://lumeniki.referata.com/wiki/File:Dude.jpg it is dude 21:10:02 elliott: Most of SPS wasn't apt-related at all, it just used that to make guesses about versions. 21:10:02 You're not the phattest tom, really. 21:10:07 Gregor: And to install packages :P 21:10:29 That's more-or-less independent of SPS proper. 21:10:47 elliott, FUN FACT: that is a real picture of the King of the Dudes. 21:10:50 Gregor: Good; how long until SPS 2 is out. 21:10:56 Phantom_Hoover__: i.e. you 21:11:05 elliott: Seven billion years. 21:11:13 Gregor: Can I pay you to make it go faster? 21:11:17 elliott, no, some 19th-Centure New York socialite. 21:11:27 Centure? 21:11:28 *Century 21:11:29 elliott: Sure, you'll bring it down to three billion years. 21:11:29 "A journalist of the New York American, Blakely Hall, made Wall famous, proclaiming him in 1888 "King of the Dudes" for having won the "Battle of the Dudes" against Robert "Bob" Hilliard, another sartorial dude when, during the blizzard of 1888, he strode into a bar clad in gleaming boots of patent leather that went to his hips.[4] Nevertheless, some historians still consider it was Hilliard who won that dude battle.[8]" 21:11:36 Gregor: How much money for three weeks? 21:11:36 He's a centaur? 21:11:56 elliott: Sorry, there isn't enough money. 21:12:00 elliott, I love that quote. 21:12:14 elliott: It still needs to be based on SOME packaging system y'know :P 21:12:15 Gregor, let us suppose that there was enough money. 21:12:22 How much money would that be? 21:12:43 Phantom_Hoover__: Creating more money just decreases its value, the fundamental issue is that there's not enough /value/ in the universe. 21:13:07 Gregor, let us suppose there was enough value. 21:13:12 How much value would that be? 21:13:17 I would have said that the universe isn't large enough to store the smallest possible description 21:13:23 (In valunits). 21:14:07 Phantom_Hoover__: Sadly, the limitation of the speed of light prevents anyone from getting that much value to me in less than three weeks, and also if formed into a sphere, its radius would be greater than three lightweeks. 21:14:32 Gregor, let us suppose the speed of light was big enough. 21:14:38 How big would it have to be? 21:15:17 * Phantom_Hoover__ ponders the tactical mind of the guy who wrote the navy reserve expansion to Oolite. 21:15:18 Phantom_Hoover__: Changing the speed of light would be a fundamental enough change to the universe that value would reduce proportionally. 21:15:41 The tactics seem to be "let's fly VERY SLOWLY at the enemy until they come into radar range!" 21:16:19 Gregor, I don't want to associate fundamental constants any more today. 21:18:49 I spent a depressing amount of my life convincing my chemistry teacher that yes, changing the fine structure constant /would/ affect the rate of enzyme function. 21:20:21 Gregor: What would you estimate is the value of a brick of antigold? 21:21:00 Pretty damned valuable, but we couldn't store it, so it would be far more likely to destroy the Earth and therefore decrease overall global value. 21:21:43 Sure we could. I went to the frictionless pully store and got myself a vacuum bottle for it. 21:24:07 Gregor, let us suppose the value constant of the universe was big enough. How big would it have to be? 21:24:16 (it's dimensionless) 21:28:43 elliott: It still needs to be based on SOME packaging system y'know :P 21:28:47 You could just factor out the few functions it needs. 21:29:56 Phantom_Hoover__: Sadly, the limitation of the speed of light prevents anyone from getting that much value to me in less than three weeks, and also if formed into a sphere, its radius would be greater than three lightweeks. 21:30:02 Gregor: It does not matter that the money gets to you in 3 weeks. 21:30:06 Only that it is completed 3 weeks after it arrives. 21:30:50 Gregor: BTW, what is cunionfs that unionfs isn't 21:30:51 *? 21:31:21 -!- micahjohnston has left (?). 21:34:19 Vorpal: http://ishmodupdated.com/ 21:34:44 As a blind, retarded hamster I support this motion of equality. 21:35:10 elliott: cunionfs is a per-process union FS. Every process may see a unique union. 21:35:21 Gregor: Ahh. So it's Plan 9, implemented in FUSE. 21:35:27 Gregor: Yes? 21:35:39 *Plan 9's namespaces, but same thing :P 21:36:25 Pretty much. 21:37:00 It was just supposed to be the /usr-mounting part of SPS, the rest is what chooses what to union there, installs things, etc, but then I decided "blar" and din't reimplement the rest :P 21:37:15 Gregor: Hey, you should make it based on an arbitrary function rather than just getpid. 21:37:26 Gregor: That would be COOL. and impractical and COOL. 21:38:45 And impossible to do in FUSE. 21:38:52 The only reason it's possible with FUSE is that I have /proc 21:40:53 elliott: if a Slashes program ends with \, it simply stops. 21:40:58 tswett: Right. 21:41:07 Gregor: Is an FS kernel module so hard? :P 21:41:32 And //foo/ terminating immediately would be special behavior, it seems. 21:41:51 tswett: //foo/ infinite loops, no? 21:41:58 Right, I should think so. 21:42:00 elliott: I have no idea, I've never written any kernel code. 21:42:10 Gregor: ask ais523, his students are writing a KEYLOGGER! 21:42:14 despite this not being possible with vanilla linux 21:42:16 Oooooooooh 21:42:18 Ahhhhhhhhh 21:42:37 Gregor: And despite them being so incompetent as to write size_t for sizeof because Eclipse completed size as that. 21:42:42 Gregor: (Note: They are Masters' students.) 21:43:10 I figured with that kind of incompetence they had to be PhD students. 21:43:41 Gregor: In the UK we optimise incompetence on all levels. 21:49:25 Gregor: So is cunionfs actually stable? :P 21:52:51 Gregor: I, uh ... 21:52:55 That doesn't sound good. 21:55:21 Last I checked cunionfs itself was pretty solid. 21:56:47 Gregor: Can I call it cuneiformfs? 21:56:59 I will not stop you from renaming it :P 21:57:06 Also, "last I checked" -- has it got less stable since then? :P 21:57:24 It's possible that the FUSE APIs have changed in incompatible ways :P 21:58:00 Gregor: How old is it exactly? X-D 21:58:10 Older than time itself. 21:58:51 20 months apparently 21:58:53 Gregor: 2009 -- older than time itself. 21:58:55 heh 21:59:15 06:05 Changeset [3:3045e8c02021] by Gregor Richards 21:59:16 cunionfs/cunionfs.c: Support for symlinks. 21:59:30 I can see that by the end of its development it had already been feature-complete for quite a while! 21:59:34 Specifically, for a whole two revisions. 22:01:52 Gregor: Maybe I'll just use stow :P 22:02:05 I really don't care. 22:02:17 Gregor: But how will you get my royalty money 22:02:19 *money? 22:03:31 In principle SPS is like stow, minus the fact that stow has a rather "static" view of the installed directory. SPS just lets multiple users see different views. Since that's almost always useless in "non-enterprise" settings anyway, do whateverTF you want. 22:03:38 What's cunionfs? 22:03:54 Gregor: But I /am/ an Enterprise and I want to give you five billion monies. 22:04:12 Phantom_Hoover__: The only component of SPS I ever ported to C :P 22:04:19 SPS? 22:04:27 Phantom_Hoover__: cunionfs is a unionfs that lets each process see its own union. 22:04:34 Phantom_Hoover__: SPS is dead. Long live SPS. 22:04:37 cunionfs is leftist scum, basically. 22:04:46 elliott, do I get five billion monies for writing gravity? 22:04:48 Down with the unions! 22:04:54 Phantom_Hoover__: No. You get six! 22:05:08 Phantom_Hoover__: Did you ever do collision? 22:05:16 elliott, in a sense! 22:05:42 If two point masses (i.e. black holes) collide, the system divides by zero and crashes. 22:05:59 Just like in real life! 22:06:00 Phantom_Hoover__: I ... I really hope our universe works like that. 22:06:25 *note: I am unsure if singularities actually "exist" in GR. 22:06:57 In the sense that they are either entirely in your past or in your future, so they can't really do anything. 22:08:14 Phantom_Hoover__: Make it instead blow everything up. 22:08:17 Crashing is so boring. 22:08:35 elliott, blowing things up? That'll be 20 gajillion moneys. 22:08:42 Phantom_Hoover__: http://ishmodupdated.com/ 22:08:43 *monies 22:09:02 elliott, did you do that? 22:09:10 No. 22:09:13 http://isthatcherdeadyet.co.uk/ 22:09:23 A correlation! 22:09:30 But what is the causal relation... 22:09:45 Well, Thatcher wasn't dead, then hmod wasn't updated. 22:10:00 So logically, killing Thatcher will update hMod. 22:10:05 Shouldn't it be no, not not. 22:10:41 Oh, it's "NOT YET". 22:10:44 My zoom broke it. 22:11:16 elliott, sooo. 22:11:25 Phantom_Hoover__: ? 22:11:35 Remind me how to do the collision mechanics for non-trivial shapes. 22:12:29 Phantom_Hoover__: Make a rectangle. Collide that rectangle. 22:12:34 Make the rectangle slightly smaller than the object. 22:12:40 Gregor can attest to this method's effectiveness. 22:12:53 WebSplat's collision detection is the suck 22:13:00 Except for working well, yes, yes it is :P 22:13:22 Also, surely compiled CL can be a little more decadent than JS? 22:13:52 Gregor: Please explain to Phantom_Hoover__ that rectangle collision is how the world works. 22:14:04 Er, "the world" being "2D games" 22:14:07 *games". 22:14:23 elliott, the big problem with that is that it handles rotation horribly. 22:14:41 Phantom_Hoover__: Why? 22:14:49 You just rotate the rectangle. 22:15:04 elliott, and then how do you actually *check* if there's a collision? 22:15:32 Phantom_Hoover__: "Does this rectangle intersect with this other rectangle?" 22:16:40 elliott, I can't think of an efficient way to do so that doesn't extend to arbitrary polygons. 22:16:53 Or at least triangles and ellipses. 22:17:28 http://en.wikipedia.org/wiki/Collision_detection#Video_games 22:17:33 Phantom_Hoover__: You don't tilt the rectangles, obviously. 22:17:38 You still keep the lines straight. 22:17:54 You just rotate the rectangle and interpolate from that to make another rectangle; at least that's what /I'd/ do. 22:17:55 You just rotate the rectangle. 22:17:59 Yes, yes, yes, shut up. 22:18:12 Phantom_Hoover__: Of course you could do arbitrary collision and it'd probably work... but surely there are more worthwhile things to spend CPU time on. 22:18:29 So basically we're back to "split shape up into lots of little rectangles and use rectangle method." 22:18:40 Nope. 22:18:44 One rectangle per shape. 22:18:52 And when you tilt? 22:18:54 But, ehh, I may be wrong, ask Gregor :P 22:19:01 Or rotate? 22:19:05 Phantom_Hoover__: Tilt the rectangle; from that, compute another, straight-edged rectangle, with the approximate same dimensions. 22:19:15 (You can do this without actually tilting the rectangle, obviously.) 22:19:31 elliott, I do not understand what you are saying at all. 22:19:38 Some sort of diagram is in order. 22:19:52 Phantom_Hoover__: Don't worry -- I don't either. 22:20:41 elliott, last thing: do we want accurateish physics or speed? 22:21:09 Phantom_Hoover__: If we can get 30fps with semi-decent hardware (i.e. better than our laptops) I'm happy with it. 22:21:13 And that's in Amber, not Lisp. 22:21:25 Phantom_Hoover__: (I think programming the whole world to a 30 Hz tick is the simplest.) 22:21:46 Phantom_Hoover__: But, eh -- do general polygon collision. 22:21:48 It might just be fast enough. 22:22:01 I don't know how to do that! 22:22:05 Phantom_Hoover__: But if bullets are objects too, then we might be looking at thousands of objects at once :P 22:22:07 Phantom_Hoover__: So figure it out! 22:22:09 That's basically how this got started! 22:22:12 Phantom_Hoover__: Okay fine. 22:22:15 Phantom_Hoover__: Do it any way you want. 22:22:18 Or just google :P 22:22:27 Phantom_Hoover__: http://gpwiki.org/index.php/Polygon_Collision 22:22:28 Gregor, how would you do this. 22:22:34 Complete with broken images, but there you go. 22:22:43 -!- Gracenotes has quit (Remote host closed the connection). 22:22:46 [[In order to prevent embarrassing situations where game objects move right through each other without even noticing, a lot of games utilize some kind of collision detection system. ]] 22:23:11 Pshht. 22:23:32 elliott, FWIW, bullets I think would be done as a specialised kind of object. 22:23:58 With negligible mass or something, and when they hit something they disappear. 22:24:10 Phantom_Hoover__: http://www.flipcode.com/archives/Basic_Collision_Detection.shtml 22:24:16 http://pogopixels.com/blog/2d-polygon-collision-detection/ 22:25:04 elliott, I think we should kind of map out what game we want to make. 22:25:16 Phantom_Hoover__: I HAVE NO IDEA YOU'VE REELED ME INTO THIS WITH GRAVITY 22:25:27 i.e. multiplayer deathmatch or something a bit more lasting? 22:31:33 Gregor: Is there a way to use OGGGGGGGGGGGGGGGGC without having it automatically-pointer-typedef the defined structures and similar magic? 22:32:54 -!- Gracenotes has joined. 22:33:19 pikhq: You know about GCC nested functions, right? 22:33:42 nested functions are hilarious 22:33:49 I love the way they're implemented (read: not) 22:34:10 coppro: Right. Returning them is non-kosher, right? 22:34:15 elliott: very 22:34:19 elliott: they live on the stack 22:34:59 coppro: Hmm. Can one use __builtin_whatever to access gcc's implementation of Ayn Rand^W^WObjectivist-C blocks from a non-Shrugging-Atlas language? 22:35:07 elliott, IIRC the GCC manual says "you can pass the function pointer if you want, but really bad things will happen if you call it after the parent function's stack frame has exited." 22:35:10 coppro: Those copy, I think. 22:35:18 elliott: blocks? 22:35:28 no, those have their own fun 22:35:33 coppro: Meaning? 22:35:54 elliott: their implementation is different 22:36:01 coppro: Precisely. 22:36:05 a __block variable IIRC is actually heap-allocated 22:36:07 coppro: Can I access their implementation outside of Objective-C? 22:36:10 and ref-counted 22:36:12 elliott: -fblocks 22:36:13 I don't care how ugly or difficult it is. 22:36:19 coppro: Does that just ... enable them in regular C? 22:36:23 yes 22:36:29 coppro: Awesome. 22:36:33 coppro: (Is there a reason it isn't awesome?) 22:36:38 hrm wait 22:36:42 my gcc doesn't appear to have it 22:36:45 clang does though 22:36:48 That's a clang thing. 22:36:50 $ gcc -fblocks 22:36:50 gcc: no input files 22:36:56 OK, does gcc have anything similar? 22:37:00 I /can/ use clang ... if I have to. 22:37:05 pikhq: blocks are implemented in some GCCs aren't they? 22:37:19 elliott: gcc complaining about no input files trumps gcc complaining about other options 22:37:25 coppro: heh 22:37:35 oh right, Apple added them to clang directly, didn't they? 22:37:38 hell, sometimes gcc will compile before finding out it doesn't know what an option does 22:37:44 elliott: I had thought they were in some GCCs 22:37:46 I could be wrong 22:37:55 maybe 22:38:01 clang certainly does 22:38:04 http://www.google.com/search?q=objective-c+blocks+gcc&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:unofficial&client=iceweasel-a 22:38:04 and certainly has -fblocks 22:38:06 doesn't look like it 22:38:07 (also -foverloading) 22:38:14 coppro: maybe just in Apple's gcc? 22:38:18 elliott: maybe 22:38:24 but then the source would have to be available 22:38:27 so unlikely 22:38:40 coppro: basically I'm implementing a language that compiles down to "something gcc or clang (depending on which I pick) accepts" 22:38:44 (and Apple knows better than to piss RMS off by trying to avoid the GPL) 22:38:46 coppro: and it has lambdas. 22:38:47 so 22:38:55 blocks sound like a reasonable solution 22:39:05 right 22:39:13 it's just i'd rather stick with gcc for ... little reason other than being a luddite 22:39:15 (and overloading) 22:39:23 coppro: overloading for what? 22:39:27 elliott: functions of course 22:39:39 coppro: what, why would I enable that? 22:39:48 elliott: because I'm trolling you 22:39:56 coppro: :p 22:39:57 anyone know of a good Minecraft server? 22:40:09 Sasha2: yes, I know of one. 22:40:10 Sasha2: {} 22:40:16 so no 22:40:31 elliott, care to divulge this information with me? 22:40:33 coppro: I actually think my language might have function overloading, but it'd be done at the compiler level 22:40:38 Sasha2: nope! it's down anyway 22:40:49 coppro: I'm already doing my own mangling, for namespaces. 22:40:50 eh 22:40:57 elliott: yeah, I can't imagine a meta-compiler getting a lot out of -foverloading 22:41:26 coppro: I wonder how hard it is to add gdb support for a language. :) 22:41:37 (mostly just demangling, since I think #line and the like will already have gdb show the correct source lines) 22:41:38 elliott:I wonder too... :p 22:41:54 what about expression evaluation? 22:41:58 gdb can't do that for C 22:42:00 much less your language 22:42:20 coppro: let's just say that gdb has its own little language and leave it at that :P 22:42:30 coppro: I'm still using C structs and stuff... well, depends how much Gregor's GGGGGGGGC mangles structs 22:42:33 Gregor: how much does it mangle structs? 22:55:06 elliott, btw, for what it is worth, I talked with a prof doing compsci (the "mathy" kind of compsci even) some days ago, and I asked about the issue with what TC really is (mentioning the example with "one-program-only" languages). He said that the original definition of turing-complete really had no concept of input separate from the program, thus it being somewhat ill-defined. 22:55:37 Well, yes. But I don't see how you can formulate ais523's proof without some notion of input. 22:55:58 elliott, however, he argued that input should /probably/ be considered part of the program 22:56:27 Probably, yes, but I can't see how to word ais523's proof without it. 22:56:47 elliott, maybe the proof doesn't work then? 22:57:07 Vorpal: No, I mean, I can't see how you'd even /state/ the false proof without having a notion of input. 22:57:18 elliott, hm 22:57:33 I may be wrong. 22:57:42 Although you can maybe just rewrite: 22:57:49 elliott, this is about the price I presume? 22:57:56 run([P], I) as run([P(I)]). 22:58:02 Where [...] means "the language's equivalent of". 22:58:07 But how do you define that for brainfuck? or a CA? 22:58:09 Vorpal: The price of what? 22:58:13 Oh, the prize. Yes. 22:58:14 elliott, wolfram? 22:58:19 run([P], I) as run([P(I)]). 22:58:19 Where [...] means "the language's equivalent of". 22:58:19 But how do you define that for brainfuck? or a CA? 22:58:19 elliott, damn english 22:58:43 I don't know enough about the details of that prize proof to make any sort of constructive comment with regards to it 22:58:54 elliott, and brainfuck is easy. It is fine without IO. P'' 22:59:04 if that is what you meant 22:59:09 Vorpal: No, you do not understand at all. 22:59:24 elliott, then what did you mean? 22:59:38 Let's say our current form is run(P,I) where P is the program string and I is the input. Let [Q] denote a program string with semantics equivalent to the mathematical expression Q. 22:59:46 Now let's say the input-less run is run'. 22:59:49 We can rewrite: 22:59:56 run([P], I) as run'([P(I)]). 23:00:00 right 23:00:03 But I do not know how to define [f(x)] for e.g. Brainfuck, cellular automata, etc. 23:00:18 elliott, classical for brainfuck P(I) would be P+"@"+I iirc 23:00:22 With Brainfuck you'd have to do a lot of tape-tracking probably. 23:00:26 Vorpal: ...wow, you really don't understand at all. 23:00:32 elliott, oh you meant like that 23:00:34 right 23:00:35 Vorpal: If you do that why remove input from the equation? 23:00:39 You'd gain nothing. 23:01:21 hm true 23:02:01 elliott, for a CA, what would be P be? the initial state? The rules? 23:02:27 I presume the former, but then that seems the same as input 23:03:24 elliott, but yeah it is a tricky issue in general. 23:03:39 Vorpal: P would be the initial state. 23:03:41 The rules are the language. 23:03:46 initial state = program 23:03:47 right 23:03:51 True, CAs don't have input. 23:03:53 So bad example. 23:04:00 elliott, right, that is why I got confused 23:05:03 elliott, still, I don't think we can define TC sensibly with I/O. Imagine hooking a bf, somehow crippled to be non-TC (exactly how is not important for the concept), but able to do IO to something able to do TC calculations 23:05:46 elliott, what was Sgeo's bf thing called now again? 23:05:59 same idea basically (except with something more interesting) 23:06:13 elliott, still, I don't think we can define TC sensibly with I/O. Imagine hooking a bf, somehow crippled to be non-TC (exactly how is not important for the concept), but able to do IO to something able to do TC calculations 23:06:20 Sure; the combination of those two is TC. 23:06:25 elliott, yeah 23:06:29 TC + non-TC system = TC. 23:10:03 Vorpal: Unrelatedly, got a better way to write this C99 program? http://sprunge.us/BLMO 23:10:25 elliott, I'm not in a C-ish mode really atm. but I'll take a look 23:10:54 elliott, that's err... interesting 23:11:01 Indeed :P 23:11:22 Can't figure out how to do it in one assignment. 23:11:25 elliott, I never used variable length elements at the end of structs that were not only allocated dynamically 23:11:38 elliott, well you could probably do that 23:11:47 elliott, but I thought you wanted to avoid the extra struct 23:11:49 which is harder 23:11:54 Vorpal: Well, yes, I would rather. 23:12:08 TBH, I'll probably end up dynamically allocating it and copying the string in. 23:12:12 i.e. 23:12:19 ByteString *str = malloc(sizeof ByteString + 3); 23:12:22 str->length = 3; 23:12:24 str->alloc = 3; 23:12:32 strcpy(str->bytes, "abc"); 23:12:33 elliott, I got a hunch how to do it in one assignment. I have no clue how to do it without defining a new struct type 23:12:39 Vorpal: One assignment would be cool. 23:12:49 elliott, need to look something up for it 23:13:19 return (funge_vector) { .x = x, .y = y }; 23:13:24 elliott, you can do that sort of stuff 23:13:34 elliott, (btw, this makes splint go mad :D) 23:13:45 elliott, I suspect you could use the same general idea here 23:14:03 Vorpal: I already tried that. 23:14:07 Vorpal: You can't cast a struct. 23:14:09 That syntax is LIES. 23:14:19 Vorpal: You can't even do 23:14:22 ByteString x = { ... } 23:14:23 elliott, ah... so it's rather special cased syntax 23:14:27 because it thinks "abc" is non-constant 23:14:31 because the pointer could be ANYTHOMG!! 23:14:33 or something 23:14:35 elliott, err 23:14:40 seriously 23:14:40 If you want a pointer to something you need to allocate storage for it, you can't do that in one assignment 23:14:50 Deewiant: True. 23:14:52 elliott, you can assign a constant string, you just did: __str0_v = {3,3,"abc"}; 23:14:55 It's compiler output anyway. So no big deal. 23:14:56 Vorpal: nope 23:15:01 Vorpal: not with ByteString 23:15:04 Vorpal: VLAs are special 23:15:06 in the retarded sense 23:15:07 elliott, ah right 23:15:20 elliott, why not make it a char*, then you could I think 23:15:23 or cost char* 23:15:33 Vorpal: Because that's another memory allocation for no reason? 23:15:47 elliott, well, it would make an extra pointer 23:16:03 elliott, but the string would go in .rodata 23:16:18 ByteString *str = malloc(sizeof ByteString + 3); 23:16:18 str->length = 3; 23:16:18 str->alloc = 3; 23:16:18 memcpy(str->bytes, "abc", 3); 23:16:20 That should do. 23:16:22 elliott, suggestion: don't use C 23:16:24 str can be reallocated willy-nilly anyway. 23:16:27 Vorpal: it's COMPILER OUTPUT. 23:16:33 elliott, ah... 23:16:36 elliott, LLVM IR! 23:16:38 I'm not writing a compiler that compiles to Haskell, that would just be ridiculous. 23:16:40 Vorpal: Ugh 23:16:45 elliott, :P 23:16:47 Vorpal: I'm doing lambdas, you know! :p 23:16:52 elliott, compiling to haskell sounds fun 23:16:54 Vorpal: Which means I'm probably using clang, for its blocks-in-C support. 23:17:06 elliott, why not use pikhq's code for that 23:17:07 :D 23:17:20 didn't he even have closures 23:17:35 Vorpal: Not ones you could return. 23:17:40 Which is KINDA IMPORTANT 23:19:21 [[They never go back to fix bugs where they occur. They write new code to workaround the earlier failure case. I asked why they don't go back and just fix the bug where it happens. I was told "We can't go back and change it. That code's already done!" Their solution for insuring that failing code will be able to get to its workaround is the GOTO statement. GOTO is sprinkled liberally around other code, pointing to functions and routines that do n 23:19:21 ot exist yet. If, down the road, it is discovered that the old code has a bug, they find out which GOTOs exist in that code that do not point to anything yet, pick one, and write the workaround there.]] 23:19:24 They've clearly never heard of COME FROM. 23:20:38 I wonder if (Gregor) GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGC works with clang. 23:20:53 Vorpal: You know what everyone loves??? NAME MANGLING 23:28:22 elliott: You can return the nested function pointers so long as they don't close. 23:28:34 elliott, well... there are some reasonable cases for it. something like module_func_arity could work for some languages, except the one I know that would want that allows any valid atom for module and function name 23:28:42 elliott: Which is why my code did manual management of closing instead of using GCC's closing. 23:28:47 M2myM7awesome_function 23:29:05 Also, it's technically not guaranteed to work at all, it just happens to. 23:29:06 elliott, but what about names like is-int? 23:29:20 unsupported 23:29:27 elliott, so it isn't a scheme-ish 23:34:13 elliott, what language are you compiling? 23:34:30 amber 23:34:42 elliott, never heard of it, is it an esolang? 23:34:47 no 23:34:48 which sort of esolang the 23:34:50 elliott, ah 23:34:53 elliott, then what is it? :D 23:35:14 brb 23:39:28 Vorpal, it's his C-with-lambdas-and-GC. 23:41:36 Phantom_Hoover__, and something that needs name mangling too 23:45:55 Phantom_Hoover__: Not quite true. plz leave explainin' to me 23:46:29 elliott, waiting for that 23:46:44 elliott, going to sleep in 5-10 minutes 23:46:53 Vorpal: Yes, yes. 23:46:54 I was busy. 23:46:55 Okay, so. 23:47:19 Vorpal: Basically it's a language whose semantics map very directly to C, but with GC, lambdas, saner structure declarations, nicer syntax, foreach and the like, ETC. 23:47:39 -!- cheater99 has joined. 23:47:40 hm nice 23:47:44 Vorpal: It reuses (most of) the C standard library (well, with our own string structure and library), and creating bindings is as easy as making a new module, converting (automatically) a C header, and mangling them. 23:47:47 -!- cheater99 has quit (Read error: Connection reset by peer). 23:47:51 e.g. SDL_Foo you probably want as sdl.foo. 23:48:01 Vorpal: The target market is basically game development. 23:48:26 Vorpal: The idea is that you don't need bindings at all because the calling convention is exactly the same, etc. 23:48:36 Name mangling is for the namespaces/modules. 23:48:44 M2myM7awesome_function is my.awesome.function. 23:48:58 hm nice 23:49:08 name := M | _ 23:49:25 elliott, you need some bindings to handle your "saner structs" 23:49:35 elliott, or can you just include a C header file? 23:50:16 elliott, and you probably need some kind of C-string<->sane-string mapping too 23:50:47 elliott, you need some bindings to handle your "saner structs" 23:50:55 By saner structs I just mean you access stack and heap allocates ones the same :P 23:51:01 ah 23:51:03 In fact I might not have stack structs. 23:51:07 elliott, and you probably need some kind of C-string<->sane-string mapping too 23:51:07 elliott, so . = -> ? 23:51:10 Yes, that's the one thing that will be mapped. 23:51:14 (just s ===> s->bytes) 23:51:20 (since they're kept null-terminated) 23:51:26 Vorpal: But yeah, I might just have heap structs only. Not sure. 23:51:30 No pointer type, I think. 23:52:04 elliott, hm. That will make interfacing with stuff like sdl and allegro a bit more painful 23:52:09 Vorpal: Why? 23:52:18 elliott, I'm pretty sure there are foo **bar style pointers there 23:52:30 Vorpal: Well, right, I'll have to see. I can't have totally-general pointers though 'cuz of the GC. 23:52:39 (The first program (well, game) written in it will be Allegro-based. Or SDL.) 23:53:05 elliott, I have to say I find sdl nicer. Even though allegro is higher level 23:53:23 Vorpal: I'm going to look at Allegro 5. 23:53:29 Since it's out real-soon-now. 23:53:34 elliott, I never really found any use for more than blitting sprites, rotation and drawing primitives. All of which SDL can do 23:53:40 elliott, yeah I haven't looked at allegro5 23:53:46 only at the older one 23:53:51 Vorpal: Well, it's a 2D game here. 23:53:56 But with quite a lot of things to keep track of. 23:54:07 elliott, right, I written 2D games with both allegro and sdl. 23:54:11 I have* 23:54:31 I blame Phantom_Hoover__ for this endeavour entirely, BTW. 23:54:33 Well, not the language. 23:55:12 elliott, so, do you think you will complete this project within the next few months? 23:55:17 or will it be put on hold 23:55:20 like a lot of other things 23:55:21 Why was Vorpal asking about PSOX? 23:55:26 Vorpal: Well, Phantom_Hoover__'s already written some code and is writing more. 23:55:38 Admittedly it's in Common Lisp, but Phantom_Hoover__ writing code is rare enough that at least some dedication appears to exist. 23:55:56 elliott, he codes? 23:56:00 elliott, I wasn't aware of that 23:56:06 Vorpal: I think this is his fifth program. Phantom_Hoover__? 23:56:14 elliott, I thought he was purely theoretical 23:56:32 I'm purely theoretical. I don't exist in practice. 23:56:49 elliott, and you... code a shitload. Just you do breadth-first not depth-first. 23:57:06 :p 23:57:20 Vorpal: Well, Amber is specifically designed to be really easy to compile to C. 23:57:36 elliott, still requires writing a parser 23:57:38 Once I have a parser, it should be pretty trivial. 23:57:39 as far as I can tell 23:57:39 Vorpal: Well, yes. 23:57:49 Vorpal: I'm probably going to write the compiler in Python for the "it's there"-ness of it. 23:57:59 elliott, and parsers I can't help with. Anything more complex than parsing, say, brainfuck I hate 23:58:14 Vorpal: (The game is probably going to be commercial-but-comes-with-source-that-you-can-distribute-modifications-of, so having the compiler be portable is an added bonus.) 23:58:24 elliott, 5 is probably generous. 23:58:38 But yeah, I'll be using one of those magic-BNF-parser tools. The C compiler time will dwarf whatever time it takes to translate to C, anyway. 23:58:44 elliott, when I absolutely have to parse I tend to do it as basic as possible. Absolutely no "lenient in what you accept" 23:58:46 -!- Sasha has joined. 23:59:02 elliott, what is the game btw? 23:59:24 elliott, magic-BNF? lex and yacc? 23:59:25 -!- Sasha2 has quit (Read error: No route to host). 23:59:32 Vorpal: 2D Newtonian mechanics third-person space flight/combat simulator. We're not sure exactly /what/ it's going to be yet, but something like that. 23:59:35 Vorpal: Definitely Newtonian. 23:59:45 Vorpal: Imagine Asteroids, times a few billion. 23:59:54 Vorpal: Also: Localised changes to the laws of physics as a tactical weapon! 2010-12-23: 00:00:04 elliott, asteroids. Don't think I actually played that 00:00:16 elliott, isn't it like Ambrosia's Maelstrom? 00:00:19 Vorpal: It's that thing where you're a triangle and there are hollow rocks around you. 00:00:26 http://upload.wikimedia.org/wikipedia/en/1/13/Asteroi1.png 00:00:32 And you spin around shooting them. 00:00:53 elliott, do large ones break into smaller when hit? 00:01:04 Yes. 00:01:06 elliott, if so it is exactly like maelstrom, except with worse graphics 00:01:19 To be fair, it almost certainly predated Maelstrom by a long, long time :P 00:01:24 (1979) 00:01:25 elliott, yes quite 00:01:31 elliott, you played the latter? 00:01:38 Maelstrom is a 1992[1] clone of Asteroids with an improved graphics and interface.[2][3] Many of Ambrosia's subsequent shareware titles followed in a similar formula. 00:01:40 I haven't. 00:01:50 elliott, http://en.wikipedia.org/wiki/File:Maelstrom_screenshot.png 00:01:56 I have used exactly two Macs in my life for more than a few seconds, I think. 00:02:10 One was someone else's eMac I used once, the other is my iMac. 00:02:16 Although to be fair it's rapidly approaching three. 00:02:19 emac... what one was that now again? 00:02:31 Vorpal: you know the original iMac? 00:02:33 Like that, but white. 00:02:39 eh 00:02:57 elliott, I do know the original imac. And it came in a snow white edition later. And flower power 00:03:29 http://www.extensions.in.th/post/emac/emac2.jpg 00:03:34 It was short for "education Mac". 00:03:43 The eMac, short for education Mac, was a Macintosh desktop computer made by Apple Inc. It was originally aimed at the education market, then available as a cheaper mass market option over Apple's second generation iMac. The eMac design closely resembled first-generation iMacs. It sports a PowerPC G4 processor significantly faster than the older iMac's G3 processor, and a larger 17" flat display. 00:03:47 -!- Sgeo_ has joined. 00:03:47 -!- cheater99 has joined. 00:04:07 that looks OS-X-ish 00:04:13 Naw. 00:04:15 OS 8, OS 9. 00:04:19 on the image it does 00:04:20 Although it did last for several years under OS X, yes 00:04:22 *yes. 00:04:25 Until 2005. 00:04:26 ah 00:04:28 Well, 2005/2006. 00:04:30 But nobody bought it. 00:04:45 Vorpal: Anyway we've ruled out MMO because MMO physics, synchronisation and servers sounds like FUN (read: pain). 00:04:56 Vorpal: So it's either going to be a deathmatch game or [insert other thing here]. 00:05:12 elliott, I know a guy good at MMO 00:05:14 a swede 00:05:21 elliott, I think he went by the name notch 00:05:24 you may ask him 00:05:29 Vorpal: You have a strange definition of good. 00:05:33 elliott, XD 00:05:39 Vorpal: Also of MMO, Minecraft servers rarely have /that/ many people on them :P 00:05:54 elliott, indeed. AND IT IS ALREADY BUGGY! 00:05:54 -!- cheater99 has quit (Read error: Connection reset by peer). 00:06:01 BZFlag! 00:06:11 Vorpal: I feel kinda bad doing copyleft ... 00:06:23 BZFlag servers have lots of people on them! 00:06:23 elliott, alt: it is MMO for minecraft 00:06:27 (massive there = 10) 00:06:36 elliott, XD 00:06:38 -!- Sgeo has quit (Ping timeout: 240 seconds). 00:06:41 (and lots of cheating, but I digress) 00:06:48 elliott, and copyleft rocks! 00:06:53 elliott, you are seeing the light 00:07:01 Vorpal: (As in, the game will be released under "sorta-copyleft": it's copyleft, except you can't distribute anything more than patches in public, basically.) 00:07:10 Because otherwise people could just post the entire source :P 00:07:28 elliott, you're turning evil? 00:07:43 Sgeo_: Yes; mwahahaha, look at my fangs. 00:07:59 So evil that I'm considering putting it on a torrent site as a potential solution for slow sales. 00:08:03 MWAHAHAHAHA 00:08:08 (Note: Phantom_Hoover__ is not nearly as insane as me.) 00:08:30 elliott, of the two of us, who thought of the negative mass engine? 00:08:35 elliott, hm "On July 5, 2006, an "educational configuration" of the iMac Core Duo was introduced, discontinuing and replacing the entire eMac line. The new iMac has a Combo drive rather than a SuperDrive and a smaller hard disk of 80 GB." 00:08:40 elliott, this sound feeble 00:08:54 elliott, I mean, for education you want power machines 00:09:00 Vorpal: Are you being serious. 00:09:01 Phantom_Hoover__: Well, okay, you. 00:09:17 Phantom_Hoover__: But I'm crazy enough to want to release the whole thing as free-as-in-beer and open source after sales trickle off! 00:09:33 Pssht, Notch thought of that. 00:09:43 TAKE THAT, CAPITALISM! I AM GOING TO BE AS NONCONFORMIST AND HIPPIE AS I CAN WHILE STILL RELYING ON THE SALE OF DATA TO MAKE A LIVING! 00:09:51 elliott, yes quite. We all have Core 2 Quad or better in most labs at university. (so there are a few old ones with p4 and CRT iirc, but they are an exception) 00:09:59 Vorpal: education != uni 00:10:01 education = school 00:10:07 = budget of approx. £0 00:10:12 (and they are only there because other computers are non-legacy) 00:10:25 (and we need parport programmers for some stuff) 00:10:28 (like FPGAs) 00:10:31 MIT still use Athena :P 00:10:42 elliott, yeah but that is software. There is no excuse 00:10:48 elliott, FUN FACT: as far as I can tell, the Edinburgh Council computers all have BT branding as their screensavers. 00:10:59 Phantom_Hoover__, BT? 00:11:00 Phantom_Hoover__: wat. 00:11:02 And they refer to their "customers", which annoys me intensely. 00:11:02 Vorpal: British Telecom. 00:11:08 huh 00:11:10 Phantom_Hoover__, WAT 00:11:11 YOU ARE A COUNCIL. NOT A BUSINESS. 00:11:13 Heh, customers of the government. 00:11:20 LIVE WITH IT. 00:11:25 Isn't it more like the government is *our* customer? 00:11:28 Sort of. 00:11:36 Well, really, the government is our contractor. 00:11:40 -!- infanticide has joined. 00:11:42 We just seem to forget that every now and then. 00:11:44 infanticide: GAK! 00:11:52 :) 00:11:56 It's more like "commercial metaphors can only lead to naïvety". 00:12:19 Phantom_Hoover__: Sure. 00:12:29 Phantom_Hoover__: But the government are definitely supposed to work for us. :p 00:12:34 elliott, anyway, why athena? 00:12:41 elliott, I mean.... there is no excuse to use that 00:12:51 Vorpal: Because they invented it, and they have a LOT of machines with it. 00:12:58 Vorpal: Hey, it runs gnome now. :p 00:13:03 (And is based on Ubuntu, now, I think) 00:13:05 "og:url - The canonical, permanent URL of the page representing the entity. When you use Open Graph tags, the Like button posts a link to the og:url instead of the URL in the Like button code." 00:13:07 WTF 00:13:15 Sgeo_: What? 00:13:22 That doesn't sound the least bit abusable 00:13:30 http://developers.facebook.com/docs/reference/plugins/like 00:13:32 elliott, wait, a second, isn't athena just a GUI toolkit? 00:13:39 Sgeo_: what 00:13:41 Vorpal: no 00:13:48 elliott, oh 00:13:57 Vorpal: Athena is just what some people call Xaw, because Project Athena at MIT (involving DEC and IBM) created it 00:14:11 Vorpal: Athena created X11, Kerberos and Zephyr. 00:14:27 -!- Zuu has joined. 00:14:28 elliott, ah 00:14:29 -!- Zuu has quit (Client Quit). 00:14:48 Vorpal: tl;dr: if MIT wants to have a bunch of semi-thin clients, they buy a bunch of expensive workstations, put Unix on them, invent X11 and Kerberos, connect them to a server, and call them thin clients. 00:14:53 "Students would have access to (for the time) high performance graphical workstations, capable of 1 million instructions per second and having 1 megabyte of RAM and a 1 megapixel display." <-- THIN CLIENT 00:15:03 -!- Zuu has joined. 00:15:59 elliott, well, if you need to do advanced computation then a lot of local resources might be good 00:16:07 Vorpal: They're used to run Emacs :P 00:16:29 elliott, see! 00:16:36 ha 00:16:44 eight megabytes and constantly swapping, not one! 00:16:49 (okay, so they've been upgraded since then) 00:16:54 Vorpal: http://blog.spang.cc/images/clean-athena.png Athena as of a few years ago. 00:17:03 Vorpal: I understand it has been upgraded to be Ubuntu-based since then and probably the visuals too. 00:17:06 elliott: Well, when they started getting high-quality workstations was much more expensive than getting high-quality X terminals and UNIX systems. 00:17:11 Vorpal: (That's GNOME 2.8. *In 2008.*) 00:17:25 pikhq: X terminals didn't exist because X11 didn't exist. 00:17:31 Vorpal: http://blog.spang.cc/images/clean-athena.png Athena as of a few years ago. <-- still decent 00:17:35 pikhq: They bought high-end workstations: 1 MIPS, 1 MB RAM, 1 megapixel display. 00:17:36 compared to the original 00:17:39 elliott: ... 00:17:40 Vorpal: 2.8!!! 00:17:44 elliott: Dear God. 00:17:46 elliott, what version is gnome now. 2.16? 00:17:47 elliott: The overkill. 00:17:47 I forgot 00:17:48 pikhq: They /invented X/ to run on these. 00:17:50 Vorpal: 2.32. 00:18:05 Vorpal: 2.8 came out in 2004. 00:18:06 elliott: Okay, Athena would have made sense if X terminals were easily available. 00:18:11 elliott: But holy God that's nuts. 00:18:15 pikhq: *AWESOME 00:18:16 pikhq: Not nuts! 00:18:23 pikhq, awesome for the students there 00:18:26 elliott: Okay, yes, I was actually looking for "crazy awesome". 00:18:28 pikhq: Anyway, they all have their own copy of GNOME I think. 00:18:33 Just /some/ apps are on a server. 00:18:40 I think Emacs is, for instance. 00:18:42 Maybe. 00:18:44 elliott, except those at the AI lab. They had lisp machines 00:18:47 Dunno about Firefox. 00:18:57 (at some point at least) 00:19:03 Vorpal: I'm pretty sure anyone could go down to the AI Lab :P 00:19:05 Vorpal: Lisp machines were falling out of vogue by the time Athena came into play. 00:19:11 pikhq, ah 00:19:25 Though MIT almost certainly still had plenty at the AI lab. 00:19:29 Athena started in 1983. 00:19:33 So not "really". 00:19:41 But yeah, it didn't take long for them to decline. 00:19:57 Were they Symbolics, though? I doubt it. 00:20:02 Since Symbolics grew out of the AI Lab. 00:20:20 Probably the AI Lab-built machines. 00:21:02 -!- Phantom_Hoover__ has quit (Remote host closed the connection). 00:21:50 It amazes me that X actually has support code for widget libraries. 00:22:01 -!- cheater99 has joined. 00:22:08 Even though it was last used over a decade ago. 00:23:38 widget libraries? 00:23:42 presumably not gtk etc 00:24:32 Xaw and Motif. 00:24:48 They called out to Xt. 00:25:06 -!- cheater99 has quit (Read error: Connection reset by peer). 00:25:10 night → 00:25:28 pikhq: People still use Xaw. And Motif. 00:25:40 If Vorpal moves left, will time move backwards back into day? 00:25:51 DEEP. 00:28:06 pikhq: I NEED LANGUAGE SUGGESTIONS 00:29:28 elliott, Falcon Factor Haskell C C++ Java Newspeak Smalltalk Ur Python BancSTAR Brainfuck 00:29:34 ^^in no particular order 00:29:37 Fail at interpreting my statement. 00:30:59 pikhq: What would JESUS put in a language??? 00:31:44 coppro: 00:31:45 elliott@dinky:~$ clang -fblocks bar.c -o bar 00:31:45 /tmp/cc-FT8NmW.o:(.rodata+0x20): undefined reference to `_NSConcreteGlobalBlock' 00:31:47 coppro: :( 00:32:40 coppro: You never told me blocks don't work as regular function pointers :| 00:32:50 elliott: Jesus would put salvation into a language, and everyone else would turn it into C++. 00:32:52 elliott, something that prevents debuggers and statements used in a debugging context from working properly. You need faith that the program will work properly. 00:34:36 "Clang doesn't yet provide an easy way to use blocks on platforms that don't have built-in operating system support (e.g., SnowLeopard)." 00:34:40 pikhq: Can I see your copying code? 00:35:03 elliott: That line is bullshit. 00:35:13 elliott: http://compiler-rt.llvm.org/ You just need that library installed. 00:35:20 pikhq: Right. Apparently it's not so mature though. 00:35:27 (They linked to that in the same comment.) 00:36:13 pikhq: But srsly, you can't use blocks as function pointers. 00:36:15 i.e. useless to me 00:36:19 No? 00:36:35 http://sprunge.us/eFJC There's a self-contained example. 00:36:53 pikhq: But srsly, you can't use blocks as function pointers. 00:36:54 Is this true? 00:37:01 Hmm. Yeah, it is. 00:37:26 http://sprunge.us/eFJC There's a self-contained example. 00:37:31 Any way to avoid being explicit with the closure? 00:37:38 That's kind of a pain as a compiler-writer. 00:37:38 No. 00:38:05 What's the name of the compiler-rt lib? 00:38:20 There's librt but it's not that. 00:40:31 pikhq: Are you suuure I can't avoid explicit closing? 00:40:59 -!- cheater99 has joined. 00:41:31 elliott: If you can avoid ever popping the function off the stack, you can use GCC's automatic closing. 00:41:40 -!- zzo38 has joined. 00:41:56 pikhq: Hmm. Well, can I just list all the variables mentioned in the function body and that would be sufficient? 00:42:12 pikhq: Also: How do you avoid invoking gcc's automatic closing in that code? 00:42:17 Should C have a allocprintf command? 00:42:32 zzo38: To do what? 00:42:43 elliott: What do *you* think? 00:42:50 zzo38: I have no idea. 00:43:00 elliott: I do not ever use any variable from the enclosing scope. 00:43:07 zzo38, how difficult would it be to port MegaZeux to Flash? 00:43:12 elliott: You cannot guess what I meant? 00:43:14 pikhq: Heh. 00:43:16 zzo38: No. 00:43:29 -!- cheater99 has quit (Read error: Connection reset by peer). 00:43:29 Sgeo_: I don't know. But I suggest you don't port MegaZeux to Flash. 00:43:56 :( 00:43:57 Can you compile C programs with SDL into Flash? If so, then it is easy. But I don't think you can do that. 00:44:08 Well, you can compile C to Flash. 00:44:12 A guy ported Doom to Flash that way. 00:45:07 Sgeo_: Why do you want it in Flash anyways? It is much better native (it will both be faster and will not require a Flash player). 00:45:34 So more people will play MegaZeux games! 00:46:11 Sgeo_: MegaZeux will compile on most operating systems, including Nintendo DS. 00:47:02 It's impossible to get lazy people to go through that effort to play what feels like a flash game 00:47:04 (But if you can find a way to compile C programs with SDL into Flash, you can try compiling mzxrun only into Flash, although I still don't like it.) 00:51:03 Sgeo_: Mainstream MegaZeux executables are available for most common operating systems. For my version, executable is available only on Windows to download, but it works on other operating systems too. If anyone wants to contribute executables of my MegaZeux in other operating system, I might post a link to those ones too. 00:51:53 elliott: What I meant by "allocprintf" is one that is like 00:52:15 "sprintf" but it automatically allocates it too. 00:52:43 zzo38: allocsprintf would be a better name. GLib has that, by the way. 00:53:10 elliott: I didn't know that before. 00:53:17 zzo38: http://library.gnome.org/devel/glib/stable/glib-String-Utility-Functions.html#g-strdup-printf 00:53:58 But that's for GNOME isn't it? 00:54:24 zzo38: No. 00:54:29 zzo38: GLib is portable. 00:54:45 zzo38: And works in programs with any type of interface; it does not depend on any interface library. 00:54:59 Well, either way, I am writing the program without such functions because it doesn't have it, I was just mentioning something that I might find useful. It is not absolutely necessary. 00:55:51 zzo38: Glib just happens to be heavily used by Gnome; it's a fairly generic "throw everything in that should've been part of the C library" sort of thing, though. 00:56:09 Well, it also has that revolting object system. 00:57:12 Yes, but you don't have to link that in. :p 00:58:25 Sgeo_: Have you played my MegaZeux game yet, though? (It is recommended you download my copy of both the world file and the MegaZeux program, but you don't have to (for Part I).) 00:58:59 pikhq, what's horrible about it? 00:59:16 I mean, besides trying to use it in its native language? 00:59:31 -!- cheater99 has joined. 00:59:57 What I know is that when I need a object system in a C program, I will write one that is suited for that specific program that I am writing. 01:00:24 zzo38, that's because you're zzo38 >.> 01:01:28 GLib is pretty awful in reality :P 01:01:29 -!- cheater99 has quit (Read error: Connection reset by peer). 01:01:47 elliott, to use from C, or even from a language like Vala/Genie? 01:01:58 GLib is just awful full stop. 01:02:03 But it has some useful functions. 01:02:48 I have written more of TeXnicard already. Including pattern matching. 01:03:48 pikhq: srsly though, I don't think Debian has a compiler-rt package. 01:04:02 elliott: What is a compiler-rt package? 01:04:13 A thing for LLVM. 01:05:38 aha 01:05:42 libblocksruntime-dev 01:05:45 split out by stupid debian 01:06:04 pikhq: Are you sure there's no way to cast a block to a function pointer? 01:07:26 I have a idea of esolang that nearly everything must be done by solving a halting problem. What is the minimum number of other things needed? 01:10:17 None that I know of. 01:12:58 pikhq: Bleh, I can't figure this out at all... 01:15:22 -!- zzo38 has quit (Remote host closed the connection). 01:16:21 pikhq: Why is parsing such a pain. 01:17:01 -!- cheater99 has joined. 01:19:29 -!- cheater99 has quit (Read error: Connection reset by peer). 01:22:19 -!- ais523 has quit (Remote host closed the connection). 01:24:03 -!- calamari has quit (Quit: Leaving). 01:24:22 pikhq: Maybe I should just write the compiler in Haskell. 01:24:42 -!- infanticide has left (?). 01:34:07 pikhq: HOW DO YOU FEEL ABOUT NESTED COMMENTS 01:34:33 -!- cheater99 has joined. 01:35:05 -!- pikhq has quit (Ping timeout: 250 seconds). 01:36:03 -!- cheater99 has quit (Read error: Connection reset by peer). 01:36:52 -!- pikhq has joined. 01:47:22 109.8lbs 01:47:35 And that's considering I didn't eat much today 01:47:41 Maybe I'll be ok on Feb 10th 01:51:31 -!- cheater99 has joined. 01:52:22 pikhq: HOW SHOULD I PARSE 01:54:00 -!- cheater99 has quit (Read error: Connection reset by peer). 02:00:02 -!- FireFly has quit (Quit: swatted to death). 02:00:34 pikhq: ping 02:04:22 GNIP 02:05:18 pikhq: HOW DO I PARSE 02:05:33 Using GNIP. 02:06:17 pikhq: ;_; 02:06:21 pikhq: Even Parsec is a bit of a bitch. 02:09:59 -!- cheater99 has joined. 02:11:17 -!- wareya_ has joined. 02:12:26 -!- cheater99 has quit (Read error: Connection reset by peer). 02:14:34 -!- wareya has quit (Ping timeout: 276 seconds). 02:19:44 pikhq: You should make a parser library. 02:28:33 -!- cheater99 has joined. 02:31:11 -!- cheater99 has quit (Read error: Connection reset by peer). 02:38:07 elliott: seen "Yacc is dead"? 02:38:23 Mathnerd314: yep. and every response to it. and the author's re-response. 02:38:32 but it doesn't really help my current situation :) 02:42:09 * Mathnerd314 goes back to debugging his language 02:44:02 Mathnerd314: what lang? 02:44:56 my lang. a pre-pre-pre-release version of what will eventually rule the earth 02:45:08 Mathnerd314: brief overview? and no, /my/ lang will rule the earth. 02:46:04 Chrome's been acting up again lately 02:46:15 I'm almost tempted to switch back to Opera 02:46:50 elliott: it has message passing, and pattern matching, and multiple dispatch, and... the rest is part of the front-end I have to implement 02:46:58 Mathnerd314: strongly typed? 02:47:09 dynamically typed 02:47:35 -!- cheater99 has joined. 02:47:36 Mathnerd314: worthless 02:47:42 Mathnerd314: is it purely functional or impure? 02:48:05 the type system is part of the front-end 02:48:10 purely functional 02:48:21 Mathnerd314: hmm. maybe not entirely worthless then 02:48:34 Mathnerd314: message passing/multiple dispatch have a lot of overlap -- why not just pick one? 02:49:09 it has both; they're implemented in the same lines of code 02:49:09 -!- cheater99 has quit (Read error: Connection reset by peer). 02:49:19 Mathnerd314: that's not a reason 02:49:38 careful, thought-out design taking into account what to exclude as well as what to include > "it didn't take many lines of code so I threw it in" 02:49:39 umm... because I like power, and this is more powerful? 02:49:55 so far every time you've used the word power it's been to justify a bad idea ... but very well. 02:50:29 actually, it doesn't *really* have pattern-matching 02:50:37 i didn't even object to pattern matching 02:51:25 yeah, that's why it doesn't have it. because it has no data structures. 02:51:28 Is it "more power" to drop the strong typing from Haskell? More power in that case -> suck 02:51:50 Sgeo_: it has no type system yet. OK? 02:52:10 Mathnerd314, I was commenting on the idea of "power", not your language speciically 02:52:10 Mathnerd314: if it has no data structures, what do you send messages to? 02:52:14 specifically 02:52:14 also: how do you decide what dispatch to use? 02:52:45 elliott: environments 02:52:50 Mathnerd314: go on. 02:53:26 an environment takes some code and evaluates it. I have an environment which can construct other environments 02:54:29 and which dispatches to them 02:54:30 i still think that having both message passing /and/ multiple dispatch is a design flaw. or at least an indicator of badly-thought-out design. 02:55:21 coppro: wait, how do lambda expressions in C++0x compare, for compiling to? 03:02:28 I'm going to go watch a video on Ur 03:02:33 Maybe I'll warm up to it 03:02:45 Sgeo_: You won't unless you have a decent grasp of dependent types. 03:03:00 pikhq: In which a company announces that their BSD-licensed fork of the BSD-licensed LimeChat, which they do not name or link to in the press release, will be sold in the Mac App Store for $9. http://www.codeux.com/textual/future.php 03:03:33 18min 03:03:39 pikhq: New item on my TODO list: Offer free builds, encourage people to link to it with "Textual" as the link text for googlebombing. 03:03:39 I don't have that kind of time :( 03:03:46 Sgeo_: No, you can spend it on IRC instead. 03:03:50 Of course you have 18min. 03:04:12 elliott, if I start thinking it's ok to watch lengthy videos when I should be working, I'm screwed 03:04:59 -!- cheater99 has joined. 03:06:52 -!- cheater99 has quit (Read error: Connection reset by peer). 03:11:19 -!- wareya_ has changed nick to wareya. 03:13:34 http://www.khanacademy.org/ good way to learn some more advanced math? 03:15:28 um i don't really see anything there i would consider very advanced 03:15:47 khanacademy seems to be universally popular though. 03:18:10 DEAR FLASH: FUCK YOU FUCK YOU FUCK YOU FUCK YOU 03:18:35 Sometimes, when playing YouTube videos, the audio will keep going and the video will stop 03:18:57 I blame Windows. 03:20:11 elliott, I see stuff about linear algebra 03:20:27 Sgeo_: and? 03:20:37 It's stuff I don't know 03:20:44 That doesn't mean it's advanced stuff. 03:22:59 -!- cheater99 has joined. 03:25:21 -!- cheater99 has quit (Read error: Connection reset by peer). 03:32:56 -!- oerjan has joined. 03:35:08 hi oerjan 03:35:15 the ho 03:36:44 oerjan: the ho what? 03:36:55 http://esolangs.org/w/index.php?title=Udage&diff=20547&oldid=20545 <-- i totally schooled that cpressey dude 03:37:07 the ho de hi 03:37:47 haha, and some classic Graue rage: 03:37:49 [[I reverted your purge of Talk:Udage because that isn't the way wikis work. You do not own that page, nor do you own the Udage article. Do not delete valid information from this site again. --Graue 19:16, 10 Oct 2005 (GMT)]] 03:40:53 So, if I try to pretend PSOX never existed, and try to remove all traces of it ever existing, I'll be yelled at? 03:41:33 -!- cheater99 has joined. 03:42:34 -!- cheater99 has quit (Read error: Connection reset by peer). 03:42:50 Sgeo_: sheesh, obviously you'll be yelled at regardless 03:43:09 _maybe_ a bit more in that case 03:45:07 the basic thing to understand, Sgeo_, is that people like yelling at you 03:49:41 precisely! 03:50:03 I know you all secretly love me 03:50:08 Sgeo_: NOW DO YOUR HOMEWORK 03:51:55 oerjan: you should ban Sgeo_. 03:52:09 that doesn't help. 03:52:45 also with my own procrastination that would be bad karma. 03:54:51 oerjan: no, i just want you to ban him to make him go away 03:58:08 -!- cheater99 has joined. 04:00:21 -!- cheater99 has quit (Read error: Connection reset by peer). 04:16:01 -!- cheater99 has joined. 04:17:34 -!- cheater99 has quit (Read error: Connection reset by peer). 04:20:06 http://en.wikipedia.org/wiki/Computable_number#Formal_definition computable dedekind cuts -- awesome! 04:22:49 Hmm... Last 30 days allocation lists for APNIC, 16x/14, 6x/13, 4x/12. That's about 11Mi addresses (plus then there are the <250k allocations...) 04:23:39 http://www.amazon.com/Wishing-Well-Making-Your-Every/dp/078686561X . This book. This horrible, evil book 04:25:06 Also intersting to look at raw allocation counts for 250k+ allocations: 5 for RIPE, 1 for ARIN, 1 for LACNIC, 2 for AfriNIC and 26(!) for APNIC. 04:26:33 Runner-up in large allocations: RIPE with 5.25Mi. That's not even half of APNIC. 04:29:42 As a kid, I had a bad reaction to the woowoo in that book 04:30:18 Some people find comfort in that sort of BS. I found abject fear that haunts me to this day 04:32:36 5 forms of the final boss remaining. 04:33:02 Allocations this month: ARIN: 1 693 696. AfriNIC: 384 000. LACNIC: 1 095 936, RIPE: 3 953 920, APNIC: 12 063 232. Yes, APNIC allocated way more addresses than all the other RIRs COMBINED. 04:33:33 -!- cheater99 has joined. 04:34:32 Sgeo_: You're fucking crazy. 04:35:09 elliott, the claims of that book have had such a profound negative influence on me 04:35:35 Sgeo_: Did I mention that you're fucking crazy? 04:35:54 elliott, are you unaware of how easily kids can be affected by this sort of stuff? 04:36:07 Sgeo_: No, no, I'm not quite sure you *understand*: you're fucking crazy. 04:36:47 -!- cheater99 has quit (Read error: Connection reset by peer). 04:37:23 3 forms remaining... 04:37:31 pikhq, YouTube it all 04:37:55 pikhq: Are you doing it with just the infinity-plus-one and mandatory bosses? 04:37:57 pikhq: If not: wtf i hate you 04:38:56 There's different woowoo I believed as a kid, that wasn't so traumatic 04:39:11 elliott: I'm finishing my first playthrough dammit. 04:39:18 pikhq: ur lame 04:39:22 And the final boss is still a pain with the infinity-plus-one. 04:39:30 elliott, did you just call Ur lame/ 04:39:33 You see, it has 12 forms. You have to kill each one. 04:39:36 Sgeo_: shut up 04:40:07 Each one is a difficult boss in and of itself. 04:40:59 pikhq: lawl 04:41:25 Except I one-shot each one. 04:41:37 I just need to have enough full-SP-heal items to get through. 04:41:41 Which I do. 04:41:58 I find no fear in the idea of an afterlife, only comfort. In the idea of being able to control reality with your mind, I find the most horrible painful fear. 04:42:07 FINISHED. 04:45:04 SATAN DEFEATS ALL 04:45:46 pikhq: Good ending. 04:46:08 elliott: Yes, I used Satan to defeat the end of the world. 04:46:12 Sgeo_: You can do that, it happens by sending a few signals down to effectors which effect changes in the world around them. 04:46:42 pikhq, it would be better if it were an unwilling Anti-Christ 04:47:19 elliott: I could've used Odin instead; would that have made you feel better? 04:47:57 pikhq: No. 04:48:04 elliott: Messiah? 04:48:05 Sgeo_: Why aren't you in abject terror? 04:48:08 pikhq: NO. SATAN 04:48:16 Okay, then. Satan it was. 04:48:24 * pikhq rocks the devil horns 04:48:34 Because the only real way for my mind to affect reality is limited 04:48:58 My OCDish thoughts of people dying aren't going to kill them 04:49:02 Not very limited if you're an atom. 04:49:05 Also, what. 04:49:09 What the fuck has OCD got to do with that what 04:49:33 I thought OCD has to do with more severe unwanted thoughts than normal 04:49:48 I don't think you have any idea what OCD is, shut up 04:50:12 Well, I'm pretty sure there is a name for what I just described. I don't think I have it, but 04:50:44 Sgeo_: Um, thinking things you don't want to? 04:50:48 Here's a name for that: existing. 04:50:57 elliott, but more severely and painfully than normal 04:50:59 Sgeo_: OCD implies obsessive compulsions. And that it's a disorder. 04:51:03 Sgeo_: Umm... painfully? 04:51:08 Sgeo_: Just checking -- are we talking physical pain here 04:51:51 elliott, I don't know, ask the person I was talking to 04:51:59 IRL 04:52:15 Sgeo_: YOU JUST TALKED ABOUT "[THAT]LY" THOUGHTS, IF THEY DON'T EVEN CORRELATE WITH YOUR ONE-LINE DESCRIPTION THEN YOUR STATEMENT WAS BEYOND MEANINGLESS >_< 04:52:33 -!- cheater99 has joined. 04:54:38 Well, you know what sort of thoughts I'm talking about, you said they were a part of existing 04:54:55 Let's call it QRD. For the sake of argument. 04:55:04 If your thoughts did not involve the mentioned pain, how can you even say they are QRDly? 04:55:36 Because the other attribute of being unwanted is still there 04:55:36 -!- cheater99 has quit (Read error: Connection reset by peer). 05:01:10 Sgeo_: So let's say that a giraffe is an animal with spots and a long neck. 05:01:22 Sgeo_: Therefore jaguars are giraffey. 05:01:46 Ok, maybe I shouldn't have said OCDish, or maybe my understanding is wrong 05:01:49 Or inaccurate 05:07:36 whoa myndzi is pronounced mind-zy 05:07:39 i think 05:07:41 02:19:02 ironic seeing as how i use a y in my nick for a long i sound 05:07:51 Yeah, in large allocations, APNIC allocated almost 3 times more allocations than rest of the world combined... 05:08:15 (last 30 days) 05:08:18 heh 05:08:21 elliott: "mind's eye" hth 05:08:23 Ilari: so how long until the end now 05:08:25 oerjan: WHOA 05:08:27 oerjan: omg. 05:08:29 oerjan: wow. 05:08:35 oerjan: i thought it was just... "min-dzi" 05:08:37 min[imum] dzi 05:08:43 like mindy but with more z 05:08:44 whoa. 05:08:46 you have blown my mind 05:08:47 how 05:08:47 even 05:08:48 what 05:09:01 IANA depletion in this or next month, APNIC depletion sometime in next year... 05:09:06 elliott: mind you i don't have real confirmation of this theory 05:09:14 oerjan: ;_; 05:09:16 my lasdmklrt 05:11:35 -!- cheater99 has joined. 05:12:35 Those who model RIR depletions are starting to have their doubts to their models... 05:14:15 Ilari, hm? 05:14:15 -!- cheater99 has quit (Read error: Connection reset by peer). 05:15:20 If you want to see example, look at the latest note to the IPv4 Address Report. 05:17:07 Hah: "[...]which, by the way, currently predicts that IANA will hand out its last IPv4 address blocks on 10 June 2011[...]". That was September this year. Now the prediction is February (and probably too optimistic)... 05:18:19 The main problem with predicting exhaustions: Badly behaved distributions and changes to distribution parameters... 05:19:02 I'll take door number e! 05:19:06 It's still going! 05:19:23 There's optional post-game content! 05:22:08 http://tr.froup.com/tr.pl?1671 05:24:43 The spread between highest and lowest daily allocation rates (for days with allocations) is more than factor of 1000. 05:26:57 -!- elliott has quit (Quit: Leaving). 05:29:14 -!- elliott has joined. 05:29:16 13:31:46 I borrowed it without intent to return. 05:29:17 13:31:52 Phantom_Hoover, that's nasty 05:29:21 -!- elliott has quit (Remote host closed the connection). 05:30:31 -!- cheater99 has joined. 05:33:59 -!- cheater99 has quit (Read error: Connection reset by peer). 05:37:58 It's been an hour since I beat the final boss and I'm still playing the game. 05:38:08 Not merely seeing cutscenes, oh no. Still playing. 05:38:09 God. 05:39:38 -!- elliott has joined. 05:39:39 20:33:49 actually damn, everything can be mass-nouned 05:39:41 20:33:59 "we don't have enough mousepad yet" 05:39:44 -!- elliott has quit (Remote host closed the connection). 05:39:59 * pikhq wonders what elliot is doing 05:40:21 -!- elliott has joined. 05:40:24 20:59:39 C is an awesome language 05:40:25 21:01:03 it's like nuclear lego 05:40:30 -!- elliott has quit (Remote host closed the connection). 05:42:49 Going crazy. Got it. 05:43:24 * oerjan picks up a dropped t and stabs pikhq with it 05:45:23 oerjan: I was talking to elliot, not elliott, of course. 05:46:07 TOO BAD YOU DIDN'T SAY THAT BEFORE I FATALLY STABBED YOU 05:46:44 Aaand the game is finally freaking over. 05:50:01 -!- cheater99 has joined. 05:52:28 -!- cheater99 has quit (Read error: Connection reset by peer). 05:55:27 -!- Sasha2 has joined. 05:55:27 -!- Sasha has quit (Read error: Connection reset by peer). 05:57:01 -!- wareya has quit (Ping timeout: 276 seconds). 05:58:44 -!- wareya has joined. 06:08:33 -!- cheater99 has joined. 06:10:49 -!- cheater99 has quit (Read error: Connection reset by peer). 06:19:06 -!- oerjan has quit (Quit: leaving). 06:26:59 -!- cheater99 has joined. 06:28:12 -!- cheater99 has quit (Read error: Connection reset by peer). 06:44:33 -!- cheater99 has joined. 06:48:54 -!- cheater99 has quit (Read error: Connection reset by peer). 07:01:41 -!- Zuu has quit (Read error: Connection reset by peer). 07:04:34 -!- cheater99 has joined. 07:07:16 -!- cheater99 has quit (Read error: Connection reset by peer). 07:10:33 -!- Zuu has joined. 07:15:32 -!- augur has changed nick to Aug10. 07:16:43 -!- Aug10 has changed nick to augur. 07:23:34 -!- cheater99 has joined. 07:24:08 -!- zzo38 has joined. 07:25:27 Welcome to the esoteric programming channel! 07:25:33 -!- Goosey has quit (Quit: When the chips are down, well, the buffalo is empty). 07:28:35 -!- cheater99 has quit (Read error: Connection reset by peer). 07:33:55 -!- zzo38 has quit (Quit: No brain, no headache.). 07:44:34 -!- cheater99 has joined. 07:48:14 -!- cheater99 has quit (Read error: Connection reset by peer). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:04:06 -!- cheater99 has joined. 08:06:20 -!- cheater99 has quit (Read error: Connection reset by peer). 08:18:34 -!- roper has joined. 08:19:35 -!- oerjan has joined. 08:22:34 -!- cheater99 has joined. 08:26:01 -!- cheater99 has quit (Read error: Connection reset by peer). 08:33:31 -!- Phantom_Hoover has joined. 08:42:04 -!- cheater99 has joined. 08:44:53 -!- cheater99 has quit (Read error: Connection reset by peer). 08:49:44 The Lagerholm estimate jumed to "Today's IANA depletion date estimate: 2011-01-16". 08:51:14 What threw: It: 2Mi allocations to AU from APNIC. 08:54:32 2.66 blocks in RIR pool... 08:59:32 -!- cheater99 has joined. 09:01:34 -!- Sgeo_ has quit (Read error: Connection reset by peer). 09:03:05 -!- cheater99 has quit (Read error: Connection reset by peer). 09:05:25 About 11M addresses left until APNIC gets another blocks, triggering X-day immediately. 09:16:02 -!- oerjan has quit (Quit: leaving). 09:18:34 -!- cheater99 has joined. 09:23:12 -!- cheater99 has quit (Read error: Connection reset by peer). 09:33:21 Ilari, tell me when civilisation is about to ennd. 09:33:23 *end 09:33:29 I want to have popcorn handy. 09:34:17 Sorry, insufficient data to estimate that. :-/ 09:37:34 -!- cheater99 has joined. 09:39:36 -!- cheater99 has quit (Read error: Connection reset by peer). 09:52:52 -!- wareya_ has joined. 09:52:54 -!- nefasto has joined. 09:55:34 -!- cheater99 has joined. 09:55:40 -!- wareya has quit (Ping timeout: 240 seconds). 09:58:51 -!- cheater99 has quit (Read error: Connection reset by peer). 10:12:13 -!- nefasto has quit (Quit: http://irc2go.com/). 10:14:59 -!- cheater99 has joined. 10:17:06 -!- cheater99 has quit (Read error: Connection reset by peer). 10:32:35 -!- cheater99 has joined. 10:35:22 -!- cheater99 has quit (Read error: Connection reset by peer). 10:51:07 -!- cheater99 has joined. 10:53:41 -!- cheater99 has quit (Read error: Connection reset by peer). 11:09:35 -!- cheater99 has joined. 11:13:03 -!- cheater99 has quit (Read error: Connection reset by peer). 11:29:07 -!- cheater99 has joined. 11:33:04 -!- cheater99 has quit (Read error: Connection reset by peer). 11:48:35 -!- cheater99 has joined. 11:50:24 20:59:39 C is an awesome language 11:50:24 21:01:03 it's like nuclear lego 11:50:24 -!- cheater99 has quit (Read error: Connection reset by peer). 11:50:43 the only problem with that analogy is that C is way less modular 11:51:21 (so, it is like lego, except when it comes to one of the key defining properties of lego) 11:52:03 cpressey was on? 11:52:38 Phantom_Hoover, at some point I presume 11:55:20 23:24:08 --- join: zzo38 (~zzo38@h24-207-49-17.dlt.dccnet.com) joined #esoteric 11:55:20 23:25:27 Welcome to the esoteric programming channel! 11:55:52 I'd be baffled if anyone else did it, but zzo has desensitised me to his weirdness. 12:07:53 -!- cheater99 has joined. 12:13:02 Okay, why is stunnel trying to create localhost-only AF_INET port and then trying to connect to it? 12:16:47 Ilari, what is stunnel for now again? 12:17:14 Similar to inetd, but listens for TLS connections instead of plaintext. 12:17:40 hm 12:17:49 "trying" because it doesn't work and as result, stuff keeps failing... 12:17:55 Ilari, must be config issues 12:17:57 or bugs 12:18:14 (I think that exhausted all possibilities :P) 12:22:01 Ilari, has it worked before? 12:22:41 Yes it has. 12:23:05 Ilari, so what did you change (if anything?) 12:23:38 Hmm... Maybe it has always done that localhost connect thingy... 12:23:56 Ilari, well, presumably it hasn't always been failing 12:24:44 hm, is lo up when you get to userspace on linux? 12:24:52 or does some early init script start lo 12:26:02 ah, /etc/rc.sysinit has /sbin/ifconfig lo 127.0.0.1 up 12:26:24 right after udev basically 12:27:07 Ah, apparently strunnel is configured to use AF_INET instead of AF_UNIX for temporary internal sockets. Bleh. 12:27:28 Ilari, the whole "temporary internal sockets" thing sounds weird 12:27:42 Ilari, however, connecting over lo should work on every sane system 12:28:10 if someone has a crazy enough firewall that it doesn't work, then it is really their own issue 12:29:47 $ unbound-control dump_cache | wc -l 12:29:48 26297 12:29:48 heh 12:30:08 for wc -c it is 1286918 12:30:25 recompiling strunnel with saner settings.... 12:30:49 $ unbound-control dump_cache | grep -E 'IN[ \t]*A' | wc -l 12:30:49 4702 12:31:09 1805 in AAAA 12:31:10 hm 12:31:24 so where is the bulk 12:31:40 -!- augur has quit (Ping timeout: 240 seconds). 12:31:45 IN NS is 971, IN SOA is 1417 12:32:11 $ unbound-control dump_cache | grep -E '^;' | wc -l 12:32:11 6728 12:32:12 hah 12:33:17 wait, that seems wrong above 12:33:32 quite, the \t didn't expand it seems 12:34:51 -!- cheater99 has quit (Read error: Connection reset by peer). 12:34:52 unbound-control dump_cache | grep -Eo $'IN[ \t]*[^ \t]+' | awk '{print $2}' | sort -n | uniq -c | sort -n 12:34:53 hm 12:35:07 I think the parsing fails somewhat 12:35:25 ah + there gives more reasonable results... 12:35:53 -!- augur has joined. 12:39:51 Hah... stunnel segfaulted. 12:40:32 Ilari, why is it an issue that it uses AF_INET and lo? 12:43:10 unbound-control dump_cache | sed '/START_MSG_CACHE/q' | grep -Ev '^;' | grep IN | awk '{print $4}' | sort -n | uniq -c | sort -n 12:43:11 hah 12:43:23 and NS dominates. 12:43:25 Firewall rules. 12:43:32 Ilari, they restrict lo? 12:43:38 Ilari, if so they are utterly bonkers 12:44:19 Ilari, you should setup a data diode or whatever it is called on lo. Just firewall is too insecure! 12:45:50 Stunnel crashes even if client doesn't try to send client certificate. 12:48:09 Ilari, but why are you firewalling lo to this insane degree? 12:49:19 There's stunnel3 compat binary as well. Crashes just as good when connecting. 12:49:43 Ilari, yeah, but uh, why are you firewalling lo to this degree. That is the real wtf 12:50:32 -!- cheater99 has joined. 12:53:30 Tried stunnel 3.26 too. Crashes on connect. 12:53:40 -!- sftp_ has joined. 12:54:02 -!- sftp has quit (Ping timeout: 245 seconds). 12:54:21 -> Stunnel sucks... 12:54:36 Ilari, just fix the insane firewall rule 12:54:51 Ilari, really, what are the rules for lo? 12:55:23 Same as global, plus few extra ports allowed. 12:55:34 Ilari, why are you surprised stuff breaks then 12:56:08 I expect software to use AF_UNIX for local stuff internally, not AF_INET to loopback. 12:56:18 Ilari, the usual way is to check for invalid state (and on ipv6 for rt type 0), then the rule after that/those is generally "if loopback, allow" 12:56:30 Ilari, you expect too much 12:56:49 Ilari, besides, what does it add to security? I doubt anything. 12:57:01 Windows-portable software will likely not use AF_UNIX for anything. 12:57:08 Deewiant, that too 12:57:26 I actually have built version of stunnel that uses AF_UNIX as it should. Except that that crashes if client tries to connect... 12:57:36 Ilari, probably because few people use it 12:58:10 Ilari, also, shouldn't you use something like selinux or similar to limit what unix sockets each program can use 12:58:14 -!- oerjan has joined. 12:58:18 It crashes inside SSL client certificate routines, which AFAIK come before it tries to use internal sockets... 12:58:18 oerjan, hi 12:58:25 g'day 12:58:26 Ilari, hm. 12:58:40 Ilari, I suggest you go back to the previous working setup and try again 12:59:04 damn rsi acting up again :( 12:59:11 oerjan, rsi? 12:59:33 oerjan, (as in, which meaning of rsi) 12:59:45 the one which it's painful to type out 12:59:51 * oerjan ducks 13:00:18 oerjan, ah that would be "Register Storage Immediate" 13:00:18 * oerjan then whimpers 13:00:27 It crashes instantly after receiving the client certificate... 13:00:38 Ilari, even on the previous working setup? 13:00:41 * oerjan swats Vorpal -----### 13:00:54 oerjan, use speech to text or something 13:01:00 oerjan, it would be a good laugh 13:01:28 this laptop doesn't actually have a microphone. also i hate unnecessary sounds. 13:03:07 Okay, 3.26 works (including invoking the program) if I don't send a client ceritificate. 4.34 crashes even if I don't send it. 13:03:28 Ilari, is this with or without insane firewall setup? 13:03:43 Ilari, for purposes of debugging you should test if it affects anything 13:03:52 bbl 13:08:11 oerjan, no external mic? 13:09:50 no 13:09:52 oerjan, also, I never imagined you as one using a laptop. 13:10:02 oerjan, I mean, a vt100 sounds more your style 13:10:08 :D 13:10:08 or maybe a workstation 13:10:19 that would work too 13:10:26 sure, when i was at the university... 13:10:41 oerjan, yeah, but laptop just doesn't suite you! 13:10:53 oerjan, at least use a desktop 13:11:01 even I use a desktop at home 13:12:58 oerjan, besides laptops are not comfortable for long time use (say, more than a 4-5 hours / day) 13:13:10 you don't say. *ouch* 13:13:53 oerjan, the touchpad is useless. And the trackpoint finger gets sore after a few hours 13:14:14 mouse ends up at wrong height often. 13:14:24 i don't mind the touchpad, there is no trackpoint 13:14:24 and of course the monitor is in the wrong place 13:15:26 oerjan, and the travel distance on laptops sucks 13:16:45 oerjan, at least I hope it has full sized keys 13:16:45 well i don't actually bring it anywhere anyhow 13:16:54 yes 13:17:28 oerjan, anyway, they are inferior to a proper mechanical keyboard 13:18:18 Ah, found out why stunnel crashes: OpenSSL library/header mismatch. 13:18:49 Now it works even with client certs... 13:21:57 -!- Phantom_Hoover has quit (Read error: Connection reset by peer). 13:22:01 -!- Phantom_Hoover_ has joined. 13:36:48 -!- cheater99 has quit (Read error: Connection reset by peer). 13:39:49 what was that site to find shortest path on wikipedia? 13:39:56 between two articles 13:40:31 Gregor had a game based on it 13:40:41 oerjan, I remember some automated tool for it 13:40:46 ah 13:40:53 There are several. 13:41:13 fizzie, right, happen to know where to find one? 13:41:15 Quick googling found me http://thewikigame.com/ but not the one that had the psychedelic color-flashery and link-dropping feature. 13:41:35 fizzie, the one I remember was just a pain white page 13:41:37 (That one has a few game modes though.) 13:41:38 fizzie, like, no css 13:42:00 fizzie, and I don't want it as a game, I want it as a tool that tells me the shortest path. 13:42:09 Oh, that. 13:42:29 fizzie, yes, I googled but can't find it 13:42:38 http://www.netsoc.tcd.ie/~mu/wiki/ ? 13:42:42 (It's linked from Wikipedia.) 13:42:45 heh 13:43:10 fizzie, hm, I guess that works. Not the one I thought of. But any tool that does the job is okay 13:43:20 It's a bit dated (March 2008) now. 13:43:26 ah 13:43:29 -!- Phantom_Hoover has joined. 13:45:17 -!- Phantom_Hoover_ has quit (Ping timeout: 245 seconds). 13:45:17 There's also http://www.xltd.com/WikiMindMap/WikiPath.htm but that's not one I remember having seen before. That one doesn't say which day's dump they're using. 13:46:02 fizzie, it could be http://www.netsoc.tcd.ie/~mu/wiki/ if they redesigned that page. The result page looks similar to what I remember 13:46:21 I guess they could've just prettified it up a bit. 13:47:56 fizzie, anyone know what the longest path is (excluding those of infinite length due to lack of any links between) 13:49:10 "Several people were asking about what's known as the "diameter" of Wikipedia, that is, the distance between the two articles furthest apart (the longest shortest path if that makes any sense to you). This was in fact the original goal of the project but it turned out not to be very interesting. Wikipedia has giant "tails", almost linear linked lists of articles that stretch out for 70 links." 13:49:16 That's on that six-degrees page. 13:49:26 ah 13:49:40 "Even when I special-cased out that string of 70 boring articles, a new one appeared (I think it was linked pages about administrations of Myanmar or something)." 13:49:45 Hello. 13:49:49 fizzie, heh 13:49:50 ineiros, hi 13:50:04 But the center of wikipedia (in March 2008) was "2007". 13:51:09 didn't they change policy to include less year links in articles? 13:51:26 i think i saw some being edited away at one time 13:53:05 don't recall if it was before or after 2008 though 13:53:21 fizzie, hm, I wonder if wikipedia has an Eulerian path... 13:53:27 probably not 13:53:40 -!- yiyus has quit (Read error: Operation timed out). 13:54:22 a Hamiltonian path would be interesting as well 13:54:52 There are pages with no incoming links and multiple outgoing links (like some disambig pages), so no. 13:55:00 both of those only need three articles with either no paths out or no ... right 13:55:42 fizzie, what about the set of all pages that can be reached from the centre. 13:55:55 still, dead ends I guess 13:55:56 hm 13:56:06 you need paths both ways 13:56:10 oerjan, yeah 13:56:15 Yes; I don't know about the strongly-connected component, though. 13:56:27 so, we need to carefully tweak the pages so that such a graph is possible 13:56:36 even then it can easily fail i think 13:56:43 Yes, probably. 13:56:47 hm 13:56:50 "A directed graph is Eulerian if it is strongly connected and every vertex has equal in degree and out degree." 13:56:58 That sounds like it's unlikely to hold. 13:57:04 for eulerian path you cannot have too many with an odd number of in/out neighbors 13:57:23 fizzie, so Hamiltonian path might be more feasible 13:57:26 oh wait _directed_ too 13:57:39 Well, the links are quite naturally directed. 13:58:36 -!- Phantom_Hoover_ has joined. 14:00:38 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds). 14:05:34 -!- cheater99 has joined. 14:06:38 ineiros, ??? at your server 14:06:45 ineiros, I got in, but wtf 14:07:21 ineiros, I'm waiting for the real world to be back before I try again 14:07:32 ineiros, you have some completely weird place there now 14:07:51 Vorpal, screenshot? 14:08:18 fizzie, try yourself. There were a number of monster spawner cages embedded in the ground near spawn. And it wasn't the usual world. 14:08:36 and empty inventory 14:08:41 Well, it was also beta 1.1_02 and no hMod. 14:08:45 So I assume it's for testing. 14:08:48 ah 14:09:01 well, not much point in playing on it 14:25:33 How do I get Debian to let me install Sid packages if necessary, but use the Squeeze packages by default? 14:27:50 Add both to sources.list, then write an APT preferences file to prefer squeeze, but include sid with a lower priority. 14:27:55 Cf. http://jaqque.sbih.org/kplug/apt-pinning.html 14:30:48 fizzie, not working! 14:31:15 Well, it has worked for me for a mixed-distribution Debian. How is it not working? 14:31:46 apt-get upgrade still lists insanely huge numbers of packages to upgrade! 14:32:15 Oh, http://wiki.debian.org/AptPreferences is the official version of above. 14:33:43 What about "apt-get --dry-run -t testing upgrade", does that want to upgrade the world too? 14:34:46 It should be no different than using the preferences-file driven pinning, though. 14:35:22 fizzie, assuming I can s/testing/squeeze/, since that's what's on all of my apt lines. 14:35:45 Well, you could try both. I think they should be usable interchangeably there. 14:36:44 fizzie, OK, got it working. 14:42:09 -!- elliott has joined. 14:43:53 it's eliottt! 14:44:27 indeed 14:45:11 04:59:04 damn rsi acting up again :( 14:45:13 oerjan: not carpal tunnel? 14:45:50 i don't know precisely 14:45:56 05:12:58 oerjan, besides laptops are not comfortable for long time use (say, more than a 4-5 hours / day) 14:46:04 Vorpal: i've been using this laptop exclusively for many months now 14:46:41 oerjan: i hope you enjoyed vorpal criticising every aspect of your computer, i bet you're going to replace it now 14:46:47 with all that new knowledge 14:47:09 very nice sarcasm 14:47:25 elliott, quick, give me a Debian mirror adress! 14:47:28 *address 14:47:36 Phantom_Hoover_: se.mirrors.kernel.org 14:47:38 iirc 14:47:55 wait no 14:48:07 05:46:02 fizzie, it could be http://www.netsoc.tcd.ie/~mu/wiki/ if they redesigned that page. The result page looks similar to what I remember 14:48:08 erm 14:48:13 http://mirrors.se.kernel.org/debian/ 14:48:13 Phantom_Hoover_: ^ 14:48:16 why? 14:49:12 06:06:38 ineiros, ??? at your server 14:49:12 06:06:45 ineiros, I got in, but wtf 14:49:12 06:07:21 ineiros, I'm waiting for the real world to be back before I try again 14:49:12 06:07:32 ineiros, you have some completely weird place there now 14:49:12 06:07:51 Vorpal, screenshot? 14:49:13 06:08:18 fizzie, try yourself. There were a number of monster spawner cages embedded in the ground near spawn. And it wasn't the usual world. 14:49:17 anyone got a screeny 14:49:28 06:25:33 How do I get Debian to let me install Sid packages if necessary, but use the Squeeze packages by default? 14:49:31 Phantom_Hoover_: YOU NEVER, EVER DO THAT. 14:49:34 Phantom_Hoover_: DO. NOT. DO. THAT. 14:49:43 ... 14:50:04 Phantom_Hoover_: Rephrase. Do not do that unless you /really, really know what you're doing/. *REALLY.* 14:51:12 Phantom_Hoover_: Just manually dpkg -i the few packages from sid you really want. 14:51:31 -!- FireFly has joined. 14:53:19 06:08:18 fizzie, try yourself. There were a number of monster spawner cages embedded in the ground near spawn. And it wasn't the usual world. 14:53:26 Vorpal: you didn't destroy them, did you? 14:55:08 elliott, why do you ask 14:55:48 In case you did. You said "were". 14:55:51 Past tense. 14:56:00 fizzie: Is there a way to get into that blocked-off tunnel near spawn? :p 14:56:22 oh god monsters are on 14:57:36 See those craters? 14:57:41 Me and a couple of creepers. 14:58:40 i'm scared 15:00:40 Killed a fucking zombie with my bare fucking hands, chickened out, disconnected. 15:02:02 zombie chickens 15:02:13 Phantom_Hoover_: A creeper and a skeleton are currently molesting me from the game over screen. 15:02:19 Oh, now a zombie too. 15:02:38 Phantom_Hoover_: So I should have rounded up a few enemies if anyone else wants to go on :P 15:02:41 Phantom_Hoover_: Did I mention I ran into the creeper to avoid the horrible fate of zombies? 15:03:11 -!- Phantom_Hoover_ has quit (Quit: holidays). 15:03:12 bitches can't climb up trees 15:04:48 the mob spawners just spawn pigs :( 15:04:51 fizzie: Got any explanation for this? :P 15:05:09 fizzie: right clicking while holding a feather on dirt or sth -> 15:05:10 15:04:27 [INFO] Connecting to a322.org:25566... 15:05:12 erm, 15:05:14 15:04:23 [DIED] protocol.c: 359: Unknown packet id: 0xee (dir 2) 15:05:37 Probably desynced due to . 15:05:55 I still can't quite "get over" not adding a length field in the "protocol". 15:06:14 So has anyone actually done anything other than build a blocked-off tunnel at spawn? :p 15:06:30 fizzie: Holding down right click w/ feather -> pretty reliable crash if you walk 15:07:41 -!- MigoMipo has joined. 15:07:45 I'll take a look at home, hopefully. Though there's a movie-watching thing, so I might not have time. 15:08:03 fizzie: So is the server staying like this? :p 15:08:21 I don't know; I haven't heard anything from ineiros except the "hello" on-channel. 15:09:08 fizzie: Let's just say yes, 'cuz this is pretty awesome. 15:09:17 we can COLOMIJIGGER 15:09:20 *MIZE 15:09:37 dir 2 is PACKET_TO_SERVER, though, so it got desynk'd in the client-to-server stream, which is nice, because that one tends to be less complicated and easier to anamalyze. 15:09:49 heh 15:10:53 Packet ID 0x05 at least seems to have been completely repurposed, so I'll have to update for that. 15:11:16 Iron at (17,-153) for whenever I'm not shitfaced. 15:11:20 Shtifaced scared that is. 15:11:27 My terminology does not have to sense-make to be use-make. 15:12:56 What @ (45,-242). 15:13:47 THINGS THAT DO NOT WORK: Jumping off a cliff to get down 15:14:04 > //coords 15:14:05 15:13:29 [CHAT] //coords: x=41, z=31, y=63 15:14:05 > //coords 15:14:05 15:13:30 [CHAT] //coords: x=41, z=31, y=63 15:14:11 fizzie: There's a blank line after the chat prompt. 15:14:14 Printing bug? 15:14:18 No, wait. 15:14:22 15:08:40 [INFO] Starting up... 15:14:22 15:10:36 [CHAT] //coords: x=17, z=-153, y=65 15:14:22 15:12:21 [CHAT] //coords: x=45, z=-242, y=85 15:14:26 Blank line before that last one too. 15:20:21 Hello. 15:21:20 elliott: The placed spawners apparently only spawn pigs. I would like to have the capability to edit them, though. But hey, free bacon. 15:22:20 I thought to have something else there for a few days until the hMod is stable again. 15:23:09 Also, if someone wants to have maps at some point, you should point me to a system that can handle the current mess. 15:25:22 ineiros: You use cartomograph, right? 15:25:27 Also: plz keep it like this, it's awesome. 15:25:32 (As in this map.) 15:29:22 15:28:41 [DIED] protocol.c: 359: Unknown packet id: 0x19 (dir 2) 15:29:24 after building cloth 15:30:51 elliott: No, pymap. 15:31:05 ineiros: Why didn't you just patch the region? 15:32:38 fizzie: Setting the extents manually caused an exception elsewhere in the code. Didn't have motivation to look further into the code. 15:33:18 Also, wasn't it pynemap instead of pymap? 15:33:41 fizzie: Yes, my bad. 15:34:14 I haven't tried the others; Cartographer 5's Linux port didn't have extents-setting features. 15:34:32 Someone has done a google-maps driven map already, though, http://www.triangularpixels.com/Junk/TectonicusTest/map.html 15:36:03 http://www.minecraftwiki.net/wiki/Programs_and_Editors#Mappers says of one that it's the "The fastest mapper available; capable of processing very large maps. Supports multiple modes including cave maps and resource highlighting." but it seems to be Windows-only, according to them little icons. 15:39:37 I still want to do that google maps / openlayers -based web-tile-mapper at some point, though I'd prefer if it had quasi-real-time player markers and such from a server plugin too. 15:46:10 fizzie: The Google Maps ones take up many-the-gigs of storage space, I gather. 15:46:55 They could have a limited-size cache and on-the-fly generation. 15:47:59 fizzie: That'll not slow the server down at all, nope. 15:48:01 :p 15:48:45 Well, it could be done on some other box with the world rsync'd every now and then. Not sure how easy it is to add real-life geodata on top of gmaps. (Or openlayers.) 15:48:49 "Minecraft is about to go up in price, so today is your last chance to buy it for €10. Obviously I recommend it. When it officially reaches beta today, the main niggles with the mutliplayer will be gone and the price will be €15." -- yes, those niggles like not being able to duplicate shit :) 15:49:36 -!- Sasha2 has quit (Ping timeout: 240 seconds). 15:50:17 "I stock up on wood. I stock up on stone. I stock up on metal. I even take some sand. Then I fret that the sand and wood is taking too much potential ham-space, and ditch it. Then I stock up on water. Then I wonder if I should go looking for more diamond to make armour with. Then I wonder if my beacon is tall enough. Then I wonder if I have enough pickaxes. 15:50:18 Then I stop being such a dithering prick and set light to the portal." 15:50:39 "I’m almost ready. The only thing wrong with this scene is that it doesn’t feel very dramatic. I’m going to *hell*, there should be some spectacle here. 15:50:39 I turn around and look at the closest tree for a while, then set fire to it. It starts a forest fire that rages across the hill behind me, enclosing the portal between a crescent of fire and the water of the bay." 15:50:45 I, too, solve all problems with forest fires. 15:52:11 "This is when I discover the rock beneath me is not in fact rock, but a sea of screaming faces that stick to my feet in such a way that I can barely move. Shit like this is going in my TripAdvisor review, Nether. Two stars MAX." 15:52:59 "I bolt back down as the fireball hits above. OK, I saw it. It’s about three blocks this way, then five that way, then a couple up and whunk! I’ve struck obsidian. Congratulations, Tom, you’ve discovered the thing you just came out of." 16:10:55 fizzie: [[The Settlers 7: Paths to a Kingdom 16:10:55 Super horrible DRM problems aside, this is a fresh air of old school game design, almost feeling board-game like at times. 4/5]] 16:11:05 fizzie: Notch -- he hates stupid horrible DRM problems. 16:11:12 Like, say, depending on a single server to play the game. 16:11:16 *game in multiplayer. 16:11:25 And bundling forced updates with the validation. 16:16:18 [[Sonic the Hedgehog 4: Episode 1 16:16:18 Too little, too late. Sonic in an undead zombie by now. 2/5]] 16:16:26 Coming soon to Minecraft -- zombies that aren't undead. 16:19:16 -!- pikhq has quit (Ping timeout: 255 seconds). 16:21:11 -!- pikhq has joined. 16:23:56 ineiros: FWIW, there are supposedly-stable pre-compiled builds of the beta-updated development hMod. 16:24:40 Someone has done a google-maps driven map already, though, http://www.triangularpixels.com/Junk/TectonicusTest/map.html <-- I seen at least two different programs that does it 16:25:27 *I've. 16:25:45 ineiros, when will the server go back to normal btw? 16:25:54 I would guess when hmod is updated 16:26:03 right? 16:30:51 Or never. 16:31:01 The maps would be cleaner. :p 16:31:08 I'm even getting used to dying! A LOT! 16:34:55 elliott: Based on the hmod github commit-log, it's still seeing quite a lot of development, so I'd personally still wait a while. (Though of course for bleeding-edge testing...) 16:35:18 fizzie: Isn't that the motto of the League of Notch Apologists? "YOU'RE the testers!" 16:38:43 elliott, that is only because haven't built anything really complicated. Sure the stairs were massive, but they didn't actually take that long. Something like fizzie's house and bunker is a lot more work 16:39:06 so yeah, we should go back to the proper map when we have a working hmod 16:39:30 Vorpal: You could just say "MY HOUSE!! MY BEAUTIFUL BEAUTIFUL FORTRESS!!" and be done with it rather than coming up with complicated excuses. 16:39:47 That /is/ what he said. 16:39:54 Deewiant, quite 16:41:33 Deewiant: Well, no, he said "You wouldn't know! You're not like fizzie!" 16:41:34 Compare: 16:41:37 elliott, that is only because haven't built anything really complicated. Sure the stairs were massive, but they didn't actually take that long. Something like fizzie's house and bunker is a lot more work 16:41:38 so yeah, we should go back to the proper map when we have a working hmod 16:41:38 vs. 16:41:45 I don't want that, I'd lose my house. 16:42:21 YES! k3 is still available! 16:44:52 elliott, in other words, you got annoyed because I didn't fit your baseless image of me as someone who constantly whines when I tried to discuss in a civil manner and with proper justification for the statement. 16:45:07 Oh snap, time for some quality Vorpal indignation. 16:45:26 elliott, actually I'm amused. 16:48:27 anyone want K3? 16:55:57 elliott@dinky:~/k$ chmod +x lin/k 16:55:57 elliott@dinky:~/k$ lin/k 16:55:57 K 3.2 2005-06-25 Copyright (C) 1993-2004 Kx Systems 16:55:57 LIN32 2CPU 3805MB dinky.local 0 EVAL 16:55:57 2+2 16:55:57 4 16:55:59 ^_^ 17:05:00 elliott, k3? 17:05:58 K, the language, version 3. 17:06:20 elliott, open source? 17:06:31 you know what K is ... 17:06:43 and no. in fact i just found the interp against after olegfink linked me to nsl.com's copy 17:06:46 elliott, I don't remember the details no 17:06:58 it's like J but different. 17:07:01 ah 17:15:55 * elliott reads the manual 17:16:25 "K-Lite is a time-limited, reduced version of K which enables interested develop- 17:16:25 ers to learn the language and develop small applications. K-Lite consists of the K 17:16:25 language and interpreter, GUI software, and ASCII file read/write capability. It 17:16:25 does not include connections, file mapping, interprocess communications or 17:16:25 runtime capabilities." <-- hmm, this copy doesn't seem to be time limited 17:16:30 *time-limited 17:17:39 oh, the manual is old 17:17:43 for K-Lite 2.0 17:17:45 whereas this is real K 3.2 17:18:40 -!- jix has quit (Read error: No route to host). 17:21:39 -!- jix has joined. 17:22:10 hmm no it is the EVALuation version I think since it says EVAL 17:23:38 "For example, Logical Or is denoted by | and Logical And is denoted by & in both K and C." 17:23:40 Er. Not quite. 17:42:20 NOT QUITE 17:42:45 Knot quilt. 17:49:56 -!- elliott has quit (Remote host closed the connection). 17:52:14 -!- elliott has joined. 17:57:03 -!- cheater99 has quit (Quit: Leaving). 17:57:04 -!- jix has quit (Ping timeout: 276 seconds). 17:57:30 -!- jix has joined. 17:59:31 * pikhq now wonders how quickly it can take to go from 0 to the first boss in here. 17:59:44 Come on, absurdity. 17:59:53 And poor grammar. 18:03:38 All of a few minutes? 18:04:32 wat 18:04:43 I'm just guessing. 18:05:19 Okay, bit more than that. 18:06:12 First hour or so skipped though. 18:06:44 pikhq: are you doing the infinity-plus-one-all-that's-necessary run? 18:06:47 if so: <3 18:06:49 Yes. 18:06:54 pikhq: videoing it? :P 18:07:01 Not atm. 18:07:56 * pikhq saveth not! 18:10:37 pikhq, which game? 18:10:40 Persona 3. 18:10:58 ah 18:11:45 Speedrunning is easy with most of the game being optional. 18:11:55 right 18:12:25 pikhq: Is this going to give you a terrible ending? :P 18:12:30 text adventure speed run. How would you measure it? 18:12:38 in number of commands? 18:12:45 elliott: Not necessarily. 18:12:53 Vorpal: Yes, that's how it's done. 18:12:57 elliott, ah 18:13:01 elliott: But the good ending would be PAINFUL. 18:13:08 Vorpal: Take a look at this: http://www.the-spoiler.com/ADVENTURE/Infocom/trinity.1.html 18:13:30 Including comments. 18:13:56 elliott: There's a 260 floor dungeon. It is only mandatory at the very end of the good ending. 18:15:02 pikhq: Can you one-shot it? :P 18:15:17 I can one-shot everything! 18:15:32 pikhq: Can you do the bad ending, then go back and do the good ending? 18:15:47 If so: do that, just so you can say you did the ABSOLUTE MINIMUM REQUIRED TO COMPLETE IT the first time. 18:15:49 I can load from a savepoint, yes. 18:16:04 Save right before the bad/good diverge point :P 18:16:21 There's a few minutes from there to the bad ending. 18:16:35 Eh? 18:17:12 You choose whether to accept that the world will end or try to fight Death. 18:17:20 lawl 18:28:30 -!- j-invariant has joined. 18:28:40 hi j= 18:28:43 *j-invariant 18:28:55 hey 18:29:02 speaking of coq 18:29:03 http://en.wikipedia.org/wiki/Computable_number#Formal_definition 18:29:09 defining computable reals by computable dedekind cuts 18:29:13 so cool 18:30:24 (ok so that has very little to do with coq but still) 18:31:26 that's so simple, I had always thought dedekind cuts would be really complicated to do 18:34:02 -!- roper has quit (Quit: Abandonando). 18:35:09 j-invariant: I wonder what pi looks like 18:35:32 Okay, seems it takes 45 minutes to get through the intro stuff. 18:36:03 fizzie: Not going to play on the HARDCORE SERVER? 18:36:10 And suddenly... SATAN! 18:37:21 j-invariant: still, it seems simpler than the complicated usual approximation-function definition 18:37:27 j-invariant: and also the continued fraction definition 18:38:16 fizzie: I'm spending the night in a pitch black 1x1x2 hole with things making noises right next to me. 18:42:24 elliott: There's a 260 floor dungeon. It is only mandatory at the very end of the good ending. <-- large floors? 18:42:36 -!- Sasha has joined. 18:43:20 j-invariant: hmm i should implement computable dedekind cuts 18:43:24 If it's pitch-black hole, mobs can spawn in it. 18:43:33 not sure how you do arithmetic with them 18:43:35 tswett: As I said, it's 1x1. So they'd have to spawn... on me. 18:43:41 j-invariant: me neither ... 18:43:54 tswett: Technically, they have .3 m above my head to cram into. 18:44:17 Aaand the server went down. 18:44:23 Hm. Perhaps you and them are both really narrow, or something. I don't know if they can spawn there or not. 18:44:39 pikhq, if they are large, is it randomly generated or something (or at least generated + hand edited, actually making that many floors, if large, by hand sounds painful) 18:45:52 You know, I would probably get some enjoyment out of a game that is just a randomly-generated world that you can explore. 18:45:59 Do nothing else. Just explore. 18:51:42 elliott, local game: larger overhang than mt hoover. Also it turns 90 degrees halfway out. And there is no scenery cut off to explain it (that game is all post-halloween) 18:52:04 Vorpal: It is mostly randomly-generated. 18:52:27 pikhq, hm okay 18:52:37 Vorpal: And changes each time you go to a floor. 18:52:39 pikhq, I guess it isn't very story-heavy then? 18:52:41 pikhq, ha 18:53:02 Oh, it's very story-heavy. The design of the single dungeon is just irrelevant to the story. 18:53:22 elliott, wow there are 2 more overhangs like it visible from under the middle one 18:53:36 And aside from the very end of the good ending, it's entirely optional. 18:53:38 elliott, and a rather large floating island 18:53:44 * Vorpal takes screenshots 18:54:00 pikhq, is there just /one/ good ending? 18:54:25 pikhq, also I didn't mean if the game was story-heavy. I meant if the gameplay in that dungeon was 18:54:33 This house should do me for the night. 18:54:39 Although a creeper will fuck it up. 18:54:42 Shit, I only have three hearts. 18:54:48 How do you get health back again? It isn't coming back naturaly. 18:55:09 Eat. 18:56:32 do any of you play minecraft on ubuntu? 18:56:50 Deewiant: I have no food. 18:56:53 j-invariant: I play it on Debian 18:56:55 so close enough 18:56:56 why? 18:57:00 just wondering if you have to do any fixes to make it work? 18:57:06 didn't work when I tried it 18:57:09 elliott: So you won't get health back. 18:57:32 Deewiant: how do i get food again :D 18:57:34 j-invariant: well you need the sun jvm 18:57:36 sun-java6-* 18:57:41 or at least, that fixes it for some people 18:57:45 j-invariant: what problems did you have? 18:57:59 elliott: Mushrooms, fish, pigs, apples 18:58:08 How do you get apples? 18:58:14 Can't remember. 18:58:19 Also, some mushrooms will hurt you, if I remember correctly. 18:58:34 I play on Ubuntu with the default openjdk, and it works just fine for me, but indeed for many it doesn't seem to. 18:58:36 Vorpal: Ah. 18:58:54 I think the graphics rendenring was completely wrong, but maybe I should try again with the upgrade 19:00:02 Suspicious lack of noises tonight. 19:00:07 Deewiant: Gonna play on the survival server? 19:00:17 Deewiant: It's all ~hardcore~ now although it is night time so you may want to wait some minutes. 19:00:18 Not for a while. 19:00:37 elliott: Fun fact: you only get the infinity-plus-one sword after the first boss. 19:00:39 elliott, an exposed dungeon up in the very tip of the overhang!! 19:00:48 elliott: Said boss is entirely beatable without leveling. 19:00:53 pikhq: Sounds ... silly. 19:01:29 elliott: It's essentially scripted up until then. 19:02:03 Vorpal: There's precisely two endings. 19:02:24 j-invariant: how do you do "apply recordConstructor." in Coq without it complaining about not being able to find a value for a variable? 19:02:27 I want it to become the new goal 19:02:32 dunno if you know 19:03:25 Aww, a zombie swimming, how cute. 19:03:28 And a creeper. 19:03:34 Wait, what? It's LIGHT now, why are you appaering now. 19:03:49 Haha burn 19:06:05 elliott: eapply 19:06:30 ~~~~~ 19:07:44 -!- wareya_ has quit (Ping timeout: 264 seconds). 19:08:57 elliott: any ideas about this proof 19:09:03 http://i.imgur.com/n4gcr.png 19:09:27 I have mn = id, nm = id, etc.. and I want to show that Ff = m Gf v 19:12:35 fizzie: That lasted long. 19:12:43 j-invariant: no idea :/ 19:12:47 Yes, I foolishly tried out mcmap. 19:12:59 j-invariant: eapply has me trying to prove things on ?7 19:13:04 rather than getting me to specify ?7 first 19:13:08 or is there a tactic for that too? 19:13:12 elliott: yeah if that happens you are in trouble 19:13:16 fizzie: can you please bring bacon? :{ 19:13:32 say you have category with identity compose and some axioms.. 19:13:33 j-invariant: hmm there's a command to declare a subgoal with a specified type right? 19:13:58 then a good way is instead of eapply Build_Category. you can do apply (Build_Category ). tehn you get goals left over for all the axioms 19:14:08 that's how I get around the ? stuff 19:14:13 Strange stuff; mcmap goes into a 100% CPU utilization loop. 19:14:21 but it can be difficult to write the definitions in situ 19:14:27 fizzie: you sure do listen to my pleas :P 19:14:36 I don't have any bacon to bring. 19:14:45 fizzie: there's a mob spawner at spawn. 19:14:47 it makes lots of pigs 19:14:53 punch => food 19:15:08 Well, as soon as I get mcmap to actually let me in. 19:15:17 elliott: I'mk stating to think that teh theorem isn't true 19:15:23 need more assumptions 19:17:34 fff now I need to refer to Z's ^ 19:17:35 but it's Q's 19:17:40 and i've forgotten how to override scope 19:18:14 -!- Wamanuz4 has quit (Remote host closed the connection). 19:22:14 fizzie: oh god spider noises 19:23:15 -!- Wamanuz has joined. 19:24:01 elliott, I haven't had those in single player, but I have had strange noises 19:25:41 elliott: http://coq.pastebin.com/v1Lb81As 19:26:16 elliott: the proofs are kind of a mess, and it's been hard work - but I got equality of functors defined 19:26:29 -!- wareya has joined. 19:27:52 elliott: (if there is a neater way to define functor equality, I'll take it!) 19:29:45 need natural transforms next 19:30:28 fizzie: Lagg. 19:30:38 j-invariant: i don't know of one, way further than i've got 19:30:47 Lagg indeed. 19:31:00 I threw out three bacon, I don't know if they disapparated somewhere. Hope not. 19:31:19 fizzie: They were in my inventory when I spawned falling into nothingness. 19:31:25 Okay. 19:31:41 fizzie: You can stay at my house, FWIW. If you're staying on that is. 19:31:41 I'm not going to start actually playing there, though, I just wanted to check if mcmap worked. 19:31:55 fizzie: See how boring you are?! 19:31:59 BOERING 19:37:49 elliott: want to do natural transforms for me? LOL this is making me exausted 19:38:15 j-invariant: er let me think of an excuse :D 19:38:22 its' probably going to be another 300 lines 19:38:42 j-invariant: and they said Coq couldn't get any more academic! 19:38:47 you showed them! 19:39:22 I really do want to define limits via cones though 19:39:43 hehe 19:40:28 p^3 <= (3*(q^3)))). 19:40:28 grr 19:40:33 how do you do that if p's ^ is in Z_scope 19:40:36 but q's ^ is in positive_scope? 19:40:59 something liek (q^3)%Z_scope 19:41:31 oh yeah 19:41:40 j-invariant: well no q is positive_scop 19:41:40 e 19:41:41 but yeah 19:44:24 j-invariant: ( 19:44:24 ((p^3)%Z) <= 19:44:24 (Z_of_nat (nat_of_P (3*(q^3))%positive)) 19:44:24 )%Z)). 19:44:26 this will never work :D 19:45:31 -!- sebbu has quit (Read error: Connection reset by peer). 19:45:49 just type the full names lol 19:45:58 -!- sebbu has joined. 19:49:52 fun H : Q => 19:49:52 let p := Qnum H in 19:49:52 let q := Qden H in 19:49:52 Zle_bool (p ^ 3) (let q' := Z_of_nat (nat_of_P q) in 3 * q' ^ 3) 19:49:54 thanks tactics 19:51:19 what's the tactic that proves True again :D 19:52:13 tauto 19:53:42 ============================ 19:53:42 forall r s : Q, 19:53:43 Is_true 19:53:43 (let p := Qnum r in 19:53:43 let q := Qden r in 19:53:43 Zle_bool (p ^ 3) (let q' := Z_of_nat (nat_of_P q) in 3 * q' ^ 3)) /\ 19:53:46 ~ 19:53:47 Is_true 19:53:49 (let p := Qnum s in 19:53:51 let q := Qden s in 19:53:53 Zle_bool (p ^ 3) (let q' := Z_of_nat (nat_of_P q) in 3 * q' ^ 3)) -> 19:53:55 r < s 19:53:57 well this looks fun. 19:55:00 what's Is_true? 19:55:04 j-invariant: from Bool 19:55:08 it's just if x then True else False 19:55:16 j-invariant: hmm i'd be better off using match rather than destructing with Qnum and Qden right? 19:55:16 oh I see 19:55:29 wait that means the theing is decidible 19:55:37 well no because it's quantified 19:55:43 j-invariant: right 19:55:48 elliott, http://sporksirc.net/~anmaster/minecraft/screenshots/overhang/ 19:55:52 elliott, that beats mt hoover eh? 19:55:54 if you destruct s it should simplify to the same thing 19:56:06 gah, i've forgotten all the tactics 19:56:29 yeah I wish there was another way to twirte proof, some sort of hand waving magic way 19:56:57 elliott, take http://sporksirc.net/~anmaster/minecraft/screenshots/overhang/2010-12-23_19.57.42.png for example. That are two huge overhangs next to each other, not a full arch 19:57:00 j-invariant: yeah like writing some stuff on paper, saying "the rest is left as an exercise to the reader", and calling it a day 19:57:05 j-invariant: why do we need computers to do it anyway! 19:57:15 Vorpal: heh 19:57:41 elliott, the rest of the pictures in that dir are quite nice too, showing off the THIRD huge overhang which is hidden in the picture I linked. 19:57:58 j-invariant: I think that maybe "x = tt" is easier to work with than "if x then True else False" 19:58:36 lol 19:58:49 elliott, you can't get up on one of them because it overhangs all around 19:59:00 elliott, the other two (including the largest one) you can get up on just fine 19:59:28 (if Zle_bool (p1 ^ 3) (3 * Z_of_nat (nat_of_P q1) ^ 3) 19:59:29 then True 19:59:29 else False) /\ 19:59:29 ~ 19:59:29 (if Zle_bool (p2 ^ 3) (3 * Z_of_nat (nat_of_P q2) ^ 3) 19:59:29 then True 19:59:32 else False) -> p1 # q1 < p2 # q2 19:59:38 "do arithmetic yourself computer." 19:59:41 zomg it worked!11 20:00:16 Error: Omega: Unrecognized predicate or connective: Qlt 20:00:17 you suck, Omega. 20:01:44 j-invariant: wanna do my proof for me? :p 20:01:54 elliott, there is an image on the improbable dungeon inside the overhang too 20:02:57 elliott: wait a second omega should handle Qle 20:03:00 Qlt I mean 20:03:11 j-invariant: a second omega? it wouldn't even run once, because of that 20:03:22 import QArith and stuff? 20:03:25 j-invariant: what upsets me is that it can't match (Is_true (... Zle_bool ...)) to Zle ... 20:03:32 j-invariant: oh i have an idea 20:03:33 j-invariant: instead of 20:03:35 D : Q -> bool 20:03:37 what if it was 20:03:41 D : Q -> Prop 20:03:49 D_decide : forall x, (D x) \/ ~(D x) 20:03:58 that'd give less Is_true crap right? 20:07:28 fizzie, you might want to check out http://sporksirc.net/~anmaster/minecraft/screenshots/overhang/ too 20:09:02 ============================ 20:09:03 (1 ^ 3 <= 3 * Z_of_nat (nat_of_P 1) ^ 3)%Z 20:09:05 that's decidable you stupid prover 20:10:19 compute? 20:11:29 oh, indeed, that works 20:11:30 thanks :P 20:11:50 elliott, is this awesome: http://sporksirc.net/~anmaster/minecraft/screenshots/overhang/2010-12-23_19.59.38.png 20:11:57 elliott, (see the dungeon!) 20:12:09 darn now what's the thing to do ~(x=y) 20:12:12 for constructors x and y 20:12:22 ah congruence 20:12:26 discriminate 20:12:38 (Gt = Gt -> False) -> False 20:12:48 j-invariant: look at that filthy coq, with its ~~p! 20:13:04 lol 20:13:12 congruence sorts it out though :P 20:13:19 forall r s : Q, 20:13:19 match r with 20:13:19 | p # q => (p ^ 3 <= 3 * Z_of_nat (nat_of_P q) ^ 3)%Z 20:13:19 end /\ 20:13:19 ~ match s with 20:13:20 | p # q => (p ^ 3 <= 3 * Z_of_nat (nat_of_P q) ^ 3)%Z 20:13:22 end -> r < s 20:13:24 NOW IS FUN TIEM 20:13:33 Error: Omega: Unrecognized predicate or connective: Qlt 20:13:35 I wonder why that is 20:13:37 doesn't omega do rats?? 20:14:01 Vorpal: a creeper exploded one block from my house :) 20:14:28 elliott, ouch 20:14:36 elliott, was it obsidian? 20:14:44 no, wood, but as i said, one block outside of blast radius 20:14:47 not the creeper one block away 20:14:48 sorry 20:14:50 to be fair, i hit it with my sword 20:14:58 obviously, it got scared 20:14:58 hm 20:15:08 elliott, scared to death 20:15:17 yes. scared to explosion. 20:15:27 elliott, yes, it dies when it explodes 20:15:43 match r with 20:15:43 | p # q => 20:15:43 match 20:15:43 match p with 20:15:43 | 0%Z => 0%Z 20:15:43 | (' x')%Z => 20:15:45 match 20:15:47 match p with 20:15:49 | 0%Z => 0%Z 20:15:51 | (' x'0)%Z => 20:15:53 ... 20:15:55 j-invariant: compute on this was a bad idea 20:15:57 "match match" :D 20:16:23 -!- augur has quit (Remote host closed the connection). 20:16:37 j-invariant: are you sure omega is meant to do Q? 20:16:53 yeah I think it does 20:16:59 hmm 20:17:03 i've imported QArith :/ 20:17:46 oh no it does 20:17:57 Z 20:18:17 Require Import QArith. 20:18:17 Require Import Omega. 20:18:18 right 20:19:05 Coq version 8.3 is before all a transition version with refinements or extensions of the existing features and libraries and a new tactic nsatz based on Hilbert’s Nullstellensatz for deciding systems of equations over rings. <--- interesting 20:19:15 p1 : Z 20:19:15 q1 : positive 20:19:15 p2 : Z 20:19:15 q2 : positive 20:19:15 ============================ 20:19:15 (p1 ^ 3 <= 3 * Z_of_nat (nat_of_P q1) ^ 3)%Z /\ 20:19:17 ~ (p2 ^ 3 <= 3 * Z_of_nat (nat_of_P q2) ^ 3)%Z -> 20:19:19 p1 # q1 < p2 # q2 20:19:21 induction here doesn't look promising 20:19:28 the conversions make things more painful here :/ 20:19:33 does omega prove it? 20:19:38 no, omega doesn't do Qlt 20:19:41 # is Qmake 20:19:55 wish it was Q := Z*(q:Z)*(q>0) 20:20:00 oh well change it to p1 * q2 < p2 * q1 20:20:10 j-invariant: is there a premade lemma for that? :P 20:20:23 then you just need p1 * q2 < p2 * q1 iff p1 # q1 < p2 20:20:24 #q2 20:20:51 yeah 20:21:01 I hope QArith has that 20:21:16 Notation QDen p := (Zpos (Qden p)). 20:21:16 aha 20:22:12 H0 : (p1 ^ 3 <= 3 * ' q1 ^ 3)%Z 20:22:12 H1 : ~ (p2 ^ 3 <= 3 * ' q2 ^ 3)%Z 20:22:12 ============================ 20:22:12 p1 # q1 < p2 # q2 20:22:15 looks less frightening now 20:23:16 j-invariant: lame, stdlib doesn't have that theorem 20:23:42 -!- augur has joined. 20:26:15 Lemma foo : 20:26:15 forall (p1 p2 : Z) (q1 q2 : positive), 20:26:15 (p1*'q2 < p2*'q1)%Z -> (p1#q1 < p2#q2)%Q. 20:26:15 auto. 20:26:15 Qed. 20:26:18 that was surprisingly painless 20:26:59 H1 : ~ (p2 ^ 3 <= 3 * ' q2 ^ 3)%Z 20:27:01 just need to get this to be > 20:28:28 Lemma Znot_ge_lt : forall n m:Z, ~ n >= m -> n < m. 20:28:29 yay 20:29:35 -!- impomatic has joined. 20:29:47 set (H2 := Znot_le_gt (p2^3) (3*'q2^3) H1). 20:29:47 destruct H1. 20:29:50 j-invariant: is there a nicer way to do this? 20:30:14 in fact that doesn't even work 20:30:18 dunno, I tend to build everything from scratch 20:30:41 j-invariant: I thought I wanted "rewrite Znot_le_gt in H1" but that doesn't work 20:30:47 H1 : ~ (p2 ^ 3 <= 3 * ' q2 ^ 3)%Z 20:30:48 and iw ant 20:30:53 H1 : (p2 ^ 3 > 3 * ' q2 ^ 3)%Z 20:30:58 Lemma Znot_le_gt : forall n m:Z, ~ n <= m -> n > m. 20:30:59 but 20:31:00 see if you can rwewrite all the Q stuff in Z, then use omega for it 20:31:04 rewrite Znot_le_gt in H1 doesn't work 20:31:07 j-invariant: yeah that's what i've done 20:31:11 oh okay 20:31:14 but omega can't solve it 20:31:18 so I still need to get this rewrite out of the way 20:31:21 and i'm not sure how 20:31:31 let me try it in Coq 20:32:20 j-invariant: want the file 20:32:27 yeah 20:32:49 j-invariant: http://sprunge.us/BbLA 20:33:47 j-invariant: I think Coq would be better if all the propositions weren't named... so instead of H1 and the like, there were just the types 20:33:51 I have an idea 20:33:57 and also all the proofs in Cut would just be the type with nothing before : 20:33:58 letm e try this out 20:34:03 it's hard to figure out names :P 20:36:10 dammit 20:36:40 it things A -> B is not quantifier free? 20:37:38 j-invariant: well that's a forall :D 20:37:40 j-invariant: just intro it 20:38:20 wait a second, maybe it's not even true 20:38:42 j-invariant: um i should hope not, since it's the example on wikipedia 20:38:46 for a computable dedekind cut 20:39:08 j-invariant: so it must be true, by wikipedian infallibility 20:39:18 j-invariant: i think ic an hack the proof if youc an make "rewrite Znot_le_gt in H1" work :P 20:42:39 tested it in haskell and found no counter example 20:43:24 lol, when coq users can't prove something they do it in haskell instead 20:44:07 j-invariant is my favorite thing ever 20:44:29 i was writing an article once on near-integers, modular forms, and the j-invariant 20:44:30 :O 20:44:56 just thought i might say that 20:45:40 D_true_ex_gt : forall r, D r -> (exists s, s > r /\ D s) 20:45:43 j-invariant: lol now THIS 20:45:46 j-invariant: this looks unfun 20:45:53 (I "admit"ted the previous one and am moving on for now) 20:45:57 r : Q 20:45:58 H : match r with 20:45:58 | p # q => (p ^ 3 <= 3 * ' q ^ 3)%Z 20:45:58 end 20:45:58 ============================ 20:45:58 exists s : Q, 20:46:00 r < s /\ match s with 20:46:02 | p # q => (p ^ 3 <= 3 * ' q ^ 3)%Z 20:46:05 end 20:46:07 LOOKS EASY HUH 20:46:11 -!- oerjan has quit (Quit: Good night). 20:46:25 Weather.Outside="frightful"; Fire.Delightful=true; Lights.Luminosity=WayDownLow; for (int i=1; i<=3; i++) { LetItSnow(); } 20:46:47 elliott, can't you encode the statement in SAT or SMT and try an automated prover (iirc coq is interactive?) 20:47:05 Vorpal: that's a rather ... generic statement 20:47:11 elliott, well yes 20:47:16 coq has a ton of automatic solvers, none of them want to touch this :) 20:47:21 elliott, ah... 20:47:22 as far as i can tell 20:47:43 elliott, I was thinking about using something like alt-ergo or cvc3 20:47:45 step one is finding an s that satisfies 20:48:07 j-invariant: any ideas about what s to try? :p 20:48:42 elliott, what exactly are you trying to prove? I don't know co 20:48:43 coq* 20:49:15 Vorpal: i'm trying to prove that D(p/q) = p^3 <= 3*(q^3) is a (computable) dedekind cut 20:49:24 proving that it's the cube root of three is for after i have arithmetic. :p 20:49:39 Vorpal: i.e. Yet Another approach to the computable reals 20:49:50 elliott, I guess I can't help until I first check what the heck dedekind cut is 20:50:01 Vorpal: you ... don't know? 20:50:07 elliott, can't say I do no 20:50:24 Vorpal: http://en.wikipedia.org/wiki/Dedekind_cut 20:50:28 they're the "usual" definition of the reals 20:50:45 Vorpal: the computable version is described in http://en.wikipedia.org/wiki/Computable_number#Formal_definition starting "There is another equivalent definition" 20:50:48 oh right, the definition is familiar 20:50:55 Vorpal: hi 20:50:55 elliott, but I don't think I ever heard it's name 20:51:09 Vorpal: *its 20:51:14 "Usual"? 20:51:21 Deewiant: well, i'd say so 20:51:23 Deewiant, well not sure about that. 20:51:32 Deewiant: dedekind cuts and cauchy sequences are the main ways 20:51:32 elliott: that's not an approach to computable reals 20:51:39 Quadrescence: what aren't? 20:51:45 elliott: whatever you're doing 20:51:45 I'd say the Cauchy sequence definition is far more common 20:51:54 elliott, the second one really cauched on! 20:51:56 Deewiant: that may be so 20:52:06 Quadrescence: that's both unhelpful and unjustified 20:52:06 (sorry, but oerjan wasn't here) 20:52:25 elliott: if you want computable reals, you have to start talking about bounds and turing machines 20:52:40 Quadrescence: I know what computable reals are. There are several approaches. 20:52:56 e.g. approximation functions, continued fractions, and this one, computable dedekind cuts 20:53:25 "computable dedekind cuts" sounds like a terrible idea 20:54:04 Quadrescence: on what grounds? 20:54:06 actually what are computable reals? 20:54:11 j-invariant: reals that are computable :-) 20:54:20 elliott: yeah but that's too vauge 20:54:21 Vorpal: clever use of shadows to give 32-colour images in minecraft: http://www.minecraftwiki.net/images/c/c4/Dither2.jpg 20:54:33 j-invariant: a number which there is a finite process for computing the digits of to arbitrary precision 20:54:35 Markov made a nice article on that 20:54:37 "In mathematics, particularly theoretical computer science and mathematical logic, the computable numbers, also known as the recursive numbers or the computable reals, are the real numbers that can be computed to within any desired precision by a finite, terminating algorithm. Equivalent definitions can be given using μ-recursive functions, Turing machines or λ-calculus as the formal representation of algorithms." 20:54:42 there are tons of definitions i'd say 20:54:46 but they're all equivalent. probably 20:54:47 are they all equivalent? 20:54:53 well, wp says so. 20:55:08 A computable number was basically just defined as (f(x) - g(y))/h(z) 20:55:18 Where all three functions are computable processes 20:55:28 :| 20:55:39 Owait 20:55:52 (f(x) - g(x)) / (1+h(x)) 20:56:16 :| 20:56:21 wot 20:56:57 -!- augur has changed nick to YeshuaLord. 20:57:19 -!- YeshuaLord has changed nick to augur. 20:57:55 ineiros: Can I have some bacon? 21:00:34 also Deewiant is certainly right that the cauchy seq. defn is the usual defn of the reals 21:00:45 sure, but dedekind cuts aren't actually niche. 21:01:14 I always thought I was alone with my cauchy sequences 21:01:38 Who cares about the reals 21:01:44 http://en.wikipedia.org/wiki/Construction_of_the_real_numbers damn, wp lists dedekind second 21:01:47 The whole set of reals is useless! 21:01:51 quick, let's edit it to prove Quadrescence wrong 21:02:05 Aleph one of it is basically not found in nature! 21:02:26 elliott: No, my evidence is from reading books 21:02:30 not Wikipedia all day 21:02:36 wikipedia disproves all books, obviously 21:03:27 Cauchy sequence may be first because it's the most intuitive? 21:03:47 PROBABLY 21:05:08 3 math classes. :D 21:14:40 Vorpal: notch should reintroduce holes in the bedrock, except make them correspond to holes in the nether ceiling 21:20:41 Vorpal: :( he's going to add degrade-on-hit 21:21:02 Vorpal: there's a creeper jumping outside my door 21:25:21 Vorpal: :( he's going to add degrade-on-hit 21:25:21 err 21:25:25 elliott, what do you mean 21:25:39 Vorpal: as in, your pick can break midway through mining obsidian 21:25:42 because it's every hit that degrades it 21:25:59 elliott, what the... 21:26:09 elliott, so it won't last as long as before? 21:26:12 sure it will 21:26:18 the damage will be less 21:26:25 also, apparently block damage will last for like 10 seconds after you stop mining 21:26:25 ah 21:26:30 so you have time to change to a new pick 21:26:30 but still 21:26:34 i liked degrade-on-break 21:26:44 elliott, not as bad then as it could be 21:27:11 CREEPER JUST TO THE RIGHT OF MY DOOR HOLY FUCKING SHIT 21:27:21 elliott, change to peaceful? 21:27:29 Vorpal: on SMP? 21:27:34 i killed it anyway 21:27:36 easy enough 21:27:36 ah 21:27:55 waiting for someone to log in, kill some pigs, and share the bacon with me; I'll provide lodging in my house in return 21:27:58 elliott, well I'm waiting for the old world. Not really worth building anything in the current world 21:27:59 Only 2.5 hearts left :/ 21:27:59 -!- impomatic has left (?). 21:28:12 Vorpal: no reason this world can't be brought out occasionally 21:28:19 it's fun, i've already built a tall house 21:28:28 and will mine once i can get coal for torches 21:28:31 elliott, see, I like predictability 21:28:40 what? 21:29:30 elliott, "logging on thinking you will work on whatever your current project is. Huh, what, not the usual world?!" 21:29:43 Vorpal: Or we could have it on predictable days ... 21:29:48 Say every two weeks or something. 21:30:05 If you're going to say "no just trash it permanently": I built a house I like too, you know. 21:30:14 Except mine's in the survival world. 21:30:35 elliott, well, donate to ineiros so he can get a good VPS to run all the servers on side by side 21:30:44 Or just have the survival world come out at predictable times. 21:30:59 elliott, but yes I think we should switch world whenever you feel like working on glass cube 21:31:12 that sounds good, switch away from the glass cube one then 21:31:48 Vorpal: Are you just trying to be a dick, or are you really so dense that you'll demand that the peaceful world is kept constantly because of ~YOUR BEAUTIFUL HOUSE~ while completely disregarding the fact that I've built things in the survival world, too, and plan to continue doing so? 21:32:22 elliott, but you are the only one who built stuff there 21:32:26 elliott, you against all the other ones? 21:32:47 Vorpal: I didn't say "trash the peaceful world". 21:32:50 I said "have the survival world occasionally". 21:33:05 Besides, the beta update for hMod won't be out for a little while, and this is only the first day of the survival server. 21:33:14 elliott, yeah, maybe one day per moth 21:33:16 month* 21:33:24 elliott, or whenever hmod breaks due to upgrade 21:33:30 the latter seems fair 21:33:41 Vorpal: I agree, let's only have your house when hMod breaks. 21:34:25 elliott, ... the other way around 21:34:42 elliott, but I predict it will break fairly often 21:34:43 Ahh, I see; your house is worth more because you made it. 21:34:45 Your arguments, they are stellar. 21:34:51 elliott, no it is the hmod world. 21:35:05 elliott, further, it also happens to contain a LOT more 21:35:09 built by other people 21:35:19 elliott, fizzie, nailor, ineiros, PH and so on 21:35:36 elliott, so you hate the "wonder's of the world" thing. 21:35:58 (if you strawman me, then you get the same shit back) 21:36:01 j-invariant: any luck? 21:39:25 -!- zzo38 has joined. 21:39:45 elliott: the proof is 3 lines :D 21:39:48 elliott, or you could just switch topic... 21:39:50 like you did 21:39:58 j-invariant: of what? 21:40:02 which part i mean 21:40:13 equivalence relation on natural transform 21:40:22 oh, not my dedekind cuts :P 21:40:28 right 21:40:30 cool, though 21:42:08 j-invariant: have you seen http://coq.inria.fr/stdlib/Coq.Logic.IndefiniteDescription.html? 21:43:21 ineiros: I'll bribe you for bacon. :p 21:43:46 elliott: In retrospect, cunionfs is awesome :P 21:44:25 Gregor: What's so awesome about it? :p 21:44:44 I should make a program to copy a CD/DVD with error emulation and other options. In case of error, it makes a error emulation file that the driver will emulate errors when reading the copy. 21:45:57 Gregor: I'm considering writing a package manager based on it, please tell me it actually works well >_> 21:46:26 elliott: Oh it works fine, that's never been the issue, it just doesn't do much (it's just a per-process union FS) 21:46:32 Also a function to tell it to copy the entire disc even if it says only part of it has data, try copying everything anyways even if it says nothing there. 21:47:30 elliott: But what I imagine it's most useful for is building packages in a constrained environment where you don't want "smart" configuration dragging in dev packages you didn't want. 21:48:28 elliott: As well as, of course, "enterprise"y environments like I said before. 21:48:32 elliott: But what I imagine it's most useful for is building packages in a constrained environment where you don't want "smart" configuration dragging in dev packages you didn't want. 21:48:36 ITT: Debian and Fedora both have this 21:49:10 Yeah, but they do that in a fairly-bizarre way, this is just "let me see this, OK now they're in /usr" 21:49:24 Gregor: So can you mount / as a cuneiformfs? :P 21:50:00 I was thinking about that, and my answer is yes-and-no. You could, if you're willing to do that first-thing then do (most) everything else under chroot. 21:50:46 The only real problem is that the directories you mount under it need to exist, but for them to exist they need to be in another FS (to be unioned in) 21:52:18 I was thinking about that, and my answer is yes-and-no. You could, if you're willing to do that first-thing then do (most) everything else under chroot. 21:52:19 switch_root 21:52:22 silly 21:52:27 it's what initramfses do IIRC 21:52:38 and it pulverises your existing / :P 21:52:45 That doesn't resolve the issue I mentioned later. 21:53:06 The directories you're going to mount /other/ filesystems to need to exist, but for them to exist, they need to ... already exist :P 21:54:08 Hello there. 21:54:22 To have two degrees instead of 1, I need: 1 extra class. 21:56:18 elliott: http://coq.pastebin.com/xnGjabR6 line 481 21:57:02 don't look at lines nera 200 :P 21:57:26 that stuff is awful but I don't know a better way 21:57:49 j-invariant: i like it, i also think that it will never work as an stdlib :D 21:58:34 elliott: I'm going to try to define universal cones so I can get things like products 21:59:28 sounds good 21:59:45 Gregor: For a stow-alike, are there any advantages to cunionfs over unionfs? :p 22:00:00 why wont it work as a stdlib? 22:00:08 j-invariant: well it might with enough layering 22:00:16 j-invariant: i just mean, if you have to build categories like that all the time 22:00:48 elliott: I think (but I have to study this first) you can define a 'type theory' category, and just use that for everything 22:00:50 elliott: Yes, every process can see its own stowish environment, giving it the build advantage I mentioned before, as well as the ability to have conflicting packages installed simultaneously, etc. Whether that's an advantage to you depends on what you want *shrugs* 22:01:03 Gregor: That's an sps-alike, not a stow-alike :P 22:01:15 Gregor: But yeah, compelling. 22:01:22 elliott: but that might be like defining a self interpreter for coq so.. 22:01:25 Gregor: Now guarantee that cunionfs is stable enough to use in Kitten :P 22:01:26 elliott: For a stow-alike, are there any advantages to unionfs over ... stow? 22:01:30 j-invariant: yeah ... 22:01:34 j-invariant: also it'd be rather abstract 22:01:37 elliott: I can't guarantee anything, it's F/OSS :P 22:01:38 j-invariant: like coding ASTs manually 22:01:43 Gregor: stow uses ... symlinks. 22:01:46 Ask pikhq for the gory details. 22:01:57 Note: Symlinks are pretty much the devil. 22:02:15 Gregor: Well, half-guarantee then :P 22:02:15 I would like to implement something like Knuth Bendix completion to automatically prove theorems 22:02:35 Gregor: GNU stow does nothing more than looking in the stow directory and checking for files that aren't symlinked into the path. 22:02:55 elliott: I have fair confidence that cunionfs is sufficiently stable, and that any stability issues are sufficiently minor that they could be fixed in short order. 22:03:10 It's not *terrible*, but it's only one step removed from Slackware's "untar things to root". 22:03:38 Gregor: By you or me :P 22:03:41 pikhq: Well, it claims to be a package manager for people who don't want package managers, right? :P 22:03:53 elliott: By me if they're interesting :P 22:04:04 Stow is the official package manager of the GNU Operating System. 22:04:07 True story. 22:04:13 And cpio the official archiver :P 22:04:17 elliott: Frankly, I'd very much like to see a package manager properly integrated with cunionfs, so it's in my best interest to be helpful. 22:04:40 Gregor: Note: It would not plug into an existing package manager, it'd be an entirely new one based on cunionfs :P 22:04:44 If you don't like it, SUX2BEU. 22:04:44 * pikhq is definitely going to end up with a dual major, then. 22:05:06 3 credit hours extra for the freaking second major? Hells yes. 22:05:10 pikhq: Mathematical Knitting and Advanced Haberdashery? 22:05:11 elliott: My integration with dpkg was ... spotty at best, mainly because dpkg (as with all other package managers) is wildly unsuited to union-based "transient" packages. 22:05:22 elliott: CS and mathematics. 22:05:33 pikhq: U BORIN 22:05:45 I would pay endless amounts of money for a degree in Advanced Haberdashery. 22:06:07 Gregor: To be honest, the actual package manager part looks suspiciously close to "untar into /pkg/x" the way this is looking :P 22:06:08 * pikhq bestows upon elliott a B.A. in Advanced Haberdashery. 22:06:18 pikhq: yæy 22:06:30 elliott: If it has SOME dependency management beyond that, that'd be nice :P 22:06:46 pikhq: I increasingly regret not getting a minor in archaeology when I had the chance :( 22:06:57 Gregor: Yes, but the actual install part :P 22:07:09 Gregor: I could also pick up a minor in just about anything. 22:07:15 Gregor: Er, anything liberal arts-y. 22:07:17 Sidenote on archaeology: Indiana Jones films -- 10x better if he sat there doing actual archaeology when shit was doing down? Answer: yes. 22:07:30 Gregor: You see, the liberal arts requirements are completely undefined. 22:07:41 Except in terms of credit hours needed. 22:07:48 elliott: I see no reason why the /install/ would be anything else, it's just the runtime choice of packages to union in that's interesting. 22:07:56 pikhq: Awesome. Awesome to the max. 22:08:19 How I would do it, is package manager operating by pipes. I would do it other programs are also operating by pipes. 22:09:58 Gregor: Wait, you mean when you do "emacs" it should create a new union with ONLY THE THINGS EMACS NEEDS? 22:10:14 Gregor: That has the major flaw that looking at /usr/bin with emacs would make me go wtf and get angry at my computer for being too smart :P 22:10:26 Also bash. 22:12:01 Gregor: Or is that not what you meant. 22:14:23 Gregor: :| 22:15:33 I hypothesise that Gregor cannot see his IRC client from inside his current process. 22:16:37 frustrating: Terminal objects are defined by universal cones on the empty diagram... but universal cones are defined in terms of terminal object. So i have to define terminal objects twice 22:18:44 -!- zzo38 has quit (Remote host closed the connection). 22:21:45 Vorpal: I have pioneered a new type of mining. 22:22:00 j-invariant: mutually recursive objects! 22:22:29 mutual recursion is terrifying 22:23:44 Gregor: oi 22:24:39 elliott, oh? 22:25:26 -!- sshc has quit (Quit: leaving). 22:26:28 elliott, any details? 22:29:45 Don't you mean: A New Kind of Mining. 22:30:45 fizzie: Yes. I call it: Creeper mining. 22:30:50 fizzie: It also works for cutting down trees. 22:31:30 fizzie: Basically, you keep all your possessions in a chest. Then at night you walk out, see somewhere you'd like to mine/chop, and get a creeper there. 22:31:32 Then you walk into it. 22:32:33 * Gregor reappears. 22:32:43 elliott: No, I do not mean that when you type "emacs", it should create a new union. 22:33:06 Gregor: But that would be awesometerrible :P 22:33:47 elliott: The unions are, at the minimal, by process-level, but most users would probably opt to just have their own master list, and the system would presumably have a semi-compulsory list. Users could of course opt to make more/less restricted lists for individual processes if they so desired, but the default (for sanity) would be to /behave/ as a per-user package system, while providing sufficient abstraction for per-process. 22:34:45 Think of it like open fds: If you keep on opening new shit, it's going to have the same std{in,out,error}, unless you or it opt not to. 22:34:49 Gregor: How does one actually add a new union? 22:35:40 elliott: CUNIONFS_DIRS environment variable, which (originally, Idonno if I reimplemented this in cunionfs (yet) or not) was backed by a per-user configuration file, backed by a per-system configuration file. 22:36:11 But since environment variables are passed exactly like fds, that abstraction fits best. 22:36:58 Gregor: Hmm 22:37:07 Gregor: Woo me with its features 22:37:17 fizzie: The saddest creeper: standing in a tree, facing the leaves, so that it will never see anything. 22:37:54 elliott: I don't have sufficient motivation to try so hard; if you want each process to have its own unique and easily-malleable view of the FS, you want cunionfs. Otherwise, you don't. 22:38:17 Gregor: I don't, but I do want semi-sane builds and stow-like package management :P 22:39:31 In my opinion "stow-like" is a bad compromise. So long as you have everything separated, there's no need to use something so clunky as a whole-system union to view it. 22:40:03 -!- zzo38 has joined. 22:40:36 -!- zzo38 has set topic: The sillier you are to the batsman, the closer you are. | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 22:41:29 But then, once again, it comes down to needs/wants: If you want more flexibility in what individual users/processes/whatever sees, then you really don't have all that many options .. it's either a smarter unionfs or something that clunks together a bunch of PATH, LD_LIBRARY_PATH, CFLAGS, LDFLAGS, etc etc environment variables. 22:41:40 If you don't, don't use it :P 22:41:43 In my opinion "stow-like" is a bad compromise. So long as you have everything separated, there's no need to use something so clunky as a whole-system union to view it. 22:41:50 What would you have as the usual configuration, then, if not "all packages exposed"? 22:41:52 Do you have time now to review my TeXnicard program so far? http://sprunge.us/RgEZ 22:42:50 elliott: "All packages" could very well have conflicting packages in it. The default would be defined by the package manager. It would probably be what most distros consider a "task", or just whatever the system maintainer cared to make default. 22:43:44 Gregor: I'm just saying that in general, 99.9% of the packages would be available, since two conflicting packages are rather rare to install 22:43:55 Remember, packages have versions too. 22:44:09 Gregor: OK then, the default would be the largest set of non-conflicting packages or whatever. 22:44:12 Gregor: But that's still stow-like 22:44:35 e.g. with stow, macports, etc you can have multiple versions of programs/libraries installed. Then you can swap them out when there are incompatibilities, bugs, whatever. A cunionfs-based system would let you work around such bugs on a per-process basis without having to do anything particularly crazy. 22:45:11 But once again, all the cases I've listed where cunionfs gives you advantages over something whole-system are sort of corner-cases, I just argue that there are sufficiently many such corner cases that giving the flexibility /might/ be worthwhile *shrugs* 22:45:31 Gregor: To be honest, I'd go straight to unionfs if not for the nice-builds thing. That seems compelling to me. 22:45:43 Hmm, well, how easy is it to change the union of a unionfs/aufs mount without umounting? 22:45:46 If not easy: CUNIONFS IT IS 22:45:50 Anyone up for bacon? 22:46:01 elliott: I have no idea, probably not difficult. 22:46:04 ineiros: Well. Uh. I sorta died enough that I have full health now. But you can come see my house! 22:46:34 ineiros: Why do you ask? 22:48:23 elliott: Not very hard; mount -o remount 22:48:34 pikhq: Is there any window of not-workingness for the mount? 22:48:56 Gregor: Still, I could avoid chroots entirely with cunionfs... right? For building, I mean. 22:49:05 Yes 22:49:24 You'd just say "give me these dev packages, OK now build" 22:50:06 elliott: The inodes aren't guaranteed to remain the same across a remount, but otherwise everything continues to work. 22:50:44 elliott: I need to design a language for category theory (so I can automatically compute things like duals) 22:51:00 j-invariant: yea 22:51:15 j-invariant: Do you have ideas how you can do that? 22:51:34 zzo38: not yet but I am wondering if it could be done in terms of category theory 22:51:51 j-invariant: How much do you know of category theory? 22:53:04 zzo38: I think I finally have the basic definitions down, but that took a long time 22:59:54 but I think the mindset can take a long time to learn because a lot of things can be descrivbed in this language in a very conscice way which you would not expect 23:01:08 elliott, like TNT, creepers destroy a percentage of the blocsk 23:01:11 blocks* 23:02:28 Vorpal: What is the percentage? 23:06:55 Someone told me that Wikipedia will be removed. Is that true? 23:07:35 zzo38: I doubt it unless there is a good reason 23:07:51 without an explanation there is no reason to beleive it 23:08:06 j-invariant: They told me it is because they have no more money. 23:08:15 oh that sounds like a hoax 23:08:28 dammit! 23:08:42 I went to wikipedia to click on the advert bar.. now its gone 23:09:52 j-invariant: I look too and it is gone. I also looked in the meta and in the preferences and did not find information about it. 23:12:14 j-invariant, the bar at the top of http://wikimediafoundation.org/wiki/Donate looks rather bad though 23:12:31 bad? they have 12.5 million dollars 23:12:43 Vorpal: O, that is where they moved it to. 23:12:53 j-invariant, oh wait, it needs js 23:12:53 thanks Vorpal that's what I was looking for 23:13:03 j-invariant, that looks very very different when I allow it in no-script 23:13:30 oh i thought you were mentioning Vorpal for no reason XD 23:14:07 elliott, who? 23:14:13 (who was mentioning I mean) 23:14:16 (zzo or j-inv) 23:15:03 elliott, hm, I suspect you have me on ignore. 23:15:26 oh well 23:15:46 he can't take being wrong I guess. 23:16:41 Vorpal: But what if you are being unsure instead of just plainly wrong? 23:17:02 zzo38, what? I'm not wrong. elliott is 23:17:17 zzo38, please read what I actually wrote 23:17:22 Vorpal: I didn't mean you personally. I meant in general. 23:17:25 ah 23:17:37 zzo38, what about it 23:18:52 Vorpal: Maybe I am not writing clearly. 23:19:12 zzo38, maybe. 23:23:38 Now review TeXnicard program! Tell me if there is any mistake, thing I forgot, opinion, question, etc. http://sprunge.us/RgEZ 23:23:52 And did you notice I changed a few words around in the topic message for this channel, today? 23:26:01 Tell me if (in your opinion) I did the random numbers correctly. 23:29:22 Vorpal, fizzie, elliott and others who might care: I put the normal world back up, without hMod. The backups are now unattended and done without turning the level saving off, so there's a good chance they won't all go as planned. 23:31:51 -!- MigoMipo has quit (Read error: Connection reset by peer). 23:42:09 ineiros, heh 23:42:40 ineiros, is it without monsters? 23:44:47 ineiros: /msg 23:58:07 elliott: "The concrete details of a given construction may be messy, but if the construction satisfies a universal property, one can forget all those details: all there is to know about the construct is already contained in the universal property" - quoted from Dear Learder Wikipedia 23:58:50 so it's sort of like proof irrelevance, but for general constructions 23:58:51 j-invariant: it's like a philosophy of life! 23:59:21 j-invariant: hmm, that reminds me of how in non-dependent functional langs, you can encode values as their type's fold combinator 23:59:42 that is the univesral property :P 23:59:55 yeah 2010-12-24: 00:00:37 http://www.cs.nott.ac.uk/~gmh/cat5.txt 00:00:57 initial F-algebra 00:01:17 no clue about GADT though 00:02:02 I think F-algebra will work for all simple data types 00:02:35 j-invariant: lol you might want to try and make your library multiple files 00:02:46 it's gonna be like 10,000 lines when you're done 00:03:06 I don't know how X) 00:03:23 j-invariant: I think "Require Import Foo." will work if Foo.v is in . 00:03:38 it would be good to compile each bit seperately 00:04:06 j-invariant: if you ever manage to construct lists and map inside this ... I dare you to extract "map" 00:04:20 it'll be the ugliest fucntion ever 00:04:20 hmm 00:04:21 *function 00:04:24 (when extracted) 00:04:34 I might be able to contribute to Evolution of a haskell programmer... 00:04:57 j-invariant: :D 00:04:58 brilliant 00:06:32 j-invariant: I wish Coq did some ugly special-casing for nats ... they're so slow and limited 00:06:39 I know there's the binary nats somewhere, but ... 00:07:01 yeah numbers must be implemented in binary, peano is only useful for theory 00:07:25 j-invariant: still, even the binary nats aren't so hot 00:07:34 j-invariant: I'd like it if it just special-cased nat and represented it internally as a machine word / bignum 00:07:43 but still allowed you to destruct on S to decrement one, etc 00:07:45 *etc. 00:08:03 that's a funny idea 00:08:04 fact and the like would be slow, but they wouldn't use up 34238490424 jiggabytes of memory 00:08:09 j-invariant: funny how? 00:08:37 I mean where would the implemeentaiton get the idea to use binary? 00:08:49 and more generally what else could it optimize 00:08:54 j-invariant: oh, I meant just hardcoding it ;-) 00:08:57 it's ugly as hell, certainly 00:08:59 but nats are very common 00:09:15 yes numbers seem to be special in some sense 00:09:26 I've never understood that 00:09:43 what do you mean? you mean that numbers tend to be more useful/common than non-number structures? 00:10:01 I think that's because we looked at the most useful algebraic structures and called them numbers, and decided the less useful ones didn't count as numbers 00:10:57 Gregor: I think I will build it on top of cunionfs... is performance ok? i've always felt like fuse is slow but that may just be bias 00:11:22 -!- Sgeo has joined. 00:11:33 natural numbers are universal in the category of discrete dynamical systems 00:12:13 j-invariant: i think it may be due to our bias -- we think numbers are interesting, so we tend to look more into something once we see numbers appear 00:12:16 and disregard things that aren't so numbery 00:12:20 I mean, in a very general sense 00:12:25 thus why numbers seem pretty darn common 00:12:56 elliott: I cannot come up with any counter-argument to that but I don't think it's true 00:13:13 j-invariant: when in doubt, i like to blame humans :) 00:13:21 gah some words got stuck on my head 00:13:22 j-invariant: i mean, let's put it this way 00:13:34 j-invariant: there's as much mathematics not involving numbers as there is mathematics involving numbers. 00:13:38 for some reason I keep thinking of the phrase "high performance JIT cheese" 00:13:47 j-invariant: so the /only/ factor in consideration here is, why do the mathematics /we've explored/ involve numbers a lot? 00:13:51 and i suspect the answer is: because we like numbers 00:14:23 elliott: I haven't tested performance much 8-D 00:14:32 Gregor: That is not reassuring :-\ 00:14:42 Gregor: https://codu.org/projects/trac/sps/changeset/6%3A8584c8e2c0ed/cunionfs Why did you do this, I don't like it :p 00:14:55 p.s. 00:14:58 char *dotfile; 00:14:58 sprintf(dotfile, "%s%s", curd, CUNIONFS_DOTFILE); 00:15:00 lol unallocated? 00:15:05 oh wait you allocate it later 00:17:39 elliott: I do that so that you can't cause packages to do things they ought to be finding files at weird paths which just-so-happen to have the right names. 00:17:56 Gregor: Your sentence does not parse. 00:18:01 "cause packages to do things they ought to be finding files at weird paths" 00:18:38 elliott: I do that so that you can't cause packages to do things they oughtn't to by finding files at weird paths which just-so-happen to have the right names. 00:19:35 Gregor: I don't get it :P 00:19:37 Example? 00:20:30 You have / mounted as cunionfs, and a version of sudo that isn't smart about checking the permissions of the sudoers file (it assumes only root can write to /etc). You make your own sudoers file in /home/mrhappy/evil/etc/sudoers, then mount that over / with cunionfs. 00:21:18 Gregor: Heh. Actually come to think of it I'll probably end up with / being an aufs of {regular filesystem, cunionfs for /bin /lib /share etc.} 00:21:28 e.g., process-specific /var and /home sounds "no". 00:21:44 Union of a union... you know what, this is an EXCELLENT argument for /usr. 00:22:29 -!- hagb4rd has joined. 00:22:37 That's just a specific case, it's not really solved by contracting your unions a bit :P 00:23:00 And no, I assumed you'd have something else mounted over /var, /home and /root if you don't have /home/root, those are all silly to union. 00:23:05 elliott, as expected, getting lava from spawn no longer works 00:23:18 elliott: could a brain exist which was obsessed with something other than numbers? 00:23:42 j-invariant: Sure, why not. 00:23:53 maybe it would self destruct 00:23:57 buenas 00:24:00 j-invariant: I don't see why. 00:24:11 Gregor: Maybe I'll have no /bin, /lib, /share, and put it all in a cunionfs /usr :P 00:24:23 Gregor: / = {/usr, /var, /home, /tmp, /boot} or something. 00:24:30 Gregor: / = {/usr, /var, /home, /tmp, /boot, /etc} or something. 00:24:43 That was the original intention behind SPS :P 00:24:58 Well, I had a /bin and /lib for really-core stuff (libc, coreutils) 00:25:15 (So that if for some reason your package setup was punked, you weren't completely screwed) 00:26:31 Gregor: Well, I had a /bin and /lib for really-core stuff (libc, coreutils) 00:26:35 Gregor: cal(1) is really-core? :P 00:26:57 Dude, my system won't even BOOT without cal. 00:27:32 Gregor: The nice thing is that with Kitten, you're always completely screwed. 00:27:35 So I don't have to worry about that 00:27:37 *that! 00:27:55 Gregor, did you have stuff like fsck and mount in /bin too? 00:28:08 Gregor: On a more srs note, I can't really have a cunionfs /, because I have no initramfs in Kitten :P 00:28:12 So / kinda has to be a real drive. 00:28:26 DESCRIPTION 00:28:26 switch_root moves already mounted /proc, /dev and /sys to newroot and makes newroot the new root filesystem and starts init 00:28:26 process. 00:28:26 WARNING: switch_root removes recursively all files and directories on the current root filesystem. 00:28:27 Vorpal: Yeah 00:28:28 I wonder why it has to do that. 00:28:37 BURN YOUR BRIDGES! 00:29:17 elliott, to shrink the tmpfs size to 0 iirc 00:30:02 night → 00:31:31 Gregor: Do I get extra points if my package manager is Haskell? 00:31:39 No :P 00:32:15 Gregor: WHY NOPT 00:32:16 *NOT 00:32:30 BECAUSE HASKELL KILLED MY FAMILY 00:32:39 Gregor: Mine too! 00:33:00 OMG JOIN US IN ##haskellkilledmyfamilyanonymous 00:33:07 DONE 00:33:12 YOU'RE NOT THERE 00:33:22 ALSO YOU'RE NOT ANONYMOUS 00:33:43 Gregor: Actually, shipping Haskell with a statically linked system sounds slightly stupid, as the executable will probably be around 100 MiB :P 00:36:55 I wouldn't be surprised if GHC can't even make static executables (without some hacking) 00:37:12 Gregor: It can, I just tried. 00:37:21 Well, THERE GOES THAT THEORY. 00:37:25 elliott@dinky:~$ ghc hello.hs -static -optl="-static" -optl="-pthread" ; ls -lh a.out 00:37:25 compilation IS NOT required 00:37:26 -rwxr-xr-x 1 elliott elliott 1.7M Dec 24 00:36 a.out 00:37:37 Post-stripping: 00:37:39 -rwxr-xr-x 1 elliott elliott 1.2M Dec 24 00:37 a.out 00:37:40 NOT BAD ACTUALY 00:37:42 *ACTUALLY 00:38:28 That's actually pretty damn good ... 00:40:32 Gregor: Dammit man -- the package manager has to be functionally pure now. 00:40:39 Gregor: You've turned my OS into a bad recreation of NixOS. 00:40:50 Gregor: _|_, and that's a middle finger, not the bottom value. 00:42:09 Gregor: Um. Question. 00:42:15 Gregor: Is "nm -a" supposed to work on statically linked executables? 00:42:17 (Unstripped ones.) 00:42:35 $ file hello 00:42:35 hello: ELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux), statically linked, for GNU/Linux 2.6.18, not stripped 00:42:39 OK, it did actually work then :P 00:54:03 Gregor: Wait, can you add to the unioned directories without restarting a process? 00:59:58 Gregor: :p 01:00:07 -!- FireFly has quit (Quit: swatted to death). 01:09:13 65 pages so far! 01:09:29 Gregor: y/n? 01:10:05 Guess how many pages there will be when it is done. (Remember it also will have the function to read commands from DVI, as well.) When it is done, we can see how close you are to correct answer. 01:10:29 what is it? 01:11:09 j-invariant: Are you asking me? 01:12:07 j-invariant: If you are: It is TeXnicard. 01:12:23 elliott: At present, no. Adding that wouldn't be particularly major, and it's something that's in the Eternal Todo o' Abandoned Projects :P 01:12:32 (Remember the page count of 65 pages also includes the index, summary of chunks, and table of contents.) 01:12:55 Gregor: that's kinda dealbreaking ... you have to restart your whole X just to see the new package you installed or whatever 01:13:00 or even init, if you want it at every levle 01:13:01 *levl 01:13:04 *leve-fucking-l 01:15:35 Gregor: or am i mistaken :P 01:15:42 How I think package manager should work, is, if you want to install a package, you add it to the dependency list of the "locally installed packages" package. 01:15:52 elliott: Adding that wouldn't be particularly major, and it's something that's in the Eternal Todo o' Abandoned Projects. Just need a way to tell the process "I want you to reevaluate my package list like so", probably by a file-write. 01:16:11 Gregor: Right, I'm just checking that, in fact, this has the major of issue requiring an effective-reboot to isntall a package :P 01:16:42 Do you like my ideas about package managers? Do you think they are wrong for some reason(s)? 01:16:54 zzo38: "based on pipes" isn't very descriptive 01:17:21 elliott: If you want it to be visible to everyone, it's just a matter of putting it in the global configuration file. If you want it to be visible to a user, it's a matter of putting it in their user configuration file. If you want it to be visible to some process or process group, that's more tricky. 01:17:44 Gregor: OK, so it rereads the config file all the time? 01:17:51 I was unaware that it had configuration files. 01:17:59 elliott: I haven't re-added the configuration files :P 01:18:16 Gregor: So what you're TRYING to say is: 01:18:17 elliott: The way it worked in D was with that daemon (the name of which I can't remember) which informs a process when a file has changed. 01:18:23 If you want it to be visible to anyone, reboot. 01:18:28 If you want it to be visible to a user, reboot. 01:18:33 If you want it to be visible to some process or process group, reboot. 01:18:38 That is the actual state. Yes? :P 01:18:42 elliott: The way it worked in D was with that daemon (the name of which I can't remember) which informs a process when a file has changed. 01:18:45 elliott: Look, you just dug up a project that I abandoned midway and you're expecting it to have features that are still on the TODO list. Fuck you. 01:18:49 Gregor: fam, but nobody uses it any more 01:18:59 gamin is used, which is a daemonless impl of the api 01:19:07 Gregor: I'm not expecting, I'm just /checking/ 01:19:17 Since your previous statement implied that there were, in fact, configuration files. 01:19:26 elliott: I mean, for example: wg -MR0 ftp://example.org/packages/* | pm -tQ | ... 01:19:33 zzo38: wg? 01:19:38 elliott: You're also expecting me to remember the exact state I abandoned it in. 01:19:51 Gregor: Well, you did just say that in retrospect it was pretty awesome earlier :P 01:20:05 elliott: This is just an example of new programs I might make if I make a distro. wg is like wget except that multiple retrieval is sent to stdout as a tape archive. 01:20:07 elliott: And it is :P 01:20:12 And pm is package manager. 01:20:34 Gregor: I'ma go for aufs, with the magical property of allowing me to remount without reooting :P 01:20:35 *rebooting 01:20:50 (Unless "mount -o remount" would work with cunionfs? Wait, FUSE, so no.) 01:21:02 elliott: But what about the other idea, that if you want to install a package, you add it to the dependency list of the "locally installed packages" package? 01:21:10 zzo38: Sure. 01:21:43 Do some package managers do that? 01:22:33 Probably. 01:23:22 Do any package managers work by pipes? Some new programs are not pipe but some old UNIX programs are designed with pipe operation, and I think it is good idea and new programs in UNIX should also work like that too. 01:25:11 I mean, probably some programs on UNIX can already work with pipes, such as: curl http://example.org/mail.tar.gz | zcat | tar -x 01:26:17 -!- Wamanuz2 has joined. 01:27:36 So that is how I want to make a Linux distribution, nearly all program are operated by doing pipes. Including the window manager. 01:31:33 -!- BlSlereah has joined. 01:32:28 -!- hagb4rd has quit (*.net *.split). 01:32:31 -!- augur has quit (*.net *.split). 01:32:31 -!- Wamanuz has quit (*.net *.split). 01:32:40 -!- Slereah has quit (*.net *.split). 01:32:50 -!- augur has joined. 01:32:51 *.net *.split 01:33:05 Vorpal: not minecrafting? 01:44:21 fizzie: WHAT THE FUCK 01:45:08 fizzie: So, I come out of the track from nailor's cabin. Floor is obsidian. I break my cart while in it as usual. Normally I go into the lava below and catch fire for like, 0.25s before going back to normal. Except this time, I *stayed in the fire, died, and lost all my possessions*. 01:45:14 fizzie: I WANT MY FUCKING STUFF BACK, NOTCH ;__; 01:48:29 -!- pikhq has quit (Ping timeout: 250 seconds). 01:49:26 Iiiiit's Notch Quality! 01:50:29 -!- pikhq has joined. 01:52:17 s/ch// 01:54:35 j-invariant: i need help 01:58:53 -!- hagb4rd has joined. 02:07:06 elliott: heh me too 02:07:08 whats up? 02:07:17 -!- zzo38 has quit (Quit: If God Had Intended Us To Play In Ten Tones Per Octave, Then He Would Have Given Us Ten Fingers.). 02:07:37 I am sick of trying to defin a symbolic category, it's really hard 02:07:45 p : Z 02:07:45 q : positive 02:07:45 H : (p ^ 3 <= 3 * ' q ^ 3)%Z 02:07:45 ============================ 02:07:45 exists s : Q, 02:07:46 p # q < s /\ match s with 02:07:47 | p0 # q0 => (p0 ^ 3 <= 3 * ' q0 ^ 3)%Z 02:07:49 end 02:07:51 j-invariant: must prove. 02:09:17 j-invariant: i.e. "given an underestimate of 3root(3), generate a closer underestimate" 02:14:24 j-invariant: any ideas? :/ 02:14:32 I'm trying something righ tnow 02:16:06 p/q |--> (2*p^3 + 3*q^3)/(3*q*p^2) tends toward the cube root of 3 but it never satisfies p^3 <= 3q^3 02:16:38 if you look at the continued fraction you get one on either side of cuberoot(3), so you could just take all the odd ones... but that means implementing all the continued fraction stuff 02:18:21 j-invariant: yeah and that kinda defeats the point 02:18:47 you can get a recurrence from the continued fraction for quadratics, but I think there is a theorem that says a state machine can't generate the continued fraction of any higher irrationality 02:18:49 j-invariant: I think this "computable Dedekind cut" approach would be nice if not for the proofs :/ 02:19:18 j-invariant: really? that theorem 02:19:24 j-invariant: would mean you can't use continued fractions for computable reals... 02:20:00 I stated it wrong 02:20:33 ah 02:21:24 http://arxiv.org/pdf/1012.1709 02:22:45 The continued fraction expansion of an algebraic number of degree at least 02:22:45 three cannot be generated by a finite automaton. 02:23:55 j-invariant: that's not good is it? 02:24:05 j-invariant: I mean could Coq do it? I don't actually know what computational class Coq is 02:26:51 elliott: my guess is that constructive dedekind cuts are what intuitionists that have never seen a computer use 02:27:24 j-invariant: :D 02:28:37 j-invariant: have you ever used c-corn's constructive reals? 02:28:41 no 02:29:15 hm what does :> mean again? in a coq type 02:29:16 as opposed to : 02:29:21 in a record field declaration 02:29:48 it's something to do with pretening the record is another type 02:31:38 weird 02:31:46 j-invariant: hmm you mean like 02:31:51 Record blah := mkBlah { foo :> nat; bar : ... } 02:31:54 you could use a blah as a nat? 02:32:47 yes 02:32:56 well I don't really know I don't use that, but it's something like that 02:33:00 j-invariant: I could do algebraic structures like that! 02:33:02 TIME TO TRY IT OUT 02:33:23 leave king dedede... sorry, dede.v for now 02:33:26 I still haven't been able to define this damned symbolc category 02:33:32 j-invariant: what category is it exactly? 02:33:51 actually it's just graphs, that's a simpler way to think of it. 02:34:18 how do you disable the coq stdlib in the file again? :/ 02:34:21 oh wait i have it here somewhere 02:34:27 actually graph isn't right 02:34:34 (* 02:34:34 *** Local Variables: *** 02:34:34 *** coq-prog-args: ("-emacs-U" "-nois") *** 02:34:34 *** End: *** 02:34:34 *) 02:34:35 right? 02:35:03 The idea is: Inductive Symbolic_Maps : nat -> nat -> Type := f 3 4 | h 2 1 | k 2 1 | m 3 4. 02:35:09 er 02:35:16 that was a bad example 02:35:30 lets take Inductive Symbolic_Maps : nat -> nat -> Type := f 3 4 | h 4 1 | k 1 6 | m 3 4. 02:35:44 is 3 the type w/ three elements? 02:35:45 here 02:35:54 no just the number 3, or it could be any symbolc 02:36:07 so f : Symbolic_Maps 3 4 02:36:17 ah 02:36:50 then we need something like lists, Inductive Symbolic_Mappings : nat -> nat -> Type := nil : forall x, Symbolic_Mappings x x ; cons : forall a b c, Symbolic_Map a b -> Symbolic_Mappings b c -> Symbolic_Mappings a c. 02:37:34 So the identity is nil and composition is append.. then things like (f o g) o (k o h) = (f o (g o k)) o h would be provable by reflexivity 02:37:49 but a functor from Symbolic -> C would prove the same identity in any other category 02:38:26 right now, to prove (f o g) o (k o h) = (f o (g o k)) o h .. it takes 300 lines of proof script 02:44:10 j-invariant: I wish Coq had like, a minimal stdlib with it 02:44:14 giving eq, exists, that kind of stuff 02:44:18 rather than having to code it myself 02:44:41 You can use mine 02:45:02 j-invariant: got a link again? 02:45:21 http://pastebin.com/BQaW0Cdb this is before I start defining category 02:45:43 thanks, I'll nab useful bits from there as I go :) 02:45:43 Decidable is spelled wrong :/ 02:45:50 j-invariant: Coq has And/Or built in doesn't it? 02:45:56 what does "# Arguments." do :P 02:45:58 no 02:46:24 mispaste, should have been Set Implicit Arguments. 02:47:35 j-invariant: I think set implicit arguments actually gets in my way 02:47:46 it's nice to have to specify what gets implicit-ified 02:49:34 Inductive or (P Q : Prop) : Prop := 02:49:34 | zig : P -> or P Q 02:49:34 | zag : Q -> or P Q. 02:49:36 i like my names more 02:53:45 heheh 02:54:29 * Sgeo assassinates Active Worlds's asinine update methods 02:58:30 Error: Unknown interpretation for notation "_ /\ _". 02:58:32 what does that mean again? 02:58:39 oh 02:58:51 there we go 03:00:17 :( my symbolic category does not work 03:00:41 :/ 03:00:48 j-invariant: i've defined up to abelian groups, now to watch the whole thing fall apart as i try and do rngs 03:01:01 rings because that has two operations? 03:01:09 j-invariant: because it's a combination of two structures, basically 03:01:15 j-invariant: and my structures have set fields 03:01:23 j-invariant: I might restructure them to be Prop-records parameterised on type 03:01:27 but IIRC that didn't work last time I tried 03:01:40 this really sucks, F(f o g) doesn't evaluate to Ff ' Fg, should have known that 03:01:45 Ff o Fg 03:02:10 they are equal, but F(f o g) evaluates to Ff o (Fg o Fidentity) -- because of the way the category is made 03:02:41 but if I make composition syntactic in the symbolic category then I don't get the proofs for free.. damned either way 03:03:25 Record pseudo_ring := { 03:03:25 pr_ag :> abelian_group; 03:03:25 pr_sg :> semigroup; 03:03:25 pr_left_dist : 03:03:25 forall a b c : 03:03:28 i mean do you write pr_ag or pr_sg 03:03:31 both give you problem 03:03:32 s 03:03:40 if I could refer to the record itself somehow there, that might work 03:03:55 j-invariant: who needs proofs for free :) 03:03:58 me! 03:04:29 http://coq.pastebin.com/DzVkdQbV <- broken 03:04:45 starts at line 629 03:04:59 j-invariant: i did your proof 03:05:02 j-invariant: just add one line 03:05:03 Admitted. 03:05:05 elliott: I'll just use a syntactic compose, and write a decision theorem 03:05:52 I will not admit defeat 03:08:15 Record magma S := { 03:08:15 mg_S :> Set := S; 03:08:15 mg_op : mg_S -> mg_S -> mg_S 03:08:15 }. 03:08:15 Implicit Arguments mg_op [S m]. 03:08:16 Theorem magma_is_set : forall S (m : magma S), mg_S m = S. 03:08:18 intros; apply refl. 03:08:20 Qed. 03:08:22 now THIS might work!! 03:09:07 what's that theorem about? 03:10:06 j-invariant: just checking coercion works :P 03:10:22 ah 03:10:44 the biggest problem for me is I don't want to use Set 03:11:01 I need something like NxN/~ for some equivalence 03:11:10 I thought category theory would solve it :/ 03:11:18 well, it does - I just don't see how yet 03:13:02 j-invariant: category theory solves EVERYTHING!!!!!!! 03:13:20 it bloody well better after all this hard work :p 03:18:29 j-invariant: i got pseudorings! 03:18:54 cool 03:19:52 j-invariant: got any nice theorems about pseudorings/rngs? :p 03:19:56 i wanna see if this actually works 03:20:08 I don't even know what it is LOL 03:20:15 something weaker than ring 03:20:29 j-invariant: http://en.wikipedia.org/wiki/Pseudo-ring 03:20:43 j-invariant: abelian ring (R,+) and semigroup (R,*) where * and + distribute 03:22:22 Ring 03:22:22 Pseudoring with identity element 1 for • (monoid) 03:22:25 aha 03:22:35 so i just need it to be that my pseudo-ring's semigroup must be a monoid too 03:23:32 Record ring S := { 03:23:32 rg_S :> pseudo_ring S; 03:23:32 rg_sg_is_monoid : monoid (pr_sg rg_S) 03:23:32 }. 03:23:32 what. 03:23:34 that was stupid easy. 03:23:55 time to try Z I guess 03:24:29 try to prove 0*x = 0 in ring 03:24:51 j-invariant: heh damn you, i have to figure out what 0 is in this case... the problem is that everyone says * at the lower levels 03:24:54 even though it turns into + in higher structurse 03:24:56 *structures 03:24:59 and everyone says 1 even when it's 0 03:25:03 SO CONFUZZLING 03:26:50 S : Set 03:26:50 R : ring S 03:26:50 a : R 03:26:50 ============================ 03:26:50 mn_1 * a = mn_1 03:26:53 i think this is a problem with my scheme 03:27:00 every structure on the same set looks the same to coq 03:28:24 ============================ 03:28:24 monoid ?385 03:28:25 hnnnnnnng 03:28:37 j-invariant: are you sure coq doesn't have a tactic for "let me specify this ?385 now"? :( 03:28:43 it does 03:28:47 instantiate (1 := ...) 03:29:03 j-invariant: no, but like 03:29:05 instantiate 1. 03:29:08 and it becomes the new goal 03:29:46 j-invariant: and pushes the current goal to the end 03:30:50 j-invariant: surely it must exist, i mean it'd be so useful 03:31:11 oh I don't think that exists 03:31:16 yeah that would bereally useful though 03:37:57 I think I'm going to write eval in c using exec to call out to gcc, dlopen and dlsym... tomorrow. 03:37:57 Suck it, Lisp weenies. 03:37:58 -!- Sasha has quit (Read error: Connection reset by peer). 03:37:58 ...or just use libtcc, which looks like it can do it out of the box. 03:38:06 -!- Mathnerd314 has quit (Disconnected by services). 03:38:22 -!- Sasha has joined. 03:38:23 -!- Mathnerd314_ has joined. 03:39:00 -!- Mathnerd314_ has changed nick to Mathnerd314. 03:48:11 I wonder how I can avoid just reinventing Nix. 03:50:52 [[Fair enough response to the half-block question. Real question: How long did it take you to become proficient enough a coder to make Minecraft? 03:50:53 I did my first programming when I was eight. I'm 30 now.]] 03:51:02 Fun fact: Notch's programming skills decrease every passing day. 03:51:05 Also: 03:51:07 [[Any chance of getting a female player model? Also, how about some optional skinnable clothing that can be used with your model? 03:51:07 Possibly, yes, but how do I make a cube based female model without being extremely silly and/or slightly objectifying?]] 03:51:16 Notch has no idea how to make a female model without giving it gigantic breasts. 04:04:21 -!- elliott has quit (Quit: Leaving). 04:50:56 Hmm. Xiph is working on a new audio codec... 04:51:24 http://people.xiph.org/~xiphmont/demo/celt/download1/celt-0.10.0-32.flac This is what it sounds like at *32 kbps*. 04:53:47 wow 04:54:01 hard to beleive 04:54:24 -!- j-invariant has quit (Quit: leaving). 04:54:30 pikhq: wanna write something on my blog 04:54:48 unless you have a blog (then there would be no point!!!) 04:55:01 * pikhq haþ no blog 04:56:11 pikhq: ok, well you seem like an intelligent, fun-loving guy 04:56:20 u should """""guest post""""" 05:04:29 pikhq: r u interested? 05:06:11 Perhaps. 05:08:51 * Sgeo once tried to sudo on his school's Linux system 05:09:13 Mistook that console window for the console window for my system 05:10:37 pikhq: u should www.symbo1ics.com/blog 05:15:20 Sgeo: did it get noticed? 05:16:40 Mathnerd314, no idea 05:16:46 I sent some mail to the sysadmin about it 05:18:53 Sgeo: any relation to xkcd? 05:20:03 xkcd is the reason that I thought of it just now 05:20:56 http://25.media.tumblr.com/tumblr_lc1hqgvA8F1qzymhso1_500.gif 05:23:15 * Sgeo pukes on Quadrescence 05:23:27 STOP THAT SGEO 05:23:52 Quadrescence, you're the one who posted that disgusting link 05:25:09 http://media.damnfunnypictures.com/photos/j0xqdn9-animal-tortoise-turtle-ucumari.jpg 05:26:11 I prefer that to the comic 05:35:06 * Mathnerd314 goes back to reading llvm 05:48:47 -!- pikhq has quit (Ping timeout: 265 seconds). 05:50:32 -!- pikhq has joined. 06:10:20 http://www.zreomusic.com/listen All that is synthed. It sounds *far* to good to be synthed... 06:10:39 -!- oerjan has joined. 06:10:40 Well, aside from being unhumanly accurately played. 06:11:37 hmm, I'm always surprised by what *isn't* synthed 06:14:03 seriously, there ought to be no real barriers to me deciding to make some music *right now* 06:15:44 except talent. 06:15:47 * oerjan ducks 06:16:21 well, yeah, I'll agree that reading documentation is always a good idea 06:16:48 oerjan: This is why only Gregor makes music here. 06:17:02 He is not a man! He is walking, typing, hat-wearing talent! 06:17:52 and simultaneously! 06:18:30 even while chewing gum! 06:18:36 there's Isle of Tune, but it's too limited: http://isleoftune.com/ 06:19:43 As such is his talent! 06:19:53 He is so talented that he is talent *with talent*! 06:21:01 but AFAICT, there's no single FLOSS "music making" program 06:31:29 Who needs a program? 06:31:35 All you need is talent! 06:31:54 With talent, you can just bit-bang out the FLAC you want! 06:32:12 (note: I in no way advocate actually bit-banging a FLAC to generate music. God no.) 06:32:47 bit-bang? 06:32:57 O... literally writing the bits? 06:33:27 Actually, what would such a thing sound like? 06:33:55 Obviously, I should do it 06:35:03 Sgeo: tristan perich writes one-bit music: music played by an arduino without a dac (and therefore using nothing but square waves) 06:37:09 pikhq: then what are you advocating? 06:38:47 Mathnerd314: this is FLOSS afaict: http://chuck.cs.princeton.edu/release/ 06:38:58 if you like live coding :P 06:39:07 Mathnerd314: I don't know, but it should be PAINFUL 06:40:03 i also once composed a piece in audacity 06:40:06 from scratch 06:40:09 that was painful 06:41:02 pikhq: life is pain. so that's satisfied. 06:41:19 word to the wise: never try to do anything involving more than a handful of tracks in audacity. it will blow up and do really freaky things 06:41:51 quintopia: Doesn't it anyways? 06:42:23 pikhq: it didn't blow up until 20 tracks on my old fast memoriful computer 06:42:34 on this one it can't record a single track for more than five seconds... 06:47:30 -!- zzo38 has joined. 06:53:51 -!- wareya has quit (Read error: Connection reset by peer). 06:54:16 -!- wareya has joined. 06:56:11 Ha ha! Now push the "EXPLODE" button and your television set will explode. 07:01:13 Hey, I used Audacity to record my karaoke! 07:01:19 * pikhq pushes zzo38's EXPLODE button 07:01:38 zzo38: since pikhq is not interested in writing on my blog, do you wanna 07:01:43 Sgeo: Does it work? 07:01:52 -!- Zuu has quit (Read error: Connection reset by peer). 07:01:55 Quadrescence: What do you want written on it? It depends. 07:01:55 zzo38, I have a scapegoat for my horrible singing! 07:02:03 zzo38: http://symbo1ics.com/blog/ 07:02:10 stuff about stuff 07:02:34 write whatever you want as long as it's expository in nature (and ideally about math or compsci?!?!?!) 07:03:41 (enable js) 07:04:02 i know a blog written entirely in haskell that uses no js 07:04:29 yeah damn cale 07:04:30 it contains several tech topics 07:04:31 Quadrescence: What do you want me to do, add comments? 07:04:36 * pikhq is now frightened. 07:04:39 zzo38: no, i'd give you an account 07:04:48 FFXII has an optional boss with 50 million HP. 07:04:48 zzo38: and you could write a (some) posts about whatever if you wanted 07:04:55 It can apparently take 12 hours. 07:06:12 Quadrescence: No, it is very slow. I prefer PhlogJournal (in which I can just create plain text files with the correct names and everything else goes by itself). 07:06:30 https://faidio.visuallycreated.com:8002/blog/view.cgi?id=5 here's how you make a blog in haskell. i don't know haskell so i don't know how creative this is. 07:07:18 zzo38: what 07:07:49 http://static.tvtropes.org/pmwiki/pub/images/yiazmat3.jpg Each one of those dots is a full health bar. 07:08:17 Quadrescence: I mean this gopher://zzo38computer.cjb.net:70/1phlog*a it is much faster and simpler. No account or anything needed, just a directory in your computer. 07:08:32 12 hours seems reasonable 07:08:43 can you save your progress and come back to it? 07:09:03 zzo38, did you write PhlogJournal yourself? 07:09:07 * Sgeo guesses yes 07:09:10 Sgeo: Yes, I wrote it myself. 07:09:20 * Sgeo is obviously a future psychic 07:09:22 zzo38: the point is that anyone can have an account and anyone can log in and everything is secure 07:09:52 Sgeo: And here is the code for it: gopher://zzo38computer.cjb.net:70/0phlog*f0 (you can use netcat to download it if you want to) 07:10:18 Quadrescence: Then why don't you juse use ssh then? 07:10:18 Grrrrr 07:10:26 Why doesn't Chrome support gopher? 07:10:33 -!- Zuu has joined. 07:10:33 Does Opera support gopher? 07:10:45 zzo38: I want several people to have access, and since I type math, I want javascript to be enabled 07:11:20 Sgeo: Neither Chrome or Opera does. But you can use netcat: echo 'phlog*f0' | nc -q -1 zzo38computer.cjb.net 80 > PhlogJournal.php 07:11:43 that is the worst way to view a blog :( 07:12:03 Quadrescence, that's downloading the source for the engine 07:12:08 oh okay 07:12:43 what's cool about phlog? 07:13:38 quintopia: Well, look at the codes if you want to. It is very simple but does calendars, comment system, and more. 07:13:58 Without slowing down your computer with JavaScript and images and stuff like that. 07:14:56 zzo38: WHAT ABOUT LATEX RENDERING WITH NATIVE FONTS 07:15:25 that's the only thing I really use JS for 07:15:29 i'm getting a 501 on your nc command up thhere? :/ 07:15:46 Quadrescence: Then just use LaTeX to make a printout. 07:15:56 quintopia: Sorry, that is because I accidentally typed 8 instead of 7. 07:15:57 Quadrescence: that's lame. images are okay. 07:16:06 Change the 8 to 7 (they are close to each other on the keyboard) 07:16:09 And then it will work. 07:16:14 quintopia: no it's quite not lame 07:16:29 thx 07:16:31 quintopia: images assume the user has some sized screen at some resolution 07:17:01 I prefer Plain TeX to typeset the mathematics and then can publish the DVI file if we need to make a report about mathematical things. 07:17:07 Port 70/TCP? Gopher? 07:17:16 Ilari: Yes. 07:17:30 zzo38: the point of a blog is to blog, and one can use TeX to do stuff on it 07:18:13 Quadrescence: Could you write a blog program in TeX? 07:18:30 what? 07:18:35 one *could* I guess 07:18:48 Quadrescence: i think it's fair to use JS to detect screen size. it's less lame than printing text in all kinds of crazy positions to simulate tex, imo. 07:18:48 do you mean "a tex program on the blog"? 07:19:11 quintopia: what 07:19:36 there really should be a css way to do that though :/ 07:19:50 images are just a poor option when you can do native TeX typesetting and use Real Fonts 07:19:58 mathml is bad, but jsmath is good 07:20:06 Quadrescence: No, I mean a blog program in TeX. Like, you might use ssh to send files and stuff, perhaps message send protocol or something for comments, and then HTTP/FTP/Gopher to download the DVI file. 07:20:17 jsmath is slow and hangs a lot. it annoys me. 07:20:28 quintopia: it needs to render 07:20:33 Ah, lynx supports gopher... 07:20:35 quintopia: Yes it is slow on my computer too. 07:20:45 I agree it's slow, but it's not TOO slow 07:20:58 I'd rather have nice looking output :) 07:21:04 Quadrescence: I think it is too slow. 07:21:10 i agree with zzo38 07:21:13 also the hanging thing 07:21:18 for rendering TeX in real time? 07:21:23 I think that's quite fast really. 07:21:36 how about we just not render it in real time, eh? 07:21:44 zzo38: AFAIK, no need to point MX record to host itself, A/AAAA records are enough for mail delivery... 07:21:58 quintopia: because that defeats the whole purpose of it 07:22:24 that's why browsers are getting better and better JS engines 07:22:25 etc 07:22:47 we just need to petition the w3c to add tex rendering stuff to the html standards. 07:22:48 Ilari: Are you refering to my domain name? If I don't enter the MX record, I think cjb.net services will handle it. 07:22:59 let the browser do it fast instead of in js slowly 07:23:07 quintopia: i agree with that 07:23:07 but having it pre-rendered 07:23:10 "zzo38computer.cjb.net. 300 IN MX 0 zzo38computer.cjb.net.". 07:23:23 quintopia: but right now it's the best we have. and mathml blows 07:23:32 :( 07:23:52 Quadrescence: i didn't know. i'll test it real quick to see what you mean 07:24:01 Ilari: Yes, I did that so that CJB service will not process the mail. 07:24:25 Quadrescence: mathml doesn't blow that bad 07:25:13 yes it does 07:25:37 it is a piece of shit, designed by a web committee, not mathematicians or typographers 07:28:38 and... how does that cause it to be bad? 07:29:06 zzo38: CJB inserts their own MX record if you don't put one? 07:29:11 Well if you've ever examined either the output or the markup, you'd understand Mathnerd314 07:30:12 so tex4ht renders the math stuff as a png apparently. add to that a script to switch out which image to use depending on resolution i think you'd have something looking reasonable and running fast until we get a proper standard 07:31:00 I highly favor native fonts, because they scale with the text around it, have the correct baseline, and don't look like shit when printed 07:31:12 especially with monochrome laser printers 07:31:31 Ilari: Yes I think they do. 07:31:39 print? who prints? 07:31:41 treekiller 07:31:44 I print a ton 07:31:58 here's my current To Read stack http://i.imgur.com/U2uzT.jpg 07:32:14 all of which I printed 07:33:17 okay 07:33:22 :) 07:33:29 googling your nick i find that you do a lot of math reading and tex stuff 07:33:35 yes 07:33:38 i can see where that might be an issue for you 07:34:02 zzo38: Ah, that explains it. If querying MX records for foo. doesn't produce any results, MTAs assume implicit 'foo. 0 IN MX 0 foo.'. 07:34:19 quintopia: tex4ht is a great application, I don't deny that 07:34:30 i just like the output I have I guess :S:S:S:S 07:34:31 i also didn't realize quadrescence was a made up word...what is it supposed to mean? 07:34:40 idk it's made up 07:34:55 yes but you get to make up a def too :P 07:35:09 quad represents four facets of my mind~ 07:35:47 i have one more facet than you. i win. 07:35:52 good night 07:35:56 time cube 07:36:13 EARTH HAS 4 CORNER 07:36:13 SIMULTANEOUS 4-DAY 07:36:13 TIME CUBE 07:36:13 IN ONLY 24 HOUR ROTATION. 07:36:13 4 CORNER DAYS, CUBES 4 QUAD EARTH- No 1 Day God. 07:36:15 jsMath doesn't even support a lot of commands of TeX. And the ones it does support, is all incomplete. 07:36:22 zzo38: what? 07:36:24 no... 07:36:38 zzo38: It supports the math typesetting, and that's rather complete 07:37:56 and looks exquisite if you have STIX fonts installed (free) 07:37:56 I typed \^^47amma and it says "Unknown control sequence '\^'" 07:38:09 And it can't make \def or \the\count255 or anything like that either 07:38:13 you can 07:38:21 just in the config files 07:38:24 on demand? no 07:38:38 I don't know why you'd type \^^47 anyway 07:38:42 O, \def works. 07:38:54 But \the is broken. 07:39:04 It's for typesetting math 07:39:08 that is it 07:39:21 if you want to typeset TeX documents, use TeX 07:39:39 if you want to typeset math using TeX on webpages, use jsmath 07:39:51 -!- Mathnerd314 has quit (Quit: ChatZilla 0.9.86-rdmsoft [XULRunner 1.9.2.12/20101026210630]). 07:45:21 -!- Sgeo has quit (Read error: Connection reset by peer). 07:48:57 \mathchar doesn't work. 07:51:05 zzo38: what is a practical use case of \mathchar 07:51:58 \kern only partially works. 07:52:36 Quadrescence: You can look at the TeXbook for some examples. 07:52:48 I know what it is. I am asking for a practical use case for a website. 07:53:03 that LaTeX doesn't solve. 07:54:37 zzo38: SORRY, I AM TAKING OFFENSE TO YOUR INANE PROBLEMS WITH JSMATH!!! 07:56:22 I think TeX works better. If you want to make a math report, you can use TeX. 07:56:59 Also, the \hbox command in jsMath is completely broken. 07:57:01 Yes, if you want to make a math report for publication, yes 07:57:20 if you want to write a blog, absolutely not 07:58:19 Actually I think TeX can be good for math blog. You should just need ssh. 07:58:51 gross 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:03:39 The broken \hbox is probably the most serious mistake in jsMath, I think. 08:12:56 zzo38: i'd agree 08:22:43 But regardless of how well jsMath works or doesn't work, it is still slow!! 08:28:58 250 Your request for doing nothing has been completed successfully. 08:37:25 -!- zzo38 has quit (Quit: Leg before wicket.). 09:13:25 -!- MigoMipo has joined. 10:09:54 -!- asiekierka has joined. 10:09:56 hey 10:10:06 me and my friend made this in my own game -> http://64pixels.org/christmas.png 10:14:07 -!- cheater99 has joined. 10:19:50 -!- hagb4rd has quit (Ping timeout: 240 seconds). 10:20:16 -!- cheater99 has quit (Read error: Connection reset by peer). 10:37:03 -!- cheater99 has joined. 10:43:21 -!- cheater99 has quit (Read error: Connection reset by peer). 10:55:19 -!- Anon899 has joined. 10:55:55 -!- Anon899 has left (?). 11:00:03 -!- cheater99 has joined. 11:06:11 -!- cheater99 has quit (Read error: Connection reset by peer). 11:23:03 -!- cheater99 has joined. 11:31:45 -!- cheater99 has quit (Read error: Connection reset by peer). 11:40:13 -!- asiek2erka has joined. 11:42:48 -!- asiekierka has quit (Ping timeout: 240 seconds). 11:46:33 -!- cheater99 has joined. 11:52:33 -!- cheater99 has quit (Read error: Connection reset by peer). 12:09:05 -!- cheater99 has joined. 12:14:41 -!- cheater99 has quit (Read error: Connection reset by peer). 12:17:04 -!- FireFly has joined. 12:19:48 -!- Wamanuz2 has quit (Remote host closed the connection). 12:21:17 -!- Wamanuz2 has joined. 12:27:19 -!- impomatic has joined. 12:30:24 -!- cheater99 has joined. 12:35:36 -!- cheater99 has quit (Read error: Connection reset by peer). 12:52:08 -!- BlSlereah has changed nick to Slereah. 12:52:15 -!- cheater99 has joined. 13:22:57 -!- Wamanuz2 has quit (Remote host closed the connection). 13:23:23 -!- Wamanuz2 has joined. 13:40:51 -!- yiyus_ has quit (Ping timeout: 260 seconds). 13:45:01 -!- Wamanuz3 has joined. 13:45:01 -!- Wamanuz2 has quit (Read error: Connection reset by peer). 13:52:17 -!- yiyus has joined. 14:23:22 -!- cheater99 has quit (Read error: Connection reset by peer). 14:40:50 -!- cheater99 has joined. 15:12:44 -!- poiuy_qwert has joined. 15:16:00 -!- cheater99 has quit (Read error: Connection reset by peer). 15:27:37 -!- elliott has joined. 15:30:12 http://xkcd.com/838/ This... is actually close to having potential. 15:30:33 Get rid of the girl in the middle panel and just make it him wondering and it would be decent. 15:32:18 20:51:24 http://people.xiph.org/~xiphmont/demo/celt/download1/celt-0.10.0-32.flac This is what it sounds like at *32 kbps*. 15:32:19 pikhq: Whoa. 15:32:55 pikhq: heh Tom's Diner cameo at the end 15:33:24 21:10:37 pikhq: u should www.symbo1ics.com/blog 15:33:28 oh jesus christ that is the worst blog ever 15:33:39 wasn't it on reddit recently 15:33:50 -!- cheater99 has joined. 15:34:30 22:14:03 seriously, there ought to be no real barriers to me deciding to make some music *right now* 15:34:30 22:15:44 except talent. 15:34:30 22:15:47 * oerjan ducks 15:34:30 22:16:21 well, yeah, I'll agree that reading documentation is always a good idea 15:34:34 i have no response 15:35:58 22:41:19 word to the wise: never try to do anything involving more than a handful of tracks in audacity. it will blow up and do really freaky things 15:35:58 22:41:51 quintopia: Doesn't it anyways? 15:36:04 audacity is possibly the worst software ... ever 15:36:50 23:03:41 (enable js) 15:36:57 desperately trying to figure out a justification for having a blog depend on js now. 15:42:37 -!- j-invariant has joined. 15:44:14 hey elliott 15:44:17 hi 15:44:34 look at the proof on line 746 http://coq.pastebin.com/rkDjqYFH 15:44:50 then see 877 where it gets mapped to a different category 15:46:32 ok 15:46:58 j-invariant: nice 15:47:08 really exciting 15:47:08 -!- cheater99 has quit (Read error: Connection reset by peer). 15:47:20 j-invariant: this is getting close to the point where i understand nothing though :) 15:47:25 this gives a general way to prove things automatically 15:47:41 -!- Mathnerd314 has joined. 15:48:16 02:10:06 me and my friend made this in my own game -> http://64pixels.org/christmas.png 15:48:18 asiek2erka: what. 15:50:53 I'm not sure if I should start keep developing this or try and simplify it and clean it up 15:51:17 it's too bad I can't bootstrap it.. because it would be a lot easier to define category theory if i already had it 15:51:32 logical consistency prohibits it 15:52:27 j-invariant: not if you did everything coinductively! maybe :P 15:52:43 j-invariant: I'd keep going, it's "clean enough" 16:03:45 j-invariant: I am not sure how to prove that 0+x = x in a ring at all, with my model 16:04:02 0+x = x isn't an axiom? 16:04:36 [[Error: Impossible to unify "mg_op b" with "mg_op b".]] wat 16:04:44 j-invariant: not that i can tell 16:04:53 -!- cheater99 has joined. 16:04:55 oh wait 16:04:57 sure it is 16:04:57 j-invariant: yes, it is 16:05:00 j-invariant: I mean 0*x = 0 16:05:02 yeah that is so stupid, Coq should check if the string representations are the same - and show implicit parameters if they are 16:05:10 "Error: Impossible to unify "mg_op b" with "mg_op b"." ;; lol ok so my system does work 16:05:13 coq just prints it confusingly 16:05:17 oh i already said that 16:05:19 and yeah OK 16:05:25 elliott: i think i wrote a proof of 0*x = 0 on this channel once 16:07:34 0*x = (0+0)*x = 0*x+0*x --> cancel --> 0*x = 0 16:07:55 `addquote elliott: i think i wrote a proof of 0*x = 0 on this channel once 16:08:00 your crowning achievement as a mathematician 16:08:07 254) elliott: i think i wrote a proof of 0*x = 0 on this channel once 16:08:10 Mathnerd314: that needs you to prove that a = a+a means a =0 16:08:14 *a = 0 16:08:40 x=a+x -> x-x=a+x-x -> 0=a 16:09:05 Theorem foo S (R : ring S) : 16:09:05 forall a, (pr_mul (p:=R) a (mn_1 (m:=pr_ag R))) = (mn_1 (m:=pr_ag R)). 16:09:08 hard enough just to formulate it! 16:09:52 thus... why Coq / etc. are not good for proving theorems 16:12:51 Mathnerd314: thus why unjustified generalisation 16:12:52 stfu 16:12:55 S : Set 16:12:55 R : ring S 16:12:55 a : R 16:13:02 lol i just realised i structured this in a way that I can't prove a:S 16:13:10 OH WELL time to soldier on 16:14:30 is 0+a = a left identity or right? 16:14:33 similarly a+0 = a 16:15:18 Theorem bar S (R : ring S) : 16:15:19 forall a, (pr_add (p:=R) a mn_1) = a. 16:15:19 intros. 16:15:19 unfold pr_add. 16:15:19 apply mn_right_ident. 16:15:19 Qed. 16:15:21 it's a start 16:17:01 -!- cheater99 has quit (Read error: Connection reset by peer). 16:25:01 left 16:31:49 -!- oerjan has quit (Quit: Later). 16:32:18 -!- cheater99 has joined. 16:34:37 -!- cheater99 has quit (Remote host closed the connection). 16:40:15 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 16:41:53 -!- poiuy_qwert has joined. 16:58:03 -!- poiuy_qwert has quit (Read error: Operation timed out). 16:59:51 elliott: rewrite rules are superior 17:00:07 Mathnerd314: for... theorem proving? 17:00:12 Mathnerd314: you have no fucking clue what you're talking about 17:00:24 really? why? 17:00:42 Mathnerd314: I am eagerly awaiting your proof of the four-colour theorem in a term rewriting language 17:00:47 until then, no. 17:01:51 -!- poiuy_qwert has joined. 17:17:20 elliott: does writing Coq in a term rewriting language count? 17:17:47 Mathnerd314: Anyone can Greenspun. The answer is no. 17:18:10 Good luck: (1) Finding out how on earth you use term rewriting evaluation to "prove" something, especially without a powerful type system; (2) Formulating the proof. 17:18:27 (3) Formulating the proof _without Coq's large array of tactics_, no less. 17:20:15 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 17:21:52 -!- poiuy_qwert has joined. 17:22:19 actually, it's pretty simple. I define equality to be two constructs, "rewrite to" and "rewrite from", and then Coq proofs are term-rewriting proofs, and Coq's tactics are then term rewriting strategies 17:26:06 Mathnerd314: hahahaha 17:26:11 Mathnerd314: i take it you have no idea how coq actually works 17:27:00 maybe; my conception is probably inaccurate in the details 17:27:09 j-invariant: any progress btw? 17:27:16 Mathnerd314: more than the details, I'd say ... 17:27:30 I'm tired :( 17:28:13 j-invariant: category theory solves all problems! including tiredness! 17:31:38 elliott: the big picture is that category theory just organises things and seperates concerns, you still need to construct things by hand (e.g. using inductive definitions, recursive functions, composites) - so I might try and rewrite the equation prover thing without the categorical frame so I can use it to prove the early lemmas 17:32:19 that would be cool 17:32:52 right now it just interprets everything as (typed) lists, with composition as append -- I think I could also add in things like fg = id 17:33:50 on the other hand its a lot of work and I don't know if it will survive being turned upside down like that 17:35:26 -!- Zuu has quit (Ping timeout: 260 seconds). 17:35:54 maybe I should just press on and define limits 17:37:49 that's what i'd do 17:40:15 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 17:41:34 -!- cheater99 has joined. 17:41:53 -!- poiuy_qwert has joined. 17:42:16 elliott: here we are... Coq tactics *are* rewrite rules 17:42:24 Mathnerd314: wrong, they're programs 17:42:35 in fact IIRC they can even not halt (j-invariant?) 17:42:57 rewrite rules are programs, and can be non-terminating 17:43:42 Mathnerd314: Coq tactics *are* brainfuck programs 17:43:49 brainfuck programs are programs, and can be non-terminating 17:44:00 Mathnerd314: Coq tactics *are* rule 110 initial states 17:44:00 etc. 17:44:33 elliott: no, they're rewrite rules. they take propositions and turn them into other propositions. 17:44:43 err. not really. 17:44:47 brainfuck programs aren't that general 17:45:01 um, what? 17:45:10 send proposition on stdin, get new proposition on stdout. 17:45:56 -!- poiuy_qwert has quit (Client Quit). 17:47:40 hmm, we seem to different definitions. I interpret rewrite rules as "most general thing ever invented". you seem to interpret them as "esoteric thing nobody uses" 17:48:56 firstly, those two aren't definitions. 17:48:59 secondly, I like rewrite rules perfectly well. 17:49:06 thirdly, as they aren't definitions, they prove nothing. 17:49:34 s/definitions/assumptions/ then 17:49:58 well, they also aren't interpretations. 17:50:03 so i have no idea whatsoever what you are trying to convey 17:50:54 in Coq you have a situation like x:T, y:B, z:B->T->W |- _ : W 17:51:42 tactics fill in the gap. e.g. you might do apply z. then you get x:T, y:B, z:B->T->W |- z _ _ : W 17:52:12 elliott: we have different assumptions, leading to differing opinions/interpretations. so I am wondering where we start to disagree. 17:52:41 if you take contexts and programming problems you can view tactics as rewrite rules 17:52:45 Mathnerd314: what are our differing assumptions? how are they at all relevant to the situation at hand? what do you think the situation at hand is? 17:53:25 it's useless to do so because we're not interested in the tactic language 17:54:00 it's just some tacky script language that helps you program faster, like typeclasses in haskell or macros in lisp 17:54:01 j-invariant: that makes sense. 17:55:47 -!- elliott_ has joined. 17:55:48 the way you use it is more like (an advanced version of) prolog 17:56:01 because it has pproof search and unification and such 17:56:10 a _very_ advanced version of prolog :P 17:57:39 I guess I was too busy living in meta-meta-land to notice ;-) 17:59:21 -!- elliott has quit (Ping timeout: 260 seconds). 18:02:11 what's the scoop with rewrite systems anyway 18:02:43 aren't they just another universal computer? 18:03:26 yeah, but they're a "nice" universal computer, nicer IMO than lambdas 18:03:56 why? 18:05:06 fizzie: Deewiant: The server is back up, BTW. Don't think ineiros pinged you two yesterday. 18:05:09 (Without hMod though.) 18:05:34 j-invariant: they are pretty nice because you can implement most other things in terms of them ... and also pattern matching on constructors comes "built in", there's no special notion of a constructor 18:05:55 when you write down a rewrite system: You don't know if it's confluent or not do you? 18:06:00 j-invariant: as in, implement other things /nicely/ in terms of them 18:06:17 I think confluence is overrated 18:06:20 is there any use of a non-confluent rewrite system? 18:06:32 yes, for computing 18:06:54 non-deterministic computing? 18:06:57 no? 18:07:02 how is it nondeterministic? 18:07:29 j-invariant: do you mean like, given "foo x = x; foo (bar x y) = quux x y", you don't know which rule to apply for "foo (bar a b)"? 18:07:43 j-invariant: because, generally you have a rule for this -- e.g. "most specific match", so it'd be the second 18:07:50 built into the language 18:09:06 but imposing that restriction makes the system confluent 18:09:56 j-invariant: then yes, you do know whether it's confluent or not: it is! 18:12:11 j-invariant: you may be interested in the Q language http://q-lang.sourceforge.net/ and its successor http://code.google.com/p/pure-lang/ (which, inexplicably, is very fast; faster than Python etc.) 18:14:34 well, fast; i should say efficient 18:15:13 j-invariant: also rewriting languages are pretty "extensible" 18:15:23 i.e., you can easily add new cases to a function from "anywhere", codewis 18:15:24 e 18:15:34 j-invariant: which means you don't need typeclasses 18:15:42 say you have a few constructors for your new numeric type 18:15:44 then all you have to do is 18:15:51 add (C1 ...) (C1 ...) = ... 18:15:52 add (C1 ...) (C2 ...) = ... 18:15:53 etc. 18:16:04 and if infix + is bound to add, then it all magically works 18:17:18 thats useful 18:20:03 j-invariant: but when doing term rewriting stuff i *do* miss lambdas a bit ... I think there could be a term rewriting language that somehow makes rules themselves first class, so you could pass around anonymous rules 18:20:06 but i haven't seen that done yet 18:20:42 j-invariant: I don't think people use non-confluent systems by choice; it's just that they don't bother adding in the rules to make it confluent 18:21:14 there's some new(ish) pattern languages but I haven't been able to find the books on them yet so dunno 18:22:22 Mathnerd314: I just mean, you are able to write down non-confluent systems -- so how do we make use of that? 18:22:25 elliott_: that's the programming language I'm trying to write 18:22:42 Mathnerd314: message passing and multiple dispatch are not pattern matching. sorry. 18:23:14 elliott_: the messages passed are rewrite rules 18:23:21 what's the difference? :D 18:23:40 j-invariant: also term rewriting lets you do fun things like this 18:23:42 > foldl (+) 0 [a,b,c,d,e,f,g]; 18:23:42 0+a+b+c+d+e+f+g 18:23:45 :p 18:24:16 whats new ?? 18:25:43 j-invariant: well, it's just a silly example. 18:25:48 but it's still pretty neat. 18:25:54 (foldl is defined the normal way) 18:26:31 what if I made a rule 18:26:39 random = 1 ; random = 2 ; random = 3 18:26:42 then random + random ? 18:26:51 > random=1;random=2;random=3; 18:26:51 > random; 18:26:51 warning: rule never reduced: random = 2; 18:26:51 warning: rule never reduced: random = 3; 18:26:51 1 18:27:02 j-invariant: basically I'd say "random = 1; random = 2; random = 3" is an invalid program 18:27:08 since you have ambiguous rules 18:27:21 it must be very hard to recognize valid/invalid programs 18:27:35 j-invariant: not really 18:27:37 well may be 18:27:39 *maybe 18:27:44 is there an algorithm? 18:27:49 probably, but i don't know it 18:27:56 i mean it depends on your rule for specificity 18:28:00 j-invariant: it's easy not to write invalid programs though IME 18:28:04 I would never write anything like that random thing 18:28:08 j-invariant: i mean, you know in haskell 18:28:21 how many times do you write a haskell program with two "f (X ...) ... = ..." that are ambiguous? 18:28:24 I never do 18:30:14 -!- impomatic has left (?). 18:38:22 j-invariant: in my language, that would make random a type. (particularly, the type containing only 1, 2, and 3) 18:40:31 err, does that make any sense? types are more like predicates 18:41:33 my type predicates are all "reachable by running rewrite rules" 18:41:45 e.g., 18:41:45 nat 0 = true 18:41:45 nat (S n) = nat n 18:41:45 nat _ = false 18:42:25 so "nat = 0; nat = S n" would specify the type nat 18:42:36 then e.g. 18:42:37 :: if nat n then nat (fact n) else true 18:42:37 fact 0 = S 0 18:42:37 fact (S n) = S n * fact n 18:42:41 Mathnerd314: really? 18:42:47 Mathnerd314: so "S S" is a nat? 18:42:50 surely you mean "nat = S nat" 18:43:04 oh, yeah. good point. 18:43:37 hmm, if we say that "x:f" = "f x" and also have -> for boolean implication (i.e. true->Q = Q, false->Q = true), then 18:43:40 :: n:nat -> (fact n):nat 18:43:40 fact 0 = S 0 18:43:40 fact (S n) = S n * fact n 18:43:42 would be correct 18:45:06 * Mathnerd314 just has fact nat = nat 18:45:43 that doesn't make any sense 18:45:47 fac nat = {1,2,6,24,...} 18:45:49 N! is not N 18:45:58 N being naturals 18:46:03 j-invariant: that i could understand. 18:46:35 !1+i.11 18:46:35 1 2 6 24 120 720 5040 40320 362880 3.6288e6 3.99168e7 18:46:38 j-invariant: J has that :P 18:47:25 elliott_: curses, you're right. fact nat : nat 18:47:37 i see. what does "a : b" mean? 18:47:44 presumably it reduces down to a rewrite rule of some kind. 18:49:48 it's an upper bound; it says "the set of results of rewriting 'fact nat' will produce a subset of the natural numbers" 18:50:15 = is a lower bound 18:52:29 Mathnerd314: i don't suppose you have an algorithm for typechecking this 18:53:09 not a general algorithm; with that I could solve everything. but for specific cases I do 18:54:41 j-invariant: can you explain to Mathnerd314 why a type system without a type checker is useless, I'm too lazy to 18:54:56 now I'm imagining Coq going "You might have proved this! I can't tell!" 18:56:41 elliott_: you can check bounds on types easily 18:57:07 Mathnerd314: if you can't check types in general, it's not a type system 18:57:26 -!- oerjan has joined. 18:57:42 ok, it's not a type system. it's a proof system. 18:57:50 -!- Gracenotes has quit (Quit: ...). 18:58:03 Mathnerd314: a proof system that can't tell you whether your proof is valid or not? 18:58:03 useful! 18:58:36 sorry, it's the thing you prove proofs about. I don't know what you call that. 18:59:08 there are two things to consider 18:59:11 * What can you compute? 18:59:14 * What can you define? 19:00:04 a turing machine computes and defines recursive sets. ZFC computes nothing but defines a huge chunk of mathematics 19:00:13 much more than just recursive sets 19:01:45 sorry, it's the thing you prove proofs about. I don't know what you call that. 19:01:47 what? 19:01:55 j-invariant: zfc scares me 19:02:28 j-invariant: 19:02:31 oops 19:02:32 mistype 19:03:31 hmm 19:03:36 I think I am going to write a parser generator 19:03:46 no! 19:03:53 write a generator parser instead 19:04:21 also, merry christmas 19:04:51 elliott_: it's a system, with semantics. you can "run" the statements with =, producing results, and you can "infer" the statements with :, producing bounds 19:06:40 oerjan: it's the 24th you bum 19:07:24 elliott_: christmas starts officially 17:00 today in norway 19:07:34 oerjan: really? that's just weird. 19:07:37 you guys are stupid and smelly. 19:07:39 -!- elliott_ has changed nick to elliott. 19:07:43 elliott_: and you can prove things about running and inference. 19:07:44 -!- elliott has quit (Changing host). 19:07:44 -!- elliott has joined. 19:07:51 that's when they ring all the church bells 19:07:52 Mathnerd314: you can't prove anything if you don't have a type checker 19:08:28 wtf? 2+2=4; there's no stinking type checker 19:08:56 Mathnerd314: what/ 19:08:58 *what? 19:09:11 it's a proof system, yes? presumably one based on some kind of type theory. 19:09:15 elliott: i have this theory it may be a holdover from when days were considered to start at sunset (as the jews still do for sabbath etc.) 19:09:15 therefore you need a type checker to check your proofs. 19:09:22 by your own admission you don't have a general typechecker 19:09:27 oerjan: yeah yeah, silly nord 19:10:08 * Mathnerd314 reads wikipedia more 19:10:20 elliott: it's an "abstract machine" 19:11:02 are you just reading wikipedia, picking random vaguely-related words from there, and applying them? 19:11:12 so far I have not a single idea how your system works, what it's intended to do, or what components it has at all 19:11:21 I have no idea how you expect to be able to write and verify proofs. 19:11:42 yes, precisely. 19:11:57 ... 19:12:03 do you know yourself? 19:12:06 no. 19:12:12 Mathnerd314: then why are you wasting my time? 19:12:29 elliott: he imght just be too tired at this point 19:12:41 j-invariant: are you sure you're not generalising from a sample of 1? :D 19:12:48 from all the arguing LOL 19:13:01 yeah I might be 19:13:58 elliott: do you want an accurate answer? 19:14:07 Mathnerd314: sure? 19:14:38 * Mathnerd314 starts preparing his 100-page thesis 19:15:23 Mathnerd314: on why you're wasting my time? 19:15:39 yes. probably won't be 100 pages though. 19:17:58 -!- j-invariant has quit (Quit: leaving). 19:27:53 elliott: http://pastebin.com/SvDE6sZr 19:28:37 "10. He has an inflated ego (from being good at math)" <-- I wonder what to call this, it's not a self-fulfilling prophecy ... hmm ... 19:28:47 also i demand 100 pages 19:31:34 * Mathnerd314 writes his college essays 19:41:28 elliott: Vorpal, fizzie, elliott and others who might care: [...] 19:42:00 But right, Deewiant was left out. 19:43:11 Poor Deewiant. 19:47:50 'Tis rather lonely on there right now. 19:49:48 fizzie: Incidentally, I found your secret chest. It's empty. 19:51:07 No, it's not. 19:51:24 Or do you mean the thing under my floorboards in the house? 19:51:39 fizzie: I mean the thing with the secret entrance to the left of your fire. 19:51:47 Oh, right. 19:51:54 That's not very secret. 19:52:01 fizzie: To be fair, I am very dense. 19:52:10 elliott the black hole 19:52:19 I don't think I'll bother taking out all your floorboards, though. :p 19:52:25 There's also another chest under the floor in front of that chest, but that's currently empty also. 19:52:35 I moved stuff elsewhere. 19:52:55 Okay, back to socializing. -¥ 19:53:00 What. 19:53:04 -> 19:59:39 GOD FUCKING DAMMIT 19:59:42 NOTCH YOU BASTARD 19:59:54 HOW COME DESTROYING MY CART WHILE I'M IN IT 19:59:56 SUFFOCATES ME 20:00:01 I WANT MY POSSESSIONS BACK NOTCH 20:13:31 -!- cheater99 has quit (Read error: Connection reset by peer). 20:15:19 -!- SimonRC has quit (Ping timeout: 265 seconds). 20:18:50 elliott go play my game 20:18:53 http://64pixels.org 20:18:53 :FD 20:18:54 :D* 20:19:18 I don't run Java programs that aren't Minecraft. 20:19:33 :[ 20:21:19 Port it to Haskell. :p 20:21:30 you do it 20:22:02 -!- SimonRC has joined. 20:22:09 Gimme the source then. 20:22:31 elliott i have not obfuscated the code 20:22:34 you can easily decompile it 20:22:34 :) 20:22:38 decompiled code != source 20:22:55 it is almost equal nowadays 20:22:59 both of them are ugly in my case 20:23:46 i haven't found a decent open-source java compiler 20:24:38 *decompiler 20:24:39 not compiler 20:25:39 elliott - http://64pixels.org/christmas.png 20:25:42 this is something in my game 20:25:44 reconsider playing it 20:25:45 :D 20:25:54 asiek2erka: i saw in the looks. i also said "what.". 20:26:20 but 20:26:23 there's multiplayer! 20:26:23 *logs 20:26:24 not looks 20:26:25 fff i can't spell 20:26:47 maybe if you explain wtf http://64pixels.org/christmas.png is 20:27:04 A very ASCII Christmas 20:27:13 6 screenshots glued together 20:27:16 of this giant scene 20:28:08 i don't get the relevance of the bible quote ... well, except that christmas used to be vaguely related to christianity after they took it from the pagans, but that seems to be a rather tenuous link 20:28:33 uhhhhhhhhhhh 20:28:36 christmas 20:28:54 Christmas = the joys of rampant consumerism; your point? 20:29:08 that is not what it is supposed to be 20:29:49 asiek2erka: is it "supposed" to be anything? there's no evidence at all that jesus was born on the 25th, and in fact the historical record very clearly shows that it was picked to coincide with a pagan day 20:30:01 i don't remember the last time i saw christmas associated with christianity in... any way at all really 20:30:02 asiek2erka: um, you do realize elliott is this channel's resident semi-militant atheist? 20:30:12 oerjan: i'm not a semi-militant atheist, and it's not about that 20:30:21 I just don't see how modern christmas is related to christianity in any way 20:30:25 -!- cheater99 has joined. 20:31:01 elliott: hey i added the semi- just to avoid your protests :D 20:31:14 I wouldn't have been confused if the bible quote even /mentioned/ jesus at all :p 20:31:46 elliott: it's what the angels said when Christ was born AFAIK 20:31:50 said or sang 20:31:57 asiek2erka: I don't think that actually happened :-P 20:32:03 oerjan: well, /r/atheism irritates me as much as anyone :P ... so at least I'm not a typical reddit atheist! 20:32:06 elliott: well christians believe it did 20:32:18 asiek2erka: I'm nitpicking at this point :P 20:32:28 also you can never be 100% sure 20:32:36 s/at this point/always/ 20:32:57 * oerjan geeses 20:33:00 asiek2erka: Indeed -- that's why I worship the tiny china teapot orbiting around the sun in an elliptical orbit between the Earth and Mars. 20:33:02 -!- cheater99 has quit (Client Quit). 20:33:06 I trust it will bring me salvation. 20:33:17 (side note: that would be a way better fake religion than FSM) 20:33:17 -!- cheater99 has joined. 20:33:33 elliott: it's your belief, go ahead 20:33:37 but i agree with the side note 20:33:37 -!- wareya has quit (Read error: Connection reset by peer). 20:33:38 TOTALLY 20:33:54 Tomorrow I will celebrate The Day of the Revelation of the Teapot. 20:34:09 how much believers does your religion have 20:34:14 we are proud to have over a billion 20:34:21 -!- wareya has joined. 20:34:25 You measure the accuracy of beliefs by how many people believe them? 20:34:29 no 20:34:32 -!- cheater99 has quit (Read error: Connection reset by peer). 20:34:39 just that so many people believe us. why 20:34:42 But, uh, me and Bertrand Russell, which is pretty damn good company if you ask me. 20:34:59 asiek2erka: Um, because Christians went crusading to convert all the evil nonbelievers quite a while back and it worked surprisingly well ...? 20:35:12 elliott: Well, I can't disagree with this argument 20:35:13 As opposed to all the Buddhist missionaries going around. 20:35:30 (Solipsist missionaries are the best though.) 20:35:42 ("I'm just saying ... I don't really exist. Only you do. Think about it.") 20:36:14 well 20:36:22 Christians took Pagan holidays for their own use to stop paganism 20:36:45 Surprisingly effective. 20:36:48 yes! 20:36:55 Do you consider that a good thing? 20:37:01 well 20:37:08 i do not accept the fact we christians used force 20:37:19 (lol spanish inquisition) 20:37:22 but we've changed since then 20:37:31 we don't do spanish inquisitions anymore, do we 20:37:49 asiek2erka: Do you really think all of Christianity is united with a single opinion? 20:38:05 not all 20:38:10 You're saying "we" like you're a group of 10 likeminded people, not a group of N billion people believing the same basic vague thing but with millions of differences beyond that. 20:38:40 but 20:38:41 haven't we 20:38:48 What? 20:38:53 also why are you arguing with a 13-year-old 20:38:58 that's the most nonsensical thing ever 20:39:05 What. 20:39:37 indeed. asiek2erka, go to your room! 20:39:48 Is asiek2erka /asking/ me to discount his opinions based on his age? 20:40:09 wait, isn't asiek2erka polish? 20:40:09 elliott: a sure sign of immaturity if i ever saw one! 20:40:26 i seem to recall christianity having a very strong grip on poland ... going by my source for all information about poland ... that's right ... nooga! 20:40:50 very reliable if you ask me 20:40:59 i recall recently seeing some headline about polish church attendance taking a nosedive 20:41:21 elliott no 20:41:33 i am telling you why the hell are you arguing with someone that should be less intelligent than you 20:41:35 it's like trolls 20:41:40 they take you down to their level 20:41:46 then beat you with their stupid argumentatino 20:42:10 so if you're older than someone you're smarter than them? 20:42:31 asiek2erka: um this is #esoteric. here age is not the strongest indicator of intelligence by far. 20:42:34 usually 20:42:35 oerjan: sure, but it's more the early years that matter I would expect fwiw 20:42:40 to make someone christian 20:42:41 you had more experience in life 20:42:47 if it is anywhere 20:42:48 asiek2erka: lol 20:42:56 elliott look 20:43:00 what about we just go like this 20:43:02 you believe what you want 20:43:04 i believe what i want 20:43:08 and let's live in peaced 20:43:09 peace* 20:43:12 it's been minutes since i questioned anything you said. 20:43:18 well apart from the age-intelligence correlation. which is just stupid. 20:44:16 let's go back to what we started 20:44:17 christmas 20:44:41 "The word Christmas originated as a compound meaning "Christ's Mass"." 20:45:35 http://retire-well-life.com/wp-content/uploads/2009/12/santa-claus.jpg Pictured: Jesus. 20:45:54 However, in Chronographai, a reference work published in 221, Sextus Julius Africanus suggested that Jesus was conceived on the spring equinox, popularizing the idea that Christ was born on December 25. 20:46:01 One of your arguments is right 20:46:07 We do not know when Jesus was really born 20:46:12 it was only a suggestion and everyone said "ok" 20:46:39 there are better estimates 20:46:44 IIRC it's something like July 20:46:58 well, if the historical jesus actually exists, which is arguable, but anyway 20:46:58 he New Testament does not give a date for the birth of Jesus. <- that means any guesses cannot be 100% sure even for christians 20:47:09 right ... because everything not in the new testament is false? 20:47:16 no 20:47:25 for christians the new testament is 100% true 20:47:26 while 20:47:29 the rest may not be 100% true 20:47:33 for christians the new testament is 100% true 20:47:37 yes, er, hate to break it to you, but that's not even remotely so. 20:47:37 and no 20:47:43 do not get on apocryphas 20:47:58 I don't know of a single person who follows even the new testament 100% to the letter. 20:48:09 hello 20:48:14 Vorpal: hello 20:48:19 it is true but nobody reads it because nobody cares! 20:48:23 elliott: Vorpal, fizzie, elliott and others who might care: [...] <-- he is included in others 20:48:32 most Christians, at least in Poland, declare they are christians 20:48:33 Yes, but it didn't ping him, so. :p 20:48:34 but do not do anything 20:48:39 also, happy xmas everyone 20:48:41 they just declare and... maybe pray every evening 20:48:47 and do not give a **** about anything else 20:48:54 I'm a Muslim! I demonstrate my Musliminity by doing nothing. 20:48:59 (In Sweden we celebrate the 24th.) 20:49:12 Vorpal: Yes, yet more evidence that you're uncivilised backwater vikings. 20:49:35 elliott, rather, the reverse 20:49:48 Cool; I'm a viking. 20:50:30 elliott, the other reverse 20:50:34 (everyone else is backwards) 20:50:46 elliott, but yes you probably are a viking as well 20:50:57 a backwards one maybe 20:51:09 Someone get on Minecraft, it is terribly quiet today. 20:51:12 Vorpal: you mean he's a gnikiv!? [/lamejoke] 20:51:18 asiek2erka, XD 20:51:25 -!- cheater99 has joined. 20:51:28 elliott, nah, I'm going to dig into this ioctl 20:51:39 And mine it for ore? 20:51:45 elliott, ... what? 20:51:50 XD 20:52:08 elliott, been porting the pc-speaker tune playing code from freebsd to linux. As an user space app in this case. 20:52:12 almost done 20:52:19 are you going to craft a pc speaker from an ioctl and the user space 20:52:32 elliott, I have a problem however. beep(1) is GPL. Not GPL2. GPL. 20:52:41 Vorpal: So? 20:52:49 elliott, and there are some magic constants I need from there 20:53:00 Vorpal: Those aren't copyrightable. 20:53:02 elliott, because I haven't been able to find docs on the IOCTL 20:53:06 ioctl* 20:53:21 Small magic numbers aren't copyrightable; even if they are, another program's copy of them isn't. 20:53:28 elliott, it is rather large. Over 9000 20:53:34 (over 90000 even!) 20:53:50 Vorpal: Srsly -- not copyrightable. If the author of beep didn't invent those constants, there is no justification for saying its license applies. 20:54:06 elliott, it is something like jiffies per timer interrupt of original IBM XT timer 20:54:15 don't have the computer with the code on turned on atm 20:54:17 (just got home) 20:54:17 -!- cheater99 has quit (Read error: Connection reset by peer). 20:54:46 What Painterly glass texture do you use? :p 20:54:58 elliott, the same as I told you about before 20:55:03 I forget. >_> 20:55:43 (don't you hate it when someone says "same place as usual" when you ask where something is? I certainly do) 20:56:17 TO MOUNT HOOVER! 20:56:24 elliott, it has a thin white border, it has some glints in opposite corners 20:56:31 Ah. The one I currently have then. 20:56:34 I don't like the fact that it has two glints. 20:57:25 Vorpal: I've died twice -- yesterday and today -- because of destroying the cart while I was in it pushing me into the block below and me suffocating. 20:57:50 It didn't happen when health was off; I did sink but I didn't suffocate and I could easily jump back up. I don't know whether to blame health or the beta update. Sigh. 20:57:59 elliott, huh 20:58:18 Just happened again! Disconnected before I died though. Please, god, don't make me waste more of my diamond. Let me be back above. 20:58:27 NOPE I DIED LOL 20:58:34 elliott, stop doing it then 20:58:55 It's a habit; it's more efficient. It's Notch's bug, not mine. Now to run to the minecart station. 20:58:56 elliott, I mean, doing it again and again just to complain isn't likely to be very constructive since notch is not here 20:59:18 I KEEP FORGETTING 20:59:48 elliott, can you forget that you dislike me? 21:00:40 Ha -- my inventory duplicated. 21:00:43 But I can't pick up any of it. 21:00:48 elliott, heh 21:00:55 Also there's a minecart on fire. 21:01:00 -!- Sgeo has joined. 21:01:00 c 21:01:01 ... 21:01:01 Except it's a booster on the *other* track. 21:01:21 elliott, dw mentioned something about something similar up north some days ago 21:01:21 No wait! 21:01:23 before beta 21:01:26 *My* cart overlapped the booster. 21:01:29 As in, exactly on top of each other. 21:01:34 My cart has somehow gone onto the other track, and caught fire. 21:01:53 Also, it is seemingly invincible. I can move though it and it won't move, and I can't destroy it. 21:01:56 NOTCH QUALITY ENGINEERING 21:02:23 elliott, the option in the painterly customiser is: "I want windows with reflections in the corners." 21:02:49 Right. 21:03:30 Things can catch fire in MC? 21:03:43 ...yes. 21:03:44 elliott, I can just dump the cookie it remembers things with I guess 21:03:55 Project: FUCK THE WORLD 21:04:01 -!- poiuy_qwert has joined. 21:04:14 elliott, http://sprunge.us/fYdb 21:04:26 If you do that, I want to see screenshots 21:04:45 Sgeo, they don't burn for long mostly 21:04:52 and a lot of stuff don't burn at all 21:05:11 elliott, I never seen minecarts burning at all. And since they are iron they shouldn't 21:05:28 asiek2erka: http://art.penny-arcade.com/photos/1135238941_tVKGy-L.jpg 21:05:29 * elliott trolling 21:05:42 Vorpal: Well, things could also pass through it. And it was invincible. 21:06:58 elliott, probably a bug then 21:07:03 elliott, does it actually boost? 21:07:08 Vorpal: As I said, it wasn't a booster. 21:07:12 elliott, oh 21:07:14 Vorpal: It was just perfectly overlapped with the booster, which still moves. 21:07:14 elliott, missed that 21:07:21 I have no idea how it teleported to where the booster is. 21:07:22 elliott, I bet it is a client bug then 21:07:29 Vorpal: This was after disconnecting and reconnecting. 21:07:38 elliott, what if you reconnect again? 21:07:42 I think I did... 21:07:46 hm 21:07:47 Anyway, everything caught fire when I fell under the track. 21:07:54 So presumably it teleported from there ... to where the booster was ... on the other track. 21:07:55 SOMEHOW 21:08:02 And became pass-through (like see-through except, you know). 21:08:04 And invincible. 21:08:05 elliott, is there any lava under the track? 21:08:21 Yes. At least I recall burning, and I think there's obsidian there. 21:08:51 elliott, idea: clear out a space tall enough to stand in below, then you won't suffocate I think, instead you /ought/ to fall through, and just get some fall damage 21:09:00 and then be able to walk up given facilities for that 21:09:01 How much can lava spread? Can it be pumped? 21:09:20 Sgeo, which sort of lava? 21:09:22 Vorpal: Or just wait for health to disappear again :P 21:09:27 Vorpal, whichever 21:09:35 Sgeo, well, define spread. 21:09:47 Flow across the world 21:09:53 Consuming everything 21:10:01 Sgeo, 4 tiles on flat ground iirc 21:10:09 "I mean, even a racist clock is right twice a day." 21:10:10 Sgeo, it can flow over an edge and get another 4 21:10:19 elliott, what 21:10:27 elliott, in fact, what is a racist clock 21:10:35 Vorpal: --Gabe, Penny Arcade 21:10:59 -!- cheater99 has joined. 21:11:24 Are porkchops good for two uses, or is that just SMP bugs duplicating it? 21:11:45 elliott, as far as I know they 1) don't stack 2) go away in one use 21:11:45 Bugs, it seems. 21:11:55 Vorpal: It goes away, then it reappears. Picking something up replaces it in its slot. 21:12:03 But I think if you right click while the dupe is there it works. 21:12:03 elliott, so infinite pork? 21:12:07 Vorpal: No. 21:12:09 It disappears the second time. 21:12:13 Because of logic. 21:12:19 elliott, .... does it heal the second time? 21:12:24 I think so. 21:12:30 But I dunno; my health bar is full. 21:12:30 this makes no sense 21:12:35 It wasn't very reliable on the survival server. 21:12:41 So I don't really know. 21:12:48 Feel free to jump off a cliff and test it :P 21:13:03 -!- cheater99 has quit (Read error: Connection reset by peer). 21:13:09 STUCK ON A FENCE 21:13:16 The Hoover farm is terribly positioned. 21:13:21 You have to jump almost over it to get to the mines the way I do. 21:13:22 elliott, ... how? 21:13:29 Vorpal: Jumpin' onto it 21:13:32 elliott, uh. why not walk around it a bit 21:13:37 I was above it. 21:13:40 Then I jumped, and miscalculated. 21:13:44 Slam, fence. Boing boing boing. 21:13:45 elliott, you don't want to jump onto the farmland anyway 21:13:48 *Boingy boingy boingy. 21:14:26 elliott, uh did you take the long stairs. Don't they go just past? 21:14:34 Go past what? 21:15:08 elliott, go past the point of the end of the farm, such that the farm is alongside the straight stairs 21:16:11 Nope. 21:16:14 They emerge a little bit from the farm. 21:16:17 elliott, thing I don't like with painterly: every pack icon has a creeper 21:16:21 But yes, I could go straight but I'd have to turn after that. 21:16:27 Vorpal: Is there something wrong with that? :P 21:16:42 Ahhh, home sweet Hoover Heavy Industries Research Facility. 21:16:49 well, you don't see it often, but mmm... I don't like creepers 21:18:11 elliott, does mcmap work yet? 21:18:17 Vorpal: Yes. More or less. 21:18:21 It crashes "sometimes". 21:18:32 I wonder if phanty would object to me expanding the HHI research facility; it is rather small. 21:19:35 HHI? 21:19:51 Sgeo: Hoover Heavy Industries. 21:19:58 Our services include many services. All our services are secret. 21:20:07 If you wish to make use of our services, contact us with money. 21:22:43 "After experimenting with the device for nearly two days, three Baptist Pastors were hospitalized with broken hips, two 14 year old girls were accidentally impregnated, and one 10-year old boy had his testicles permanently damaged." 21:23:41 Sgeo: BEST DEVICE EVER 21:23:58 elliott is now a Microsoft fan. 21:24:02 wut 21:24:05 Sgeo: wat 21:24:09 http://www.landoverbaptist.org/2010/december/luciferstoychest2010.html 21:24:17 Oh man, I thought it was a real thing :( 21:24:25 oh landoverbaptist 21:25:22 "Discerning Christian parents will immediately recognize the "Mindflex" as a crudely designed masturbation device. Simply put, it is cheap imitation of Scientology's, E-Meter - "E" meaning, "Eeeee!" or "OUCH!" as our team of specialists can attest to after squatting down on both devices for seven days." 21:25:55 elliott: here's for you http://www.reddit.com/r/circlejerk/comments/eqw92/i_wish_atheist_redditors_a_very_merry_xmas/ 21:26:16 oerjan: ah, /r/circlejerk ... the more moderate version of the rest of reddit 21:26:35 * oerjan is browsing r/all 21:27:24 i guess this is a sign of advanced addiction 21:27:31 Vorpal: sec 21:27:35 Vorpal: http://www.minecraftforum.net/viewtopic.php?f=25&t=55700&start=300 21:27:45 -!- SgeoN1 has joined. 21:27:45 Vorpal: leave the map one off but turn on better grass and light is what i'd recommend :P 21:27:47 erm 21:27:50 elliott, hm 21:27:53 http://www.minecraftforum.net/viewtopic.php?f=25&t=55700 21:28:08 Vorpal: bettergrass requires betterlight, so 21:28:11 at least for now 21:28:14 Dear computer: What the fucking fucking fuck? 21:28:21 elliott, EINSUFFICIENTCOMPUTER 21:28:27 Vorpal: um i used it 21:28:30 Vorpal: it's fine 21:28:35 Vorpal: barely slows down at all 21:28:44 Vorpal: the slowdown was from me also using far and fancy which my computer can't even remotely handle /anyway/ 21:28:49 elliott, besides I like the worse light. Useful when building something to match up an overhang 21:28:53 Windows, or something claiming to be such, I guess, told me it was low on memory 21:29:01 elliott, you can see exactly where you need to go based on the shadow :P 21:29:09 Now the screen is blank 21:29:52 SgeoN1, I never had that happen on linux (har har) 21:29:55 -!- cheater99 has joined. 21:30:05 * SgeoN1 wonders if there's any malware that fakes that 21:30:09 (it generally never told me first, and I blame nvidia when things went shit) 21:30:24 Ibwasnt running much 21:31:00 SgeoN1, yeah, and OOM should not cause that 21:31:02 -!- Sgeo has quit (Ping timeout: 240 seconds). 21:31:04 it never has for me 21:31:23 §simoleon! 21:31:51 Encyclopædia 21:32:16 -!- cheater99 has quit (Read error: Connection reset by peer). 21:32:44 elliott, nah, I don't want better light, it seems to make things look dark based on screenshots 21:33:28 elliott, all I want is to make 2/3rd side grass work with painterly and biome grass 21:33:44 Vorpal: it doesn't, i've used it 21:33:52 it's easy to uninstall, just rm -rf bin 21:33:57 just give it a try :p 21:34:35 -!- SimonRC has quit (Ping timeout: 265 seconds). 21:36:17 -!- SimonRC has joined. 21:39:10 Yeah, I think you either have to choose no side-grass, inconsistent side-grass or just single-color all-grass. 21:41:12 fizzie, there isn't no-side grass iirc, Even the default pack has some side grass 21:41:23 fizzie, does it work with the small setting on side grass? 21:41:39 No. 21:41:49 -!- Sgeo has joined. 21:41:49 fizzie, but it does for the default texture pack! 21:42:11 Yeah, but the thing that loads from texture packs can't biomize sidecrass, I think. Or something like that, anyway. 21:42:11 Damn farkers can be idiots. I think about half of them aren't sure if Landover Baptist is parody 21:42:18 fizzie: Or you can have biome-compliant 1/1 grass. 21:42:20 http://www.fark.com/cgi/comments.pl?IDLink=5847704 21:42:22 fizzie, is there any mode for that? 21:42:25 With Better Grass. :p 21:42:37 elliott, I don't want /complete/ side grass 21:42:45 elliott, I want the 2/3rd option in painterly 21:42:45 Vorpal: Um, that's what Better Grass does. 21:42:50 elliott, yes and I don't want that 21:43:00 Well, tough, you can't have it. 21:43:33 elliott, quite, but probably there is some other mod 21:44:10 It'll probably get officially fixed too at some point. Ot 21:44:10 Vorpal: There isn't. 21:44:19 It's there in the top-ten of getsatisfaction common-problems. 21:44:32 fizzie, true 21:45:03 asiek2erka: Your game won't even start. 21:46:05 So how goes SMP. 21:46:13 elliott yes it will 21:46:18 asiek2erka: No it won't, I just tried. 21:46:22 what are you using 21:46:23 Unless there's a special key to start. 21:46:29 Sun's JVM? OpenJDK? 21:46:33 JamVM? HotSpot? 21:46:37 IcedTea? 21:46:56 OpenJDK, and no, I'm not changing; if it doesn't work, it's a problem in your code. And Sun's JVM *is* HotSpot, and IcedTea *is* OpenJDK (well, almost; slightly different VM is the only difference.) 21:46:57 also browser or download 21:47:00 Browser. 21:47:05 elliott try download 21:47:09 No. 21:47:14 i haven't tested it in openjdk yet 21:47:21 i dont even know where the **** you can get openjdk for windows 21:47:44 "Download and install the open-source JDK 6 for Ubuntu 8.04 (or later), Fedora 9 (or later), Red Hat Enterprise Linux 5, openSUSE 11.1, Debian GNU/Linux 5.0, or OpenSolaris. If you came here looking for JDK 6 product binaries for Solaris, Linux, or Windows, which are based largely on the same code, you can download them from java.sun.com." 21:47:56 The code is basically identical. 21:48:00 So it's your code's fault; fix it. 21:48:12 i can't if i can't see what's wrong 21:48:13 >:( 21:48:19 does OpenJDK implement javax.imageio 21:48:28 and javax.swing 21:48:28 OpenJDK implements everything. 21:48:33 I see the menu, I just can't select any of the options. 21:48:37 click on the window 21:48:38 Using arrow keys, WASD, space, enter. 21:48:38 duhh 21:48:41 I did. Duhh. 21:48:43 what 21:48:48 arrows should work perfectly 21:48:54 click on the select menu a few times 21:48:55 -!- cheater99 has joined. 21:49:02 It does implement the ImageIO stuff, though there were some OpenJDK imageio bugs I had to work-around in one project. 21:49:13 Something related to filters, I forget what exactly. 21:49:28 asiek2erka, what is this game (note I only have openjdk and/or icedtea as well) 21:49:34 Vorpal it should work 21:49:36 http://64pixels.org 21:49:42 it's an ASCII infinite open world game 21:49:48 with logic circuits 21:49:51 and multiplayer 21:49:59 asiek2erka, wait, why do I get dejavu 21:50:08 asiek2erka: Add WASD keys. 21:50:19 Vorpal: BUT ZOMG, JEB VISITED!1129012012 21:50:22 MOJANG FAMOUS 21:50:25 heh 21:50:30 elliott i did 21:50:36 Well, they don't do anything. 21:50:40 C:\Documents and Settings\[username]\.64pixels\config.txt 21:50:41 asiek2erka, also ascii? 21:50:44 add a line "wsad-mode=1" 21:50:49 asiek2erka, I see graphics 21:50:50 asiek2erka: No. Make them work by default. 21:50:53 elliott no 21:50:55 Vorpal: It's DOS codepage. 21:50:59 Vorpal: So what idiots think "ASCII" is. 21:51:01 i do not like WSAD 21:51:10 asiek2erka: They do nothing by default, so there is no reason not to have them work. 21:51:10 -!- cheater99 has quit (Read error: Connection reset by peer). 21:51:16 asiek2erka, do arrow keys work then 21:51:24 Vorpal yes 21:52:03 elliott, if it is a dos code page, it seems unlikely to work under linux? 21:52:10 elliott 21:52:14 the charset is a raw dump of the CGA ROM 21:52:17 and it's stored that way 21:52:24 therefore IBM should hate me by now 21:52:28 as the CGA ROM is most likely copyrighted 21:52:30 http://64pixels.org/scr5.png "64pixels 0.0.3.1, a random creation" <-- the hell 21:52:38 elliott, doesn't that look familiar to you 21:52:41 * Sgeo falls in love with the Landover Baptist Bible Quizes 21:52:49 Vorpal: One might consider it is intentional. 21:52:57 elliott, sure, but the title! 21:52:57 That's not the player thing, anyway. 21:53:03 elliott, true. 21:53:12 Does this thing have any monsters? 21:53:17 no 21:53:21 It is intensely boring. 21:53:27 make a logic circuit 21:53:33 I can do that without being a smiley face. 21:53:39 http://www.youtube.com/watch?v=0M90Hq4u3nQ 21:53:42 Font.getStringBounds was bugged in OpenJDK, and TextLayout.getBounds() returned Y=x in Sun's runtime, Y=-x in OpenJDK. And there was some unidentifiable problem in that doing AffineTransformOp.filter() didn't work, while drawImage() with the op did. I think all these have long since been fixed, though, this was two years ago. 21:53:44 asiek2erka, are you a developer on this? (are there any other ones?) 21:53:50 asiek2erka, and, how many people play it? 21:53:53 You know, having right-clicking instantly erase anything is perhaps not such a good idea for vandalism prevention. 21:53:57 Vorpal: JEB PLAYED IT ONCE BEST GAME EVER 21:54:04 Vorpal: yes, GreaseMonkey helps me a bit 21:54:07 also it's been on indiegames.com 21:54:10 heh 21:54:11 about 15-20 people played it so far 21:54:14 right 21:54:18 or maybe more 21:54:19 "The idiot of the channel helps me occasionally!" 21:54:41 i'm putting that into the game's protocol 21:54:42 forever 21:54:45 Wait, is the space just randomly filled? 21:54:51 elliott yes 21:54:53 naturally 21:54:57 ...so you've built like two things. 21:55:20 there are more 21:55:26 but our server admin destroyed the forum database 21:55:33 ...and that destroyed the world 21:55:36 http://64pixels.org/mods.html In what universe does this count as modding? 21:55:42 elliott, if you call GM the "idiot of the channel"... what do you call asiek2erka? 21:55:44 OMG I CONFIGURED FIREFOX TODAY -- TOTALLY MODDED 21:55:48 asiek2erka, and why the nick change 21:55:49 Vorpal: 13. 21:55:54 also stop demotivating me 21:55:56 elliott, ah 21:55:59 (it's ok, he said I could discriminate based on age!) 21:56:23 elliott, are you 14 or 15 now? I forgot 21:56:31 well i'm 14 in 2 weeks 21:56:32 Vorpal: 15. :p 21:56:36 elliott, ah. 21:56:48 elliott, still 13 emotionally sometimes. 21:56:57 Yeah, and you're so mature. 21:57:06 elliott, did I claim that? I don't think I did. 21:57:10 i think Vorpal is much nicer than you 21:57:18 I guess I'm flattered 21:57:22 I'm an asshole? Wow, I never realised. 21:57:26 yes, yes you are 21:57:31 no comments on that 21:57:33 but you were the one who said it 21:57:35 :P 21:58:12 * elliott wonders if asiek2erka actually knows what Inland Revenue is at all. 21:59:00 * asiek2erka wonders if elliott has to be so !@#$ing picky 21:59:08 Yep. 21:59:22 I took the topmost flowers and nothing happened. 21:59:29 elliott oh no 21:59:31 rebuild the heap now 21:59:36 also wait, you got the game to work? :P 21:59:43 -!- asiek2erka has changed nick to asie[afk]. 21:59:45 Umm. No, I don't think I'm going to bother to figure out how to switch blocks./ 21:59:56 "DON'T LEAVE CLOCKS RUNNING THEY WASTE BANDWIDTH" -- how on earth. 22:00:03 Does it make a network connection for every tick or something? 22:00:19 elliott, local game or multiplayer? 22:00:23 Multiplayer. 22:00:29 ah 22:00:37 elliott, now to work on the pc speaker player coder 22:00:38 code* 22:00:48 One wonders if it is not asie[afk] and GreaseMonkey merely not knowing what "bandwidth" means. 22:01:39 elliott, perhaps. 22:07:53 -!- cheater99 has joined. 22:09:02 /* 22:09:02 * Emit tone of frequency thz for given number of centisecs 22:09:02 */ 22:09:02 static void tone(unsigned int thz, unsigned int centisecs) 22:09:09 elliott, thz sounds so strange 22:09:19 make me think of THz 22:10:01 -!- cheater99 has quit (Read error: Connection reset by peer). 22:14:20 -!- elliott has quit (Ping timeout: 272 seconds). 22:21:05 -!- elliott has joined. 22:23:02 -!- zzo38 has joined. 22:26:35 what, the program runs okay under gdb but malfunctions when ran alone 22:26:55 -!- cheater99 has joined. 22:27:18 gdb quality. 22:27:47 elliott, XD 22:27:53 elliott, valgrind reports nothing 22:27:57 Vorpal: That has happened to me before, but I figured out the problem and corrected it. 22:27:59 That's not really very "what". 22:28:03 and it still malfunctions under valgrind 22:28:15 gdb does affect uninitialized memory contents and such. 22:28:29 fizzie, but 1) valgrind reports nothing 2) it still malfunctions there 22:28:32 Though valgrind often catches that sort of stuff, admittedly. 22:28:33 i probably shouldn't wander around minecraft with nothing to do. 22:28:45 fizzie, my guess atm is that ptrace changes something about how the system call works 22:28:48 fizzie, maybe EINTR 22:28:49 or such 22:28:57 why are there little blue pixels in my painterly trees 22:29:02 which I /should/ handle, but who knows if that is buggy 22:29:35 -!- cheater99 has quit (Read error: Connection reset by peer). 22:36:24 Did you know I have played D&D game today? 22:40:14 oh I found it 22:40:27 Mrf, what's the keys to rearrange tabs in xchat again? 22:40:30 fizzie, the bug was actually that I typoed argv[1] as argv[0] 22:40:33 I accidentally moved #esoteric to the left of freenode. 22:40:33 -!- hagb4rd has joined. 22:40:39 Vorpal: Just mv the program before executing it. 22:40:44 fizzie, that plus a number of coincidences 22:40:50 elliott, quite esoteric yeah 22:41:05 yay it seems to work 22:41:39 the strings from http://svn.freebsd.org/viewvc/base/release/8.1.0/usr.sbin/spkrtest/spkrtest.sh?revision=210188&view=markup is now playable on a linux pc speaker! 22:42:21 elliott, sounds better on my thinkpad, where it is just a pure tone through the usual speakers 22:42:36 Vorpal: Let's build a hi-fi USB PC speaker. 22:42:41 elliott, XD 22:42:45 So you can listen to it in all its glory on a laptop. 22:42:49 A *real* one too -- as in the actual same mechanics. 22:42:56 elliott, well my desktop has that 22:43:05 Vorpal: But is it hi-fi? 22:43:10 Vorpal: Are all the components isolated? 22:43:11 elliott, I doubt it 22:43:15 elliott, however this needs root to run. 22:43:23 which makes me nervous while debugging 22:43:23 LAME 22:43:28 elliott, blame linux 22:43:32 elliott, I need to open /dev/console 22:43:37 elliott, and do some ioctls on it 22:43:47 elliott, this needs either running from a vt 22:43:50 or as root under X 22:44:02 elliott, so it won't need root if you run it from a vt 22:44:19 Heh; how weird. 22:44:45 elliott, well, I guess it is because /dev/console depends on the owner of the current console. And when you are in X then X owns that vt 22:44:52 Vorpal: Why on earth does that thing write to a choices file? 22:44:54 elliott, and X runs as root 22:44:59 Couldn't it just assign to a variable? 22:45:04 elliott, I have no idea 22:45:30 elliott, on freebsd it needs root too iirc, but only because the default permissions of /dev/speaker 22:46:25 -!- cheater99 has joined. 22:46:26 -!- Wamanuz3 has quit (Read error: Connection reset by peer). 22:46:33 elliott, hm... also I'm not sure if I can get the exact timing of freebsd. After all, on freebsd this happens in kernel 22:46:39 and well, there is no buffer 22:46:52 -!- Wamanuz3 has joined. 22:46:54 I wonder if I could transfer the IΞ type system to a term rewriting system. 22:47:45 elliott, btw I made the backend code very easy to replace for different systems. Should be just two functions to rewrite (plus maybe some POSIX-isms) to port it to windows. If anyone wants to 22:48:08 (those functions: beep(freq, duration_in_ms), sleep(duration_in_ms) 22:48:11 ) 22:48:26 -!- cheater99 has quit (Read error: Connection reset by peer). 22:49:07 Vorpal: Um, did you really call it sleep()? 22:49:09 In a C program? 22:49:16 POSIX hates you. 22:49:19 elliott, no 22:49:25 elliott, I call it hw_beep and hw_sleep 22:49:31 Ah. 22:49:32 elliott, and I don't call it "duration_in_ms" either 22:49:43 Vorpal: Couldn't you just usleep(x*whatever_factor_i_forget) 22:49:59 elliott, usleep: no such thing in POSIX-2008. Besides it isn't portable C. 22:50:04 unbelievable.. just made a bet with a friend that the incredible machine of elliott is online, keepin the synapses of the rest well heated 22:50:05 elliott, I use nanosleep 22:50:14 elliott, since that is what replaced usleep 22:50:16 merry xmas folks ;) 22:50:20 hagb4rd: wat./ 22:50:29 i'm always online 22:50:30 elliott, usleep was made obsolete in POSIX 2001 and removed in 2008 22:50:32 hagb4rd, same! 22:50:35 i live on the internet 22:50:42 Vorpal: no you're destroying all the synapses 22:50:48 FUN FACT i have no physical form 22:50:52 np.. it's good to have you here 22:50:53 Vorpal: no you're destroying all the synapses 22:50:53 what 22:51:06 elliott, maybe you misread: merry xmas folks ;) hagb4rd, same! 22:51:12 I actually can't leave, watch: 22:51:12 -!- elliott has left (?). 22:51:12 -!- elliott has joined. 22:51:14 DAMN 22:51:20 you cycled 22:51:35 elliott, I can't leave however (channel is sticky in bouncer, it will filter /part) 22:51:35 It is my punishment, to stay in here for eternity. Well, specifically, to stay in here for eternity with Vorpal. 22:52:18 So is anybody going to MC today? :p 22:52:22 * hagb4rd giggles 22:52:27 elliott, I was on for a bit, but pc speaker is funnier! 22:52:55 I played D&D game today. Do you think I won? 22:53:10 elliott, I should upload this code, but I don't know the license. Seeing as I pretty much had to reverse engineer beep(1) to figure out how to do it on linux (really, the docs for how you interface with kernel drivers on linux *sucks*) 22:53:44 elliott, and beep(1) is, as far as I can tell, GPL. The date is 1994 and the GPL is /not/ versioned. Nor is there "any future version" clause. This means in fact GPL1 22:53:47 Vorpal: just GPL v1 it? 22:54:00 after all, GPL v1 is BSD-compatible 22:54:03 elliott, yeah but I have no clue what GPL v1 actually is. 22:54:05 so if you stole BSD cdoe that's ok 22:54:11 Vorpal: http://www.gnu.org/licenses/gpl-1.0.html 22:54:13 GNU GENERAL PUBLIC LICENSE 22:54:14 Version 1, February 1989 22:54:18 Vorpal: Win32 api has a Beep(DWORD dwFreq, DWORD dwDuration) in kernel32.dll that spoke directly to PC speaker; it was dropped in Vista/WinXP 64-bit (because MessageBeep did the whole beep-via-sound-card thing, unlike kernel32 Beep); and in Windows 7 they brought Beep() back but made it pass through to a sound card. 22:54:21 elliott, I clearly stated that this file was same as freebsd one with minimal changes 22:54:23 Vorpal: erm gpl v2 is from june 1991 22:54:28 hm 22:54:31 so it probably means gpl 2. 22:54:39 Vorpal: I think it says if it says "GPL" with no version number, you can use any version you want to unless the copyright holder tells you otherwise. 22:54:54 zzo38: for a program predating GPL v2, even? 22:54:58 Or if the license is included with the program, you would use that one. 22:54:58 elliott, basically, why should I write the parser code for that convoluted string when I just need to replace some types and calls and rewrite two functions 22:55:01 Vorpal: Just say "This program is licensed under the same license as the beep tool from [wherever]." 22:55:09 (I do not believe in NIH) 22:55:18 I believe in NIH! 22:55:41 elliott: I think if it says "GPL" with no version specified, and the license text is not included anywhere with the program, you are permitted to use any version of the GPL. (I think I read somewhere that it works that way?) 22:55:43 elliott, oh. Noodly Interspace Horror? 22:55:51 yes. 22:55:58 elliott, isn't that a codename for flying spaghetti monster? 22:56:08 zzo38: That's not true ... imagine before GPL version 2 came out. It wasn't called v1, it was just called the GPL. 22:56:16 zzo38: So code licensed under "GPL" then is definitely version 1. 22:56:28 ah wait 22:56:32 elliott: Then, OK. 22:56:32 it has a COPYING 22:56:35 which is GPL2 22:56:43 Vorpal: OK then it is whatever version the COPYING file says. 22:56:44 right 22:56:50 Vorpal: I don't consider reverse engineering to be virally, though. 22:57:02 Vorpal: Copying non-trivial code, yes. 22:57:09 Figuring out how it works and reimplementing it... naw. 22:57:19 elliott, 1193180 btw 22:57:25 Vorpal: 349783498 22:57:31 elliott, won't work. 22:57:38 elliott, it is not the right magic constant 22:57:43 3459358 22:57:48 again won't work 22:58:05 elliott, anything but the one I gave and frequency will be off 22:58:07 Vorpal: Plz make shipping go faster. 22:58:13 elliott, of the tool? 22:58:16 -!- zzo38 has quit (Remote host closed the connection). 22:58:17 No. 22:58:24 -!- Wamanuz4 has joined. 22:58:25 -!- Wamanuz3 has quit (Ping timeout: 255 seconds). 22:58:26 elliott, what do you mean then 22:58:32 OF MAH LAPTOP 22:58:48 elliott, ah, I don't have any inside connections at apple 22:58:49 can't help 22:59:09 I know Steve Jobs' zombie brother. 22:59:16 But he disowned him, so GUESS THAT WON'T HELP. 22:59:18 hm 22:59:28 if system is loaded it won't play correctly 22:59:32 Also, it's been dispatched, so it's probably not Apple's problem any more :P 22:59:34 Vorpal: What? 22:59:35 Oh. 22:59:38 Loaded in that sense. 22:59:40 elliott, no buffer 22:59:43 so... 22:59:47 elliott, maybe I should try to give it real time priority? 22:59:56 I wonder what function is used for that 23:00:09 Vorpal: Just renice yourself. 23:00:09 I think. 23:00:33 elliott, right, I was thinking real time IO priority as well 23:00:37 Vorpal: If you try and get realtime priority when using the Brain Fuck Scheduler and you're not root, you get isochronous priority (which X runs at); it's sort of like just-below-realtime. 23:00:50 If only it worked with non-root :P 23:01:01 elliott, right, but since almost everyone use X you will end up needing root /anyway/ 23:01:12 besides it won't /fail/ without real time priority. 23:01:53 * elliott decides wood-bricks aren't nice, recustomises painterly 23:02:11 Vorpal: Have you seen that insane Painterly Christmas thing? 23:02:15 Stone becomes ice. :p 23:02:20 Sound effect dissonance! 23:02:28 elliott, yes.... 23:02:35 elliott, remember that fizzie took screenshots? 23:02:37 you were on iirc 23:02:38 I might try it. You know, just for Christmas. 23:02:41 Vorpal: Yes, I believe I didn't look. 23:02:44 ah 23:04:04 I wish the Painterly chests/benches/furnaces/doors were less ornate. 23:04:06 It's weird. 23:04:48 They're a bit overdone. 23:04:55 -!- cheater99 has joined. 23:05:21 Also the ice doesn't tile very well at all. 23:05:49 -!- Wamanuz4 has quit (Read error: Connection reset by peer). 23:06:10 -!- Wamanuz4 has joined. 23:06:44 -!- cheater99 has quit (Read error: Connection reset by peer). 23:08:47 -!- oerjan has quit (Quit: Good night). 23:11:26 elliott, hm now how to change IO priority 23:12:18 Dunno. 23:12:59 ah found it 23:13:01 love google 23:13:22 great, my man ioprio_set doesn't mention what headers 23:13:43 should report that as a bug 23:13:48 to where 23:14:50 Vorpal: Incidentally, since you're already running as root and worried about exact scheduling, why not sched_setscheduler a SCHED_FIFO >0 priority for your process? That way you'd get it to hang the whole machine when it goes wrong. 23:15:05 fizzie, ... huh 23:15:25 fizzie, are you /sure/? 23:15:41 Sure about hanging or sure about that being a good idea? 23:15:57 Heh, brilliant. 23:16:02 Glibc does not provide wrapper for these system calls; call them using syscall(2). 23:16:07 that is why there is no header... 23:16:09 :D 23:16:33 elliott, on the other hand, there is another issue: where the heck do I get the macros mentioned in the man page 23:16:59 also I doubt it will help anyway 23:17:09 Vorpal: why do you need any macros? 23:17:10 it seems block device IO specific 23:17:11 just use syscall() 23:17:17 Vorpal: Incidentally, since you're already running as root and worried about exact scheduling, why not sched_setscheduler a SCHED_FIFO >0 priority for your process? That way you'd get it to hang the whole machine when it goes wrong. 23:17:17 I doubt it 23:17:20 since fizzie is infallible 23:17:31 elliott, because int ioprio_set(int which, int who, int ioprio); and for the last argument you use macros to construct it 23:17:33 says the man pae 23:17:35 page* 23:17:52 elliott, it doesn't document the raw values for it 23:17:57 Vorpal: cpp(1) 23:18:00 just that it is a bitmask and you use these macros... 23:18:03 elliott, ... 23:18:08 elliott, anyway it won't help me 23:18:26 ./include/linux/ioprio.h: IOPRIO_WHO_PROCESS = 1, 23:18:26 ./include/linux/ioprio.h: IOPRIO_WHO_PGRP, 23:18:26 ./include/linux/ioprio.h: IOPRIO_WHO_USER, 23:18:38 (Grepping *.[ch] inside the kernel.) 23:18:47 elliott 23:18:55 a clock emits 120 bytes a second per player 23:18:59 that's what we mean by bandwidth 23:19:19 120p B/s, oh noes!! 23:19:20 fizzie, yes those I have no problem with 23:19:25 -!- asie[afk] has quit. 23:19:26 Max 255 players, no? 23:19:28 fizzie, I meant IOPRIO_PRIO_VALUE 23:19:37 fizzie, IOPRIO_PRIO_CLASS and IOPRIO_PRIO_DATA too 23:19:37 So maximum 32 KiB/s. 23:19:39 HOW HORRIBLE 23:19:53 Vorpal: ./include/linux/ioprio.h:#define IOPRIO_PRIO_VALUE(class, data) (((class) << IOPRIO_CLASS_SHIFT) | data) 23:19:55 The same place? 23:20:17 fizzie, right 23:20:30 fizzie, anyway it won't really help me, since it seems to be block device specific 23:20:33 Notably they're not in my /usr/include/linux, just in the kernel source tree's include/linux subdir. 23:20:38 and all I do is ioctls on a char device 23:20:53 fizzie, great... 23:21:10 Setting the scheduler would help you in the "won't let other processes get in the way" sense, but I'm not really recommending that. 23:21:32 Just hang the system for the duration of the song. :p 23:21:51 fizzie, actually I don't dare use SCHED_FIFO, SCHED_RR looks more interesting 23:22:21 I don't think it's any easier on the system. 23:22:27 elliott, well actually I won't, since I sleep, not busy wait 23:22:32 It still will pre-empt everything with a lower static priority. 23:22:35 "Since a nonblocking infinite loop in a process scheduled under SCHED_FIFO or SCHED_RR will block all processes with lower priority forever, a software developer should always keep available on the console a shell scheduled under a higher static priority than the tested application. This will allow an emergency kill of tested real-time applications that do not block or terminate as expected." 23:22:40 fizzie, hrrm 23:22:49 Vorpal: I lie my head on my pillow and busy-wait for eight hours. 23:23:11 elliott, good night then (assuming that is how it should be read) 23:23:21 elliott, also, you are going to bed early? 23:23:25 -!- cheater99 has joined. 23:24:13 Vorpal: elliott, well actually I won't, since I sleep, not busy wait 23:24:26 "I lie" as in every night. 23:24:28 Who needs sleep. 23:24:58 -!- cheater99 has quit (Read error: Connection reset by peer). 23:25:03 Vorpal: I'm probably going to bed semi-early in the interest of seeing /some/ sort of light on Christmas, though. :p 23:26:27 fizzie, Finland uses the proper 24th too right? 23:27:42 Yes. Well, for the gift-giving part and so on; the 25th is still Christmas too. 23:27:49 elliott, to guarantee proper execution in the face of swap trashing I should probably memlock myself too ;P 23:28:24 Instead of sleep-based wait-times (which of course ignore the time you spend thinking before you invoke sleep), you might run a fixed-interval timer with a resolution small enough that you can perform all your song-related actions at the times when that fires. (Disclaimer: I don't really know how the pc-speaker IO works, and whether that's a blocking sort of thing or not.) 23:29:41 fizzie, it is just ioctls 23:30:04 fizzie, anyway, it seems to work well with just a -20 nice and normal scheduler 23:30:39 fizzie, and your suggestion would involve rather heavy rewriting, which I don't want 23:30:55 "The ucs2 and utf8 character sets do not support supplementary characters that lie outside the BMP." ~~MySQL 23:31:07 Right. Well, you could pre-build a list of actions that you do on each timer-tick, it should (theoretically speaking, anyway) be a bit more accurate than "do a thing, then sleep", which will add the "do a thing" time to all sleep values. 23:31:13 fizzie, including making the playstring thingy reentrant 23:31:54 fizzie, actually it will be less like the original (freebsd speaker kernel driver) 23:31:58 which also sleeps 23:32:05 and works the same way 23:32:26 elliott, uh... what? ucs2: yeah okay, that makes sense. 23:32:27 I guess it depends on whether you want to match that or to conform to some sort of an ideal. 23:32:29 but utf8? 23:32:42 fizzie, well I want to match 23:32:42 Vorpal: MYSQL QUALITY 23:33:37 also TOS theme on pc speaker is awesome "l2b.f+.p16a.c+.p l4mne8a2mspg+e8c+f+8b2" 23:34:22 The mlock/mlockall thing could be a thing to do, of course. 23:34:58 Anyone know how to insert UTF-8 chars with a mysql query? 23:35:06 i.e. what escape sequences or functions or whatever 23:35:34 ah, seems like it's CHAR() 23:36:07 I don't think I've got my PC speaker connected. I wonder how accurate the emulations are. 23:36:46 Dosbox has a 360-line PC speaker emulation code; it looks a bit simplistic compared to something like resid-fp. (Admittedly the PC speaker itself is rather simplistic compared to SID, too.) 23:39:36 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep). 23:41:25 -!- cheater99 has joined. 23:41:38 ah found docs 23:41:48 elliott, no need for GPLv2 any more 23:41:56 will probably do *BSD then 23:42:03 Vorpal: WTFPL 23:42:14 elliott, not BSD compatible iirc 23:42:29 Vorpal: Yes it is? 23:43:02 Vorpal: If you mean "but I based it on BSD code", you can still license your parts as WTFPL. Admittedly that's silly. But no, WTFPL is 100% BSD-compatible. 23:43:03 -!- cheater99 has quit (Read error: Connection reset by peer). 23:43:21 DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE 23:43:22 TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 23:43:22 0. You just DO WHAT THE FUCK YOU WANT TO. 23:43:25 It's hard to not be compatible with that. 23:43:27 elliott, it is based on BSD yeah 23:43:29 (Also FSF-certified Free!) 23:43:44 elliott, and the mix is absurd 23:43:47 Vorpal: Right, then you can't remove the draconian BSD restrictions (such as requiring attribution). 23:43:54 elliott, since the bulk of the code is the BSD code 23:43:56 Vorpal: Hey, plenty of projects include BSD-licensed code but aren't BSD themselves, and the like. :p 23:44:02 Admittedly generally not in the same file. 23:44:12 elliott, the code that is not is basically main() + some linux specific functions 23:44:27 I still feel kinda dirty planning to copyleft things. 23:44:38 elliott, actually I split it in multiple files because I thought it would be larger than it turned out to be 23:46:52 Do a pulseaudio output option if you've run out of code to write. :p 23:47:16 fizzie, ... what? Can it drive the pc speaker? 23:47:22 fizzie: --lag-more 23:47:25 fizzie: or --high-latency 23:47:41 also, pc speaker or nothing 23:47:49 No, I just mean an emulation. 23:48:14 fizzie, for non-x86? 23:48:27 Right, and for us "no speaker connected" folks. :p 23:48:28 fizzie, also, shouldn't I use jackd then instead 23:48:36 fizzie, well sucks to be you :P 23:48:47 fizzie, /If/ I write anything it will be jackd 23:49:14 I don't think it really matters, since you would just be producing a PCM audio signal; anything that can play that back would be just fine, timing-wise. 23:49:23 It's not like the audio needs to be synchronized with anything. 23:49:47 libao obviously 23:49:55 If you want to be a PC speaker purist, conduct a case study of a hundred PC speakers, then try to get as close to the same sound as possible. 23:49:57 fizzie, actually I should procedurally generate a soundfont, load it into the sound card, and then play midi 23:50:03 fizzie, actually I should procedurally generate a soundfont, load it into the sound card, and then play midi 23:50:04 MT-32. 23:50:10 Make a PC speaker soundfont for an MT-32. 23:50:14 It would be GLORIOUS. 23:50:18 elliott, I would, except I don't have one to test with 23:50:23 elliott, I only have a sb live 23:50:47 Doesn't ALSA have some sort of a PC speaker generic-PCM output driver? You could then run your emulated audio out via that. (It would probably sound quite horrible.) 23:51:02 Vorpal: You can have mine (note: no, it cost me £200). 23:51:07 Or was it £60. 23:51:08 One of the wto. 23:51:13 *two. 23:51:23 fizzie: Awesome. 23:51:27 Not the least bit creepy how easy it is to find my dad and step-mom's names 23:51:29 fizzie: How far could you recurse it, I wonder. 23:51:29 Not at all 23:51:35 Sgeo: Indeed, Seth Gold. 23:51:39 Easy-to-find names are a sign of creepiness. 23:51:43 elliott, you have one!? 23:51:45 elliott, awesome 23:51:59 Vorpal: Yes. Also a theremin.; 23:52:01 s/;$// 23:52:11 elliott, is it a professional one 23:52:14 Vorpal: Hooking up the MT-32 to an iMac didn't really work so well, though; I got it working, sort of. 23:52:21 The theremin? Yes, it's a Moog. 23:52:23 elliott, or one of those with a knob for one of the things 23:52:25 elliott, wow 23:52:30 Not their high-end model (that's *lots of money*), but yes. 23:52:34 Got it off eBay. 23:52:43 It's BLACK WOOD... which isn't really stylish, but there you go. 23:52:43 elliott, practising much? 23:52:51 Vorpal: No, the theremin is nearly impossible to play. 23:53:03 elliott, I seen people play it well 23:53:03 I'm willing to sell it :P 23:53:08 elliott, it just require practise 23:53:12 elliott: You could pull out that ALSA's bit that converts the PCM signal into PC speaker programming, then use the emulation to turn that into a PCM signal, and then just iterate until it converges. (Well, except that it might well not converge or converge to something really boring; but at least a large number of time.) 23:53:15 Vorpal: It needs a surgeon's hands. 23:53:24 And that's not really something you can practice at. 23:53:49 elliott, well I have a Roland FP-4 piano. Decent (but not state of the art) 23:54:03 and I prefer to play that 23:54:08 Where'd you get the MT-32? 23:54:25 Deewiant: eBay too. 23:54:34 elliott, what sort of connector do you use for it? 23:54:35 Deewiant: You can't buy them new, and they don't really degrade, so. :p 23:54:40 Vorpal: Audio. Analogue audio. 23:54:45 Vorpal: Oh, theremin? 23:54:48 Audio. Analogue audio. 23:54:49 But MT-32 too. 23:54:52 elliott, no the MT-32 23:54:55 Right. 23:54:57 It has a MIDI input and an audio out. 23:55:03 elliott, ah 23:55:03 The fat jack-style things. 23:55:15 Deewiant: Some things in life money can't buy -- for everything else there is eBay. (Paraphrased from that MasterCard ad.) 23:55:21 elliott, is that the same as the normal circular one? 23:55:29 elliott, or is it some other one 23:55:37 elliott, for midi I mean 23:55:41 Vorpal: http://en.wikipedia.org/wiki/TRS_connector 23:55:43 Oh, the MIDI one. 23:55:46 Dunno, I'll check in a minute. 23:55:48 elliott, yes 23:55:49 I have cables for it, FWIW. 23:55:51 brb 23:55:54 elliott, and how did you get that to work with a mac 23:56:05 Vorpal: Via adapter, I think. 23:56:10 elliott, ah 23:56:11 brb 23:56:23 I have a gameport<->midi cable 23:56:28 that I can use with this sound card 23:56:33 I would certainly guess the usual DIN-5 if it's "jack-style". 23:56:53 fizzie, I think he thought I asked about the audio 23:57:02 anyway, midi over usb sucks 23:57:18 no opto-isolation 23:57:48 and also, as far as I know, less real time guarantees 23:58:37 What I think is funny is those hybrid "3.5mm analog stereo / optical S/PDIF" connectors. It's just like a regular stereo plug except there's basically a LED deep inside there. 23:59:20 (What will they think of next!) 23:59:34 fizzie, to save on connectors? 23:59:38 or what 23:59:55 Yeah, you only need one hole in the laptop or whatever. 23:59:55 -!- cheater99 has joined. 2010-12-25: 00:00:04 fizzie, I think my sb live card has S/PDIF 00:00:18 but hm 00:00:22 it is probably all dusty 00:00:25 The USB stick I have has one of those. There's a little piece of plastic that converts it into the usual optical S/PDIF connector: http://ecx.images-amazon.com/images/I/61JztQ1Y7eS._AA1500_.jpg 00:00:27 since I never used that hole 00:00:46 Don't they tend to have some plastic covers in there? 00:01:13 fizzie, there is S/PDIF listed in alsamixer, but I don't think I have any connector that isn't either 3.5 mm style or gameport 00:01:16 * Vorpal checks 00:01:30 Which hardware is this? 00:02:19 fizzie, sb live 5.1 00:02:26 fizzie, PCI card 00:02:38 and indeed, only the connector styles I mentioned 00:02:40 My motherboard-integrated Intel HD Audio thing does (coaxial) S/PDIF via a header on the motherboard; had to get the coax connector back-panel plate separately. I guess something similar could be done on some sound cards too. 00:02:41 -!- cheater99 has quit (Read error: Connection reset by peer). 00:03:05 fizzie, I'm pretty sure the card does /some/ digital output however 00:03:19 http://upload.wikimedia.org/wikipedia/commons/d/d0/Sound_Blaster_Live!_5.1.jpg -- there's something that says "SPDIF" up there. 00:03:43 I'm not entirely sure what the topmost orange connector is either, from this angle. 00:04:09 fizzie, I could check the back... 00:04:15 Looks like another stereo plug in another image. 00:04:43 fizzie, can't tell the symbol, it is under the case metal 00:04:54 "ANALOG (center and subwoofer)/DIGITAL OUT (front and rear SPDIF digital outputs) via 4-pole 3.5 mm minijack on rear bracket" says a spec sheet. 00:05:01 So it's actually another hybrid thing. 00:05:10 -!- Slereah has quit (Ping timeout: 272 seconds). 00:05:12 fizzie, but an electrical sort? 00:05:20 "4-pole" sounds like that, yes. 00:05:32 fizzie, I only every used green and pink (and gameport) 00:05:35 ever* 00:08:13 hm. fizzie you should write a midi->speaker string thingy 00:08:23 so we can get the whole TOS on there 00:09:14 Right, with some strong-AI modules to understand the semantics and reconstruct the best possible rendition out of a polyphonic midi file. 00:10:43 fizzie, well, I don't demand that 00:11:10 I don't know the speaker string syntax. Is there a spec for that? 00:11:18 fizzie, sec 00:11:25 fizzie, http://www.freebsd.org/cgi/man.cgi?query=speaker&apropos=0&sektion=0&manpath=FreeBSD+8.1-RELEASE&format=html 00:11:29 fizzie, scroll down a bit 00:11:41 fizzie, until you see a two column bit 00:11:58 (though some of the text before and after is relevant too) 00:12:38 It did look quite BASICy indeed. 00:13:24 fizzie, yeah I think it is similar, with some minor changes 00:13:47 " The `octave-tracking' feature and the slur mark are new." 00:14:57 "The MB, MF, and X primitives of PLAY are not useful in a timesharing environment and are omitted." 00:15:01 I wonder what those did 00:15:45 MF/MB are probably "play in foreground/play in background" switches. 00:15:56 and X? 00:16:11 And X defererences a pointer, basically. :p 00:16:15 http://zem.fi/~fis/qbc.html#QEw4MDNl 00:16:19 fizzie, heh? 00:16:43 It's followed by a string representation of a variable's address, and it goes and executes that. 00:16:56 I guess you could also consider it a subroutine call. 00:17:01 fizzie, why... 00:17:16 You don't need to construct long strings that way. 00:17:25 fizzie, you could call PLAY several times? 00:17:49 Yes, but that way you can do a hierarchical string that includes other parts several times. 00:17:54 hm 00:17:55 okay 00:18:07 fizzie, well not strange they don't want that, since it was done in the kernel 00:18:08 Note: I don't really know what it's for. The example given is pretty contrived. 00:18:22 haha 00:19:19 fizzie, now I want to play monkey island on the pc speaker. I know I seen that on youtube somewhere (it is probably in ~/tmp or maybe /mnt/old-system/home/anmaster/tmp or such 00:20:12 ah found the MT-32 version of it 00:20:23 which is awesome too 00:20:59 wait, no, that is a different version of monkey island 00:21:15 still, awesome music 00:23:36 ah found the mt-32 one of the same game 00:23:47 (as I had the pc-speaker one of) 00:25:46 -!- j-invariant has joined. 00:28:54 http://www.youtube.com/watch?v=a324ykKV-7Y has a bunch of versions of the monkey island tune for the interested 00:30:47 When I was walking to a friend's graduation party thing, there was a dude at the local train station underpass playing the Monkey Island tune on a melodica. 00:31:50 (Actually it turned out the "dude" (which we only noticed really briefly, as we were in a hurry to get that party) was a quasi-friend of ours, who was also at the same graduation event thing too.) 00:32:23 (Also, we hadn't realized that and started to tell him an interesting story about someone playing the Monkey Island tune under the railway station while we passed by.) 00:32:25 Deewiant, the one I thought of was http://www.youtube.com/watch?v=7DLoSAb1-bc 00:32:53 fizzie, XD 00:33:18 fizzie, you thought it was some beggar or such? 00:33:28 Well, I think they like to be called "street musicians". 00:33:33 fizzie, ah. 00:33:40 But sure, though the choice of song did make us wonder. 00:33:51 fizzie, yeah, those poor comp sci students 00:33:52 The "uh, it was actually I" realization was a bit awkwardly entertaining. 00:36:13 The song's a perennial favourite of everybody. I think I've seen a recording of Press Play On Tape performing it somewhere too. 00:36:28 http://www.youtube.com/watch?v=a324ykKV-7Y has a bunch of versions of the monkey island tune for the interested 00:36:29 hm 00:36:41 I thought MT-32 was a standalone box? 00:36:49 and that card is FUCKING huge 00:37:14 The LAPC-I is an MT-32 compatible card 00:37:17 They put it on an ISA card too, I think. 00:37:18 Right. 00:37:21 That is an ISA card. 00:37:29 I didn't take a look. 00:37:30 Is it really that acceptable for a language to make no distinction between x(5) and x=5? 00:37:41 also... are they all from the same version of monkey island? 00:37:56 I thought it was made for MT32 00:37:58 -23* 00:37:59 gah 00:38:01 -32* 00:38:15 so it shouldn't sound better on more recent hardware 00:38:20 They are from the same 00:38:30 Deewiant, then how can it sound better than MT-32? 00:38:31 And, as typical for games of the time, it has different versions for different cards. 00:38:45 Deewiant, yes quite. But some of them were made /after/ monkey island iirc 00:38:48 http://www.youtube.com/watch?v=h6A0CsU3fh8 00:39:03 And if you noticed the last annotation, the final one played ("CD audio quality" or whatever it was called) is from a different version 00:39:09 But the ones before that are from the same. 00:39:15 Deewiant, yes quite 00:39:21 ah 00:39:24 Deewiant, didn't noticed that 00:40:15 Deewiant, and adlib was quite decent (unlike gameblaster) though nowhere near MT-32 of course 00:40:35 First two versions sound curiously unlike. 00:40:40 fizzie, yeah... 00:41:00 the ultrasound one is good, but I think the MT-32 is even better. 00:41:00 Not that there's a very good standard for the PC beeper, of course. 00:41:13 Card looks like a full-size ISA one. 00:41:25 I have a 256K add-on memory card of that size somewhere. 00:41:34 and SB16 sounded bad 00:42:06 fizzie, dude I believe in my computer case it would be inside the harddisk bay at that size!! 00:43:38 I don't think there's supposed to be *that* much difference between Adlib's OPL2 FM synthesis and SB16's OPL3; the latter just adds features. (Of course many things that play on SB16 are actually sampled stuff, I guess.) 00:43:50 (If that's in the video, I'm not that far yet.) 00:44:06 fizzie, the MT-32 sounds better than the SB16 00:44:09 by far 00:44:18 Well, *that*'s not surprising. 00:44:22 fizzie, true 00:44:33 the SCC-1 is nice too 00:44:54 but the ultrasound is really bad considering it comes after the MT-32 00:45:19 the SCC-1 is mainly crisper 00:45:37 which I don't really think fits 00:45:47 I also have a GUS MAX somewhere; GUS is a rather PC-demoscene-famous thing. It's not a bad piece of hardware, compared to the similar-cost SB16. 00:45:54 Has some on-board memory for wavetabley stuff. 00:46:08 Tracker music players could do hardware-accelerated mixing on that. 00:46:17 fizzie, right, but I don't really care about anything that sounds /worse/ than an MT-32 :P 00:46:31 That just depends what you play with it. 00:46:58 fizzie, anything designed to make use of MT-32's capabilities :P 00:47:21 (pc speaker is an exception) 00:47:40 I'm not entirely sure that's a fair benchmark. 00:47:48 -!- cheater99 has joined. 00:47:57 In unrelated news, the new Special Edition re-orchestrated re-played soundtrack doesn't sound half bad. 00:47:59 (but the segment between pc speaker and MT-32 I find throughoutly boring) 00:48:11 fizzie, oh? link? 00:48:23 It's that last thing in the video. 00:48:46 fizzie, didn't it have the issue of not doing the proper transition-and-blend thingy? 00:48:52 or was that monkey island 2 only? 00:49:10 "iMUSE" I think it was called 00:50:07 Well, that sounds possible. 00:50:16 Since it's recorded-on-real-instruments stuff. 00:50:17 fizzie, iirc elliott played it or something 00:50:31 fizzie, basically you got lots of CD seeking even 00:51:19 I haven't actually played it. (Though I did try out that episodic what-was-it-called modern thing, which was I-guess-nice but nothing that much to, as they say, write home about.) 00:51:31 fizzie, though if recoreded in *perfect* sync (note: impossible with real instruments) you could mix the channels 00:51:48 fizzie, what episodic thing? 00:51:55 Tales of Monkey Island. 00:51:59 Telltale Games' thing. 00:52:24 "Free wovels! Get them while they're wovel!" (Heard from a wovel salesman in the game.) 00:53:44 Also there were some chuckle-worthy jokes about "U Tubes". 00:53:55 fizzie, ... there is no excuse for that pun which doesn't even really work 00:54:09 wait, misread it 00:54:14 as "free wolves" 00:54:16 somehow 00:54:22 okay, now it makes more sense XD 00:54:48 Telltale Games' thing. <-- never heard of that 00:55:10 -!- MigoMipo has quit (Read error: Connection reset by peer). 00:56:04 The company, or the game? 00:56:21 fizzie, the phrase in the line I highlighted 00:56:30 fizzie, I have no idea IF it is a company or a game 00:56:51 Telltale Games is the company, and Tales of Monkey Island is the game. 00:56:57 ah 00:57:04 fizzie, well neither then 00:57:49 They've done episodic-style modern adventure games into existing "franchises"; that Monkey Island game, and some Sam & Max stories, and I don't know what else. 00:59:42 hm should I use the FreeBSD name in the BSD license 00:59:44 or my own 00:59:49 since it is based on freebsd code 00:59:58 I mean in the line "The views and conclusions contained in the software and documentation are those of the authors and should not be interpreted as representing official policies, either expressed or implied, of the FreeBSD Project." 01:00:06 (I do not plan to re-license it under GPL) 01:00:41 fizzie, any idea? 01:02:03 hm 01:02:59 meh, I'll settle for something like: 01:03:01 (In part) Copyright (c) 2010 Arvid Norlander. All rights reserved. 01:03:01 (In part) Copyright (c) 1992-2010 The FreeBSD Project. All rights reserved. 01:03:19 (the "all rights reserved" amuse me) 01:06:47 elliott, fizzie: http://sporksirc.net/~anmaster/software/pcspeak.tar.xz 01:06:55 if you want to play with the software 01:08:50 The song's a perennial favourite of everybody. I think I've seen a recording of Press Play On Tape performing it somewhere too. 01:09:02 They've done an *awesome* version of it segued into LeChuck's theme. 01:09:28 The LAPC-I is an MT-32 compatible card 01:09:37 Deewiant: Proper compat or just one of those ones with its default soundfont? 01:10:13 Can confirm that the PC speaker and Tandy ones are the same game. 01:10:32 The Roland LAPC-I contains an MT-32 compatible synthesizer 01:10:49 Also, you can't compare cards with the MT-32 based on one track, since the MT-32 is far more reprogrammable than any of the others. 01:10:53 fizzie, didn't it have the issue of not doing the proper transition-and-blend thingy? 01:11:06 That's the CD version of MI1, but it didn't even have iMUSE; it was just slightly less smooth. 01:11:18 MI2 has never been CD-soundtracked and was the first to use iMUSE. 01:11:23 Special Edition != CD rerelease. 01:11:23 elliott, what did you do to that line, it only highlighted /part/ of it 01:11:29 right, it ended just after > 01:11:36 fizzie, basically you got lots of CD seeking even 01:11:43 elliott, you did it again 01:11:44 Was MI2 even released on CD when it came out? 01:11:47 fizzie, though if recoreded in *perfect* sync (note: impossible with real instruments) you could mix the channels 01:11:50 iMUSE didn't mix any channels. 01:11:58 but no longer 01:11:58 It waited until an appropriate transition point and jumped to the appropriate transition. 01:12:01 They were handmade. 01:12:05 elliott, right 01:12:19 I don't like the Special Edition theme; the main lead isn't pronounced enough. 01:12:25 There's a Telltale Games guy on the esowiki, btw. 01:12:41 Vorpal: just xchat copying colour codes for some reason 01:12:54 elliott, but it only did it 2 out of 3 times 01:12:58 Deewiant: Vorpal doesn't see annotations, re: And if you noticed the last annotation, the final one played ("CD audio quality" or whatever it was called) is from a different version 01:13:05 since he uses some youtube-dl thing, not flashl. 01:13:08 *flash. 01:13:16 elliott, and the modes of this channel should filter colour codes 01:13:19 Vorpal: I think it's based on the precise moon-phase. 01:13:25 Also, no, annoying colours are GREAT! 01:13:26 elliott, aaah 01:13:32 Vorpal: Aaaaah? 01:13:40 elliott, (moon phase) 01:13:47 Irssi shows "< elliott> HH fizzie, ..." with inverse-video Hs. 01:13:54 fizzie, hah 01:14:18 Vorpal: Have you ever actually played the Monkey Island games? 01:14:31 i luv them 01:14:35 elliott, no, it is on my todo list however 01:14:51 elliott, but I never really liked point and click 01:14:58 elliott, I prefer more free form in general 01:15:14 elliott, open world I love (ev override is very open world) 01:15:16 for 5: where is the fuel for the chainsaw? 01:15:44 1 is great (but short; once you've beaten it once it only takes like 2-3 hours to do), 2 is probably the best adventure game ever written, and 3 (Curse of) is excellent too (although basically just ignore-retconned 2's ending and didn't involve Ron Gilbert; it is still good, however; note that it's 640x480x8. ScummVM can play it.) 4 (Escape from) is utter terrible keyboard-controlled 3D dreck and should be avoided at all costs. 01:15:51 and there is the craziness of the puzzles too 01:15:52 Tales I haven't played yet. 01:15:56 I prefer RPG in general 01:16:05 Vorpal: Of course you use the rubber chicken with a pulley in the middle to cross over the chasm ... 01:16:07 What are you, an idiot? 01:16:19 (Note: Actual spoiler.) 01:16:28 elliott, I heard about that example before 01:16:33 so I'm not spoiled by you 01:17:10 elliott, but yeah I don't really enjoy exploring the combinatorial explosion of all items in all places at all times 01:17:16 which is what it seems like pretty much 01:17:20 Vorpal: Not really. 01:17:23 unless you use spoilers 01:17:26 You just have to sense a pun when one comes along. 01:17:37 The combine-X-with-Y approach only happens when you're really stuck. 01:17:51 elliott, so is " Vorpal: Of course you use the rubber chicken with a pulley in the middle to cross over the chasm ..." from a pun? 01:18:03 Vorpal: To be fair, it comes with the pulley. 01:18:09 And there's a line conveniently crossing the chasm. 01:18:21 But, okay, so that one isn't terribly intuitive, but it /is/ lampshaded in the actual game. :p 01:18:26 elliott, what about the rubber chicken? 01:18:37 I mean, the pulley, sure 01:18:40 It comes with the pulley. 01:18:49 elliott, which seems rather weird 01:18:55 Yes, well. 01:19:00 The Voodoo Lady is weird. 01:19:00 I never seen a rubber chicken with a pulley built in before 01:19:16 come to think of it... 01:19:21 I never seen a rubber chicken 01:19:24 rubber ducks sure 01:19:26 but not chicken 01:19:41 They serve different roles. 01:19:54 http://media.photobucket.com/image/rubber%20chicken%20with%20a%20pulley%20in%20the%20middle/ErDracu/Pollo.jpg 01:19:56 WHAT NOW 01:19:58 SCIENCE 01:20:03 For one thing, rubber chickens are far more floppy and less bath-toyey. 01:20:10 Perfect for crossing chasms. 01:20:30 elliott, not science. Just... technology 01:20:37 It disproves science. 01:20:43 elliott, so how much load can it take? 01:20:57 Vorpal: Approximately one (1) Guybrush Threepwood./ 01:20:59 s/\/$// 01:21:12 elliott, I meant the real-world one 01:21:25 Vorpal: Approximately one (1) Guybrush Threepwood. 01:21:34 (Turns out they live in a world where everything is tiny.) 01:21:49 har 01:22:57 Was Tales really released in 2009? jeez. 01:23:37 painted with deluxe paint.. btw ;) 01:23:47 Tales wasn't relatively speaking too far on the "horrible annoying puzzlery" scale, but it did have its share. (And personally I am most annoyed by those cases where I clearly know what to do, it has a reasonable probability of being the right thing, but I just can't seem to figure out how to communicate that to the game through the UI.) 01:24:15 brushguy 01:24:45 fizzie, yeah that sucks 01:24:46 indeed 01:24:49 named after guy.brush 01:24:59 since deluxe paint used .brush 01:25:10 it did 01:25:57 Guybrush Threepwood, Mighty Pirate(TM). 01:26:04 one of the first apps using thi terminology, as far as i know 01:26:09 elliott: do you still think I wasted your time? 01:26:16 why on earth is niceness value so backwards. In other words: why does *nix use an inverse of the more straight-forward concept "priority"? 01:26:20 wanna buy a map? *g 01:26:23 elliott, ^ 01:26:24 Mathnerd314: Everyone always wastes my time! 01:26:36 Vorpal: So they could use C's default initialisation to 0? :) 01:26:44 OK, so that would work with priority too I guess. 01:26:50 Vorpal: I suspect positive nice values came much before negative. 01:26:57 hm 01:27:04 elliott: ok... 01:27:05 Also it's nicer. 01:27:11 elliott, so they started with lower-valued priority? 01:27:25 probably, yes 01:27:35 fizzie, you are trespassing on oerjan's territory! 01:28:40 elliott: so is that a yes? 01:28:53 Mathnerd314: it's file_not_found 01:29:02 elliott, I think I might want to write 4'33" for the pc speaker 01:30:11 Vorpal: it's called "mute button" 01:30:16 Vorpal: That's 273 seconds. So, if ... 01:30:21 How many Hz does one 386 cycle take? 01:30:30 Rather. 01:30:37 elliott, actually the time tempo to give it 01:30:41 Non-audible-frequency beeps were a common-ish way of doing sub-second resolution delays in some system. 01:30:44 How many one-cycle instructions can you fit into one second of 386 execution? 01:30:45 I just need to figure out* 01:30:50 got dropped from it 01:30:50 At 12 MHz. 01:31:05 elliott, presumablly 1/12 MHz? 01:31:11 that is 01:31:18 1/(12 MHz) btw 01:31:34 Vorpal: Right. So 83 ns for one instruction. 01:31:44 elliott, assuming it takes one cycle 01:32:15 elliott, anyway, the tool doesn't work like that 01:32:38 Vorpal: OK, 2^23 nops on a 12 MHz 386. 01:32:44 Assuming a 1-cycle nop. 01:32:52 That's close to 4'33", except as a power of two. 01:33:08 elliott, ... but how does that help me? 01:33:10 (Man, even 386s are /fast/.) 01:33:17 Vorpal: Well, you can do it without even touching the PC speaker! 01:33:25 elliott, but I don't have a 386 01:33:32 That way you can listen to 4'33" even if you don't have a PC speaker to listen to it with. 01:33:50 "Early in production, Intel discovered a bug that could cause a system to unexpectedly halt when running 32-bit software. Not all of the processors already manufactured were affected, so Intel tested its inventory. 01:33:56 Processors that were found to be bug-free were marked with a double-sigma (ΣΣ), and affected processors were marked "16 BIT S/W ONLY". These latter processors were sold as good parts, since at the time 32 bit capability was not relevant for most users. Such chips are now extremely rare." 01:34:04 That's so very nice. 01:34:12 That's where 3-core AMDs come from. 01:34:19 4-core AMDs born with Down's syndrome. 01:34:22 elliott, here is the easy version: "". Note: program exits right away and it continues playing in background 01:34:36 Vorpal: But how will I know when to stop listening? 01:35:01 It's a bit like the "only connections to IP addresses inside Finland" cheaper-rate thing our ISP used to offer. 01:35:07 elliott, use a wall clock 01:35:20 http://en.wikipedia.org/wiki/Wall_clock_time 01:35:23 fizzie, so no google for example 01:35:25 Vorpal: Yes, but I need a process that runs for 4'33" to do that. 01:35:30 Vorpal: Which my example gave. 01:35:37 fizzie, so no google for example ;; I doubt Google existed then 01:35:41 ah 01:35:43 true 01:35:44 Vorpal: It was around 1991, so no Google anyway. 01:35:53 fizzie, aaah THAT far back 01:35:59 (Disclaimer: Year is purely guesswork.) 01:36:06 1991, before the dinosaurs got wiped out. 01:36:09 When Jesus roamed the Earth 01:36:13 elliott, oh? 01:36:22 elliott, he was long lived then 01:36:31 of we have exponential year length 01:36:39 http://farm1.static.flickr.com/172/431306643_528c65a6b3.jpg 01:36:55 elliott, ... 01:37:34 elliot: "Brushes can be cut from the background by using the box, freehand, or polygon selection tools. They can then be used in the same manner as any other brush or pen. This functionality is simpler to use than the "stamp" tool of Photoshop or Alpha Channels as provided in later programs. Brushes can also be rotated and scaled, even in 3D. After a brush is selected, it appears attached to the mouse cursor, 01:37:34 providing an exact preview of what will be drawn. This allows precise pixel positioning of brushes, unlike brushes in Photoshop CS3 and lower, which only show an outline." --wikipedia, on the amiga version of deluxe paint (1985!) [appendix] 01:37:45 ooh found a quickcam in a box 01:37:49 I wonder if it works with linux 01:37:56 (logitech quickcam express) 01:38:05 (one of those with a pyramid base) 01:38:15 It's popular enough to probably do. 01:38:22 hm 01:38:28 i loved it *sigh 01:38:36 hagb4rd, loved what? 01:38:43 fizzie, some googling suggests a out of kernel driver, which seems unmaintained 01:38:50 deluxe paint 01:38:56 hagb4rd, never heard of it 01:38:57 Quickcam-in-a-box, sounds like a trademark. 01:39:27 Vorpal: Well, you were a mac guy, weren't you? (I ay misremember.) 01:39:30 "This functionality is simpler to use than the "stamp" tool of Photoshop or Alpha Channels as provided in later programs." 01:39:35 hagb4rd, I see an issue here 01:39:58 hagb4rd, mostly in that it won't 1) do blending very well 2) follow where you drag the mouse 01:40:02 ooh found a quickcam in a box 01:40:03 I wonder if it works with linux 01:40:03 (logitech quickcam express) 01:40:03 (one of those with a pyramid base) 01:40:07 I HAD ONE OF THOSE OMG. 01:40:12 Such shitty quality. 01:40:16 elliott, it's usb 01:40:18 vorpal: a painting app, i remember from the amiga, with quite innovative, and impressing func. 01:40:20 and yes shitty quality 01:40:33 hagb4rd, ah, so not for retouching photos then 01:41:03 ithttp://en.wikipedia.org/wiki/Deluxe_Paint#Functionality 01:41:04 Vorpal: Also, careful with what you say about Deluxe Paint. 01:41:08 sry 01:41:08 http://ui28.gamespot.com/475/full20040105092056_2.gif <-- It produced things like this. 01:41:19 -!- cheater99 has quit (Read error: Connection reset by peer). 01:41:21 http://en.wikipedia.org/wiki/Deluxe_Paint vorpal 01:41:26 elliott, okay, good for drawing 01:42:01 "the character's name derived from the file used to store his image data. Contrary to popular belief however, the original source sprite was not named "guy.brush" as the file extension used was ".bbm" and not ".brush". The file was in fact named "guybrush.bbm", the "brush" portion of the file name being included by the artist behind the character, Steve Purcell." <-- aww 01:42:03 OH WELL 01:43:29 aye :) 01:44:00 http://www.effectgames.com/demos/canvascycle/?sound=1 ;; these are beautiful btw, colour cycling 01:44:04 (turn sound on) 01:44:23 Vorpal: gspca (which is in mainline kernel nowadays) supports at least some hw revisions of quickcam express. 01:44:37 fizzie, oh nice 01:44:44 fizzie, will try that when I recompile kernel 01:44:46 Who is Pull? 01:44:48 (going to anyway) 01:44:54 Sgeo: ? 01:44:55 Sgeo, what? 01:45:11 * Sgeo is being silly. Look at the image of the game 01:45:15 or wait 01:45:21 *tries on ubuntu box* 01:45:23 ah 01:45:30 fizzie, so... what program does one use then? 01:45:52 /* QuickCam Express */ 01:45:52 {USB_DEVICE(0x046d, 0x0840), .driver_info = BRIDGE_STV600 }, 01:46:05 Vorpal: Anything? Cheese is popular for photo/video-taking, I gathe.r 01:46:07 *gather. 01:46:09 You can lsusb to see if it has those ids. 01:46:22 elliott: are there any games iwth graphics like that throughout? 01:46:26 Just dmesg for v4l messages about finding a new device. :p 01:46:33 fizzie, fizzie nop, 0x0870 01:46:34 j-invariant: On the Amiga, I would expect so. 01:46:41 fizzie, same for the first id 01:46:48 I want to play them 01:46:49 j-invariant: Perhaps none quite so beautiful,t hough; they look quite high-res. 01:47:04 Well, it could still be compatible. Or handled by something else. 01:47:11 j-invariant: btw do you know about IΞ? 01:47:21 fizzie, hm 01:47:25 no what is that 01:47:37 /* Dexxa WebCam USB */ 01:47:38 {USB_DEVICE(0x046d, 0x0870), .driver_info = BRIDGE_STV602 }, 01:47:48 That's in the same list. 01:47:59 fizzie, aah 01:48:04 j-invariant: a really awesome dependently typed lambda calculus extension that does it in a totally different way to everything else 01:48:10 j-invariant: see these posts (I haven't found a better source): 01:48:14 Marketing names are of course always pretty random. 01:48:19 http://lukepalmer.wordpress.com/2009/02/18/dependent-types-are-ridiculously-easy/ 01:48:22 http://lukepalmer.wordpress.com/2009/03/25/system-ig-semantics/ 01:48:28 http://lukepalmer.wordpress.com/2009/04/12/some-constructions-in-ixi/ 01:48:33 http://lukepalmer.wordpress.com/2009/04/29/dana-actual-progress/ 01:48:35 http://lukepalmer.wordpress.com/2009/06/06/recursive-types-in-ixi/ 01:48:41 wish someone other than luke talked about it though :P 01:48:46 j-invariant: oh you can ignore the system-ig-semantics one... 01:48:51 that's ig not iXi 01:49:06 im really in love with this color cycling stuff :( 01:49:24 someone should make a game with these graphics 01:49:35 it's really cool because the type system is sort of, to the side 01:49:38 j-invariant: that would be awesome 01:49:45 i'm nowhere near a good enough artist to though :P 01:49:48 the image quality: aieee 01:50:21 j-invariant: the problem is that palette cycling only works for some things 01:50:24 so you can't do all animation withi t 01:50:31 *with it 01:50:52 j-invariant: and also the way some of these are done you'd have very little palette left ... that is, on "authentic" hardware 01:51:08 I have some el-cheapo webcam which for some reason worked a lot better in Windows than in Linux for non-daylight levels. I suspect some sort of amplifier AGC thing not being handled properly. 01:51:33 j-invariant: anyway you should read those posts about i\Xi, it's a really cool system 01:51:48 the posts get better as you go down :p 01:52:04 j-invariant: it has things like a universal set ... but is still consistent-looking 01:52:11 *the universal set, I suppose 01:54:23 im really in love with this color cycling stuff :( <--- what colour cycling? 01:54:52 fizzie, ah yes mine seems to have some issues in here too 01:55:01 Vorpal: http://www.effectgames.com/demos/canvascycle/?sound=1 01:55:03 Vorpal: the one i linked. 01:55:07 note: requires js, best with sound turned on 01:56:00 elliott, heh, cool 01:56:04 "But there's also a case to be made that we all *really really suck* at 01:56:04 a game we joined under a horridly stupid misunderstanding of what it 01:56:05 was all about, and that this is actually still the first era." -- teucer, talking at the end of B's supposed 7th (I think) era 01:56:05 but where does the cycling come into it 01:56:13 Vorpal: it's done entirely by changing the entries in a palette table 01:56:17 the actual pixel values stay the same 01:56:22 they're just mapped to different RGBs with the palette table 01:56:30 (this is how you did it on actual hardware, very common) 01:56:44 elliott, they change it midway through or such? 01:56:52 Vorpal: it changes every frame 01:56:55 ah 01:56:56 that's what makes it look like it's animated 01:57:00 they never touch the actual image 01:57:06 just the palette 01:57:13 aha 01:57:29 " 01:57:29 Pragmatism is Agora's way of ensuring stability. B's is emergencies - 01:57:29 if things are breaking down, we have an emergency." 01:57:36 elliott, if doing it through the middle of a refresh you could get more colours maybe 01:57:48 Vorpal: Possibly. That would be a bitch though. :p 01:57:54 -!- cheater99 has joined. 01:58:07 "As for the present situation with the 2E issue, I'm gonna do what we 01:58:07 always do: enumerate the Woobleverses and try to recombine and/or 01:58:07 destroy as many as possible." 01:58:11 Gee, B, what do you wanna do tonight? 01:58:26 The same thing we do every night, players -- try to figure out a consistent gamestate! 01:58:44 ALTERNATIVELY 01:58:51 The same thing we do every night, players -- have an Emergency! 02:00:11 elliott: what's good about that XI thing? 02:00:12 -!- cheater99 has quit (Read error: Connection reset by peer). 02:00:20 j-invariant: it's just cool :P 02:00:25 j-invariant: i think it's more elegant than regular type systems 02:00:29 j-invariant: since you don't need the concept of a type 02:00:31 you just have predicates 02:00:37 it's sort of "more integrated" 02:01:51 elliott, do you watch youtube in the browser 02:01:52 ? 02:02:03 elliott, if so, does sound and video sync properly for you? 02:02:34 Vorpal: Yes, and yes. It didn't use to because of no native x86-64 player, but it works now. 02:02:47 (I'm using the native x86-64 Flash.) 02:02:53 elliott, but I thought there wasn't a native one currently? 02:03:12 Vorpal: there is, I don't think it's totally "final" though, but Debian's package uses it... at least on squeeze 02:03:20 heh 02:03:34 elliott, I get perfect sync in mplayer btw 02:03:42 Yes, well, that's hardly surprising. 02:03:46 elliott, :P 02:03:52 elliott, and I have for the past years 02:04:04 Vorpal: I didn't use Linux the past years. 02:04:12 true 02:04:13 In OS X, btw, everything syncs up perfectly, but Flash likes to take 100% of the CPU. 02:04:24 I am, incidentally, not planning to run Flash on my new laptop. :p 02:04:27 elliott, does it under linux (take 100%?) 02:04:33 Vorpal: No. 02:04:38 Adobe just really hate Steve Jobs. 02:04:49 elliott, I assume you will use linux on that air? 02:05:11 I'm planning to dual-boot it. I can't throw away OS X because of EFI updates and, well, it is nice in some ways. 02:05:28 But I'm gonna stick Ubuntu on it. :p 02:05:48 Not sure how much Kitten will like such foreign hardware. 02:05:51 elliott, without or with flash? 02:06:03 Who knows :p 02:06:03 elliott, uh, couldn't you make kitten support it? 02:06:18 Vorpal: Yes, but even Ubuntu's support was flaky as of a year or two ago. 02:06:21 (For Macs.) 02:06:24 elliott, elilo? 02:06:30 Vorpal: Nobody uses elilo :p 02:06:30 or grub2? 02:06:36 GRUB 2 wasn't stable then. 02:06:50 elliott, well, people used elilo when grub2 didn't yet exist iirc 02:08:57 The BIOS emulation is the most common thing to do, I think 02:08:59 *think. 02:09:02 Since that's automatic. 02:09:33 elliott, bootcamp? 02:09:38 or what? 02:09:58 elliott, also iirc it works well with freebsd 02:10:00 (EFI that is) 02:10:09 Vorpal: Boot Camp is just the marketing name for (1) an EFI update that added BIOS emulation, and (2) a tool that partitions your drive for you then reboots. 02:10:15 (1) is the important thing here. 02:10:45 elliott, ah, so how does EFI know if you want BIOS emulation for a given partition? 02:11:15 Vorpal: It ... doesn't; it just starts emulatin' that thar BIOS if it looks like the bootloader wants a BIOS. I'm not sure how it works. Maybe EFI has different boot sectors. 02:12:04 elliott, I presume you still have to deal with GUID partition tables? 02:12:15 Vorpal: Well, "deal"; (GNU) fdisk supports them. 02:12:19 (Or was it GNU?) 02:12:23 elliott, the kernel needs to support it 02:12:36 elliott, I think parted handles it too btw 02:12:43 Right, I meant parted. 02:13:02 is parted gnu? 02:13:53 I think so. 02:13:56 Yes. 02:14:01 elliott, but... it is good? 02:14:11 Well, I wouldn't go that far! 02:14:21 elliott, it actually is 02:14:34 elliott, with gparted it is a bliss compared to fdisk 02:14:43 I like fdisk. 02:14:48 wait, it is tricky to edit partition type manually from gparted 02:14:49 The commands are shorter. :p 02:14:51 so that lacks 02:14:57 not sure about from parted 02:15:24 elliott, I ended up having to use fdisk to touch up the partition types afterwards a few times 02:16:39 -!- cheater99 has joined. 02:17:29 fizzie: Vorpal: http://www.youtube.com/watch?v=mYZXNVHVfhc The excellent Press Play On Tape Monkey Island theme / LeChuck's theme thing. 02:19:08 elliott, decent performance 02:19:27 The LeChuck part is better IMO. 02:19:35 elliott, but not same as the intro melody iirc? 02:19:36 But then, LeChuck's theme is /really/ catchy. 02:19:40 elliott, some minor variations 02:19:40 -!- cheater99 has quit (Read error: Connection reset by peer). 02:19:43 Vorpal: Indeed not; it changes at 1 minutes something. 02:20:01 elliott, well even before that 02:20:13 Vorpal: No, all that's the actual theme. 02:20:19 elliott, hm 02:20:35 elliott, I prefer monkey island 2 theme personally 02:20:52 The one I linked gets rather metal at the end. :p 02:21:02 elliott, yeah.... 02:21:08 elliott, I doubt it does that in the game? 02:21:15 No ... but it totally should. 02:21:21 All the game songs loop cleanly. :p 02:21:32 elliott, wouldn't it be anachronistic? 02:22:18 Vorpal: Almost everything in MI2 is anachronistic. Observe: http://www.mrbillsadventureland.com/reviews/m-n/monkeyR/stans1.jpg 02:22:24 elliott, I have to say I prefer the game theme song (even discarding the metal bit) 02:22:27 (Also "Ask me about LOOM(tm).") 02:23:03 hah 02:23:06 elliott, LOOM? 02:23:10 The game. 02:23:20 There's a guy who gives you a sales pitch for it in the SCUMM Bar. 02:23:33 (SCUMM would also count as an anachronism, except it can sort of pass as not being one.) 02:25:59 SCUMM not being the VM? 02:28:22 Vorpal: SCUMM = Script Creation Utility for Maniac Mansion, the engine used for Maniac Mansion and then the Monkey Island games. 02:28:26 Along with every other LucasArts adventure game. 02:28:37 ScummVM is just a program that runs SCUMM games... along with several other engines, but :P 02:30:36 Along with every other LucasArts adventure game. <-- http://en.wikipedia.org/wiki/GrimE 02:31:04 Vorpal: Yes, well, up to then. 02:31:12 elliott, quite so 02:31:12 Vorpal: To be fair, only one good GrimE game was ever released. 02:31:19 elliott, oh? 02:31:24 elliott, which one? 02:31:25 (Grim Fandango; the only other was Escape from Monkey Island, which was beyond terrible.) 02:31:46 Grim Fandango is probably the #1 or #2 best adventure game ever, though -- and that's *despite* the keyboard-arrow-button controls. 02:31:53 elliott, then what came after GrimE? 02:31:54 Which are *terrible*, and yet it still comes out on top for being just that good. 02:32:00 Vorpal: Nothing; LucasArts stopped making adventure games. 02:32:07 Telltale have their own thing, but that's years later. 02:32:10 ah 02:32:25 LucasArts pretty much just do Star Wars games... well, until the two Special Edition rereleases of Monkey Island. 02:33:41 Seriously, how do you move XChat tabs. Eurgh. 02:33:48 I can't get #esoteric back in its rightful place. 02:34:29 elliott, when I use xchat I use the tree list view 02:34:33 and sorted by name 02:34:59 Vorpal: Yes, well, I'm using tabs. 02:36:46 -!- cheater99 has joined. 02:38:17 elliott: http://coq.pastebin.com/sjjga8Uj 02:38:59 this looks like a nice way to bootstrap, just set up enough machinary so that you can automatically prove equations - then start developing the theory 02:39:17 -!- cheater99 has quit (Read error: Connection reset by peer). 02:39:35 # 02:39:35 Section PublicService. 02:39:40 j-invariant: make this "Section Socialism." 02:39:42 :D 02:39:45 hehe 02:39:50 yeah that looks much nicer 02:39:59 it would be a lot more effective if it took equations like fg = id into account (rather than just solving associativity) HINT HINT elliott 02:40:27 im just saying that because I don't know how to implement it :/ 02:41:10 * Sgeo may switch to Pigdin from Digsby 02:41:12 j-invariant: you think *I* know? i'm an amateur :D 02:41:13 elliott: look at line 314 though. I need to prove a complicated equation, so I name the symbolic category - ask it for the proof, then functor map it into MY category 02:41:44 makes the proof so much easier 02:41:50 yeah it looks awesome 02:41:54 i should learn category theory properly 02:41:59 Features I need: To know when a particular person goes online 02:42:09 And more importantly right now, a log of when everyone goes on and offline 02:42:16 Features I need: To know when a particular person goes online 02:42:18 Um, Pidgin does that ... 02:42:20 A bit late for that now 02:42:28 And more importantly right now, a log of when everyone goes on and offline 02:42:29 elliott: this is whatt I am using mostly http://www.scss.tcd.ie/Edsko.de.Vries/ct/catsters/linear.php 02:42:30 elliott, I know. Reread what I wrote 02:42:33 Uhh, it might do th-- why do you want that. 02:42:39 elliott: but programming it helps a LOT 02:43:09 My friend's gf is worried about him, he was supposed to meet up with her, asked when I last spoke with him 02:43:30 Sgeo, do you mean on irc? 02:43:37 Vorpal, MSN 02:43:38 Vorpal: Nobody uses IRC. 02:43:40 oh 02:43:55 elliott, ... your statement is absurd given the medium of it's transmission 02:44:12 Vorpal: You know what I mean, though. 02:44:26 elliott, no one non-tech savey 02:44:37 (% typos) 02:44:46 Eh, some tech morons manage to get on sometimes 02:45:21 Sgeo, rare though 02:45:31 at least in channels like this 02:45:34 #ubuntu is another thing 02:46:11 elliott: right now I can automatically prove all equations of the form f(g(1h)1)(i(j1)1)k = (f1g)((1(h1))(il))k (for example) because they both get reduced to f(g(h(i(j(k1))))) 02:46:39 j-invariant: that is really awesome ... can coq even do that normally? 02:46:45 elliott: but it would be useful to be able to add reductions like pq --> 1 so that it could prove stuff like pp1qq = 1 02:47:13 elliott: well you can do it without category theory, but it's the "same thing" really 02:47:22 you have to program it of course 02:47:37 elliott: but it would be useful to be able to add reductions like pq --> 1 so that it could prove stuff like pp1qq = 1 02:47:44 can't you just like, add that as an equality theorem 02:47:49 and eliminate for equality in the tactics? 02:47:50 generalising 02:48:39 that's what I do now: have to use tactics for each rewrite (that includes working your way into the middle of a deep expression you want to rewrite it), what I mean is the automatic equation prover should be able to take these sort of equations into account too 02:49:02 a proof like (fg)(hk) = f((gh)k) needs like 40 rewrites or something 02:49:54 -!- FireFly has quit (Quit: swatted to death). 02:50:17 (N.B. this is only difficult because "=" is an arbitrary equivalence relation, proving this stuff is really easy if it's actual equality) 02:50:31 elliott, did you reread my line? 02:50:35 Sgeo: yes 02:50:46 j-invariant: put a "do_common_elimination" thing at the start and end of every tactic 02:50:50 so it's "automatic" most of the time 02:51:10 elliott: I can't implement do_common_elimination! that's too difficult 02:51:20 j-invariant: well you can eliminate equality as a tactic, right> 02:51:21 ? 02:51:24 no 02:51:25 just make that do_common_elimination for now 02:51:26 and expand it later 02:51:27 *right? 02:51:30 j-invariant: oh. what can you do? 02:51:33 **can* 02:53:12 elliott: see http://coq.pastebin.com/sjjga8Uj line 72. That says that if f = f' then fg = f'g.. you have to apply it manually if you want to prove something like (jh)k = 1k given jk = 1 02:53:19 I mean jh = 1 02:56:12 -!- cheater99 has joined. 02:57:26 elliott: which is a huge hassle... but now I can just state an equation in the symbolic category, which then gets proved automatically.. and I just map the equation back into my category! 02:57:42 -!- cheater99 has quit (Read error: Connection reset by peer). 02:59:16 I would guess the genenral theory of typed equations would be decidible though? 02:59:39 actually no you can encode the word problem can't you... 02:59:44 j-invariant: that is awesome 03:00:00 j-invariant: hmm can you do language syntax extensions in coq? 03:00:03 like, not as expressions 03:00:08 but actually defining things like "Record x := y" 03:00:21 j-invariant: if not, write a preprocessor for using coq with categories :) 03:00:24 elliott: you need to hack into the ocaml stuff to do that 03:00:28 things like "Category blah ..." 03:00:33 just do a preprocessor, way easier than hacking ocaml 03:00:44 elliott: well it would be easier to just make a new programming language that checks with Coq to see that everything checks out 03:00:58 j-invariant: are you sure? this way you get tactics for free 03:01:11 j-invariant: a preprocessor just has to transform some half-assedly parsed text into Coq boilerplate :P 03:01:14 for defining a category or whatever 03:01:20 heh yeah thats true 03:01:34 j-invariant: you can even shout it CATEGORY to show that it's not going to be parsed decently :P 03:02:31 j-invariant: this is really cool though 03:02:42 j-invariant: hey is Lam a category? for lambda calculus 03:02:43 Hask is 03:02:48 but LC doesn't really have types 03:02:49 so i guess not 03:02:54 elliott: yeah I feel like with this I might be able to speed up a bit 03:02:59 -!- wareya_ has joined. 03:03:40 night → 03:06:01 elliott: one category I really want to get defined is one where objects are prolog terms and maps are substitutions 03:06:01 -!- wareya has quit (Ping timeout: 250 seconds). 03:06:38 elliott: so e.g. {X|-->e(Y,k)} : f(X,g(X)) ---> f(e(Y,k),g(e(Y,k))) 03:07:59 -!- wareya has joined. 03:08:12 -!- wareya_ has quit (Ping timeout: 272 seconds). 03:08:15 there's a book that shows how to implement unification on it 03:09:04 j-invariant: that is awesome. do that :D 03:10:03 j-invariant: what about CHR? 03:11:27 well that is jsut syntax stuff 03:11:32 no actual execution 03:14:39 ah 03:14:42 -!- cheater99 has joined. 03:14:45 i don't know much about chr 03:15:11 http://www.cs.man.ac.uk/~david/categories/programs/ 03:15:20 stealing ths stuff once I get the scene set 03:15:55 http://www.cs.man.ac.uk/~david/categories/programs/x.cat huh what is this, category theory in ML? 03:16:22 -!- cheater99 has quit (Read error: Connection reset by peer). 03:19:19 j-invariant: do the Hask category next :D 03:20:15 no way lol 03:20:19 you do it 03:20:29 I don't even know wha the Hask is 03:20:47 can define simple data types using initiality, though - that needs to be tested out 03:21:11 j-invariant: Hask is the category of Haskell types 03:21:16 category-extras uses it :) 03:23:51 j-invariant: so to implement Hask you need to implement Haskell's type system... and I think probably most of the values too :P 03:24:08 j-invariant: http://hackage.haskell.org/packages/archive/category-extras/0.53.5/doc/html/Control-Category-Hask.html 03:24:11 j-invariant: Make it clearer when we are dealing with the category (->) that we mean the category of haskell types via its Hom bifunctor (->) 03:27:28 j-invariant: any opinions on lambda Prolog? 03:29:14 what do you mean 03:29:21 I don't use it 03:30:35 j-invariant: any interesting insights, i guess 03:33:10 -!- cheater99 has joined. 03:34:53 -!- cheater99 has quit (Read error: Connection reset by peer). 03:39:05 elliott: I'm going off to tell children that Santa is coming to a town near them, but will only visit their house if they're asleep. Anything else I should tell them? 03:39:53 "Punching trees gives me wood" 03:40:40 http://www.levelupstudios.com/punching-trees-gives-me-wood 03:42:06 Mathnerd314: "I killed your parents." 03:42:44 elliott: *young, impressionable children* 03:42:58 REMEMBER ME 03:43:24 Mathnerd314: "I killed your parents... while they slept. If you sleep... well, who knows what could happen?" 03:43:29 Tell them that Santa only exists because people beleive in it, and that they should be very careful not to beleive in anything BAD incase it becomes real. And then make up a scary story about this happening in the past with a terrible monster 03:43:40 j-invariant, I hate you. 03:43:44 "Of course... Santa only brings presents to those who sleep." 03:43:50 Mathnerd314: "So, you know... it's your decision..." 03:44:41 elliott: you realize that their parents are standing right next to them, and the call is probably on speakerphone? 03:44:53 Sgeo: whuy 03:45:09 Mathnerd314: "The reason why your parents seem to be next to you is ... they're replaced with duplicates." 03:45:14 Mathnerd314: "And they want your lungs..." 03:45:33 elliott: I don't think I can get this all in before they hang up 03:45:43 Mathnerd314: practice talking REALLY QUICKLY 03:45:49 j-invariant, when I was a little kid, I read a book about the power of wishes. Being a kid, I believed it. 03:46:03 I really wish I never read that book 03:46:08 j-invariant: note -- Sgeo is crazy 03:46:08 hehe 03:46:53 elliott: also, the people sitting next to *me* will overhear and pull we away from the phone 03:47:02 s/we/me/ 03:47:13 Mathnerd314: wrestle with bears to practice your self-defence skills 03:47:32 How long is this phone conversation that you can talk about it right now? 03:47:37 elliott: this is just getting more and more insane. 03:47:43 Mathnerd314: "Santa loves you... but he has a secret. If you swap around two letters in his name... it becomes Satan." 03:47:47 Mathnerd314: [whisper] "Behind you." 03:48:08 Sgeo: it's Norad tracks Santa, and my shift is in an hour 03:48:18 elliott: that's more like it 03:48:24 Ah 03:48:51 Why propagate lying to little kids? 03:48:59 lawl 03:49:05 Santa is EVIL CHRISTIAN LIES 03:50:06 * Sgeo wonders if there's been any studies on how being taught that Santa is real or not as a kid affects the kid 03:50:46 It doesn't. 03:51:43 -!- cheater99 has joined. 03:51:44 elliott: you know from experience? 03:52:33 Mathnerd314: From what I know of Sgeo finding out Santa wasn't real traumatised him and caused him to dedicate his life to overcoming the evil lies of Santa or something, so I hardly find the topic worth discussing *shrug* 03:53:10 anyone seen the new Tron? 03:53:11 -!- cheater99 has quit (Read error: Connection reset by peer). 03:53:27 not I 03:53:28 elliott, uh, no 03:53:42 Sgeo: I may have exaggerated slightly. 03:53:52 elliott, I was raised Jewish 03:54:39 Precisely. 03:54:41 Jewish Santa. 04:00:44 elliott: how did you get to be so insane? 04:01:56 Is the new TRON good? 04:02:57 Mathnerd314: ENDLESS AMOUNTS OF DRUGS* 04:02:58 *lies 04:03:16 j-invariant: The soundtrack is good (Daft Punk), dunno about the film :-P 04:04:16 random google/twitter/reddit link: http://mimeti.ca/journal/?p=1481 04:05:57 "# Tagged Christianity, Gnu, Jeff Bridges as Richard Stallman, root access, Sun Microsystems, Tron: Legacy" 04:05:59 lol @ first tag 04:06:04 * elliott tries to figure that out :D 04:10:14 -!- cheater99 has joined. 04:11:05 -!- zzo38 has joined. 04:11:39 yeah, a post carefully designed to be so obscure that elliott can't understand it 04:11:56 ok it's christianity because of sacrifice son i think 04:11:58 I THINK 04:11:58 -!- cheater99 has quit (Read error: Connection reset by peer). 04:13:10 -!- zzo38 has set topic: Count the seconds it takes to stop thinking about this sentence. | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 04:13:31 -1 04:13:34 argh :D 04:13:43 -!- elliott has set topic: IT IS CHRISTMAS AND SO WE WILL NOT HAVE ANY CONFUSING TOPICS | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 04:13:48 elliott: It's Christianity because it is Christmas, I think. 04:14:03 but that has nothing to do with tron 04:14:06 -!- Mathnerd314 has set topic: IT IS SECULAR CHRISTMAS AND SO WE WILL NOT HAVE ANY CONFUSING TOPICS | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 04:15:12 Is "The sillier you are to the batsman, the closer you are." a confusing topic? (Probably it is because I switched a few words around) 04:16:09 Yes :P 04:16:24 google's right sidebar has baubles 04:17:13 -!- elliott has set topic: IT IS PAGAN YULE AND SO WE WILL NOT HAVE ANY CONFUSING TOPICS | HAPPY TWO DAYS AFTER FESTIVUS | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 04:17:42 The "proper" way is "The closer you are to the batsman, the sillier you are." (but of course it is not completely proper either) 04:17:47 O, now the new topic message is OK. 04:18:00 You can make Yule as well as Christmas, now!! 04:18:01 is that cricket? 04:18:07 i think so 04:18:09 j-invariant: What do *you* think? 04:18:23 elliott: I don't see baubles 04:18:31 I can't decide because I find it odd that "sillier" is a cricket concept 04:19:06 j-invariant: "Sillier" isn't really a cricket concept. But the fielders standing very close to the striking batsman are said to be in the "silly" position. 04:19:28 oh 04:19:44 aha 04:19:46 http://www.google.com/search?q=christmas&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:unofficial&client=iceweasel-a 04:19:49 I will try watching cricket next time it's on TV 04:19:52 it's only for "christmas" 04:19:59 I ifeel like I am mssing out 04:20:06 (I don't think they say that the ones closer are "sillier", though.) 04:20:31 j-invariant: don't worry, IIRC zzo38 says he has never watched a game of cricket 04:20:42 j-invariant: so obviously you can reach this level of enjoyment without ever playing it or seeing it played 04:21:02 lol 04:21:09 elliott: You are correct, I don't even know what channel it is on. (Or if it is on any channel in where I am, at all.) 04:21:22 so you are a fan of cricket without having seen any games? 04:21:22 j-invariant: so watching it is completely superfluous! 04:21:27 yes, isn't it great :D 04:21:30 I like this idea 04:21:43 i think i'm going to be a fan of, uhh 04:21:48 american football 04:21:53 gonna buy ALL the rulebooks 04:22:00 mark the superbowl in my calender 04:22:03 not gonna watch it though 04:22:14 *calendar 04:22:28 If I had time, and I know what channel, I might watch a Test match. 04:22:43 but what about when they go for the real thing?! 04:22:56 elliott: What real thing? 04:23:04 the non-Test match! 04:23:12 Insane asylums: Where the sane go insane 04:23:14 04:23:18 elliott: That isn't what Test match means. 04:23:26 bah! 04:23:38 Sgeo: Don't worry, your stay will be peaceful. 04:24:05 Test match means the long game, with simpler rules but more strategy. 04:25:13 i didn't even realise it was festivus :( 04:25:27 what's festivus? 04:25:56 j-invariant: http://en.wikipedia.org/wiki/Festivus 04:25:58 j-invariant: For the rest of us. 04:26:04 [["Festivus" was a term used by the 2000 Baltimore Ravens of the National Football League (NFL) and their fans to denote the NFL Playoffs. During the season, Ravens head coach Brian Billick, wanting his players to focus on every game, banned the word "playoffs." Players substituted the term "festivus" for playoffs and "Festivus Maximus" for the Super Bowl. The Ravens eventually won the 2001 Festivus Ma 04:26:04 ximus, Super Bowl XXXV.]] 04:26:11 I love it when Wikipedia humours other people's jokes for a sentence 04:26:18 "The Ravens eventually won the 2001 Festivus Maximus" 04:26:39 [[# In 2007, in a commercialization of the holiday, the first Festivus Pole Lot opened [20] in downtown Milwaukee.]] oh the irony 04:27:26 I wish they would play Seinnfeld on TV 04:27:46 i think they do ... on one of Sky's 7 billion channels 04:28:19 at least here. 04:28:45 -!- cheater99 has joined. 04:30:33 -!- cheater99 has quit (Read error: Connection reset by peer). 04:42:00 -!- j-invariant has quit (Quit: leaving). 04:42:32 -!- pikhq has quit (Ping timeout: 264 seconds). 04:43:25 -!- elliott has quit (Quit: Leaving). 04:44:21 -!- pikhq has joined. 04:47:12 -!- cheater99 has joined. 04:48:38 * Sgeo wonders if elliott realizes I often rail against things that haven't affected me personally. I am utterly against faith healing, although no one I know has fallen for that BS. I am against thinking that vaccinations cause autism. 04:48:40 etc. etc. 04:49:20 -!- cheater99 has quit (Read error: Connection reset by peer). 04:55:50 I am trying to think of what kind of algorithms and so on to use in TeXnicard for plurals and other word forms. 04:57:44 Maybe a list of patterns such as "]:1:s" and so on, but what do with other word forms? 04:59:31 I am against drunk driving, texting while driving, and tired driving, but that might not be the best example -- I haven't learned to drive yet, and I have fears 05:00:07 Sgeo: I haven't learn to drive and never plan to. I don't want to have driving license, please. 05:01:34 -!- SgeoN1 has quit (Quit: Bye). 05:05:47 -!- cheater99 has joined. 05:08:17 -!- cheater99 has quit (Read error: Connection reset by peer). 05:25:13 -!- cheater99 has joined. 05:26:52 -!- cheater99 has quit (Read error: Connection reset by peer). 05:43:42 -!- cheater99 has joined. 05:44:51 -!- cheater99 has quit (Read error: Connection reset by peer). 05:46:15 * Sgeo vaguely gets offended at "Rides the short bus" 06:01:48 -!- cheater99 has joined. 06:03:25 -!- cheater99 has quit (Read error: Connection reset by peer). 06:05:30 -!- oerjan has joined. 06:06:10 06:08:48 -!- zzo38 has quit (Remote host closed the connection). 06:09:56 I love it when Wikipedia humours other people's jokes for a sentence 06:11:52 like in http://en.wikipedia.org/wiki/Will_Smith#Family_and_early_life. actually it looks sillier now than when i last saw it. 06:13:29 just an edit from yesterday though, so will probably be reverted 06:13:44 they should leave it :P 06:14:15 oh it wasn't _entirely_ serious before, it just that someone yesterday made it ungrammatical 06:17:54 filebin.ca is down 06:18:03 what's a non-suck file upload site these days? 06:20:12 -!- cheater99 has joined. 06:21:32 -!- cheater99 has quit (Read error: Connection reset by peer). 06:23:12 *it's 06:23:49 well yes. it does suck that it's down 06:23:52 make a recommendation 06:38:11 -!- cheater99 has joined. 06:40:55 -!- cheater99 has quit (Read error: Connection reset by peer). 06:56:43 -!- cheater99 has joined. 06:59:31 -!- cheater99 has quit (Read error: Connection reset by peer). 07:02:15 Merry Christmas! 07:02:30 (mêri kurisumasu!) 07:02:45 s/mêri/merî/ 07:04:20 merry christmas 07:04:42 * oerjan chews som dried fish 07:04:44 *some 07:06:35 How Norwegian of you. 07:07:37 it's a norwegian specialty, although really i think it's mostly sold to tourists these days :D 07:09:35 stockfish it's called in english, according to the bag 07:10:26 in this case, dried haddock 07:10:43 Never heard of it. It just really seemed to me that dried fish would be something exceptionally Norwegian for some reason. 07:10:56 oh wait 07:11:24 it's also exported in large amounts to southern europe and (the worst quality) africa 07:13:40 although i don't think they usually eat it without further preparation 07:14:37 "Beside oil, gas, and income from the merchant fleet, stockfish is Norway's longest sustained export commodity, and the socioeconomically most profitable export over the centuries. 07:14:47 -!- cheater99 has joined. 07:16:44 oh ... and it's of course the pre-stage to lutefisk! 07:17:18 Aaaah, so it's a traditional part of the traditional penance! 07:17:18 -!- cheater99 has quit (Read error: Connection reset by peer). 07:17:19 :P 07:17:27 heh :D 07:18:38 * oerjan considered buying lutefisk, but apparently it cannot be prepared in microwave 07:20:11 "After sorting by quality, most of the stockfish is exported to Portugal, Italy and Croatia. In Norway and Iceland, the stockfish is mostly used as a snack and for lutefisk production. In Italy and Portugal, the fish (called stoccafisso) is soaked and used in various courses, and is viewed as a delicacy. 07:21:04 oerjan: According to Wikipedia, "Lutefisk sold in North America may also be cooked in a microwave oven." 07:21:14 Because here in AMERICA we disbelieve in proper cooking! 07:21:18 ah. 07:21:56 well the package had no instructions for microwaving, unlike basically all the other ready-meals 07:22:59 It amuses me that lutefisk is more commonly eaten in the US than in Norway... 07:23:22 (largely courtesy of Scandinavian immigrants up north) 07:23:25 heh. well iirc there are more people of norwegian ancestry in the US than in norway 07:23:41 Probably. 07:24:55 Hmm. Perhaps I should actually try lutefisk. 07:25:02 pikhq: If you guys disbelieve in proper cooking, what do the Texans do? 07:25:22 * oerjan assumes they put everything on the barbecue 07:25:36 oerjan: Not only. But stereotypically, yes. 07:25:58 ah, no, there you would be mistaken 07:26:06 the Texans are actually aware of another cooking method 07:26:12 Deep frying! 07:26:16 Oh how they love it. 07:26:30 a little too much, if you know what I mean 07:26:30 ah. 07:27:12 Allow me to introduce you to "chicken-fried steak". 07:27:20 * oerjan has vaguely heardread on reddit about deep fried bacon 07:27:20 It is a *deep fried steak*. 07:27:50 And it's actually fairly typical in the South. 07:28:16 Oh, and served with gravy. 07:28:27 As is mandatory. 07:29:04 consider a spherical texan in vacuum... 07:29:25 (the name comes because it's made very similarly to fried chicken. Another typical food.) 07:29:30 (also delicious.) 07:34:12 -!- cheater99 has joined. 07:36:38 -!- cheater99 has quit (Read error: Connection reset by peer). 07:37:07 -!- Sgeo has quit (Read error: Connection reset by peer). 07:38:14 -!- hagb4rd has quit (Ping timeout: 240 seconds). 07:53:18 -!- cheater99 has joined. 07:55:19 -!- cheater99 has quit (Read error: Connection reset by peer). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:11:48 -!- cheater99 has joined. 08:12:49 -!- poiuy_qwert has joined. 08:13:47 -!- cheater99 has quit (Read error: Connection reset by peer). 08:30:49 -!- cheater99 has joined. 08:32:47 -!- cheater99 has quit (Read error: Connection reset by peer). 08:49:12 -!- cheater99 has joined. 08:50:14 -!- oerjan has quit (Quit: leaving). 08:50:46 -!- sebbu2 has joined. 08:51:11 -!- cheater99 has quit (Read error: Connection reset by peer). 08:53:36 -!- sebbu has quit (Ping timeout: 260 seconds). 09:07:47 -!- cheater99 has joined. 09:09:11 -!- cheater99 has quit (Read error: Connection reset by peer). 09:25:49 -!- cheater99 has joined. 09:27:36 -!- cheater99 has quit (Read error: Connection reset by peer). 09:44:12 -!- cheater99 has joined. 09:47:05 -!- cheater99 has quit (Read error: Connection reset by peer). 10:03:44 -!- cheater99 has joined. 10:05:32 -!- cheater99 has quit (Read error: Connection reset by peer). 10:14:59 -!- hagb4rd has joined. 10:22:10 -!- cheater99 has joined. 10:25:31 -!- cheater99 has quit (Read error: Connection reset by peer). 10:40:50 -!- cheater99 has joined. 10:43:53 -!- cheater99 has quit (Read error: Connection reset by peer). 10:44:35 morning 10:47:32 -!- Slereah has joined. 10:47:42 Vorpal: hi 10:48:18 merry I guess 10:48:27 it is xmas here tho 10:49:19 Quadrescence, well, it's the 25th here, but only in Scandinavia (as far as I know) does the celebration take place on the proper day, the 24th 10:49:33 ;P 10:50:23 i see 10:50:30 Vorpal: i pmed u 11:00:51 -!- cheater99 has joined. 11:03:18 -!- cheater99 has quit (Read error: Connection reset by peer). 11:04:38 -!- hagb4rd has quit (Ping timeout: 240 seconds). 11:20:12 -!- cheater99 has joined. 11:21:26 anyone happens to know if handlers registered with atexit() are called on ctrl-c? 11:21:40 -!- cheater99 has quit (Read error: Connection reset by peer). 11:21:51 or if I need a signal handler 11:23:21 seems like the answer is no 11:24:01 signal handlers it is then 11:38:16 -!- cheater99 has joined. 11:39:47 -!- cheater99 has quit (Read error: Connection reset by peer). 11:56:25 -!- cheater99 has joined. 12:03:02 -!- cheater99 has quit (Ping timeout: 240 seconds). 12:03:54 Yes, they are only called on normal exit. 12:04:09 Not for signal-caused termination. 12:15:51 -!- cheater99 has joined. 12:16:38 fizzie, hm 12:16:58 fizzie, do you know if calling complex stuff in a signal handler is safe if you exit at the end? 12:17:22 fizzie, basically I just want to stop any sound generation in the beeper program if it is ctrl-ced 12:17:22 -!- cheater99 has quit (Read error: Connection reset by peer). 12:17:36 fizzie, so I need a ioctl, then exit() 12:17:39 an* 12:17:47 and I'm not sure that is allowed in signal handlers 12:18:56 I'm not entirely sure. But perhaps there were some relaxations of the rules if the signal handler doesn't exist. 12:19:36 fizzie, I thought so, but I can't find any mention of it 12:19:54 ncurses' signal handlers do manage the terminal cleanup (incl. raw → cooked input flip) on signals, so it must be possible. 12:20:02 hm 12:24:03 Hm. 12:24:14 tcsetattr is in fact in the list of signal-safe functions, so they can call that. 12:24:16 I do mask off all signals, so that should not be an issue at least 12:24:18 Unfortunately, ioctl is not. 12:24:22 fizzie, gah 12:25:24 I assume it is because ioctl seems to be the sort of "catch-all" function of doing everything that doesn't fit anywhere else. 12:25:47 The list does include all kinds of IO stuff. 12:25:53 hm 12:26:13 fizzie, so I guess I need a volatile sig_atomic_t then 12:26:37 Well, there is that solution. Your sleeps should be interrupted by the signal anyway, I guess. 12:27:17 fizzie, yes quite. But what if someone hits ctrl-c when it isn't sleeping, sure not likely, but it could happen 12:27:17 It might be "safe enough" to risk, though. And of course there's not much you can do if you get SIGKILL'd during a beep. 12:27:27 which means I can't keep it off the "fast path" 12:27:33 fizzie, hm 12:27:34 true 12:28:21 You could sig-mask everything during the call to ioctl(); I think the only thing that's likely to break is if you call your beep-ioctl() while in the middle of another beep-ioctl() call. 12:28:24 fizzie, ooh wait, init can (and afaik does) ignore kill. You could ptrace init (hm does that actually work?) and inject the beeping code into it. 12:28:25 XD 12:28:51 fizzie, you mean sigmask while calling it in the signal handler? 12:29:03 No, in the app side. 12:29:35 fizzie, how would that help, the ioctl is just "start playing note at this frequency", then I have to sleep and do another ioctl to stop it playing 12:29:36 Or does sigblock just ignore it, instead of keeping it pending? I haven't really done much messing with signals. 12:30:09 oh wait, you mean like that 12:30:10 hm 12:30:31 I guess blocking does mean actual ignoring. 12:30:40 hm 12:30:44 It would be nice if there was some way of keeping the signal in the pending state until it's safe to handle. 12:31:25 No, it actually does work the way I think it would, I think. 12:31:28 "If the action associated with a blocked signal is anything other than to ignore the signal, and if that signal is generated for the thread, the signal shall remain pending until it is unblocked, --" 12:31:50 hm 12:32:02 So you could hopefully that way make sure the signal is handled when you're safely (for some values of safe) outside the ioctl. 12:32:55 Of course if you want to be literal with the spec, just avoiding the in-ioctl call-ioctl case doesn't make it fully proper. 12:33:30 hah 12:33:33 Or you could fork(), let the child handle the beeping (and ^C-from-terminal reception), and have the parent issue an extra "stop with the beep" ioctl whenever the child terminates. 12:33:48 -!- cheater99 has joined. 12:34:15 Doesn't help if someone deliberately sends a SIGTERM (or some other) first to the parent, then to the child. 12:35:39 (Well, except if you add in the parent a signal handler to kill+wait the child first, and only then stop the beeping.) 12:36:11 -!- cheater99 has quit (Read error: Connection reset by peer). 12:36:40 fizzie, this seems a lot more complex :P 12:37:02 did the sig_atomic_t now 12:37:41 fizzie, also debugging this /does/ make me nervous. sudo valgrind feels so.... scary 12:40:20 For debugging, could you just temporarily sudo chown the device node? (Or does it test against something else?) 12:43:38 fizzie, do you know why kernel code seems to shun floating point? 12:44:11 fizzie, well, the device node is /dev/console, which is as far as I know a bit special, in that it depends on the current vt 12:44:21 I don't know what messing with chown there would do 12:44:34 fizzie, possibly it would mess something up 12:45:44 I could however run it from a non-X vt 12:45:52 that should change permissions. 12:46:15 hm actually it doesn't 12:46:25 -!- oerjan has joined. 12:47:07 Floating point doesn't exist everywhere, which might be a good reason to shun it. 12:47:18 fizzie, I use the same interface as beep(1) but I can't even get beep to work on a vt as a normal user, though I remember that it worked in the past, and the man page states it should work 12:47:26 (see section "ioctl wackiness" 12:47:27 ) 12:52:27 -!- cheater99 has joined. 12:54:40 fizzie, fun: http://en.wikipedia.org/wiki/PC_speaker#Pulse-width_modulation 12:54:54 -!- cheater99 has quit (Read error: Connection reset by peer). 12:57:24 fizzie, btw I think I found out why that tandy sounded so different from the ibm in that video 12:57:45 according to wikipedia tandy had 3 channels 12:57:51 unlike the ibm which had one 13:00:37 it was mentioned in http://en.wikipedia.org/wiki/GW-BASIC not sure how reliable it is 13:11:28 -!- cheater99 has joined. 13:14:55 -!- cheater99 has quit (Read error: Connection reset by peer). 13:21:07 Ooh, three-channel beeping. 13:26:19 -!- TLUL has joined. 13:26:51 Message on all protocols: Merry Christmas!!!!! 13:29:28 -!- cheater99 has joined. 13:32:14 -!- cheater99 has quit (Read error: Connection reset by peer). 13:48:41 -!- cheater99 has joined. 13:50:58 -!- cheater99 has quit (Read error: Connection reset by peer). 13:56:41 fizzie, quite 13:57:10 fizzie, btw... tried MT-32 emulation in scummvm. But... ALSA lib pcm.c:7245:(snd_pcm_recover) underrun occured 13:57:20 I think it may be time to upgrade this computer 13:58:03 besides it didn't sound like the videos 13:58:12 (why I wonder) 13:58:26 (it sounded like even more advanced synthing) 13:58:33 could be sample rate or something I guess 13:58:38 -!- oerjan has quit (Quit: leaving). 13:59:53 huh, my thinkpad has two cards in /proc/asound... card0 and card29 14:00:13 card29/id says ThinkPadEC 14:00:17 card0/id says Intel 14:00:22 card0 is what I would expect 14:01:28 ThinkPadEC just has one control in alsamixer, named Console. And it is just mute/unmute, no volume control 14:03:10 -!- Mathnerd314 has quit (Disconnected by services). 14:03:31 -!- Mathnerd314_ has joined. 14:04:14 -!- Mathnerd314_ has changed nick to Mathnerd314. 14:07:30 -!- cheater99 has joined. 14:08:58 -!- cheater99 has quit (Read error: Connection reset by peer). 14:10:43 -!- Mathnerd314 has quit (Disconnected by services). 14:13:14 -!- Mathnerd314 has joined. 14:21:34 -!- FireFly has joined. 14:25:30 -!- cheater99 has joined. 14:27:35 -!- cheater99 has quit (Read error: Connection reset by peer). 14:30:21 Sounds like a ThinkPad console beep. 14:31:21 The motherboard-integrated Radeon card has an Alsa entry too, because there's a HDMI port that can be used for audio output. 14:31:36 There's a single alsamixer control called "S/PDIF", and it's also just mute/unmute. 14:32:26 -!- ais523 has joined. 14:43:42 -!- cheater99 has joined. 14:45:37 -!- cheater99 has quit (Read error: Connection reset by peer). 14:48:01 -!- TLUL has changed nick to TLUL|afk. 14:57:28 -!- TLUL|afk has changed nick to TLUL. 15:02:16 -!- cheater99 has joined. 15:03:31 -!- cheater99 has quit (Read error: Connection reset by peer). 15:07:03 -!- TLUL has changed nick to TLUL2. 15:07:33 -!- TLUL2 has changed nick to TLUL. 15:13:02 -!- ais523 has quit (Ping timeout: 240 seconds). 15:13:17 -!- TLUL has changed nick to TLULbot_. 15:13:18 -!- TLULbot_ has quit (Changing host). 15:13:18 -!- TLULbot_ has joined. 15:14:14 -!- TLULbot_ has changed nick to TLUL2. 15:14:35 -!- TLUL2 has changed nick to TLUL3. 15:14:57 -!- TLUL3 has changed nick to TLUL4. 15:15:22 -!- TLUL4 has changed nick to TLUL5. 15:16:25 -!- TLUL5 has changed nick to TLUL. 15:16:26 -!- TLUL has quit (Changing host). 15:16:26 -!- TLUL has joined. 15:20:14 -!- cheater99 has joined. 15:21:48 -!- cheater99 has quit (Read error: Connection reset by peer). 15:32:24 -!- hagb4rd has joined. 15:37:44 Sounds like a ThinkPad console beep. <-- ah perhaps 15:38:16 -!- cheater99 has joined. 15:38:38 fizzie, the thinkpad just beeps using the normal speakers. Normal volume control affects it 15:40:28 -!- cheater99 has quit (Read error: Connection reset by peer). 15:57:16 -!- cheater99 has joined. 15:58:07 -!- ais523 has joined. 15:59:02 -!- cheater99 has quit (Read error: Connection reset by peer). 16:04:12 -!- oerjan has joined. 16:15:25 -!- cheater99 has joined. 16:17:30 -!- cheater99 has quit (Read error: Connection reset by peer). 16:17:47 -!- Slereah has quit (Ping timeout: 240 seconds). 16:21:25 -!- Slereah has joined. 16:33:49 -!- cheater99 has joined. 16:36:34 -!- cheater99 has quit (Read error: Connection reset by peer). 16:46:22 -!- jcp has quit (Ping timeout: 265 seconds). 16:53:16 -!- jcp has joined. 16:53:19 -!- cheater99 has joined. 16:54:55 -!- cheater99 has quit (Read error: Connection reset by peer). 17:11:19 -!- cheater99 has joined. 17:13:19 -!- cheater99 has quit (Read error: Connection reset by peer). 17:21:49 -!- Wamanuz5 has joined. 17:23:09 -!- Wamanuz4 has quit (Read error: Operation timed out). 17:29:51 -!- cheater99 has joined. 17:32:13 -!- cheater99 has quit (Read error: Connection reset by peer). 17:32:59 hoooh 17:33:26 haaah 17:34:12 hieeee 17:34:42 I've been meaning to ask; what /is/ the other meaning of esoteric? 17:34:45 the non-programming one, that is 17:35:00 hidden mystic knowledge? 17:35:10 hmm, perhaps 17:35:27 "confined to and understandable by only an enlightened inner circle; "a compilation of esoteric philosophical theories" 17:35:41 Well, that is basically also the meaning we use! 17:35:45 Except less magical 17:35:47 `define esoteric 17:35:58 `swedish esoteric 17:36:01 !swedish esoteric 17:36:27 isutereec 17:36:35 * confined to and understandable by only an enlightened inner circle; "a compilation of esoteric philosophical theories" \ [23]wordnetweb.princeton.edu/perl/webwn \ * Esotericism or Esoterism is a term with two basic meanings. In the dictionary sense of the term, "esoterism" signifies the holding of opinions 17:36:37 esutereec 17:36:43 ooh it's working 17:37:11 huh 17:37:18 `swedish esoteric 17:37:19 isutereec 17:37:22 !swedish esoteric 17:37:23 esutereec 17:37:35 MUST BE DIFFERENT DIALECTS 17:38:14 Swedish and finno-swedish 17:42:15 russe-norsk 17:42:42 ( http://en.wikipedia.org/wiki/Russenorsk ) 17:43:18 i don't think that survived the soviet union. maybe it'll redevelop now... 17:44:30 although nowadays it's probably replaced by english 17:46:32 uhuh 17:48:26 -!- Mathnerd314 has quit (Quit: ChatZilla 0.9.86-rdmsoft [XULRunner 1.9.2.12/20101026210630]). 17:48:49 -!- cheater99 has joined. 17:52:13 -!- cheater99 has quit (Read error: Connection reset by peer). 18:19:17 uhuh 18:19:33 ^echo uhuh 18:19:33 uhuh uhuh 18:22:30 anyone tried Scala? 18:22:32 or Io? 18:42:14 -!- TLUL has left (?). 18:42:27 -!- TLUL has joined. 18:49:59 -!- KingOfKarlsruhe has joined. 19:27:13 -!- elliott has joined. 19:28:21 oh, hi elliott btw 19:28:27 hi ais523! 19:28:29 happy christmas 19:28:36 and/or other holiday of various kinds 19:28:36 (saying "btw" at the end of that makes it look like the channel's been active...) 19:28:44 and indeed, insert typical christmas greeting here 19:28:58 i got SICP :) 19:29:06 have you read it today? 19:29:18 like ten pages! finally i am a real programmer 19:30:29 `addquote * oerjan considered buying lutefisk, but apparently it cannot be prepared in microwave 19:30:31 255) * oerjan considered buying lutefisk, but apparently it cannot be prepared in microwave 19:30:45 only a Norwegian could decide not to bother with the delights of lutefisk because it would be too inconvenient 19:33:11 04:47:07 Floating point doesn't exist everywhere, which might be a good reason to shun it. 19:33:14 And also it is scary. 19:33:34 05:57:10 fizzie, btw... tried MT-32 emulation in scummvm. But... ALSA lib pcm.c:7245:(snd_pcm_recover) underrun occured 19:33:39 Vorpal: You did pirate the ROMs, right? 19:33:53 Doesn't work without them. 19:33:58 09:34:42 I've been meaning to ask; what /is/ the other meaning of esoteric? 19:34:07 ais523: Aleister Crowley magick, except more general 19:34:23 ais523: that's a hideous overgeneralisation, but 19:34:48 anybody stupid enough to think #esoteric on freenode would be about esoterica probably hasn't got a better definition themselves 19:36:04 i am, incidentally, very tired 19:40:38 so am I 19:40:49 I haven't been online recently because I've been pretty ill 19:40:58 still am, actually, but Christmas takes precedence for some reason 19:41:38 sorry to hear it 19:41:43 heck, some people put off dying until after christmas 19:41:44 did those keyloggers ever get written? 19:41:51 oh right, I have to mark those somehow 19:41:59 they've been submitted, and I have a bunch of them to mark 19:42:03 but I haven't dared to actually look at them yet 19:42:09 and now may not be a good time 19:43:19 heh 19:43:29 I need to find a suitable VM to mark them in 19:43:35 and it'll be a pain rebooting it all the time 19:43:56 a) because the kernel modules in question probably won't unload properly, b) because the very nature of the problem means that pretty much any error will just crash the system 19:46:44 ais523: qemu? that can boot without assembling a hard disk image 19:47:02 ais523: -kernel bzImage -initrd foo -append root=blah 19:47:08 well, root= just beind an example 19:47:49 http://syntensity.com/static/python.html <-- CPython, compiled to LLVM bitcode, compiled to JavaScript. 19:50:23 ais523: here's a riddle/thought experiment for you 19:50:30 ais523: (car '()) is an invalid Scheme program. 19:50:37 ais523: is (eval '(car '())) a valid Scheme program? 20:01:41 Gregor: http://syntensity.com/static/python.js 20:15:51 -!- Wamanuz5 has quit (Remote host closed the connection). 20:18:17 -!- Wamanuz has joined. 20:24:08 -!- zzo38 has joined. 20:25:01 Although I have never watched any cricket game on television or in a stadium, I have heard the game on the radio, I have seen photographs, and I have seen scorecards. 20:30:29 > ((evil '(lambda (x) x) '()) 20:30:29 '(hello)) 20:30:29 Error: attempt to call a non-procedure 20:30:29 ('hello '()) 20:30:30 huh what 20:33:58 [[ Interesting, but please, the wiki is really not a discussion board. We were using it that way before, but it sucked. Tell the forum about this matter. --Graue 02:02, 24 May 2006 (UTC)]], in reply to ais523 20:34:05 Graue must hate us so much :) 20:34:20 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep). 20:34:33 elliott: I disagree. The wiki works better as the discussion board than the forum we have. IRC can also be used for discussion. 20:37:09 -!- Sgeo has joined. 20:37:25 * Sgeo needs to take a chill pill sometimes 20:38:00 liquid nitrogen with raspberry flavor 20:38:37 =P lol 20:38:52 * Sgeo wonders what it would take to have solid nitrogen 20:42:47 63.153 K, -210.00 °C, -346.00 °F 20:43:52 hm that's only about 15 °C below boiling 20:48:02 elliott: I think everyone disagrees with em on that 20:48:15 wikis make very good forums 20:48:25 I find them much more convenient than most actual forums 20:48:32 ais523: I agree completely -- I was remarking on the fact that /none/ of Graue's policies seem to be popular 20:48:41 ais523: I think you are correct. I agree with you about that 20:48:54 The "no categories without discussing" thing is just weird, the keeping "User:" in links is weird too... 20:49:00 zzo38: I have watched cricket games, actually 20:49:16 it's rarely worth going to a stadium to actually watch the game, the field's so big you can hardly see what's going on, on TV works a lot better 20:49:20 (I've watched them both ways) 20:49:23 so, anyway, I'm trying to beat cpressey at his own game 20:49:26 also, I agree with User: in links 20:49:38 if you know me from Wikipedia, I'm a stickler for namespace separation 20:49:57 specifically, I'm trying to beat him at the "Scheme subset with a short self-interpreter" game 20:50:14 since, well, even reading the first few pages of SICP does things like this to you 20:50:42 elliott: You can ignore any policies that don't work that are bad except for the one about public domain. (Even wikipedia has one rule "ignore all rules" and it is basically of a similar idea; if the rule doesn't work, do something else. But also fix things to meet the rule if they should. There are rules for a reason!) 20:50:55 zzo38: that's not such a wise idea, at least it wasn't when Graue was around 20:51:00 his reaction to people breaking policies was to yell at them a lot 20:51:03 :) 20:51:09 only once, but it was pretty famous 20:51:15 combined with a mass revert of changes and a short ban 20:51:22 ais523: more than once 20:51:25 really? 20:51:31 the year categories thing is the only thing I can think of 20:51:33 yes, I found another Graue-rage recently, lemme grep the logs 20:51:38 ais523: You have watched at a stadium and television. What match was it and where was the stadium? 20:51:38 ais523: wasn't he against them? 20:51:51 zzo38: it was Edgbaston stadium in Birmingham, more than once 20:52:04 elliott: not in principle, e was against the fact they were implemented without asking for permission first 20:52:24 e doesn't mind the categories /themselves/ 20:52:40 What was wrong with the year categories? 20:52:48 elliott: not in principle, e was against the fact they were implemented without asking for permission first 20:52:54 ais523: grr, ever said something and then been unable to find it in the logs? 20:53:06 elliott: You are correct partially I think, of course there are rules for a reason. But you have to know the purpose of the rules too. 20:53:09 elliott: I can't remember 20:53:18 ais523: I mean, what was the match format? 20:53:20 it seems plausible that I've done that, but I can't think of an occasion on which it's happened 20:53:32 zzo38: five-day, either international or county 20:53:40 but not seeing all five days 20:53:40 10.12.22:19:37:47 haha, and some classic Graue rage: 20:53:40 10.12.22:19:37:49 [[I reverted your purge of Talk:Udage because that isn't the way wikis work. You do not own that page, nor do you own the Udage article. Do not delete valid information from this site again. --Graue 19:16, 10 Oct 2005 (GMT)]] 20:53:47 Is Graue even still active? 20:53:47 more commonly 1 or 2 20:53:51 Sgeo: nope 20:53:53 (he wiped the talk page after it got big, IIRC) 20:53:55 e only wakes up in emergencies nowadays 20:54:13 That's more active than I 20:54:15 >.> 20:54:24 (I agree with not blanking the pages, but the reaction is a bit over-the-top) 20:54:29 me, Keymaker and cpressey deal with most of the spam problem, that's pretty much the only thing that normally needs admin intervention 20:54:55 ais523: Well, that is OK. If there is enough of wrong thing that is emergency, it ought to be corrected like that. 20:54:57 ais523: I like how cpressey didn't even realise he was a sysop until I told him 20:55:01 ais523: despite him deleting pages before that 20:55:49 grr, I just realised I'm basically cheating at the self-interpreter game 20:55:53 accidentally 20:56:16 because I'm using various non-trivial procedures, and then just including them in the self-interpreter with 20:56:18 (foo . ,foo) 20:56:20 in the default environment 20:56:29 i.e., abusing metacircular privileges to vastly inflate the language 20:57:17 * Sgeo is excited for the upcoming release of Newspeak, despite not having enough time to submit my trivial IDE changes 20:57:32 Well, change. And it would probably be easier to describe the change than to package it up in any way 20:57:43 uh oh 20:57:45 my mouse is ... leaking 20:58:40 -!- elliott has left (?). 20:58:44 -!- elliott has joined. 21:00:22 ais523: is there an idealised algol self-interp? :) 21:02:13 it doesn't have I/O, so no 21:02:39 also, the interesting subsets are incapable of self-interpreting due to being FSMs 21:02:52 elliott, I assume that's a metaphor for trying to avoid me? 21:03:00 Sgeo: what 21:03:11 What could a mouse possibly leak? 21:03:11 ais523: you don't need IO, just have a program that is a function 21:03:14 taking a program and returning the result 21:03:17 *non-biological mouse 21:03:21 Sgeo: i wish i knew 21:04:16 that reminds me of my /quit I think my computer is on fire 21:04:35 elliott: it doesn't have any sort of string type either 21:04:48 not even an easy equivalent to lists 21:04:57 ais523: sounds useful! 21:05:11 idealised, see? 21:05:28 Have I actually talked about Alluded To Female enough in here for her to be called Alluded To Female? 21:05:38 Sgeo: No, and please don't make it that way. 21:05:45 PSOX! 21:05:49 ais523: assume a perfectly spherical programming language in a vacuum 21:06:09 So why did you mention Alluded To Female the other day? 21:06:21 I did? 21:06:51 elliott: hmm, you know, say, Iterable from Java, or your equivalent in insert-favourite-programming-language-here? 21:07:01 ais523: sure 21:07:06 that's pretty much as close to a string as you can get in Idealised Algol 21:07:10 When I said something about sending a message to Fidelity, and you thought Fidelity was her name 21:07:29 it's probably close enough to work from 21:07:29 ais523: so all strings are 8 bytes? :) 21:07:37 no 21:07:37 (say yes) 21:07:39 darn 21:07:52 they're things that support the same methods as a list of 8-bit characters would 21:08:00 ais523: oh, bool 21:08:02 not byte 21:08:05 yep 21:08:19 who needs data types other than booleans? 21:08:35 (actually, IA's type system is hilarious; it's based around 1-bit integers and 0-bit integers) 21:08:40 ais523: idealised algol has functions, does it not? 21:08:43 (and the 0-bit integers are used more often) 21:08:46 then why does it need booleans?! 21:08:49 it does, but only in the typed lambda calculus sense 21:08:55 0-bit... integers.. 21:09:07 I suppose it doesn't actually need booleans 21:09:07 ais523: you can do booleans in typed lambda calculus :P 21:09:15 *the typed 21:09:20 on the other hand, I think they end up equivalent in the final circuitry 21:09:58 (that is, \a\b.a and \a\b.b are wired the same way as true and false) 21:09:59 your language is bloated! I'm switching to Idealised Concurrent Lambda Calculus 21:10:32 ais523: how generic is idealised algol? e.g. could there be a VHDL compiler outputting idealised algol? 21:10:39 you have three or possibly four base types: command (0-bit int), integer (1-bit int), variable (like bool* in C), and perhaps Semaphor 21:10:43 *semaphore 21:10:51 0-bit int is just data () = (), surely? 21:10:54 there's some debate as to whether the semaphores are intrinsically needed 21:10:56 elliott: yep 21:11:06 but it can still be evaluated for its side effects 21:11:07 ais523: also, like (bool *) sans pointer arithmetic, one presumes 21:11:13 and yes 21:11:21 more like (bool &) from C++, except everyone hates C++ 21:11:25 ais523: I would call 0-bit int "the unit type" 21:11:31 0-bit integer just makes it sound strange for no real reason 21:11:31 or ref bool from ML 21:11:36 ais523: *bool ref 21:11:36 elliott: oh, we normally call it "command" 21:11:39 but that sounds even weirder 21:11:41 elliott: err, yes 21:11:50 in ML, type parameters come first, because inconsistency is a virtue 21:12:28 IA/ICA is pretty heavily inspired by ML, actually 21:12:42 except it's call-by-name 21:13:11 (this makes it difficult to determine whether it's lazy or eager, it has properties of both; mostly lazy, I think) 21:13:21 4:30 I quit IRC 21:13:23 (local time) 21:13:38 No, elliott. Not forever. 21:14:01 you have 16 minutes 21:14:03 oerjan! 21:14:13 * oerjan commends tswett on counting the number of sand particles in Nubia 21:14:55 no wonder he was away from the channel so long 21:15:06 oerjan, hmm? 21:16:49 wow, beating cpressey is really hard 21:17:41 oerjan: can you get a rubber hose to beat cpressey with? 21:18:04 elliott: just steal something from a shop, kill the Kops that come after you, and take theirs 21:18:12 (note: this may only work in NetHack, not in Real Life) 21:18:43 -!- poiuy_qwert has joined. 21:18:46 ais523: killing the Kops is not exactly /easy/ 21:18:53 it is, Kops are pretty rubbish 21:18:55 elliott: here =================================== 21:18:58 it's the shopkeeper that's the issue 21:19:03 the Kops are just there to get in the way 21:19:10 ais523: oh, the Kops are fine, I forgot 21:19:14 ais523: I was thinking of the Watch 21:19:22 who, er, bad memories 21:19:36 ineiros: YO HMOD UPDATE OUT CUZ IT'S LIKE THEI T 21:19:38 *THE IT 21:19:47 elliott, you escaped the watch IIRC 21:20:09 Sgeo: Correction -- I, pressing the keys that #nethack told me to, escaped the Watch. 21:20:12 #nethack is a very good player. 21:30:12 Well, bye all 21:30:24 Bye all. 21:30:35 I am sorry I am late. 21:30:44 ais523: What was the result of the match? 21:30:45 -!- Sgeo has quit (Quit: Leaving). 21:33:10 zzo38: I can't remember 21:33:12 it was ages ago 21:33:19 I don't think I was supporting either team 21:34:11 emacs appears to rearrange itself in my task bar if i move it 21:34:15 go next to firefox, stupid thing! 21:34:22 no, don't go next to two firefoxes 21:34:22 I found a description of algorithm for plurals, I might use something similar with TeXnicard. 21:34:27 I dragged you next to /one/ 21:35:24 But first I should add conditional processing commands @< ... @> 21:35:43 Or perhaps @[ ... @] 21:36:02 ais523: Do you need to support either team? 21:36:52 ais523: Do you remember if there were any ties or draws? 21:37:04 wow 21:37:07 my program has a cadadr in it 21:37:09 (cadadr e) 21:37:20 zzo38: draws are quite common, ties are pretty rare 21:37:25 (draws happen when you run out of time) 21:39:32 ais523: How common are draws? (I have only seen a few scorecards, so I don't know.) 21:43:49 pretty common 21:44:03 sometimes sides get greedy and get too many runs, then can't win in time 21:44:17 and sometimes sides stall for a draw because they know that declaring would probably make them lose 21:44:40 sometimes, about half the games are draws 21:44:45 grr, I think I might have to convert my defines into lets 21:44:55 (to the extent that county cricket introduced a tiebreak rule for draws, to stop people doing it so much) 21:45:33 declare? 21:45:46 concede the rest of your innings 21:45:49 coppro: Declare an innings closed is you end your current innings early. 21:46:08 you only do it when you think you'll win anyway, and fear that if you continue you'll end up running out of time and only getting a draw 21:48:50 OK, I /think/ I have BEGIN and DEFINE support now. 21:52:49 ugh, my default environment is going to be ugly though 21:52:51 since I have no LIST 21:53:24 (cons (cons 'cons cons) ...) 21:53:30 Cons cons cons cons cons cons cons. 21:57:09 Here is one possible rule (I don't know how well it would work): If one side has wasted more time than the other side in total, and the game is running out of time while the side wasting more time is the batting side, the batting side loses. (I don't know how well such a rule would work.) 21:59:37 how can you tell if a side is wasting time? 21:59:44 the rule actually used is based on runs per over 21:59:48 which is similar, in a way 21:59:57 in that timewasting tends to be quite low on runrate 22:00:09 whereas trying to hurry up so you can declare tends to be quite hich 22:00:10 *high 22:03:16 "I need help with another scheme question. I have four different functions that check four conditions to determine validity of the input. Each function checks one condition and returs a boolean. Normally, I would just check ((func1) && (func2) && .....)and print out the boolean. But appearantly Scheme48 doesn't allow logic operators. So How do I check the four functions without using logic operators?" 22:03:56 it'd be something like (lazy-and (func1) (func2) (func3) (func4)), although I don't know what the function's actually called in Scheme 22:04:11 ais523: "and", and it's a special form; but I know this, I was just quoting it for amusement. 22:04:12 -!- wareya has quit (Read error: Connection reset by peer). 22:04:16 ais523: I don't know if you can tell if a side is wasting time much, except possibly in a computer game. Or maybe with TV recording. I don't know. 22:04:20 [[I tried doing cond( (func1) (cond( (func2) (cond (func3) (cond (func4)#T))))) but it returns 22:04:20 Warning: invalid variable reference 22:04:20 cond 22:04:20 #{Package 173 user} 22:04:20 ; no values returned]] 22:04:23 ^ lol 22:04:54 -!- wareya has joined. 22:05:37 Maybe runs per over might work. Either way, if you think you could tell which side wasted more time in the match in total, do you think my rule would work? (I don't know for sure?) 22:09:37 In any case, I strongly think that the primitive for assigment 22:09:37 should be SET and not SET!. In fact, since no one likes assignment 22:09:37 anyway, I don't see any reason why anyone should object to just 22:09:37 leaving this undefined in the standard. 22:09:51 -- Kent M Pitman, the RRRS standardisation list, 1984 22:09:54 If only. 22:13:39 elliott: What is it that you are making? 22:14:52 zzo38: I am attempting to implement an interpreter of a restricted subset of Scheme in that subset, such that the self-interpreter is shorter than that of Chris Pressey's Pixley effort (http://catseye.tc/projects/pixley/) without the language being much bigger at all. 22:17:51 OK. Try to make that. 22:23:51 -!- j-invariant has joined. 22:27:01 wow I think this self-interpreter might actually work right now 22:27:04 -!- TLUL has changed nick to TLUL5. 22:27:09 -!- TLUL5 has changed nick to Cook_Me_Flax. 22:27:19 well, if I fix the ONE OR TWO errors :P 22:28:27 hmm, where _is_ that unterminated list 22:30:55 ais523: you never tried that riddle, did you? 22:31:07 well 22:31:08 "riddle" 22:31:12 in a very lose sense of the word 22:41:28 ugh, more bugs 22:42:11 This is the document I found about English plural: http://www.csse.monash.edu.au/~damian/papers/HTML/Plurals.html (I plan to use a somewhat more generic algorithm in TeXnicard) 22:42:14 -!- zzo38 has quit (Remote host closed the connection). 22:43:38 What is TeXnicard? 22:45:05 yay damian conway 22:48:05 im not sure ym little finger can take much more proving 22:48:49 j-invariant: you prove things with your little finger? 22:48:55 i tend to use my other fingers, too 22:49:47 -!- TLUL_ has joined. 22:50:14 -!- KingOfKarlsruhe has quit (Remote host closed the connection). 22:50:25 even with Ctrl moved to the caps-lock key, it's taking a beating with all these lemmas 22:50:51 j-invariant: the best place for ctrl is where alt is (on pc keyboards) IMO, that's where it originally was 22:50:54 and alt was at the extremities 22:51:00 originally = on ibm pc keyboards 22:51:01 hmm 22:51:12 although on os x of course this is done by default 22:51:14 well, with apple keyboards 22:51:20 any idea how to tell emacs this ? :D 22:51:26 not in emacs, though, which still uses ctrl... 22:51:36 j-invariant: dunno, what OS? 22:51:41 ubuntu 22:52:04 elliott: I have to say I like them where they are 22:52:38 -!- Cook_Me_Flax has quit (Ping timeout: 240 seconds). 22:52:55 j-invariant: system → preferences → keyboard → layouts → options... → ctrl key position → ...never mind, it doesn't have an option for it 22:53:04 j-invariant: you could mess around with xkb. but that way madness lies. 22:54:53 j-invariant: telling emacs, though... I /think/ you can tell it to consider another key to be C- 22:55:07 but i don't know how. 23:00:40 wait /what/ 23:01:41 -!- ais523 has quit (Remote host closed the connection). 23:04:08 ok this /almost/ works 23:05:10 Vorpal: You did pirate the ROMs, right? <-- I found some copies on an old floppy. It said "this is totally legal" on the sticker 23:05:23 Vorpal: I meant as opposed to not having the ROMs. :p 23:05:33 elliott, I do have the roms yes 23:05:40 elliott, it failed in a different way before that 23:05:46 elliott, which was to exit 23:05:55 elliott, and the music /plays/, it just stutters 23:06:00 every now and then 23:06:00 Vorpal: Note: The MT-32 has a superior sound to the emulator, even when it works properly. 23:06:06 And, also, uses less CPU. 23:06:12 Did I mention ScummVM can interface with a real MT-32? 23:06:17 elliott, I don't have one 23:06:18 What I'm saying is: BUY IT FROM ME GOD DAMMIT. 23:06:21 so that doesn't help 23:06:26 elliott, don't you want to use it 23:06:29 elliott, free shipping? 23:06:46 also I have nowhere to put it anyway 23:06:49 Vorpal: Free shipping if the price is at least \epsilon more than the cost of shipping :p 23:06:50 *:P 23:06:52 Also, it's not big. 23:07:05 elliott, approx dimensions? 23:07:22 Umm... it's wider and about as long as this 13" laptop, I'd say. Pretty flat; just enough for a display and some knobs. 23:07:25 Light, too. 23:07:32 Vorpal: http://upload.wikimedia.org/wikipedia/en/0/05/MT_32.jpg 23:07:34 Not big. 23:07:46 elliott, that doesn't really show the scale 23:07:48 Vorpal: http://www.chrisguitars.com/rol-mt32.jpg 23:07:51 Vorpal: Comparison with big power brick. 23:08:04 ah 23:08:19 elliott, won't fit. Only place I have is on top of the tower case really 23:08:37 Just put it on the floor :P 23:08:59 Alternatively, I'M SELLING AN AUTHENTIC SNAKE-OIL-COATED HOUSING STATION FOR THE MT-32. 23:09:05 Only $1e9999999999999999999999. 23:09:19 elliott, besides, the actual copy of the game for scummvm I have includes some *.ogg renderings that sound like the mt-32 23:09:22 and that don't stutter 23:09:29 and that scummvm seems able to use 23:09:33 Vorpal: Is that Monkey Island 1? 23:09:40 Vorpal: If so, those are rips of the CD tracks. 23:09:42 elliott, 1 and 2. Have only tried 1 so far 23:09:51 both have *.ogg 23:09:54 Vorpal: Right, 2 you don't need MT-32 for, just tell it to use Adlib. 23:10:01 Vorpal: Oh, and BTW, you want to turn on aspect ratio correction in the ScummVM settings. 23:10:02 elliott, but adlib sounds horrible 23:10:04 I heard that 23:10:08 Vorpal: Not for MI2. It's designed for Adlib. 23:10:11 (More or less.) 23:10:11 elliott, oh 23:10:24 elliott, aspect ratio correction? 23:10:33 elliott, won't it just resize the window? 23:10:34 Vorpal: Yes. global scummvm settings -> graphics. 23:10:47 Vorpal: tl;dr the games are 320x200. This was shown on a 4:3 monitor. 23:10:49 i.e. non-square pixels. 23:11:00 i.e. everything will look subtly wrong if you don't turn on aspect ratio correction. 23:11:01 yeargh 23:11:11 Vorpal: You probably want 2x or 3x scaling (with no filters) too. 23:11:16 Higher is better, since there's less error in the aspect ratio correction then. 23:11:18 elliott, btw xdpyinfo or whatever thinks I have (very slightly) non-square pixels 23:11:31 the dpi differs in like 1-2. I think it is wrong 23:11:36 Vorpal: I think that's just because you have non-square pixel distance, possibly. 23:11:40 With the actual pixels still being square. 23:12:01 elliott, well measuring and dividing by pixels gives it as square 23:12:10 Fair enough then. 23:12:12 but the difference is too small to actually be certain about 23:12:26 Now to figure out how my self-interpreter is broken. 23:12:41 Ahhhhhh-ha! 23:12:43 It isn't. 23:12:48 I was just foolishly using an INVALID PROGRAM. 23:13:16 elliott, I mean, I /could/ use the steel calipers I have. But the risk of scratching screen is high 23:13:27 elliott, also I don't think it would be enough for the width 23:14:42 elliott, it could be some integer rounding error for the dpi I guess 23:15:03 http://i.imgur.com/WhkPl.gif <-- Oh man, time to get some wood, I'm all out. La la la... la la la... WHAT AAAAAAAA 23:15:12 (on SMP, apparently) 23:15:21 Better with TNT though :P 23:15:40 Two of these three monitors report non-equal X/Y DPI numbers too. 23:15:42 $ xdpyinfo | grep -i resolution: 23:15:42 resolution: 93x95 dots per inch 23:15:42 resolution: 99x98 dots per inch 23:15:42 resolution: 96x96 dots per inch 23:15:58 elliott, wait, water on the wood? 23:16:04 elliott, oh right, you did that? 23:16:25 Vorpal: No. 23:16:29 elliott, we have 2 or 3 "water trees" on our server 23:16:34 We do? 23:16:54 elliott, two near 4000,4000, I made one (4x4x2 pool) and PH made one (1x1x1 pool) 23:17:00 elliott, and a third one elsewhere iirc 23:17:06 somewhere northeast of spawn 23:17:07 Oh, so a tree in water. Right. 23:17:38 Feck, it do not wurk. 23:17:39 elliott, that happens too 23:17:47 This a bads! 23:18:03 $ mzscheme -f diuerse.scm 23:18:03 (begin (define x (quote x)) x) 23:18:03 (begin x) 23:18:03 x 23:18:03 car: expects argument of type ; given () 23:18:04 elliott, or rather, way east from spawn there is a waterfall with multiple partially submerged trees 23:18:06 WHAT HAVE I EVER DONE TO YOU 23:18:18 elliott, this was natural 23:19:13 If I fix this bug, though, I think I've beaten cpressey. 23:19:27 Although I'll want to implement a compiler to C, so we can have a wonderful Diuerse interpreter in C. 23:19:36 Well. With a hardcoded program. 23:20:08 elliott, beaten him at what? 23:21:18 Beaten him with what? 23:21:51 "A ray of sunlight is made up many atoms." -- Plan 9 from Outer Space. 23:22:20 Supposedly with "of" in there, that might be a typo of whoever made this script transcription thing. 23:23:14 fizzie, well, not of sunlight, But what about a ray of CME? (Coronal Mass Ejection iirc) 23:23:41 Vorpal: Beaten him at "a Scheme subset with a short self-interpreter". 23:24:05 My language is slightly bigger than his (but smaller in some other aspects), but the self-interpreter is shorter and simpler. 23:24:08 elliott, oh, but didn't he hate the begin keyword? 23:25:04 Vorpal: "Take a can of your gasoline. Say this can of gasoline is the sun. Now you spread a thin a line of it to a ball, representing the Earth. Now, the gasoline represents the sunlight, the sun particles. Here we saturate the ball with the gasoline, the sunlight. Then we put a flame to the ball. The flame will speedily travel around the Earth, back along the line of gasoline to can, or the sun itself. It will explode this source, and spread to every place tha 23:25:04 t gasoline, or sunlight, touches. Explode the sunlight here, Gentlemen, and you explode the universe." 23:25:20 Vorpal: I could do without begin, it'd just be slightly uglier. I don't know that he hates it, anyway, and Scheme has no keywords; "begin" is a perfectly valid symbol, for instance. But, yes, the BEGIN special form. 23:25:39 fizzie: That is my new favourite science. 23:25:57 fizzie, ... this is so.... absurd 23:26:01 It's about a solaronite bomb. 23:26:44 -!- oerjan has quit (Quit: BOOOM). 23:26:58 Explode The Sunlight Here, Gentlemen, And You Explode The Universe sounds like a post-post-indie post-post-post-pre-'pata-post-hipster album title. 23:27:02 Okay, so not really. 23:27:05 BUT IT WOULD, IN A BETTER UNIVERSE. 23:27:10 Oh no, oerjan must've stumbled across some solaronite. Bye bye, universe. 23:27:19 RIP universe a long time ago -- recently. 23:27:40 elliott, I wonder what would happen in MC if the admin was to /give 64 blocks of 0 to a player 23:27:44 (that is air iirc) 23:27:50 Vorpal: I don't think you can hold air. 23:28:15 Also the "space soldier" bad guy is called Eros. 23:28:45 fizzie, .... .... 23:28:57 I wonder if pre-beta you could have placed air (with the item-placement hack) as opposed to mining. 23:30:07 At least with /give you can (or could) give someone water/lava source blocks, and they could hold those just fine. (They were rendered as thin, flat squares of water/lava when held in the hand.) 23:30:56 And protocol-wise the "no block" code tends to be -1, not 0. So it could do something. 23:31:47 fizzie: Minepedia is very adamant that you can't do any funny stuff with air, at least: http://www.minecraftwiki.net/wiki/Air 23:32:40 "There's no item with id 0" 23:32:48 Apparently not, then. 23:33:25 Water is nice and animated in the inventory too. 23:33:55 Both spring and block forms have the same tooltip ("Water"). 23:34:02 $ mzscheme -f diuerse.scm 23:34:02 (quote x) 23:34:06 No, no, no ... 23:34:12 fizzie: Portals even have a nice inventory icon. :p 23:34:19 As in, actual portal block. It just dies after a few seconds if you place it. 23:35:08 The non-source water block is pretty silly. You can place a block of still, non-flowing water anywhere, apparently. 23:35:29 Awesome. 23:36:42 -!- calamari has joined. 23:36:42 It works! 23:36:45 -!- sshc has joined. 23:36:58 hi 23:37:54 hi 23:41:28 hm I think that my procedures may not support recursion as-is 23:41:54 indeed 23:43:04 working on something fun? 23:44:01 calamari: semi-fun 23:44:14 calamari: a self-interpreter for a tiny subset of Scheme 23:44:28 the goal is to beat cpressey by having a shorter self-interpreter with a language about as small :) 23:44:53 cool 23:45:30 currently I have a 66-line interpreter which does everything except recursion. 23:45:46 and which I think can make self-interpret by changing (define (f ...) ...) to (define f (lambda (...) ...)). 23:45:49 well, and adding recursion :P 23:46:15 That's kind of like having a C compiler that doesn't support loops 23:46:43 Deewiant: Technically, all I have to do is fix DEFINE. 23:47:04 Deewiant: I could have it so that in (define name value), name is in value's scope. Except not really, because that'd be infinite recursion etc. 23:47:15 But the way I do it, define is basically a let around the rest of the program. 23:47:23 So I'm not quite sure what to do. 23:48:24 For define, all you need to do is implement macros and convert (define (f ...) ...) to (define f (lambda (...) ...)) using them 23:48:35 Deewiant: That's not the issue. 23:48:44 I know, I was being snarky. 23:48:52 Right. 23:49:05 The real issue is that "(define x (lambda () (x)) ..." doesn't work, because it just adds x to the environment in which it evaluates "...". 23:49:10 *x))) 23:49:16 And it's not exactly clear how to fix this. 23:49:28 I could add list mutation, but, uh, that's a lot of additional complexity and ugliness and horrible and ugh. 23:49:38 Wait! 23:49:40 Actually I can just fix define. 23:49:43 Wait, no, I can't. 23:49:46 Can I? Maybe. 23:49:55 Maybe if I add another parameter to EVIL to denote ... no, no. 23:50:00 But if ... no. 23:50:32 Deewiant: Fix my program, yo! 23:50:43 s/bugs// 23:50:46 Done 23:50:46 elliott, how goes the C game language thing? 23:50:58 well, not quite c 23:51:12 Vorpal: Waiting for Phantom_Hoover to return from his mandatory six-day relative-visiting-hell. (Note: Hell may be exaggerating. Slightly!) :p 23:51:35 elliott, actually I had guests from US this evening. Very nice. 23:51:58 Yes, but this is IRELAND. 23:52:21 they are not old relatives however, but rather young friends of my mom. 23:52:41 "mom"? You've turned into one of them already! 23:52:56 elliott, oh right "mum" in UK 23:53:30 -!- TLUL_ has changed nick to TLUL. 23:54:25 Grr, this is actually really subtle. 23:54:32 Clearly I did not read sufficient amounts of SICP today. 23:56:05 * elliott notes: 23:56:06 T3X.ORG : Goodbye 23:56:06 Due to a revision of German law (the controversial JMStV), I will take this site off-line on 2010-12-31 until some degree of legal certainty has been established. 23:56:08 and for posterity: 23:56:10 Looking for Scheme 9 from Empty Space? 23:56:11 It is now hosted at these locations: 23:56:11 http://tx97.net/s9fes/ 23:56:13 http://telegraphics.com.au/s9fes/ 23:56:15 http://www.sacrideo.us/s9fes/ 23:56:17 http://xivilization.net/~marek/s9fes/ 23:56:19 Thanks for giving the code a new home! 2010-12-26: 00:00:27 ((equal? (car e) 'lambda) 00:00:27 (lambda (args) 00:00:27 (evil 00:00:27 (car (cdr (cdr e))) ;; 00:00:27 (append (bind (car (cdr e)) args) env)))) 00:00:35 Hmm. 00:00:49 Pixley solves this problem by just Y-combinatoring, but, uh, ... 00:03:12 Nobody have any fantastically enlightening opinions to give? 00:03:47 evil?? 00:04:50 j-invariant: It's what I called eval to not step on the built-in R5RS procedure. 00:13:20 Great, it doesn't self-interpret... 00:13:29 Hello, HEATHENS 00:14:48 Gregor: YO. 00:14:50 Gregor: Fix my 'terp. 00:15:04 In fact, everyone fix my 'terp. 00:15:21 NOWAY BIACH 00:15:21 Gregor: If you don't want to do that, write a paper about this: http://syntensity.com/static/python.js 00:15:26 just have something that turns "lambda" into lambda and you're done 00:15:36 CPython compiled to LLVM compiled to JavaScript. 00:15:39 j-invariant: nope, it's a scope problem 00:15:48 j-invariant: basically "(define x y) ..." is the same as (let ((x y)) ...) 00:15:55 so obviously can't self-reference at all :-/ 00:15:58 scope is always difficult.. 00:16:03 I mean I'm just doing 00:16:07 (define mock 00:16:07 (lambda (f) 00:16:07 (f f))) 00:16:08 for now 00:16:11 and having everything be ugly 00:16:15 but i have a subtle bug now, in self-interpreting 00:16:18 which is just making me the sads. 00:18:13 specifically 00:18:15 cons: expects 2 arguments, given 1: (car #) 00:24:40 -!- RachelS has joined. 00:24:51 hi RachelS 00:25:14 hello Elliot 00:26:44 RachelS: this channel is about esoteric programming languages, btw 00:27:02 Ah yes I've visited your wiki 00:27:11 right, a lot of people come in here expecting other things :p 00:27:21 I had no expectations 00:31:23 -!- Wamanuz has quit (Read error: Connection reset by peer). 00:31:50 -!- Wamanuz has joined. 00:33:10 -!- RachelS has left (?). 00:34:38 -!- ineiros_ has joined. 00:39:44 -!- ineiros has quit (*.net *.split). 00:46:11 I hate re-writing :/ 00:51:02 ineiros_: hMod, it is the out. 00:52:35 -!- calamari_ has joined. 00:53:47 -!- calamari has quit (Quit: Bye). 00:54:02 -!- calamari_ has changed nick to calamari. 01:35:48 elliott: I'm running out o fmotivation :( 01:38:36 j-invariant: but category theory! 01:38:41 I know 01:39:02 I'ull make a roadmap 02:10:14 -!- hagb4rd has quit (Ping timeout: 240 seconds). 02:20:16 -!- Wamanuz has quit (Remote host closed the connection). 02:24:07 -!- Wamanuz has joined. 02:27:07 does anyone else want to try the Pixley Challenge? :-P 02:27:42 -!- Sasha has quit (Read error: Connection reset by peer). 02:28:07 -!- Sasha has joined. 02:32:41 what is it? 02:33:56 j-invariant: "Write a self-interpreter in a subset of R5RS Scheme. Optimise for the shortness of the interpreter and secondarily the size of the language. You may make it metacircular, but using EVAL itself is probably verboten in my opinion." 02:34:02 j-invariant: (That's what I just wrote now, not a quote.) 02:34:08 It must be able to interpret itself, obviously. 02:34:12 oh it has to be scheme 02:35:36 j-invariant: well you could do it to common lisp if you wanted i guess 02:35:40 but scheme is simpler to implement 02:38:04 j-invariant: why, what lang were you thinking of? 02:50:24 -!- benuphoenix has joined. 02:55:06 -!- benuphoenix has quit (Ping timeout: 272 seconds). 03:05:02 -!- pikhq has quit (Ping timeout: 255 seconds). 03:07:00 -!- pikhq has joined. 03:17:03 oh man, this is so close to working 03:18:08 Oh? 03:19:08 pikhq: yep, my metacircular subset-of-Scheme interpreter 03:20:29 procedure ...e/diuerse/d2.scm:34:5: expects 2 arguments, given 1: ((procedure? e) e) 03:20:31 hm, what :) 03:26:56 pikhq: fix my code! 03:29:25 Insufficient Calvin & Hobbes. 03:30:20 fuck yeah scheme 03:31:13 bsmntbombdood! 03:31:22 I've not seen you actually say something in ages! 03:31:24 hello 03:36:23 bsmntbombdood: less talking more pixley challenging 03:39:41 needs more call/cc 03:40:45 bsmntbombdood: if you can make the self-interpreter smaller by doing CALL-WITH-CURRENT-CONTINUATION ... be my guest but i find it unlikely 03:41:34 -!- pikhq has quit (Ping timeout: 276 seconds). 03:42:38 -!- pikhq has joined. 03:44:16 pikhq: so how do i order some piks from the hq 03:47:34 -!- Wamanuz has quit (Ping timeout: 276 seconds). 04:09:29 http://projectfortress.sun.com/Projects/Community/blog/ReplaceFancyPantsTerminology Guy L. Steele thinks that instead of saying "Commutative[Q,*]" we should say "OrderDoesn'tMatter[Q,*]". What. 04:11:54 yes, throw away existing, formally-defined terminology so someone doesn't have to learn something 04:12:19 this has nothing to do with programming languages... this post is PR or something 04:13:04 yeah i like the fortress guys but ... what on earth made him think that 04:14:35 too much chrismas spirit or someshing 04:21:54 I wonder if floating point has any "useful" properties ... i.e. can you restate basic identities in them given some well-defined error term or whatever? 04:22:15 like being able to say that a+b = b+a+error, except I'm pretty sure floating point addition is at least commutative ... 05:03:36 pikhq: Holy shit. WebTV is still marketed and sold. 05:03:38 pikhq: As the "MSN TV". 05:06:28 -!- FireFly has quit (Quit: swatted to death). 05:12:08 -!- calamari has quit (Quit: Leaving). 05:13:50 -!- elliott has quit (Remote host closed the connection). 05:14:49 Holy shit. People still buy that crap? 05:18:29 http://i.imgur.com/U4mPS.png 05:18:39 rms doesn't quite give the same air as jimbo wales 05:20:56 -!- pikhq has quit (Ping timeout: 264 seconds). 05:22:37 -!- pikhq has joined. 05:32:29 -!- Sgeo has joined. 05:39:40 are the ashes on? 05:40:50 I'm afraid some murderous robots from the planet Krikkit took them. Something about the "Wooden Bail"... 06:05:43 i hate floats 06:05:53 rational bignums ftw 06:06:07 DIE FLOATING POINT DIE 06:06:23 indeed 06:06:49 And I hate anyone who sees a coordinate system in the form of 0.54, fails to realize that it's internally an int that, in that example, stores 54, and decides to model it with floating point 06:06:59 * Gregor <3 floating point 06:09:19 * Sgeo hits Gregor with a banking program written by an idiot who used floating-point to represent currency 06:09:34 Ooooh, that's bad ... 06:11:42 -!- pikhq has quit (Ping timeout: 260 seconds). 06:12:41 -!- pikhq has joined. 06:20:18 -!- TLUL has quit (Ping timeout: 265 seconds). 06:22:06 -!- Mathnerd314 has joined. 06:38:31 -!- wareya has quit (Ping timeout: 260 seconds). 06:39:34 -!- zzo38 has joined. 06:40:12 zzo38: are the ashes on 06:41:11 j-invariant: I don't know. Did you ask a question about TeXnicard after I quit earlier today? 06:41:21 yes what is TeXnicard 06:41:21 -!- wareya has joined. 06:42:03 j-invariant: TeXnicard is a program designed for making high-quality production quality cards such as Magic: the Gathering and so on, and also pack generation, statistics, and more. 06:42:30 why is stats and stuff in TeX 06:42:32 that seems totally wrong 06:42:34 It uses TeX to do the typesetting, METAFONT for fonts and set symbols, and ImageMagick to put everything together and apply. 06:42:40 like 100% totally totally wrong 06:42:43 oh cool zzo38 that sounds good 06:42:43 coppro: The stats and stuff is not in TeX. 06:42:47 zzo38: oh 06:42:54 j-invariant: basically he's trying to replace MSE 06:43:00 TeXnicard is not written entirely in TeX. It only uses TeX for the typesetting. 06:43:02 knowing zzo38 it will likely not happen 06:43:06 but if it does, <3 06:45:23 I have actually already written much of TeXnicard already. 06:47:19 It is already 71 pages long so far. 06:47:41 pages? 06:47:45 you measure code in pages? 06:48:15 coppro: Yes. (Note this count also include the index and table of contents) 06:48:41 oh god 06:48:44 are you using CWEB? 06:48:50 coppro: I am using Enhanced CWEB. 06:48:54 oh dear 06:49:24 coppro: Is such a thing wrong? 06:51:59 CWEB makes me twitch 06:52:13 coppro: Why? 06:52:52 because it's so focused on making documentation out of code 06:53:11 but this is usually unnecessary 06:53:40 you're doing something wrong if you need a paragraph of text to accomplish each paragraph of code 06:53:58 coppro: A paragraph of text is not necessary for most of the paragraphs of code. 06:54:07 But sometimes it is useful to do so. 06:54:24 in which regular comments usually do fine 06:54:36 coppro, Factor separates code and docs into separate files 06:55:02 Even for the ones without, it is useful to organize into chapters, use code chunk rearrange, index, and more things. 06:55:11 Sgeo: that I disagree with too 06:55:32 there should really be two sorts of docs 06:55:39 API docs and comments 06:55:49 API docs are "how to use this piece of code" 06:55:52 Code and explanation is printed together in one book. 06:56:08 while comments let someone looking at a confusing block of code understand it 06:56:12 API docs should be separate 06:56:15 Mostly the explanations are about the "higher purpose" of the code. 06:56:30 It can be written as you write a book. 06:56:30 putting API docs in comments and exracting them automatically is ok 06:58:26 I generally only put explanations where I think it to be necessary or if it is an interesting thing to put in the book. 06:59:34 Enhanced CWEB has other features too, such as change files, and code generation (I used some @{ ... @} blocks for interpreted codes for code generation in this program, too) 07:06:34 What I see with literate programming, is basically, the program is also a book. Or in other words, the book is also a computer program. It goes both ways. 07:08:56 Even TeX itself is written in WEB!! 07:11:43 -!- oerjan has joined. 07:15:18 yeah, typical documentation does usually leave the super-high-level concepts out in the dust 07:15:53 Dust? 07:16:29 DRIVE THEM OUT INTO THE SAHARA 07:16:45 zzo38: as in the coders leave it behind 07:16:46 in their heads 07:17:13 oerjan: What does the Sahara have anything to do with this? 07:17:38 i hear it's rather dusty 07:18:15 coppro: Yes. That *is* one thing you do in this book. Explain it and read it at many levels, because you can read the explanation of the "higher purpose" of each chunk (and chapter), and the cross-reference of the other chunk, too. 07:18:35 zzo38: I still believe CWEB is overkill 07:19:01 coppro: That is OK, you don't have to use it. I use it, though. 07:19:04 k 07:19:15 20:09:29 http://projectfortress.sun.com/Projects/Community/blog/ReplaceFancyPantsTerminology Guy L. Steele thinks that instead of saying "Commutative[Q,*]" we should say "OrderDoesn'tMatter[Q,*]". What. 07:19:20 20:11:54 yes, throw away existing, formally-defined terminology so someone doesn't have to learn something 07:19:38 it's also imprecise, since "order doesn't matter" would tend to imply associativity as well 07:19:42 oh hello oerjan 07:19:50 hi 07:20:09 * Sgeo is so stupid sometimes 07:20:22 Trying to do 4 chapters in one night, then 7 page essay the following day 07:20:35 Well, just finished one of the chapters, at any rate 07:21:08 i am finally learning haskell ^_^ 07:21:12 you still have class 07:22:00 coppro, the grades are due in by Tuesday, the professor saidn "Can you get in the review questions and a final paper by Sunday?" 07:22:01 are the ashes on? 07:22:20 suddenly half the channel seems to be interested in cricket... 07:22:29 Sgeo: where the hell are you in school 07:22:46 I thought it might help me with my mathematics 07:22:57 you're in the land of disregarding the establishment clause, right? 07:23:00 There are no more classes, classes ended last week I think, no, that was finals week I think 07:23:21 lol 07:23:30 my school has a rule against assignments in exams 07:23:40 usually complaining doesn't do much because they make it due earlier 07:23:59 coppro, there's something you're not grasping: All of this stuff was due over the course of the semester. 07:24:01 but it would probably actually work if you tried it now given that classes ended three weeks ago 07:24:05 Sgeo: oh 07:24:08 so you're just an idiot 07:24:14 coppro, yes. 07:24:24 k the 07:25:13 This is like suddenly not showing up to class for half a semester, then trying to do all the homework and exams in a fixed time period...... and putting THOSE off until well beyond reason 07:25:26 I'm never taking an online class again. 07:30:14 -!- Mathnerd314 has quit (Quit: ChatZilla 0.9.86-rdmsoft [XULRunner 1.9.2.12/20101026210630]). 07:30:36 Sgeo what happened? 07:30:58 j-invariant, I stopped even looking at the online course for a few months 07:31:05 why? 07:31:17 were you fed up or juts thought it wasn't necessary? 07:31:41 j-invariant, because. I was overdue with one thing, and it sort of snowballed. And yeah, I may have been a bit cocky, come to think of it. Usually, in my mind, "computer course" == "easy A" 07:32:08 aw that sucks, what is the course about? 07:32:31 Cryptography and Computer Security 07:32:37 Anyways, this question looks fun 07:33:15 -!- zzo38 has set topic: If you do not have access to IRC, then please do not read this notice. | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 07:33:43 zzo38: hey, think of the poor log readers! 07:35:58 cryptography is an actual science 07:36:16 like you have to weigh up advantages and stuff 07:36:53 sadly based partly on unproved conjectures 07:37:07 "Organizations may be willing to pay more for security products if the perceived risk is high, even if its completely off the mark from the actual risk. For instance, currently, in the U.S., a lot of money is being spent on controversial back-scatter machines for airports. It is unclear that the machines are effective, however, in the minds of many, the risk of terrorist attack outweights the risk of automobile accidents, although the latt 07:37:08 er claim many more lives, and might be a more worthwhile thing to invest against (depending on what can be invested on to prevent such accidents with effectiveness)." 07:37:10 Sorry 07:37:20 I think I'm not forming my ideas coherently anymore 07:38:32 Can you find a proof, counterexample, or proof that there is no proof? 07:38:51 zzo38: was that a response to me? 07:39:06 Or proof of the opposite, even though you can find no counterexample? 07:39:12 oerjan: Partially, yes. 07:39:16 it's based on evidence rather than mathematical proof 07:40:22 zzo38: one _might_. finding a proof would require proving the P!=NP conjecture. 07:41:12 the opposite might be somewhat weaker 07:43:00 while there is no actual proof of P!=NP yet, there are some results that imply the "easy" methods of complexity theory cannot work to resolve it 07:43:43 I always wanted to learn those theorems 07:43:54 think it would take years though.. 07:44:16 there are statements like that about fermats last thoerem and four color thoerem? I think 07:44:35 i haven't heard about those... 07:44:46 maybe that's my imagination 07:45:12 there were of course many false leads, which might vaguely be interpreted as such theorems 07:46:09 Is there such a thing as a proof that there is no proof that there is a proof of such a theorem? 07:47:19 Wooo! 07:47:24 2 chapters down, 2 to go 07:47:45 Didn't even read the chapter, just the questions :/ 07:47:55 I don't think I mentioned computing even once... oh, I did 07:48:00 Railed against the Cloud a bit 07:48:01 zzo38: probably. there are some restrictions though. for example if you proved that there was no disproof of fermat's last theorem, then you would have proved it... this is because there is an explicit, if non-terminating algorithm to find any counterexample. 07:48:42 oh and proofs that there are no proof need to be conditional on the consistency of the system, to avoid godel's theorems 07:48:48 oerjan: O, I guess you are right! That would work. A counterexample is a disproof. 07:49:16 oerjan: Ah, you must be right about that too. 07:50:11 How many years before IRC did Hofstadter write the GEB book? 07:51:25 IRC is from 1988 and GEB was published in 1979 07:51:43 how come it's popular now? 07:51:49 says wikipedia 07:53:14 -!- j-invariant has quit (Quit: leaving). 07:53:37 7 page paper. Written on lack of sleep. It's going to be fun on a bun 07:56:11 -!- pikhq has quit (Ping timeout: 255 seconds). 07:57:09 Sgeo: just hope you don't wake up and discover it consists only of repetitions of "All work and no play makes Seth a dull boy" 07:57:51 -!- pikhq has joined. 07:58:51 lol 07:59:41 oerjan: Well, it will be glad that it doesn't say that! (It says "Jack" instead of "Seth") 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:00:51 well in any case i'm sure his paper will set a shining example 08:01:38 oerjan: Do you think he has enough shiny ink? 08:01:44 I watched that movie a long time ago. I remember nothing about it 08:01:54 Watched it at a sleepover iirc 08:02:01 Or I could be hallucinating 08:02:20 I think there was also The Excorcist, which I declined to watch, and some stupid movie about Martians 08:02:38 I think I've only ever been to one sleepover in my life, so 08:02:43 Except on a class trip 08:02:47 I'm rambling 08:03:34 Supposedly, I didn't eat on that trip 08:04:15 Or I could be misremembering someone screaming about that at me, my memory of the trip itself is hazy 08:04:19 so it was an evil camp where they starved children. got it. 08:04:29 But it sounds like something I might do, but that's not reliable 08:04:42 oerjan, there was almost certainly food. I can just imagine myself not touching it thogh 08:04:53 Maybe I drank Ensure. Used to have Ensure for lunch every day 08:05:05 If everything is an illusion and nothing exists, do you think he definitely overpaid for his carpet, or do you think the money you used to pay for it is all hallucination? 08:05:20 zzo38: is that a quote? 08:05:47 ah woody allen 08:05:55 oerjan: No. It is something I wrote in the margin of a book, next to a similar quote. 08:06:41 zzo38: it could be both... even illusionary money can be a scarce resource 08:07:01 oerjan: OK. 08:07:17 which iiuc is all that matters to economists 08:07:53 in fact our modern money is quite close to being an illusion already 08:07:56 -!- CoBa has joined. 08:08:01 But then, everything being an illusion and nothing exists, does not *make* it he definitely overpaid for his carpet, directly. It might imply such a thing *indirectly*, though. 08:08:09 (For example, if the carpet is expensive) 08:08:58 zzo38: i am quite sure woody allen was joking, anyway 08:09:38 oerjan: Yes, of course. But this quote was in a book about philosophy (along with many other things, some of which are jokes). 08:11:00 -!- CoBa has quit (Quit: ). 08:22:57 This philosophy also contains a recipe for some Chinese food: 08:23:20 1 pcs. chicken, 4 pcs. preserved beancurd, some gingar, chive, salt, sugar, gourmet powder, syrup, perfune, wine. 08:23:49 After wash, apply the preserved beaucurd, gingar, chive, salt, monosodium, sugar, syrup, perfume, wine into the bally of chicken, sew with iron needle. 08:24:13 After scalded by boiling water, pour water on duck, apply the syrup on the skin. 08:24:16 Hang it with cancel. 08:24:26 Then roast the chicken for ripe and skinn turn into gold-red colour. 08:29:32 -!- zzo38 has quit (Quit: Surely you are joking, Mr. Feynman!). 08:35:47 -!- asiekierka has joined. 08:35:52 http://pastebin.com/idZbZm8A <- my work of yesterday 08:36:40 app stored in app.txt, in binary (for example: 0000 0011, non-01 chars are ignored) 08:38:47 brainf**k can be implemented in it so it seems turing-complete 08:40:12 asiekierka: don't you mean s/shift/rotate/ ? 08:40:34 yes, yes i do 08:40:51 the interpreter is not really good 08:40:52 but it works 08:40:55 i've tested all the commands 08:41:14 i assume those shift/rotate operations are what makes it more than a pushdown automaton in power 08:41:44 well 08:41:45 is it any good 08:44:45 it seems a bit run-of-the-mill to me 08:59:08 3/4 09:00:54 3/4 what 09:01:11 Chapters of Review Questions 09:04:23 0000 0000 0111 09:04:24 1000 0001 1101 0000 1101 0111 0001 1100 0111 0001 1100 0111 1001 09:04:31 code to duplicate value on the top of the stack 09:04:34 well, not quite 09:04:45 0000 0000 0111 09:04:45 1000 0001 1101 0000 1101 0111 0001 1100 0111 0001 1100 0110 0110 1001 09:05:33 i'll have to work on it 09:14:59 0000 0000 0110 0110 09:14:59 1000 0001 1101 0000 1101 0111 0001 1100 0111 0001 1100 0110 0110 1001 09:15:01 there, fixed 09:15:05 first line is initalization 09:15:10 second line is copy 09:15:20 you're left with two values, counting from the top of the stack they're 0, 2, 2 09:16:43 "If we think of documentation as a written work of nonfiction (or, perhaps, fiction)" 09:18:25 it seems a bit run-of-the-mill to me 09:18:32 that inspired me for a name for my esolang 09:18:34 -!- variable has joined. 09:18:36 stackmill 09:20:04 variable = "I am too tired to actually think of anything creative here"; 09:20:07 http://pastebin.com/FADctGjY 09:20:32 Sgeo, ? 09:20:53 My way of both saying hi and trying and failing to be humorous 09:21:05 Sgeo, variable == "I don't like being googled' 09:21:10 and Hi 09:21:53 http://codepad.org/R1ydyMJ8 --> does anyone see anything wrong with this implementation of brainfuck ? 09:22:06 Oh, I wasn't saying you weren't creative 09:22:09 I was saying I was 09:22:18 I am doing half a semester's worth of homework in one night 09:22:21 variable i don't think so 09:22:25 sorry http://codepad.org/7jjWZ8QN 09:22:31 but you could keep a stack of instruction pointers for the [...] 09:22:36 that would speed it up A LOT 09:22:48 asiekierka, yeah - but it would complicate the code :-) 09:22:52 yes 09:23:08 asiekierka, problem is .. its Not Working for any code with []s 09:23:10 but I don' 09:23:13 but I don't see why 09:23:28 Sgeo, what class? 09:23:40 Cryptography and Computer Security 09:23:53 Sgeo, fun - the best class :-) 09:24:13 variable, unless you screw up like I have and don't do any work for a few months 09:24:35 asiekierka, do you see anything wrong with my [ and ] implementation ? 09:24:47 Sgeo, ha 09:25:27 variable: the test for ] should be != 0, not == 0 09:25:46 variable i am busy porting my stackmill interp to the GBA 09:25:48 stackmill is my own esolang 09:26:13 oerjan, oh woops. that was a copy/paste error ;-) 09:27:15 I wish I knew this channel existed 09:27:24 oerjan, hah! I'm getting more work done while in here than I ever have while forced out! 09:27:27 my computers are named after esoteric programming languages 09:27:33 your wish has been fulfilled! 09:27:34 ie AlphaBeta Bork, 09:27:38 BrainFk 09:27:39 etc 09:27:46 Sgeo: heh 09:27:54 Sgeo, knew != know 09:28:36 variable: wishes sometimes tend to come with uncomfortable delays 09:28:45 sadly 09:29:13 * Sgeo decides not to state his sexual wishes in the channel 09:29:44 ^^even that might have been a bit much 09:30:06 Sgeo: i don't think that is very revealing 09:30:18 It might give variable a wrong impression 09:30:27 oerjan, thanks for the bugfix 09:30:42 you're welcome 09:30:42 now.. to see if I make it just as simple... without the stack/programsize limitation \ 09:32:11 ,[.,] --> cat in brainfuck :-) 09:33:38 ^show cat 09:33:38 ,[.,] 09:33:55 Our "echo" command is a bit on the whimsical side. 09:33:58 ^echo Hello? 09:33:58 Hello? Hello? 09:34:03 :-| 09:34:06 ^help 09:34:06 ^ ; ^def ; ^show [command]; lang=bf/ul, code=text/str:N; ^str 0-9 get/set/add [text]; ^style [style]; ^bool 09:34:11 ^code 09:34:14 ^source 09:34:14 http://git.zem.fi/fungot/blob/HEAD:/fungot.b98 09:34:20 I always forget which one it is. 09:34:26 :-) 09:34:48 someone should rewrite it in INTERCAL 09:35:11 I'm guessing that'd be a good idea if that someone were paid by line. 09:35:38 fungot: Say something insightful this time? 09:35:39 fizzie: and the blots are removed from that player loses one blue vc. a unique instance of a 09:35:41 ^style 09:35:42 Available: agora* alice c64 ct darwin discworld europarl ff7 fisher ic irc jargon lovecraft nethack pa speeches ss wp youtube 09:35:44 ^style irc 09:35:44 Selected style: irc (IRC logs of freenode/#esoteric, freenode/#scheme and ircnet/#douglasadams) 09:35:54 fungot: The agora style isn't very insightful. 09:35:55 fizzie: what language? answered my question already 09:36:52 fizzie, you don't know of Agora? 09:37:18 Also, blots are OLD 09:37:23 Oldie oldie old 09:37:26 Sgeo: I do, but it stil doesn't make that very insightful. 09:37:52 Yes, well, the model was built out of some sort of a collection of both current and historical rules. 09:39:35 its 430 AM 09:39:41 * variable has NO idea why I'm up 09:46:17 -!- pikhq has quit (Ping timeout: 260 seconds). 09:48:08 -!- pikhq has joined. 10:07:36 -!- oerjan has quit (Quit: leaving). 10:29:28 yay 10:29:35 ported my interpreter to GBA 10:29:38 and found a bug in libgba's printf 10:29:45 so i had to use an itoa 10:45:05 libgba ? 10:45:11 game boy advanced/ 10:45:18 also -> what bug? 11:03:20 -!- Wamanuz has joined. 11:04:30 printf("%d",i) for i values over 9 breaks 12:09:34 -!- FireFly has joined. 13:15:17 -!- oerjan has joined. 13:16:17 printf("%d",i) for i values over 9 breaks 13:16:36 someone thought %d was for "digit"? :D 13:19:59 asiekierka, hm... reported the bug? 13:21:16 asiekierka, hm is it a freestanding or a hosted environment? 13:21:21 (in the C sense) 13:21:49 quoting C99: "A conforming freestanding implementation shall accept any strictly conforming program that does not use complex types and in which the use of the features specified in the library clause (clause 7) is confined to the contents of the standard headers , , , , , , and . " 13:22:13 notably this does not include stdio.h 13:23:27 I'm not sure, but I *think* this means that *iff* it is a freestanding implementation, then it can do what the hell it wants in stdio.h, including making demons fly out of your nose. 13:23:50 err wait no 13:24:16 "A conforming implementation may have extensions (including additional library functions), provided they do not alter the behavior of any strictly conforming program³⁾" 13:24:57 "³⁾ This implies that a conforming implementation reserves no identifiers other than those explicitly reserved in this International Standard." 13:25:06 hm 13:25:39 well that last bit is not in the bit that is specifically about freestanding 13:25:50 so I'm not sure how you should interpret it 13:27:48 atm I'm tying to figure out this statement: "A program that is correct in all other aspects, operating on correct data, containing unspecified behavior shall be a correct program and act in accordance with 5.1.2.3." 13:30:12 Vorpal 13:30:13 about the bug 13:30:21 it only happens in the best GBA emulator available, NO$GBA 13:30:27 it doesn't happen on the worse emulators (VisualBoyAdvance) 13:30:28 or the real thing 13:30:55 (btw, of those headers required in a freestanding environment, only stdarg.h and float.h are non-trivial.) 13:31:09 asiekierka, maybe it isn't the best emulator then 13:32:20 (actually, it seems float.h is trivial too) 13:42:06 Vorpal sadly it is 13:42:11 it implements the most features and quirks 13:42:13 out of all emulators 13:42:36 has a debugger (paid, though) 13:42:41 and is recommended by most homebrew devers 13:44:07 -!- variable has quit (Read error: Connection reset by peer). 13:44:33 -!- variable has joined. 14:11:52 Errr... What does printf("%d",i) do if i is 10 on that platform? 14:13:53 it prints 10 14:13:53 obviously 14:14:00 but on GBA with the NO$GBA emulator 14:14:06 (which is the best emulator for it) 14:14:08 it crashes the machinr 14:14:10 machine* 14:15:11 Figured out what instruction inside printf crashes it? 14:18:42 i don't care 14:18:47 it does not happen on the real thing 14:18:48 so it's OK 14:19:13 and i've just found a custom itoa function for that 14:32:24 -!- variable has quit (Read error: Operation timed out). 14:34:38 -!- variable has joined. 14:41:47 -!- Phantom_Hoover has joined. 14:42:02 Hi, everybody! 14:44:42 hey 14:51:08 hello 14:51:43 while it is quite easy to write a Makefile that fails with -j2 or such, I wonder if you can write one that fails *without* -j2. 14:52:00 and that works reliably with -j2 14:52:23 I mean, if you only wanted to make it work *sometimes* with -j2, and never without -j it would be rather trivial. 15:07:57 How could such makefile even be constructed? It would have to contain race condition or unstated dependency... 15:11:28 And that kind of stuff tends to make it nondeterministic... 15:12:56 ... Unless the executables do some bizarre stuff... 15:13:24 But then the makefile would probably lock up if run without -j2... 15:14:35 hm 15:15:42 Ilari, well it could build and run an executable that checked /proc// for command line 15:15:52 cheating though 15:18:23 http://esoteric.voxelperfect.net/wiki/Stackmill 15:45:01 Vorpal, has ineiros updated the server yet? 15:50:11 Phantom_Hoover, as far as I know it worked yesterday morning yes 15:50:27 ...and, I just died. 15:50:29 In lava. 15:50:34 With my full inventory. 15:50:37 Due to a bug. 15:50:40 Effing Notch. 15:54:06 Also, the advice I was given by the intel-gfx people to fix my graphics drivers has resulted in them being stupid with normal-maps. 16:02:37 -!- sftp_ has quit (Remote host closed the connection). 16:10:26 Phantom_Hoover, was the bug exiting a minecraft by breaking it? 16:10:36 Vorpal, yes. 16:10:44 -!- asiekierka has quit. 16:11:03 oh wait, you been away, ehird complained about it too 16:11:50 btw, wrote guide for how to get a h8300-hitachi-hms cross toolchain working on modern Linux. 16:11:58 if anyone needs that I could upload it somewhere 16:12:19 (you need quite a few patches to make it build and work on recent systems) 16:13:04 people who might care: Anyone who has a Lego RCX and want to write C code for it (custom firmware). 16:26:14 anyway http://sporksirc.net/~anmaster/lego/rcx-toolchain-guide/guide.html 16:31:01 -!- elliott has joined. 16:34:30 elliott, hi 16:34:43 hi 16:34:45 Phantom_Hoover, where did that happen btw? 16:34:53 elliott, an MC bug ate my inventory! 16:34:54 Phantom_Hoover, I think removing the lava below might help 16:35:08 elliott, he is talking about the hitting minecraft bug 16:35:25 Vorpal, erm... IIRC it was the subtree end of the subtree-crossroads link. 16:35:37 The spawn is a lie. 16:35:43 Phantom_Hoover: Yes, it's happened to me. Several times. 16:35:48 Phantom_Hoover: Get out of your cart before hitting it, it's all that helps. 16:35:57 Phantom_Hoover, crossroad being the tunnel to fizzie's? 16:36:04 Vorpal, yes. 16:36:06 right 16:42:12 why is it so laggy 16:42:32 Hoover Heavy Industries accepts no responsibility for anyone who is heavy, or industrious. That is all. 16:42:53 -!- sebbu2 has quit (Read error: Connection reset by peer). 16:43:01 elliott, are you behind the lagginess? 16:43:18 I suspect the server is torrenting. 16:43:26 hm 16:43:28 well it is down now 16:43:36 Or else the beta is really so bad that three people is too much work. 16:43:45 -!- sebbu has joined. 16:43:46 elliott, in other news, the Xorg Intel graphics developers have failed me! 16:43:47 ineiros_, what is going on? 16:44:06 elliott, were you doing something strange when it went down? 16:44:09 (or PH) 16:44:17 Vorpal: No. 16:44:21 Vorpal: Stop asking. 16:44:37 Vorpal, I was heading northwards, towards ineiros.. 16:44:45 What the hell is that thing. 16:44:49 (If it were an HHI activity, it would be secret anyway, so there is no point in asking; but lagging the server is not good for business, so that is extremely unlikely.) 16:44:51 Phantom_Hoover: What thing. 16:44:57 The crenellated wall, with torches. 16:45:01 Phantom_Hoover: Pic? 16:45:05 I was looking at it when the server failed 16:45:18 Pic would be nice :P 16:45:28 Don't have one, but if you went towards ineiros' fortress from spawn you'd've seen it. 17:17:38 -!- sftp has joined. 17:17:53 elliott, fizzie: mcmap bug report: planting a sapling: "[DIED] protocol.c: 361: Unknown packet id: 0x40 (dir 2)" 17:17:58 I'm 17:17:59 oops 17:18:14 Vorpal: I don't dig into the protocol stuff mostly; fizzie's your man there. 17:18:23 elliott, ah oka[DIED] protocol.c: 361: Unknown packet id: 0x40 (dir 2)y 17:18:24 gah 17:18:30 * Vorpal STABS SYNERGY 17:18:34 Oka[DIED] protocol.c: 361: Unknown packet id: 0x40 (dir 2)y yourself. 17:18:39 elliott, okay was what I said 17:18:44 Vorpal: Have you tried that maintained fork of Synergy? 17:18:44 but then I got a pseduo-paste 17:18:52 elliott, well, I probably should 17:18:54 "Synergy+ and Synergy have now combined efforts. Visit the new Synergy website." 17:18:55 heh 17:19:03 http://synergy-foss.org/ 17:19:14 "Synergy+ and Synergy have now merged! However, we'll still be using the old synergy-plus source code repository and mailing lists (just because there's no reason to migrate away). For those of you who are new: Synergy+ was started by Sorin Sbârnea and Nick Bolton in 2009 for the purpose of fixing bugs in the original version by Chris Schoeneman (which had temporarily paused development in 2006). Synergy+ and original Synergy have now combined e 17:19:14 fforts for the benefit of the Open Source community." 17:19:21 elliott, I use whatever is called synergy on in the package repo. And since one is ubuntu the other arch then it might cause issues 17:19:33 Vorpal: Try http://synergy-foss.org/packages/?C=M;O=D. 17:19:42 elliott, yeah, will shortly 17:19:56 Vorpal: Debian squeeze appears to still have old-Synergy, and links to the website which now says "lol go here instead". 17:19:57 So heh. 17:26:29 -!- j-invariant has joined. 17:35:23 Recovered my laptop from the idiotic hoard. 17:35:26 *hoarde 17:57:55 -!- sebbu2 has joined. 17:59:06 -!- Leonidas_ has joined. 18:01:53 -!- sebbu has quit (Read error: Connection reset by peer). 18:01:53 -!- Leonidas has quit (Read error: Operation timed out). 18:01:54 -!- sebbu2 has changed nick to sebbu. 18:11:47 -!- sebbu has quit (Read error: Connection reset by peer). 18:12:29 -!- sebbu has joined. 18:18:32 Phantom_Hoover: They... took your laptop? And you didn't immediately kill them? 18:18:50 elliott, no, since I would have got in trouble for that. 18:19:08 Phantom_Hoover: Vorpal: Look at this: http://i.imgur.com/YF0nLl.jpg 18:19:09 See sign. 18:19:13 SEEMS IT'S A KNOWN BUG 18:19:16 I locked the screen before I gave in, so they couldn't do anything. 18:19:24 Notch Quality Engineering 18:19:55 elliott, but how did they manage to get stuff into it? 18:20:09 Vorpal: Dig into it, make space, put things there. 18:20:20 Vorpal: Or, no, wait. 18:20:24 Vorpal: I'm fairly sure that's a real hole. 18:20:36 Disguised as an imaginary one. 18:20:40 elliott, haha 18:20:53 "hey! I made it last night :) I'm glad people enjoy it. I'ts supposed to look like a chunk error." 18:20:54 Indeed. 18:23:07 elliott, why did you loose connection? server said it was due to disconnect.genericReason on his side 18:23:15 Vorpal: I closed the game :P 18:23:20 Without disconnecting first. 18:23:21 elliott, how? 18:23:22 ah 18:23:32 To watch http://www.youtube.com/watch?v=SCJeUvqFuA0. 18:23:39 The music was getting in the way. 18:26:23 elliott, he has an issue, all won't go off at once (you need something like redstone activation to get all to start counting down at once) 18:26:48 Vorpal: Doesn't matter, it worked anyway (and impressive result) 18:26:56 Anyone have a convenient link to a rant on the "This page is best viewed with ." things you see everywhere? 18:27:00 Vorpal: You'll notice a familiar figure when he reconnects :P 18:27:09 Phantom_Hoover: http://www.anybrowser.org/campaign/ 18:28:06 the explosion was cool 18:28:37 the water in minecraft it not realistic 18:29:16 j-invariant: you can generate infinite water from a 2x2 pool 18:29:19 because of PHYSICS! 18:29:37 elliott, what's the familiar figure? 18:29:44 It looks like the statue of liberty :P 18:29:51 I thought it was intentional but maybe not. 18:29:56 Vorpal: You'll notice a familiar figure when he reconnects :P <-- hm? 18:30:00 See above. 18:30:24 Phantom_Hoover: "Obsidian is banned because it takes too long to destroy" "Fire is banned because it can crash clients" "Lava is banned because it can lag the server." "Water is banned because it can lag the server." "Ice is banned because it creates water when destroyed" "TNT is banned because it lags the server." 18:30:33 Phantom_Hoover: Reddit Minecraft server -- you can, like, put GRASS and WOOD and COBBLES down! 18:31:12 elliott, they're a public, high-visibility server. 18:31:20 What'd you *expect*? 18:31:21 Phantom_Hoover: They've /banned water/. 18:31:29 I have never seen that before. 18:32:08 elliott, but what about natural water and lava? 18:32:18 Vorpal: DON'T LOOK AT IT 18:32:25 or did they remove it? 18:32:30 I doubt it :P 18:32:36 bbl 18:32:46 Phantom_Hoover: Can I expand the HHI research facility? 18:32:58 Fine. 18:33:20 Provided there are no externally-visible alterations to Mt. Hoover 18:33:29 Phantom_Hoover: There won't be. Well, unless I accidentally dig to the outside. 18:53:40 oh geez you have to play minecraft in browser... 18:54:08 j-invariant: um no 18:54:13 j-invariant: just download the .jar 18:54:22 nobody plays in browser ... partly because nothign works with it 18:54:26 i don't even think you can use texture packs in-browser 18:54:31 http://minecraft.net/download/Minecraft.jar?v=1293389628306 18:54:47 that's if you've paid ofc 18:54:51 classic is browser-only 18:55:16 ... 18:55:21 ? 18:55:35 I don't want to buy it, I don't even know if it works 18:55:52 j-invariant: pirate it and see? :p 18:56:01 :S 18:56:13 j-invariant: it does work though ... 18:56:17 at least on debian and i know plenty of players on ubuntu 18:56:37 it's just, I was trying it in browser. No wonder /that/ doesn't work 18:56:58 you mean Classic in browser? 18:57:01 yeah that doesn't work for me either 18:57:04 i just get a black screen 18:57:06 Alpha works perfectly though 18:57:46 You need the Sun's (still can't get myself to say Oracle's) JVM for it to work. 18:57:54 Well, "perfectly" is a relative term. 18:58:08 ineiros_: I use OpenJDK. 18:58:11 ineiros_: So, nope. 18:58:14 "Notch" and "perfectly" are not words which fit comfortably together. 18:58:16 Oh, for it = ClassiC? 18:58:17 *Classic? 18:58:21 Alpha works with OpenJDK for me at least. 18:58:25 Faster than Whoracle's. 18:58:33 elliott: Whoa, you got it to work with that? 18:58:59 ineiros_: Yes. It didn't work at first, but now it does and it's faster than Sun's./ 18:59:28 ineiros_: http://sprunge.us/GJET Those are my packages (on Debian testing). 18:59:47 My launch script: 18:59:50 #!/bin/sh 18:59:50 exec java -Xmx2048M -Xms1024M -cp "$(dirname "$0")/launcher.jar" net.minecraft.LauncherFrame 18:59:58 elliott: Yes, being faster is no surprise. But at least the previous versions didn't work. I have to try that when I get my new system. 19:00:02 ineiros_: I think maybe you have to use Sun the first time and then it works. 19:00:13 ineiros_: Like, maybe the initial log-in only works with Sunnnnnnnn's. 19:01:30 -!- p_q has joined. 19:03:00 -!- MigoMipo has joined. 19:03:50 -!- poiuy_qwert has quit (Ping timeout: 240 seconds). 19:05:01 -!- ais523 has joined. 19:05:46 -!- Leonidas_ has changed nick to Leonidas. 19:16:47 -!- Mathnerd314 has joined. 19:31:13 [[Wrong language. It's a shame for me that C isn't used so much these days for applications.]] 19:31:21 —An idiot. 19:31:33 Note that the wrong language is Objective-C. 19:42:25 Context? 19:45:11 http://aegidian.org/bb/viewtopic.php?t=3216&start=0&postdays=0&postorder=asc&highlight= 19:45:39 One of the many threads where someone turns up to the Oolite boards and says "Hey, let's make this an MMO!" 19:47:10 Except this time the very well-founded reasons for not doing so are shrugged aside, and the person ploughs on regardless. 19:48:31 Highlights include the word "fidicurially". 19:49:31 -!- KingOfKarlsruhe has joined. 19:50:54 -!- KingOfKarlsruhe has left (?). 19:51:52 Phantom_Hoover, as far as I can tell "fidicurially" is not a word, does it context let you figure out the intended meaning of it? (If so: what is it?) 19:52:14 Vorpal, he meant "fiduciary". 19:52:44 Phantom_Hoover, a word I have to admit I'm not familiar with either 19:52:47 * Vorpal looks it up 19:52:56 Monetary? 19:53:11 English: the Perl of human languages. 19:53:34 elliott: thoughts on functor equality? 19:53:38 "a person who holds assets in trust for a beneficiary; "it is illegal for a fiduciary to misappropriate money for personal gain"" 19:53:39 hm 19:54:19 Phantom_Hoover, I have no doubt there are weird words like this in Swedish too, some that I know, some that I don't 19:54:28 j-invariant: does it work? if so it's good :P 19:54:31 elliott: so a functor F:C-->D maps objects of C into D like X:C |- FX : D, but also maps maps like f : X --> Y |- Ff : FX --> FY 19:55:05 elliott: I did manage to define it earlier but the proof is horrific. Hoping to simplify it 19:55:40 that would be nice 19:56:34 elliott: this time I define it like F = F' when we have an isomorphism i between FX and F'X, and (dependent pair) Ff . pi1 iso Y = pi1 iso X . F'f 19:57:33 elliott: http://coq.pastebin.com/nFRZJ7cR 19:58:12 elliott: even with the proof machine on my side it's not looking good :/ line 580 19:59:43 yeah that looks scary 20:01:13 j-invariant, aaaaaaa 20:07:26 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds). 20:08:20 j-invariant, what are you trying to prove today? 20:08:59 ineiros_, elliott: is the server about to be hmodified or has it recently been? 20:09:18 Vorpal: I just want to show that '=' is an equivalence relation 20:09:43 j-invariant, doesn't coq has that in the its standard library or such? 20:09:51 no it's my own definition 20:10:33 j-invariant, how does the standard library do then? 20:10:36 do it* 20:10:57 I don't use that library here 20:14:21 ineiros_: I've used OpenJDK and OpenJDK only, and I've actually told you this. 20:14:54 j-invariant, yeah but is it as messy as the way you do it? 20:15:07 (well not sure it is messy, but you seemed to imply that) 20:15:19 Vorpal: it's a totally different structure. so. 20:15:21 fizzie, btw saw what I said above about mcmap crashing on placing a sapling? 20:15:22 elliott, ah 20:15:42 -!- Wamanuz has quit (Ping timeout: 260 seconds). 20:16:32 I need to prove Ff o fgX = fgY o Gf, Gf o ghY = ghX o Hf |- Ff o (fgY o ghY) = (fgX o ghX) o Hf 20:17:21 first step is to change the goal into (Ff o fgY) o ghY = fgX o (ghX o Hf). Then you can use the hypothesis 20:19:38 Vorpal: No, been away. I'll take a look at some point, still more christmasy things to do first though. 20:20:14 -!- Wamanuz has joined. 20:23:12 0x40 is not a (wiki-)known packet type, so it probably has just gotten desynchronized again. 20:23:20 I need a decision producedure that does rewrites, not just associativity 20:23:26 elliott: :) 20:23:26 j-invariant: I think I have a better structure for algebraic things now. 20:23:32 oh neat 20:23:33 how does it work? 20:23:37 Definition is_ring S plus plus0 times times1 := 20:23:37 is_pseudo_ring S plus plus0 times /\ 20:23:37 is_monoid S times times1. 20:23:38 like that 20:23:53 then e.g. integers are the ring (Z,+,0,*,1) 20:24:16 that could work actually 20:25:10 yeah, unfortunately I think there may be one issue 20:25:17 Definition is_pseudo_ring S plus plus0 times := 20:25:17 is_abelian_group S plus plus0 /\ 20:25:17 is_semigroup S times. 20:25:18 Definition is_ring S plus plus0 times times1 := 20:25:18 is_pseudo_ring S plus plus0 times /\ 20:25:18 is_monoid S times times1. 20:25:24 you might have to prove (S,*) is a semigroup /twice/ 20:25:26 because of that 20:25:27 but maybe not 20:26:57 what about having 20:27:20 Definition is_pseduo_ring S plus plus0 times semigroupPrf := is_abelian_group S plus plus0. 20:28:14 in fact, you could just have is_pseudo_ring ... := True. because it takes both proofs as arguments 20:28:35 j-invariant: nah, because 20:28:40 j-invariant: then you have to do "eapply" 20:28:42 which doesn't really work 20:28:44 this is much easier to prove 20:28:45 also, 20:28:45 fizzie, hm... 20:28:48 Theorem Z_ring : is_ring Z Zplus 0%Z Zmult 1%Z. 20:28:54 and then having is_ring -> is_lower_thing 20:28:56 is much nicer to do IMO 20:29:00 okay 20:29:16 fizzie, well, if it got desynced... well I was just working on my tree farm before 20:29:29 cutting down trees and so on 20:29:51 fizzie, also I believe PH just parted a second before or so. I don't know if he rejoined again 20:29:56 j-invariant: man, omega can't prove (a*b*c) = (a*(b*c)) in Z 20:29:57 how stupid si that 20:29:58 *is 20:31:33 -!- calamari has joined. 20:31:38 hi 20:32:54 hi 20:33:01 j-invariant: http://sprunge.us/ECba includes (really simple!) proof that stdlib Z is a ring 20:33:27 j-invariant: erm it's duplicatd 20:33:30 j-invariant: just cut everything after Qed. 20:35:54 "...[I]n 1902, the American company Hamilton Beach patented the first electric vibrator available for retail sale, making the vibrator the fifth domestic appliance to be electrified, after the sewing machine, fan, tea kettle, and toaster, and about a decade before the vacuum cleaner and electric iron." 20:38:24 wrong channel? 20:38:36 (or was it completely out of any context?) 20:38:57 Isn't pasting things without context a CHANNEL TRADITION. 20:38:59 s/out of/without/ 20:39:16 elliott, hm true 20:39:46 elliott, btw if seems a sapling can grow if you stand on it, and you will suffocate then. 20:39:57 Indeed. 20:40:25 elliott, I have not yet hit that myself, but saw it on the wiki. Makes me a bit nervous about my tree farm 20:41:52 this equivalence of functors is just not working 20:49:44 elliott: omega the ordinal number? What does it mean for an ordinal number to prove a statement? 20:50:03 tswett: Omega the tactic. 20:51:06 Ah. Is it supposed to be a tactic that figures stuff out automatically? 20:52:03 tswett: Yes. :p 20:52:12 tswett: I forget the exact solver it uses. 21:05:46 j-invariant: I think I have up to integral domains 21:17:29 oh yeah try fields 21:18:17 elliott: see eq_functors_lemma1 and 2. http://coq.pastebin.com/HRiZqtC9 21:18:26 oh yeah try fields 21:18:28 NOT RIGHT NOW :D 21:18:30 too much pain 21:18:40 j-invariant: that first lemma is the ... wow. 21:18:48 the second is even more wow. 21:19:06 I just copy the proof state and turn it into a lemma 21:19:37 they are very simple theorems, it's just proving them takes a lot of effort and typing.. 21:20:07 but if I had a decision procedure that took equations of the form fg = id into account :( 21:20:22 actually I don't think it would handle these 21:22:17 elliott: but programming a solver that takes inverses into account is probably really hard 21:22:48 -!- variable has quit (Read error: Operation timed out). 21:23:07 j-invariant: you can make a lot of effort now and have it easy later ... or you can continually make a lot of slightly milder effort forever ... i usually do the latter :-) 21:23:25 -!- variable has joined. 21:23:32 well I'm not even sure if throwing in inverses is still decidible 21:23:41 -!- invariable has joined. 21:23:46 -!- invariable has quit (Remote host closed the connection). 21:24:57 -!- variable has quit (Remote host closed the connection). 21:25:22 -!- variable has joined. 21:25:28 variable: stop varying your name 21:25:52 elliott, I can't help it 21:25:54 :-) 21:26:00 * variable is variable 21:26:23 maybe Knuth-Bendix 21:26:31 but I don't know much about Knuth-Bendix 21:28:56 variable: you haven't been here before have you? hi 21:30:10 elliott, I would hope I've been here before - you couldn't program without me :-) 21:30:20 also: hi 21:30:23 variable: Sure you can! 21:30:28 variable: Joy is Turing-complete. 21:30:40 Technically it has top-level function definitions but you don't /need/ them. 21:30:45 variable: BCT, also, has no variables. 21:30:53 Heck, Brainfuck doesn't... but you could consider tape cells variables. 21:30:58 *brainfuck 21:31:04 * variable googles 21:31:11 variable: http://esolangs.org/wiki/BCT :) 21:31:34 elliott, BCT would be my next computer.... (my computer names are esoteric programming languages) 21:31:52 Really? Ha 21:31:59 "And over here we have brainfuck..." 21:32:52 So far I have AlphaBeta, Babbage, and ByteByte :-) 21:33:23 fungot: say hi to variable 21:33:24 elliott: i was doing hw instructions would be and., and in the alternative syntax for c 21:44:52 elliott: help! 21:46:10 j-invariant: ? 21:47:09 Joy has no variab.. hmm, I guess that makes sense. Factor's variables are conveniences 21:47:21 -!- calamari has quit (Quit: Bye). 21:47:28 Maybe I should learn Joy 21:47:46 http://esoteric.voxelperfect.net/wiki/Joy doesn't exist 21:47:49 Learning Factor might have been like learning an impure language instead of haskell for a first functional language 21:47:52 Joy isn't esoteric 21:47:57 elliott, down? 21:48:08 Vorpal: no 21:48:25 variable: http://en.wikipedia.org/wiki/Joy_%28programming_language%29 21:48:29 variable: try Underload for the esoteric version :) 21:48:29 variable: http://www.latrobe.edu.au/philosophy/phimvt/joy.html 21:48:31 elliott: I need a way to prove these lemmas quickly 21:48:34 Underload, yeah 21:48:39 j-invariant: no idea, sorry :( 21:49:05 Ok, Joy syntax is ugly to my eyes 21:49:37 Although I'm just having an immediate knee-jerk reaction 21:49:42 Joy is wonderful. 21:49:42 I'm going to go AFK for a bit 21:49:52 ^ul (12)S(*a(~:)~*^~):((1)S)~*~((2)S:*)~*:(~:()~)~*^(a(:^)*~a(*()~)~*^~^):^ 21:49:54 122112122122112112212112122112112122122112122121121122122112122122112112122121122122112122122112112212112122122112112122112112212112112212211212212112212212112112212211212212112112212112122112112122121122122112122122112112122112112212212112122112112212112112212212112122112112122122112122121121122122121122122112122122112112 ...too much output! 21:49:59 ineiros_, what the heck is going on with your connection? 21:50:05 elliott, I don't need two concatenative languages competing for my heart 21:50:08 elliott, and presumably also joyful 21:50:51 elliott: maybe some way to extend the prover 21:51:54 Sgeo: You'd hate Joy, it doesn't have aaaaaaaaaaaany libraries at all. 21:52:21 Neither does LSL. Oh wait, I hate LSL (but for different reasons) 21:52:41 Actually, that is an issue with LSL, come to think of it 21:54:50 ^ul (0)S((0)(1))(~:^:S*a~^~*a*~:^):^ 21:54:50 011010011001011010010110011010011001011001101001011010011001011010010110011010010110100110010110011010011001011010010110011010011001011001101001011010011001011001101001100101101001011001101001011010011001011010010110011010011001011001101001011010011001011010010110011010010110100110010110011010011001011010010110011010010110 ...too much output! 21:55:07 TIL that The Blue Valley has named parts 21:55:17 http://modarchive.org/index.php?request=view_by_moduleid&query=37685 21:56:03 what program is good for playing s3m files? 21:56:17 Vorpal: I may have used the connection again. Maybe I should try to setup some connection priorization at some point. 21:56:23 j-invariant, http://www.youtube.com/watch?v=KUn9SYdPF4A&feature=related is the same thing fwiw 21:56:34 But um... hm 21:56:36 VLC? 21:57:39 o.O http://www.aufgang.org/koch/homepage/music.asp 22:04:14 ineiros_, well it seems completely lag spiky atm 22:05:50 ineiros_, maybe you should give backup bulk priority or something? 22:06:13 ineiros_, I'm giving up on mining obsidian atm 22:06:35 Well, xmp is one sensible app for s3m files. 22:06:44 For some values of sensible. 22:06:47 ineiros_, connection lost 22:06:55 The mikmod player is pretty horrible. 22:09:19 VLC plays with ModPlug-derived code, I think. 22:10:09 ineiros_, tell me when it is up? 22:10:19 Vorpal: Or just wait. 22:10:36 o.O http://www.aufgang.org/koch/homepage/music.asp 22:10:37 What? 22:11:50 Should be up now. 22:28:27 The ashes is on 22:30:44 zzo: what are the rules 22:36:06 -!- chickenzilla has joined. 22:56:32 why would a .xm file be 30 MB? 22:56:50 0_0 22:57:10 someone is using lots of very large samples 22:57:35 oh wait it's only 4 MB, not sure what happened there 22:57:39 maybe I just misread it 23:10:41 http://www.youtube.com/watch?v=IZ2BcvowYl8 23:10:52 * Sgeo gets AW nostalgia issues from seeing the stone path 23:11:27 oh, it's not a play of the plot of Legend of Zelda? 23:11:28 Meh 23:13:30 I like the music 23:13:39 Hmm, agreed 23:47:41 Maybe it was 30 megabits? That's close-ish to 4 MB. 23:47:48 haha 2010-12-27: 00:02:25 -!- wareya has quit (Ping timeout: 276 seconds). 00:03:56 -!- wareya has joined. 00:09:00 -!- MigoMipo has quit (Read error: Connection reset by peer). 00:11:54 -!- chickenzilla has left (?). 00:21:44 -!- FireFly has quit (Quit: swatted to death). 00:31:51 "J It is unbeatable if you have RSI and need to type as little characters as possible for a task that can be applied to a whole array." 00:33:42 Ha ha it's funny because J programs are short? 00:35:34 http://www.rfc1149.net/blog/2010/12/09/something-nice-about-every-language-i-use/ 00:35:48 Ha ha, it's the best thing the person could come up with to say about J 00:37:25 I think I should learn Ada 00:43:46 "The experienced C programmer will probably be a bit frustrated with the attention to details required by the Ada compiler. You will not have your favorite "tricks" available to fool the compiler into doing something out of the ordinary. The Ada compiler cannot be fooled." 00:50:36 -!- oerjan has quit (Quit: Good night). 00:52:39 Wow, some people really hate Ada 00:59:08 Dear tutorial: Do you HAVE to use a sample program with deliberately horrible style to show an example Ada program? 00:59:12 http://www.infres.enst.fr/~pautet/Ada95/chap02.htm 00:59:17 http://www.infres.enst.fr/~pautet/Ada95/e_c02_p1.ada 00:59:38 I think I should learn Ada 00:59:42 Why? 00:59:46 It's one of the worst languages ever. 01:00:11 From my understanding, it's mostly syntax issues? 01:00:27 Much more than that. 01:01:39 It does seem to have SOME supporters. Not many. 01:02:09 I got this idea that it's a good language for safety assurances 01:02:17 Sgeo: The human extinction movement has supporters, so do Republicans. 01:04:08 http://www.vhemt.org/ whnat the fuck? 01:04:33 they just want to decrease the number of people, not go exitinct 01:04:57 j-invariant, some of them do want humanity to go extinct 01:05:35 They make a distinction between those who support extinction and those who just want to see the human population decrease significantly 01:06:08 ahh 01:06:16 it's an important difference! 01:06:19 They compare humanity to cancer 01:06:28 http://video.google.com/videoplay?docid=-4369876000541116073# 01:07:52 About the difference: http://www.vhemt.org/ecology.htm#whyv 01:08:09 "Q: Why extinction? Why not just get our population down to a sustainable size? 01:08:09 VHEMT Supporters favor this goal, while Volunteers see extinction as the only sure way to avoid breeding ourselves back to todays density." 01:10:48 doesn't really make sense to call yourself a member of Human Extinction Movement in that case :/ 01:18:35 j-invariant: VHEMT is very stupid 01:18:41 hardly worth expecting consistency of them 01:19:04 "the best solution to overpopulation is lack of population!" 01:19:40 also it would (probably) leave the planet without any sentience which is /very/ stupid 01:20:06 ineiros_: The spawn protection area is waaay too big. 01:20:07 why? 01:20:09 I remember on the news seeing some environmental cleanup program that was projected to take 99 years. 01:20:12 j-invariant: why what? 01:20:17 * Sgeo wonders what VHEMT thinks of that 01:20:39 why should earth be sentient? 01:20:39 j-invariant: why would it be bad to be without sentience, you mean? 01:21:01 yes 01:21:13 j-invariant: I hold sentience to be intrinsically valuable. 01:21:20 based on what? 01:21:31 j-invariant: It's an axiom. 01:21:39 What's ZFC based on? 01:21:40 :( 01:22:00 (At least "sentience is valuable" is a lot less likely to be inconsistent than ZFC...) 01:24:47 btw, if eta : F --> G is a natural transformation for functors F,G : C --> D. Then X : C |- etaX : FX --> GX 01:25:28 I need some 'respectfulness' condition on it like X = X' -> etaX = etaX' 01:25:51 -!- sebbu has quit (Read error: Connection reset by peer). 01:26:20 j-invariant: i think i'm going to link to your file in #epigram and ask them what it looks like in epigram 2 >:) 01:26:21 * elliott troll 01:26:30 wait let me paste it 01:26:31 -!- sebbu has joined. 01:26:47 elliott, see bug report for mcmap on mc 01:29:19 Vorpal: "too much work for way too little gain" 01:29:26 i.e. something dereferences it and i can't figure out what because of glib :) 01:29:29 02:28:24 [CHAT] Woot, now it segfaults. 01:29:29 02:28:26 [CHAT] ehird left the game. 01:29:29 02:28:30 [CHAT] heh 01:29:29 02:28:48 [CHAT] ehird quality engineering 01:29:30 elliott, ^ 01:29:39 -!- zzo38 has joined. 01:29:42 Vorpal: Technically it didn't segfault. 01:29:45 It just closed the map window. 01:30:06 that's the lastest http://coq.pastebin.com/cxeeG9qt 01:30:16 elliott, that statement still applies 01:30:46 j-invariant: i can't bring myself to do it, they're too nice, the epigram folk 01:33:31 elliott, why would it be trolling to ask that? 01:33:55 Vorpal: hehe... epigram is (sort of (kind of)) entirely vapourware ... more specifically they have an implementation but Epigram Itself: The User Language isn't on top of it yet 01:34:37 so you would just get a "no idea yet"? 01:34:51 Vorpal: More likely "oh, go away" 01:35:56 -!- sebbu2 has joined. 01:35:56 How simple is it to make a electronic circuit for receiving a call display information? 01:37:44 elliott: but I'm not sure how to define Component_respectful 01:38:31 j-invariant: heck if I know :D 01:38:42 -!- sebbu has quit (Ping timeout: 246 seconds). 01:38:48 :p 01:38:56 have you ever used idris? 01:39:00 no 01:39:19 hm 01:41:35 -!- zzo38 has quit (Quit: The end of this sentence is false, but the beginning of it is true.). 01:42:00 * elliott starts thinking about his old transaction type 01:46:42 Transaction ok? transformed? after-ok? result 01:46:42 A function -- given a world W that satisfies (ok? W), and a 01:46:42 continuation that takes a world s.t. (transformed? W), and a 01:46:42 value of type result, and returns a new world W', 01:46:42 s.t. (after-ok? W'), returns the new world W'. 01:46:43 Transaction (\_ -> True) (\w -> fileIsOpenInWorld? filename w) (\w -> fileIsClosedInWorld? filename w) File 01:46:46 really ugly though ... 01:46:51 I wonder if it reduces to some elegant thing when strippe ddown 01:46:56 *stripped down 01:47:13 (that would be the result of "openFile" given a filename) 01:47:52 (readCharFromFile, given a filename, would look something like "Transaction (\w -> fileIsOpenInWorld? filename w) (\_ -> True) (\_ -> True) Char") 01:47:56 -!- variable has quit (Read error: Connection reset by peer). 01:48:14 (then ofc you'd have to prove that the file is open in the world at type-checking time, which could probably be done automatically in most cases) 01:49:09 seems pretty complicated 01:49:09 -!- variable has joined. 01:49:47 j-invariant: yeah it is but I think the "core" of it is pretty simple 01:50:12 that#s the important thoing 01:50:31 j-invariant: you want a certain value, and also a world which satisfies a relevant condition; to get it, you must give it a world that satisfies /its/ (the transaction's) relevant condition, and also show that the world at the end will be acceptable to it 01:50:38 for instance, opening a file without closing it is a type error in this system 01:50:43 because of the postcondition in openFile 01:50:58 it's basically just "IO result" except really-overly-typed 01:51:36 -!- pikhq has quit (Ping timeout: 255 seconds). 01:52:17 i wish oklopol would come back 01:53:37 -!- pikhq has joined. 01:57:55 -!- Sgeo__ has joined. 01:58:25 elliott: how do you find out about VEHMT? 01:58:39 um it's pretty well-known, dunno how i heard of it 01:58:47 had not heard of it 01:59:13 Chrome's been acting up lately 01:59:19 I'm tempted to switch back to Opera 01:59:20 -!- Sgeo has quit (Ping timeout: 255 seconds). 02:06:06 -!- sshc_ has joined. 02:09:32 -!- sshc has quit (Ping timeout: 264 seconds). 02:11:36 -!- sshc_ has quit (Ping timeout: 240 seconds). 02:12:41 -!- sshc has joined. 02:14:09 -!- pingveno has quit (Read error: Operation timed out). 02:16:52 -!- pingveno has joined. 02:18:26 -!- cheater99 has joined. 02:19:01 -!- cheater99 has quit (Read error: Connection reset by peer). 02:19:38 -!- sshc has quit (Read error: Connection reset by peer). 02:19:44 -!- sshc has joined. 02:25:55 -!- Wamanuz has quit (Ping timeout: 276 seconds). 02:26:15 s[99],*r=s,*d,c;main(a,b){char*v=1[d=b];for(;c=*v++%93;)for(b=c&2,b=c%7?a&&(c&17?c&1?(*r+=b-1):(r+=b-1):syscall(4-!b,b,r,1),0):v;b&&c|a**r;v=d)main(!c,&a);d=v;} 02:26:22 I wonder if this has been beaten yet. 02:26:27 -!- sshc has quit (Read error: Connection reset by peer). 02:26:34 -!- sshc has joined. 02:30:49 -!- variable has quit (Read error: Connection reset by peer). 02:31:57 -!- sshc has quit (Ping timeout: 260 seconds). 02:32:02 -!- variable has joined. 02:32:39 -!- sshc has joined. 02:35:44 -!- cheater99 has joined. 02:37:09 -!- cheater99 has quit (Read error: Connection reset by peer). 02:37:16 I wonder if it could be beaten by Haskell 02:38:09 probably too much looping though :-/ 02:38:14 -!- sshc has quit (Ping timeout: 240 seconds). 02:38:38 -!- sshc has joined. 02:38:47 Mathnerd314: http://www.jaist.ac.jp/~hirokawa/tool/ 02:41:12 GHC is a rewriting tool? news to me :p 02:44:12 -!- sshc has quit (Ping timeout: 260 seconds). 02:44:49 -!- sshc has joined. 02:47:03 Mathnerd314: http://www.jaist.ac.jp/~hirokawa/tool/ 02:47:05 what is that 02:47:14 Mathnerd314: do you know what it does, though? 02:47:57 something like "glorious glasgow haskell compiler"... 02:48:10 Mathnerd314: i mean the c progam 02:48:11 *program 02:48:42 it's obviously a brainfuck interpreter (just ask google) 02:50:41 -!- sshc has quit (Ping timeout: 260 seconds). 02:50:56 -!- sshc has joined. 02:53:44 -!- cheater99 has joined. 02:56:33 Deewiant, your wonders of the world looks blown up 02:57:01 elliott, was it you? 02:57:29 -!- cheater99 has quit (Read error: Connection reset by peer). 02:57:37 Deewiant, HUGE hole, several exhibits broken 02:58:29 who was that /bastard/ 02:58:40 watching a binary counter count up is quite hypnotic 02:59:41 Vorpal: link? 03:01:23 Mathnerd314, on minecraft 03:02:24 * Mathnerd314 suddenly deeplinking into other people's computers 03:03:33 (not) 03:05:04 -!- sshc has quit (Ping timeout: 276 seconds). 03:11:11 Can't really vandalize other's stuff on AW! 03:11:15 >.> 03:14:16 -!- cheater99 has joined. 03:16:44 -!- cheater99 has quit (Read error: Connection reset by peer). 03:22:20 back 03:24:43 elliott, was it you? 03:24:45 I know what I'm going to write my 7 page paper about 03:24:49 Vorpal: ? 03:24:51 Misplaced trust 03:25:16 elliott, someone blew up Deewiant's "wonders of the world" 03:25:17 Includes everything from SQL Injections and XSS attacks to social engineering 03:25:30 elliott, I suspect you or PH 03:25:33 Vorpal: o_O 03:25:46 elliott, no one else would do it 03:25:55 Blew up? With an explosion, or mining it out? 03:26:09 Vorpal: Was it the TNT room or something? 03:26:19 I can imagine people blowing that up accidentally ... but then I'm me. 03:26:27 elliott, the TNT room. but it had a huge radius 03:26:35 elliott, it more or less cut the building in half 03:26:38 across it 03:26:52 Sure it wasn't a chunk loading error? :p 03:26:52 This doesn't happen in AW =P 03:26:58 elliott, yes... 03:27:04 elliott, it had no straight edgers 03:27:06 edges 03:27:14 It was a joke. 03:27:20 right 03:27:36 elliott, whoever it was, I suggest we all help in rebuilding the other walls at least 03:27:43 and the rock below it 03:27:49 I'd help if I was in minecraft 03:27:54 I think I have some snow left. 03:27:56 And didn't have a 7 page paper to write 03:27:56 I'll come see. :/ 03:28:00 Vorpal: Do you know coordinates for teleporting? 03:28:05 err sec 03:28:11 Hmm, are there any topics in computer security that don't come down to misplaced trust? 03:28:11 elliott, armour-friendly or near? 03:28:23 Vorpal: Near. 03:28:33 -717, 928 03:28:40 Starting MC ... 03:28:41 Protecting from natural disasters I guess. Or could that be "Misplaced trust in God" >.> 03:29:00 Reflections on Trusting Trusting Trust. 03:29:03 Holy shit what is *that*. 03:29:14 (not there yet) 03:29:25 oh wheat 03:33:14 -!- cheater99 has joined. 03:35:32 -!- cheater99 has quit (Read error: Connection reset by peer). 03:39:01 ///goto -717 928 03:39:03 oops 03:39:04 //goto -717 928 03:40:58 * Sgeo__ laffs at elliott 03:41:07 what 03:41:25 oh, it wasn't you accidentally inputting into IRC twice 03:45:16 "oh wheat" <- awesome 03:52:16 -!- cheater99 has joined. 03:53:10 Mathnerd314: wat 03:54:00 I'm going to say "oh wheat" whenever I see something surprising 03:56:23 -!- sshc has joined. 03:56:24 -!- cheater99 has quit (Read error: Connection reset by peer). 04:02:31 Mathnerd314: ah. in this case it was actually wheat. 04:04:22 Is wheat useful? Do you need to eat to live in MC? 04:04:58 Yes. No. 04:05:10 (Although that will be an option in the final game.) 04:06:29 I am going to be a gibbering idiot by the end of the night 04:07:10 Sgeo__: Why. 04:07:20 7 page research paper 04:07:20 newtons second law 04:07:25 Sgeo__: OH NO A WHOLE SEVEN PAGE 04:07:25 S 04:07:32 Trying to get it done before my professor wakes up 04:07:55 Also, I didn't even start on it 04:09:51 -!- sshc has quit (Read error: Operation timed out). 04:15:46 -!- wareya has quit (Read error: Connection reset by peer). 04:15:59 what's it about? maybe you can distribute it 04:18:24 Cryptography and Computer Security 04:18:32 I think I'll talk about misplaced trust 04:18:37 Which is incredibly broad 04:19:09 in security, all trust is misplaced. 04:20:40 Can't really afford not to trust the compiler, though. The risk is somewhat small, but the lengths that would need to be gone through to migitate that risk 04:20:46 Same with hardware 04:21:14 -!- wareya has joined. 04:21:15 Unless you're Wikileaks and you foolishly accept hardware from the U.S. Gov't or something 04:22:29 Can't really afford not to trust the compiler, though. The risk is somewhat small, but the lengths that would need to be gone through to migitate that risk 04:22:38 Sgeo__: http://www.dwheeler.com/trusting-trust/ 04:22:40 Sgeo__: trusting trust has been solved. 04:23:08 the risk is somewhat large, actually; Trusting Trust was (thought to be) the only truly unbreakable hack 04:26:17 Does anyone actually do it? 04:27:16 How do you determine if something is bit-for-bit identical? 04:27:17 Sgeo__: Um, you don't do it if you don't strongly distrust your machine. 04:27:44 How do you determine if something is bit-for-bit identical? 04:27:52 Sgeo__: You could use the second, trusted compiler it mentions to write a program to do so. 04:28:43 elliott, have you read Double Computing 04:28:48 to counter trusting trust 04:28:52 Sgeo__: http://www.dwheeler.com/trusting-trust/ 04:28:54 it's Double Compiling 04:28:56 and that's what the link is 04:29:06 oh wait - you were describing that 04:29:10 Diverse Double Compiling technically 04:29:11 yeah :) 04:29:18 I don't get why its so good 04:29:30 its OBVIOUS that if you have a second trusted compiler you could defeat the attack 04:29:37 variable: no, it's not that obvious 04:29:45 but how do you gain that trust? 04:30:01 elliott, why not? 04:30:09 because it's about compiling the _compiler_ 04:30:17 variable: you can ultimately trust your own software. 04:30:34 if you're not interested in going that far, you can trust something that isn't yourself. but that is more trustworthy than your untrusted box. 04:31:31 elliott, if I have a compiler which I trust which compiles source code which I trust which is a compiler then I could use that second compiler to compile other programs without fear 04:31:32 correct? 04:31:47 variable: no. not if you don't trust the system library 04:31:55 variable: anyway, the point is that - 04:32:01 variable: the system programs are compiled with the untrusted compiler 04:32:05 you want to know: is the system compromised? 04:32:08 DDC lets you check. 04:32:21 it isn't about compiling programs you can trust, it's about /seeing whether the system is trustable/ 04:32:27 elliott, ah ok 04:32:33 that makes about 100x more sense now 04:32:41 How can a trusted compiler on an untrusted system be trusted? 04:32:49 Static-linking only, etc? 04:34:20 Sgeo__: just write everything yourself 04:34:33 Sgeo__: the only syscalls you need are "read from standard input" and "write to standard output" pretty much 04:34:51 if write("yes") gives "no" you can easily test for that :-P 04:36:55 great now i have a comma category 04:37:13 Karma karma karma karma chameleon 04:37:44 *karma 04:39:39 j-invariant: what's that one? 04:40:28 elliott: I have no idea.. 04:40:32 lol 04:41:21 you have functors A --F--> C <--G-- B and the comma category F,G is sort of like generalized commutative squares with maps being C-maps and B-maps in parallel 04:42:10 you can define natural transforms in terms of it, and also the category of cones 04:42:36 the category of cones makes sense, but thats a really simplified specific case of the comma category 04:44:22 night 04:45:45 * Sgeo__ vaguely onders if Sputnik is still in orbit 04:48:43 win 48 04:49:01 Sputnik 1 burned up on 4 January 1958, as it fell from orbit upon reentering Earth's atmosphere, after travelling about 60 million km (37 million miles) and spending 3 months in orbit.[5] 04:50:30 elliott@dinky:~/code/arthou$ make 04:50:31 gfortran hello.f95 -o hello 04:50:31 strip -s hello 04:50:31 elliott@dinky:~/code/arthou$ ./hello 04:50:31 Hello, world! 04:50:32 I wonder why the space. 04:55:42 now I've broke the 1000 line mark http://coq.pastebin.com/7tueVQYx 04:55:48 yay 04:55:51 program hello 04:55:58 write(*,"(A)") "Hello, world!" 04:55:59 end program hello 04:56:10 doesn't work ... 04:56:14 A needs length after it 04:56:31 desperately needing a better prover though 04:56:57 write(*,"('Hello, world!')") 04:56:58 that works, but ugh 04:58:00 print '(A)', 'Hello, world!' 04:58:01 tada 04:58:25 can't make it a function though 05:00:11 subroutine say(s) 05:00:11 character s*(*) 05:00:11 print '(A)', s 05:00:11 end subroutine say 05:00:11 program arthou 05:00:12 call say('Hello, world!') 05:00:14 end program arthou 05:00:16 there 05:01:27 know a good text for Knuth Bendix? 05:02:24 unfortunately not 05:05:33 good night 05:05:34 -!- elliott has quit (Quit: Leaving). 05:10:51 -!- j-invariant has quit (Quit: leaving). 05:16:04 What is the requirements for adding a language to esolang ? 05:16:50 um 05:17:01 make sure it's well-specified 05:17:08 and/or hilarious 05:17:45 quintopia, ie - can I announce a new one (derivative of brainfuck) on it or should I announce it on a personal blog first? 05:18:31 go right ahead and post it 05:18:38 add it to the language list 05:18:41 alright 05:19:02 and make sure you put it in the brainfuck derivatives category so we know not to bother reading it :P 05:19:08 quintopia, heh 05:19:42 no i'll probably read it to see if it adds anything brilliant 05:20:03 its brainfuck with one extra operator "~" which changes the value at the program counter by the amount at the stack pointer to allow for self modifying programs 05:20:05 nothing special 05:21:08 program counter... it can only self modify at ~ points? 05:21:22 stack pointer? 05:21:37 the bracket stack? 05:21:54 Sgeo__, yes 05:22:30 oh 05:22:36 you mean the data pointer 05:22:38 got it 05:22:57 it changes it to the pointed to value? or adds it? 05:23:02 adds 05:23:15 hmm 05:23:23 hrm - I just thought of a better idea 05:23:38 yeah that sounds like a silly thing to do 05:23:54 self-modifying brainfuck already does full self-modificatin 05:24:03 quintopia, it already exists? 05:24:13 * variable couldn't find it 05:24:22 well yeah...every variant of bf already exists :P 05:24:26 Hey, maybe we could do research into finite and limited self modification 05:24:49 Maybe, like the way there are classes of computational complexity, such as TC, there are classes of self-modifyingness 05:24:50 http://esoteric.voxelperfect.net/wiki/Self-modifying_Brainfuck 05:25:26 :-} 05:26:43 Sounds difficult to write code to manipulate what you want and when 05:27:11 First step for convenience might be shifing everything over for easy..wait that would modify the source 05:27:19 Oh! In the source code, include markers 05:27:21 Sgeo__: i suspect that like TCness, it will be hard to limit it in such a way that creates an in-between class between trivial self-modification (aka, the ~ thing that only changes a command once to something else) and full on self-modification where the entire continuation can be replaced by something else 05:27:56 Well, ~ is already nicely in between the full thing and no self-mod 05:28:00 So it's a start 05:29:08 Sgeo__: it seems like it gives you no more flexibility than SMETANA's line-swapping paradigm does 05:29:21 quintopia, does it give less? 05:29:28 Because that in and of itself would be interesting IMO 05:29:29 i think it does actuually 05:29:33 but it's hard to tell 05:29:59 variable, please don't take this hard 05:30:06 because you can only change a ~ to something other than a ~ exactly once 05:30:15 whereas you can swap lines as many times as you want 05:30:24 Sgeo__, hrm ? 05:30:46 variable, the near uselessness of ~, I mean. Well, actually, it is useful as an object of study, so 05:30:53 Sgeo__, i recognized it wasn't exactly useful 05:31:06 I was using it so the user could modify the program 05:31:11 with input 05:31:20 " Well, actually, it is useful as an object of study, so" --> how so? 05:31:27 variable, we're discussing it 05:31:32 That's what I meant 05:31:46 I think it's interesting, and want to keep exploring levels of self-mod 05:31:54 I also have a 7 page paper to write :/ 05:31:59 on what topic? 05:32:10 * variable wants to get into theoretical comp sci 05:32:13 Cryptography and Computer Security 05:32:23 Sgeo__, oh right - the one you pushed off... 05:32:30 or someone here did :- 05:32:49 variable, me 05:33:08 I still have a non paper assignment in the same class 05:33:09 So 05:33:11 FUN 05:33:24 heh 05:33:31 my classes are thankfully ove 05:33:58 iei 05:36:28 i think the minimum change you need to BF to make it fully self-modifying is a ~ that appends the character under the data pointer to the program 05:38:19 -!- sftp has quit (Read error: Connection reset by peer). 05:38:33 Hmm, that raises the question of the definition of "fully" 05:39:03 In theory, old code stays forever part of the program, but you could rewrite everything and never be in the old code again 05:39:03 "the entire continuation can be replaced by something else" 05:39:10 right 05:39:56 i think that's a reasonable definition 05:40:35 a program is fully self-modifying if it can ever reach a point that it is executing only code that did not exist before it started running 05:41:23 (or rather, did not exist outside of the input /to/ the program) 05:43:09 it should also be true that the code that can be created in this way is fully as powerful as the language itself 05:43:40 quintopia, how does that tie in with halting 05:43:52 or else languages that let you add a bounded-time subset of the original code would qualify 05:44:03 e.g. added code doesn't return to the old code iff added code doesn't halt 05:44:09 (think eval()) 05:44:37 Is that less powerful than full self-mod? 05:44:57 Wait, that depends if there's a HALT instruction, doesn't it? 05:45:13 Sgeo__: if the underlying language is capable of non-halting computations, any modified code should also be capable of not halting 05:45:32 s/any// 05:46:46 i think that one could prove existence of programs for which haltingness and return-to-pre-existing code are fully separable problems 05:47:12 aka, you can show that it will not return to pre-existing code even if you can't prove it will halt 05:47:35 although, maybe not for all fully self-modifying languages 05:47:55 -!- zzo38 has joined. 05:48:35 in fact, i bet i could prove that there exist programs that one cannot prove whether or not it returns to pre-existing code 05:48:46 i'll have to think about it 05:50:51 -!- zzo38 has set topic: EGASSEMTERCESATONSISIHT | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 05:51:27 yes, it is zzo38. there is no way anyone could guess what that message says, so it must be secret. 05:52:28 quintopia: Are you sure? 05:53:10 alright i've got it. construct a program P that takes a program M and then does "GOTO 0" when it halts. Now pass it as input to a program Q that prints "RUNNING" and then appends the input code to its own code. Pass this program to your executes-preexisting-code-again decider 05:53:40 if the decider says it does, then it says M halts. if it says it doesn't then it says M does not halt 05:54:51 so... fully self-modifying as i defined it is not a decidable class. 05:55:11 alt. proof: apply rice's thm. 05:57:10 How is "pre-existing" defined? 05:57:18 zzo38: it depends on how good one is at reading. 05:57:40 1:00 I get to work 06:02:47 Sgeo__: "pre-existing"="invariant at program initialization irrespective of the input" 06:03:20 So, does self-modification without accepting input to determine the modifications not count as self-modifying? 06:03:51 i wouldn't consider it that, personally 06:03:53 yes, because you can undo it into a normal program 06:03:58 ^ 06:06:18 perhaps another way of defining it is in terms of a state machine: if it can create new states and has the potential of abandoning entirely the set of states it was initialized with 06:09:06 what about a quine that copies itself and then executes on the copy? 06:11:05 i think i have a definition that reduces it to exactly what i'm trying to get at 06:13:15 a language is SM-complete if it is possible to create a program where there comes a point in its execution such that the entire continuation is dependent ONLY upon the contents of the input string and the contents of the program itself at initialization is completely irrelevant 06:16:50 (the quine program would not be such a program ad therefore says nothing about whether its underlying language is SM-complete) 06:26:13 so... if one can write an interpreter in the language? 06:26:49 This is almost getting confusing... 06:28:15 quintopia, the contents of the program at initialization are what lets it self-modify 06:28:40 If you can have a program that doesn't use those features, then the language isn't SM-complete by your definition 06:28:55 afaict 06:29:29 Take Befunge/index.php, and make x the only legal program 06:29:34 Sgeo__: no, i said the entire /continuation/ at /some point in its execution/ is independent of the program at init 06:30:07 hmm 06:33:29 * Mathnerd314 thinks the entire concept of self-modification is a throwback to machine code and is otherwise useless 06:34:07 Mathnerd314, as useless as Brainfuck? 06:35:02 "useless" in terms of not granting one any more power 06:35:08 ha 06:35:42 we should discuss how one could use it to grant one less power 06:35:57 Oooh 06:36:22 Can you have SM-complete yet still have the option to limit ... yeah, you shuld 06:36:25 should 06:37:11 Mathnerd314: maybe self-modification grants one no more power, and the same is surely true of introspection/reflection, but both can make a lot of programs a whole lot easier to write 06:38:29 Sgeo__: i suspect we could come up with a SM-complete language that that is only primitive recursive 06:39:03 SM-code is just another form of mutation. and mutation is ugly compared to calculation. (IMO, obviously) 06:39:12 I'd need to study up on primitive recursive 06:39:38 Are there languages where the only mutation is self-modification? I think I've seen it 06:40:38 Mathnerd314: it is a whole lot easier to update an application without taking it offline if you have SM built in. 06:41:13 * Mathnerd314 is running out of battery 06:41:26 plug in! 06:41:32 Updating is mutation! It must die! 06:41:44 From now on, only write perfect code! 06:42:01 Hmm, you can update without self-mod if the application is just an interpreter 06:42:04 Sgeo__: no! use copy-on-write and then garbage-collect! 06:42:22 Sgeo__: in underload, self-mod is the only form of flow control. does that count? 06:42:43 hmm 06:42:55 There wasn't something stronger? 06:43:03 stronger? 06:43:06 No variables, just constants, modified by SM? 06:43:12 That sort of thing 06:43:16 ahm 06:43:36 hold on 06:44:01 so you mean like all input is written immediately into the program? 06:44:29 Hmm, not sure 06:44:29 and all data is stored in the program? 06:44:44 Maybe I haven't seen it before 06:44:54 Aubergine would qualify there, although it has conventional flow control (gotos) 06:45:56 (on a side note, Aubergine is one of my favorite languages on the wiki. i couldn't say why.) 06:47:59 "(This reference implementation is buggy. The "or" on line 15 should be an "and," and against all logic, the "<" on line 44 should be a "<=.")" 06:48:01 lolwat 06:48:44 yeah i wrote that 06:49:03 because i had to make those changes to the ref impl to make it work 06:49:09 Why not just fix it? 06:49:15 Oh, you don't control the interp? 06:49:18 Consider [[IINC]]. Is that relevant? Maybe if you remove the line values and make it modify the commands instead? 06:49:21 it's not my language 06:49:53 zzo38: you do it :P 06:50:29 I mean hypothetically. 06:51:35 -!- Mathnerd314 has quit (Quit: ChatZilla 0.9.86-rdmsoft [XULRunner 1.9.2.12/20101026210630]). 06:54:02 I don't know if you can make a new kind of esolang out of purely self-modifying. 06:54:54 What's that language where all instructions must come from input 06:55:02 According to quintopia, it's SM-complete 06:55:07 [[Easy]] 06:55:36 Sgeo__: Is Easy the right one? 06:55:48 Yes 06:56:46 hmmm 06:56:46 Actually, that seems Forth-like 06:56:55 The whole program is interpreting the program thing 06:57:01 yeah, i'd say that's SM-complee 06:57:15 although 06:57:29 one could also argue that it is more an interpreter than a language 06:58:11 actually, there's a problem 06:58:16 quintopia, how is an interpreter that never leaves interpreter mode not as SM-complete as a program in an SM-complete language that gets completely overwritten? 06:58:23 the : command is guaranteed to always be executed again 06:58:42 and it occurs at the end of a program regardless of the input 06:58:54 so there is pre-existing code that always gets executed again 06:59:00 so it's disqualified 07:00:53 Sgeo__: it's possible that any TC language is SMC by virtue of such interpreters being possible. i'll have to think about it. 07:02:26 http://bash.org/?926695 i'm gonna play this at a party some night :P 07:22:48 -!- zzo38 has quit (Remote host closed the connection). 07:29:29 I'm scared that if I describe what an SQL injection is, and don't provide a source, my professor will think I'm plagiarising or something. 07:31:06 do you have standards for common knowledge? 07:31:51 meh, do it anyway 07:40:34 quintopia: I recommend making sure it's not your computer 07:40:55 twiddling bits is a fantastic way to screw your system up in precise ways 07:41:03 (or use a VM) 07:43:40 coppro: i was thinking of building a system just to play on 07:43:50 can rebuild it from scratch the next day 07:47:40 who wants to play detective 07:52:30 -!- cal153 has quit (Ping timeout: 255 seconds). 07:53:56 Quadrescence: ? 07:55:25 Bobby Tables! 07:57:37 i love playing detective 07:57:53 ok 07:57:57 http://i.imgur.com/EUswg.jpg 07:57:57 http://i.imgur.com/d5vDN.jpg 07:57:57 http://i.imgur.com/feroG.jpg 07:57:57 http://i.imgur.com/WbMEs.jpg 07:57:58 i mean the dressing up like a gumshoe and playing cat and mouse with attractive widows part 07:58:00 figure who did it 07:58:06 i don't actually like solving mysteries 07:58:10 because it happened a little while ago 07:59:14 2 mins, I get back to work 07:59:19 Next paragraph etc 07:59:25 1min 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:05:26 Now railing about Diaspora's piece of shit security 08:06:23 Fuck you EasyBib, that is NOT an invalid URL 08:16:50 FUCK 08:16:51 FUCK YOU 08:17:17 Wait, nevermind 08:17:24 Wait, no. I'm still saying fuck you 08:17:37 Actually, I have no idea. 08:28:43 -!- aloril has quit (Ping timeout: 265 seconds). 08:29:50 -!- marmar has joined. 08:29:56 ciao 08:30:21 Hi 08:30:46 !list 08:31:00 marmar, hm? 08:31:05 What are you trying to do? 08:31:33 -!- marmar has left (?). 08:37:17 -!- asiekierka has joined. 08:37:18 hello 08:37:26 http://esoteric.voxelperfect.net/wiki/Stackmill 08:37:32 could you please look at the commands list 08:37:41 and tell me if there's a command i could replace 08:37:49 to be "duplicate topmost element on stack" 08:38:13 i was thinking division or multiplication 08:39:24 08:39:44 what 08:39:49 Oh, sorry 08:39:54 Didn't look at the page 08:40:15 i think multiplication as it's far easier to implement with add/sub than division 08:40:31 duplicate topmost element on stack would save a lot of cycles for possible programmers 08:40:35 -!- aloril has joined. 08:40:42 for example to duplicate a value of 10000 08:40:47 you have to execute like... 100000 commands 08:43:07 "Seriously, cloud computing was the original motivation for the language." -- Gilad Bracha on Newspeak 08:43:20 Hmm, suddenly, I'm not so sure how much I like this language 08:43:39 Well, the language itself is fine, but can I morally support this language when that is its goal? 08:43:54 Maybe it's not really that cloud-extremist 08:43:58 I should relax 09:36:50 -!- ais523 has quit (Remote host closed the connection). 09:58:50 -!- MigoMipo has joined. 10:00:07 "This is exactly equivalent to an SQL injection vulnerability, except in a language other than Javascript." 10:00:10 Ok I'm tired 10:02:24 http://i.imgur.com/ST7Cg.jpg 10:02:25 http://i.imgur.com/ST7Cg.jpg 10:02:26 http://i.imgur.com/ST7Cg.jpg 10:02:28 http://i.imgur.com/ST7Cg.jpg 10:05:31 I can't tell if that's NSFW or not 10:06:18 * Sgeo__ decides that it is 10:08:49 Sgeo__ 10:08:50 it's not NSFW 10:08:55 it's Not Safe For Any Kind Of Life Or Sanity 10:09:28 asiekierka, the only thing that matches that description is death 10:13:43 Ah, BZFlag 10:14:02 Talked about BZFlag two years ago, as an example of cheating in ga... no, I didn't actually 10:14:07 Well, I'm using it now =P 10:15:36 -!- asiekierka has quit (Ping timeout: 255 seconds). 10:19:44 -!- pingveno has quit (Ping timeout: 255 seconds). 10:21:49 -!- pingveno has joined. 10:23:59 -!- sebbu has joined. 10:27:18 -!- sebbu2 has quit (Ping timeout: 255 seconds). 10:31:44 -!- oerjan has joined. 10:44:50 Now talking about Trusting Trust 10:46:46 http://cm.bell-labs.com/who/ken/trust.html this is it? 10:46:51 This is the whole thing? 10:53:18 http://www.schneier.com/blog/archives/2006/01/countering_trus.html I actually understand this 11:05:56 -!- cheater99 has joined. 11:07:54 It's so... obvious, really 11:18:30 -!- cheater99 has quit (Read error: Connection reset by peer). 11:38:15 -!- augur has changed nick to Agu10sInternet. 11:38:27 -!- Agu10sInternet has changed nick to augur. 11:47:34 http://www.mezzacotta.net/owls/ :D 11:49:07 * Sgeo__ dares oerjan to read every Mezzacotta strip 11:49:28 nice try 11:53:06 What am I on again? 11:53:10 Social engineering 11:57:26 -!- pingveno has quit (Ping timeout: 240 seconds). 11:59:33 -!- pingveno has joined. 12:18:01 "What are some similarities and differences between prank calls and attacks such as SQL injections?" 12:18:06 It's official, I'm insane. 12:19:00 * Sgeo__ clarifies "prank calls" 12:27:51 6 seemingly unrelated comp sec topics in one paper 12:27:53 Sensible! 12:37:21 -!- asiekierka has joined. 12:39:43 -!- impomatic has joined. 13:01:33 -!- cheater99 has joined. 13:19:28 -!- asiekierka has quit (Ping timeout: 260 seconds). 13:22:57 -!- MigoMipo has quit (*.net *.split). 13:22:59 -!- variable has quit (*.net *.split). 13:23:04 -!- dbc has quit (*.net *.split). 13:27:41 -!- MigoMipo has joined. 13:27:41 -!- variable has joined. 13:27:41 -!- dbc has joined. 13:34:55 -!- pingveno has quit (Ping timeout: 276 seconds). 13:36:18 -!- pingveno has joined. 13:42:29 -!- MigoMipo_ has joined. 13:45:53 -!- variable has quit (Read error: Operation timed out). 13:45:55 Heh... I'm seeing how small space one can pack the complete list of all allocated unicast IPv4 addresses... 13:46:06 -!- MigoMipo has quit (Ping timeout: 260 seconds). 13:47:49 So far, 1/8th of the address space processed, about 2328 bytes output... 13:50:06 -!- variable has joined. 13:51:30 fizzie, mcmap got desynced somehow when placing a torch high up. Garbage on map 13:52:58 -!- jix has quit (Ping timeout: 276 seconds). 13:53:23 -!- jix has joined. 13:54:54 -!- Wamanuz has joined. 13:58:10 * Sgeo__ breathes 13:58:19 I submitted everything the professor asked for 13:58:26 Let me try to do more 13:58:32 Increase my odds 14:00:21 -!- Wamanuz has quit (Ping timeout: 260 seconds). 14:05:55 -!- Wamanuz has joined. 14:06:08 -!- cheater99 has quit (Ping timeout: 240 seconds). 14:06:53 -!- asiekierka has joined. 14:20:07 -!- cheater99 has joined. 14:21:02 The program I wrote compressed bitmap (4Gib) of all allocated/delegated IPv4 address ranges to 29376 bytes... 14:22:15 -!- Wamanuz2 has joined. 14:24:27 -!- Wamanuz has quit (Ping timeout: 265 seconds). 14:25:39 Ilari can you send the decompressor and the compressed file 14:30:42 -!- pikhq has quit (Ping timeout: 272 seconds). 14:30:56 -!- variable has quit (Read error: Connection reset by peer). 14:31:18 Actually, I designed the format more for random access into compressed bitmap than to be decompressed... 14:32:08 -!- variable has joined. 14:32:12 -!- pikhq has joined. 14:32:31 * Ilari checks what xz does with the data... 14:34:20 well if you have random access, surely decompression is just a for loop over that :) 14:34:36 Ilari even if it's slow, do eet 14:35:15 Well, there are faster methods to decompress that data than loop over random access... 14:40:38 * Sgeo__ might find that data useful at some point 14:40:47 * Sgeo__ wants to ban all IPs from a certain wiki 14:40:58 Can just ban every /16 block, but that's tedious 14:41:09 I mean, of course I'd use a bot, but still 14:41:17 I feel deranged 14:42:39 patch source code? 14:43:25 I don't have that kind of control over it 14:43:36 If I did, I'd set the setting that blocks anons from editing 14:43:52 * Sgeo__ finally gets to use his Evil Wanda laugh in his FB status 14:55:49 Sgeo__, /all/ IPs? 14:55:55 wouldn't that forbid everyone 14:56:02 That would forbid anonymous users 14:56:18 I wouldn't select the option to ban logged in users with those IPs 14:56:50 Sgeo__, tried captcha? 14:57:01 Vorpal, I don't have that level of access 14:57:12 Sgeo__, can't you ask someone who /has/ that level of access? 14:57:24 I don't think any such person is active 14:57:41 It doesn't let to ban above /16 size? 14:58:08 Ilari, nope 15:01:42 And now the data even roundtrips through compressor and decompressor I wrote... 15:02:47 Am I deranged for comparing SQL injections to prank calls on The Simpsons? 15:11:00 ....CRAP 15:11:08 My presentation doesn't have a works cited 15:20:04 That's it 15:20:09 That's all the work I can do 15:20:15 I don't think there's anything else I can do 15:20:18 I need to breathe 15:21:42 -!- impomatic has left (?). 15:56:05 -!- elliott has joined. 15:56:14 elliott, hi 15:56:24 yawn 15:57:39 22:42:54 j-invariant: basically he's trying to replace MSE 15:57:39 22:43:00 TeXnicard is not written entirely in TeX. It only uses TeX for the typesetting. 15:57:39 22:43:02 knowing zzo38 it will likely not happen 15:57:39 22:43:06 but if it does, <3 15:57:47 http://twcywesit21c.tumblr.com/ 15:57:56 coppro: erm you have seen that TeXnicard is used by writing code in an underload-style language? :D 15:58:23 coppro: btw /Enhanced/ CWEB is zzo's own version of CWEB. 15:59:04 -!- ineiros_ has quit (Ping timeout: 276 seconds). 16:00:00 hi elliott 16:00:06 http://esolangs.org/wiki/Stackmill 16:00:21 23:24:05 Sgeo: oh 16:00:21 23:24:08 so you're just an idiot 16:00:30 coppro: no no you don't understand, he has a crippling fear of deadlines! 16:00:31 -!- ineiros has joined. 16:00:35 asiekierka: seen. 16:04:55 00:38:47 brainf**k can be implemented in it so it seems turing-complete 16:04:59 asiekierka: i edited the page to correct this 16:05:12 asiekierka: you have implemented a /finite-tape/ version of brainfuck which only proves it is at least a finite state machine 16:05:50 asiekierka: also see http://esolangs.org/wiki/Talk:Stackmill 16:06:38 01:21:53 http://codepad.org/R1ydyMJ8 --> does anyone see anything wrong with this implementation of brainfuck ? 16:06:52 variable: as long as "quick" doesn't mean in the sense of execution speed, in which case it's going to be very slow ... 16:07:21 01:30:18 It might give variable a wrong impression 16:07:31 sgeo i'm sorry but i don't think any impression you could give would be wrong 16:07:48 -!- elliott_ has joined. 16:07:52 -!- elliott_ has quit (Remote host closed the connection). 16:09:01 05:30:12 Vorpal 16:09:01 05:30:13 about the bug 16:09:01 05:30:21 it only happens in the best GBA emulator available, NO$GBA 16:09:01 05:30:27 it doesn't happen on the worse emulators (VisualBoyAdvance) 16:09:01 05:30:28 or the real thing 16:09:01 i think I see how BCT can be implemented 16:09:07 well erm i hate to state the obvious... 16:09:10 elliott it is the best emulator 16:09:17 i'm sorry but every NDS developer uses it 16:09:19 well 16:09:20 not developer 16:09:21 but an emulator with a bug not in the real hardware that other emulators don't have does not *sound* like the best, i'm afraid 16:09:25 but people who want to emulate the thing 16:09:43 well it is the only one which can emulate almost all commercial games properly 16:09:53 sry, don't buy it. I see "LOL NO$GBA IS SO K33WL" all the time but I've never seen any evidence for it 16:10:11 it is because it has a really good debugger 16:10:15 and 16:10:20 it can run a lot of stuff well 16:10:23 debugging is not to do with emulation 16:12:19 after checking BCT 16:12:32 elliott: i read that as that the emulator may be the only one to have this particular bug, but all the others have _more_ :D 16:12:57 i am sure it's doable 16:12:58 oerjan: possibly ... but printf("%d",99) crashing an emulator suggests to me that it might be a widdle bit of a big bug 16:13:05 0 = pop value 16:13:08 you'd think 16:13:26 1 = if value is nonzero (1), put next input value on stack and shift up 16:13:29 asiekierka: yeah i mentioned BCT because it looked to me like it would be easier 16:13:34 that's BCT in Stackmill 16:13:37 i do not have a working implementatino 16:13:40 implementation* 16:13:42 but i can prove it is possible 16:14:25 i do not give up that easily 16:14:27 -!- variable has quit (Read error: Operation timed out). 16:14:32 but i will have to backport some stuff from BF algorithms 16:14:34 23:29:29 I'm scared that if I describe what an SQL injection is, and don't provide a source, my professor will think I'm plagiarising or something. 16:14:47 oh man yeah i get punished for knowing things all the time because you're not expected to know simple things like that in university! 16:14:53 i'd be careful even saying 2+2=4 personally 16:16:03 23:59:14 2 mins, I get back to work 16:16:03 23:59:19 Next paragraph etc 16:16:03 23:59:25 1min 16:16:04 23:59:59 --- log: ended esoteric/10.12.26 16:16:04 00:00:00 --- log: started esoteric/10.12.27 16:16:04 00:05:26 Now railing about Diaspora's piece of shit security 16:16:17 Sgeo__: a good less-than-five minutes of solid work i see! 16:16:32 oh wait you meant in your ... um ... i don't really want to give it the title essay 16:16:32 man 16:16:34 i am grouchy today 16:16:38 oerjan: have you got any kittens 16:16:39 elliott: at least for 1+1=2 you can cite russell/whitehead 16:16:45 nope 16:16:56 http://esolangs.org/wiki/Talk:Brainfuck/w/index.php%3Ftitle%3DTalk:Brainfuck/index.php 16:16:57 hey look 16:17:00 a new esolang to make!! 16:17:09 Brainfuck/w/index.php?title=Talk:Brainfuck/index.php is going to be the BEST. ESOLANG. EVER 16:17:31 http://esoteric.voxelperfect.net/wiki/Stackmill#Turing-completeness 16:19:22 i am grouchy today <-- no _i'm_ grouchy 16:20:49 is that kind of thing OK 16:21:01 -!- variable has joined. 16:21:05 asiekierka: you might also want BCT's top level loop and exit condition 16:22:19 and of course, that's not very explicit... 16:23:03 oerjan - check again, like this? 16:23:08 hm the exit condition might be slightly tricky. 16:23:50 oh you solved that part. 16:24:11 therefore i've shown that using the current command set it is possible to implement BCT in my language 16:24:19 oerjan: write bf interpreter in scheme plz 16:24:24 need for silly troll language 16:24:50 also 16:24:56 why the **** did i port Stackmill to the GBA 16:25:04 and ran a fibonacci program on it 16:25:17 the weakness of Stackmill is a need to run a time-consuming loop to duplicate/move a number 16:25:18 -!- atrapado has joined. 16:25:19 asiekierka: actually it's the halting that's slightly tricky, since you have to be able to do that on every 0 instruction... 16:25:43 oerjan: do the check after the command runs 16:26:21 push a check value on stack (0 - halt, 1 - no halt) 16:26:22 asiekierka: it's not the checking that's tricky, it's the actual halting... although maybe it's not that hard 16:26:32 if it'll be 0 16:26:34 the loop will terminate 16:26:37 if it's 1, it will restart 16:26:41 at the beginning of the loop 16:26:44 the check value will be popped 16:26:47 there you go 16:27:35 asiekierka: you have to do that check after each 0 command though 16:27:44 oerjan: it will do it in the loop 16:27:52 one run of the loop = one command parsed 16:27:53 if i only know how to do a "x==[constant]" check in Stackmill 16:27:55 i'd implement it 16:27:59 knew* 16:29:03 asiekierka: i see, i was thinking of a compiler BCT -> Stackmill 16:29:07 oh 16:29:19 i am thinking of an interpreter there 16:29:25 similar to your brainfuck example 16:29:30 input: the program, looped on and on 16:29:34 output: nothing 16:29:41 a compiler may very well be impossible 16:29:45 an interpreter has the disadvantage that you need to keep both the program and the data in the stack 16:29:50 no you don't 16:29:57 input: the program, looped on and on 16:30:03 you just have to send the program ad infinitum 16:30:10 real-world example: glue both ends of the program tape together 16:30:20 asiekierka: i would not consider that a proof of TC-ness 16:30:37 it's too cheating 16:30:41 well in that case it's not TC 16:30:47 thank you very much 16:31:00 unless WAAAAAIT 16:31:02 yes it is. 16:31:08 you could do this 16:31:12 [command, check][command, check] 16:31:16 [] - loop 16:31:17 these are not unsolvable problems. 16:31:19 if the check is 0 16:31:24 ALL the command/check loops will be ignored 16:31:27 up to the program halting 16:31:36 :D 16:31:43 so the compiled version looks like this 16:31:46 asiekierka: yeah but you need to do it a bit more subtly than that 16:31:51 oerjan: what 16:32:03 why 16:32:07 the solution works, is that not enough 16:32:13 asiekierka: you sometimes need to be able to go to the next command _without_ skipping it 16:32:21 if the check is 1 16:32:22 it won't skip it 16:32:32 and will have normal program flow 16:32:41 if the check is 0 (read: stack empty) 16:32:41 ...if the check is 1 how do you exit the first loop? 16:32:47 oerjan: why would you have to 16:32:52 the check is 0 when the stack is empty 16:33:07 the main loop would also exit as the last check executed would be a 0 16:33:07 _because you want to run the next command_! 16:33:33 i thought it's "after each 0 command, halt if the stack is empty" 16:33:42 yes. 16:33:46 that's what i do 16:33:55 but what does your solution do if the stack is nonempty? 16:34:00 the check will be a 1 16:34:12 oh wait 16:34:13 hmm 16:34:15 you got me there 16:34:27 oh right, hmm 16:35:15 [pop previous stack value -> command -> check -> shift up and push a 0 so it quits the loop] pop the 0 -> shift down, giving the true check value [pop -> next command... 16:35:17 here 16:35:21 this is a way to make it work 16:36:20 STACK AFTER CHECK: 16:36:25 1(data) 16:36:36 (if the check was positive) 16:36:40 STACK AFTER QUITTING THE LOOP: 16:36:42 0(data)1 16:36:46 STACK BEFORE ENTERING THE NEXT LOOP: 16:36:48 1(data) 16:37:03 STACK BEFORE RUNNING THE COMMAND: 16:37:04 (data) 16:37:17 oerjan: You Know You're a Haskeller When: you write a scheme program without realising that it needs to be initialised with an infinite stream of 0s 16:38:17 elliott: yay 16:38:31 oerjan: fix it for me >:| 16:38:44 elliott: use set-cdr! ? >:) 16:38:55 it is complex but i believe i can pull off a BCT compiler 16:39:04 or what it's called 16:39:06 it is VERY complex so i'll have to make an actual app for it 16:39:09 oerjan: ...hey that will actually work! 16:39:10 oerjan: thanks dude 16:39:24 you're welcome 16:41:03 oerjan: hmm I just realised that I basically have to put my whole "interpret" procedure in the argument to H 16:41:09 since presumably it doesn't have access to the super-Turing environment 16:44:14 asiekierka: i think there's still a problem there 16:44:18 oerjan: 1. Comments in -- style are too hard to mention cause they do not stop the eye-flow as // vertical slashes do. 2. Comments in /**/ style are too easy to enter from the right numeric keyboard, but {--} style require shift + some keys in the middle of keyboard. 16:44:18 From phisiological point of view - putting the right hand to the right for comments tells the body "i'm putting a comment", but putting {--} in some way tells the body - I still type-in the code part. 16:45:14 i'm thinking about new general purpose programming language 16:45:34 asiekierka: the "pop the 0" from the different loops accumulate 16:45:48 oerjan no 16:46:05 hmm I need Banana Scheme opinions 16:46:06 elliott: saw that in r/programming 16:46:07 the loop pops VALUE #1, does the command, pushes VALUE #1, moves it and pushes #2 16:46:15 the un-loop pops #2, moves VALUE #1 back 16:46:16 I need to use eval in this program 16:46:20 so I need to pass an environment 16:46:25 so I need to do (scheme-report-environment version) 16:46:29 For R5RS, version=5. 16:46:33 But what is it for Scheme-1? 16:46:45 (scheme-report-environment 5.1)? :p 16:46:54 (scheme-report-environment '5H)? 16:47:04 optional procedure: (interaction-environment) 16:47:04 This procedure returns a specifier for the environment that contains implementation-defined bindings, typically a superset of those listed in the report. The intent is that this procedure will return the environment in which the implementation would evaluate expressions dynamically typed by the user. 16:47:06 Or that will work! 16:47:12 asiekierka: the problem isn't what happens inside the loops, but what happens between them once you decide to skip them 16:47:53 you're popping a 0 in each gap 16:48:02 a swap instead might work 16:49:25 -!- Wamanuz2 has quit (Remote host closed the connection). 16:49:38 i'm stuck 16:49:41 Wait, no 16:49:48 > (run '(+)) 16:49:48 Scheme 48 heap overflow 16:49:51 hi asiekierka 16:49:51 that is not a problem as we are quitting the loop, right? 16:49:56 if we are halting 16:50:00 -!- Wamanuz2 has joined. 16:50:01 i do not care about what happens to the stack 16:50:09 and we're halting only when the stack is empty 16:50:19 the stack will constantly return zeros when empty 16:50:20 asiekierka: well you still might not want it to crash... 16:50:25 oerjan: It won't 16:50:30 oh in that case it should be fine 16:50:32 Yes 16:50:41 so turing-completeness is theoretically proved 16:50:44 not practically, thouh 16:50:46 though* 16:51:37 yeah but it _should_ be just a cut-and-paste compilation once you found out what each part becomes 16:51:40 Yes 16:51:47 er 16:51:53 So can I state that this is turing-complete 16:51:53 or 16:51:57 s/cut-and-paste/search-and-replace/ 16:52:00 should I make a practical one first 16:52:30 i think you should make it at least as explicit as the brainfuck version is 16:52:52 oerjan: now now, a mathematician can't demand full specification from others 16:52:54 yes 16:52:55 i will tomorrow 16:52:56 that's hypocritical! 16:52:56 gtg bye 16:52:58 asiekierka: just handwave it 16:53:00 say it's probably TC 16:53:05 -!- asiekierka has quit. 16:53:24 hehe 16:53:28 elbląg 16:54:09 * oerjan swats elliott -----### 16:54:20 elliott, *prod* 16:54:23 Vorpal: what 16:54:33 oerjan: shut up, i'm sad because scheme48 heap overflows on my program, und- OH 16:54:35 OHHHHH. I SEE. 16:54:44 elliott, about when do you plan to work on that thing? 16:54:48 oerjan: thx rubber ducky 16:54:56 Vorpal: on the wonders of the world? 16:54:59 elliott, yeah 16:55:00 I'm a bit busy coding right now :p 16:55:07 forgot to turn minecraft off 16:55:17 I'll loot my stock a bit later to see what there is 16:55:31 > (run '(+)) 16:55:31 Scheme 48 heap overflow 16:55:33 WHAT HAVE I DONE TO YOU 16:55:36 elliott, just want to know when I can expect you there so we don't miss constantly miss each other with half a minute :P 16:55:48 i think i'll have breakfast first :p 16:55:52 elliott: memory leak? 16:55:55 elliott, wait what 16:56:09 elliott, when did you move to US or whatever 16:56:20 Vorpal: hey shut up, ais523 has been on us timezone before and the like :) 16:56:46 and oerjan just does it discreetly 16:56:54 oerjan: well ... 16:57:03 oerjan: I think possibly scheme48 handles cyclic lists badly 16:57:12 elliott: oops 16:57:26 oerjan: all that /should/ be happening here is it incrementing the first element of after (after = 0:after) 16:57:28 ('+ (interpret (cdr p) before (cons (+ (car after) 1) (cdr after)))) 16:57:32 and then seeing the null is list and returning 16:57:35 ((null? p) (cons before after)) 16:57:40 oh, possibly it's /printing/ it that isn'tw orking 16:57:54 nope 16:57:56 let's try mzscheme 16:58:04 -!- variable has quit (Read error: Operation timed out). 16:59:03 Let's try Racket 16:59:06 * Sgeo__ gets shot 16:59:53 elliott@dinky:~/code/bwipttbip$ mzscheme -if bwipttbip.sc1 16:59:54 Welcome to MzScheme v4.2.1 [3m], Copyright (c) 2004-2009 PLT Scheme Inc. 16:59:54 > (run '(+)) 16:59:54 reference to undefined identifier: H 16:59:54 > (define (H x y) #t) 16:59:54 > (run '(+)) 16:59:56 grmbl 17:00:00 Sgeo__: done. 17:00:01 well. 17:00:04 technically that's slightly pre-Racket. 17:01:39 afk 17:17:46 "The air on which Haskell programmers seem to thrive reeks of foul stench of cargo cult mathematics, something in which I don’t want to be a part." -- Quadrescence, clogging up my proggit with bullshit 17:17:51 Quadrescence: gtfo of my front page 17:19:19 * oerjan didn't see that 17:19:57 oerjan: can you just ban him or something, he's a persistent troll with no interest in esolangs who just bothers everyone and also says "u" for "you" :{ 17:20:14 also that is clearly a direct attack on the secret cabal of haskellers >:) 17:20:58 no dammit 17:21:09 psht 17:21:12 also beware, i am _damn_ grumpy today 17:21:17 i'll have to find a more loyal haskeller 17:21:33 BUT YOU JUST MADE UP THAT QUOTE 17:21:56 oerjan: er what quote 17:22:31 that air and stench one 17:22:42 oerjan: no, that's on reddit right now. 17:22:49 oerjan: http://www.reddit.com/r/programming/comments/es29o/the_air_on_which_haskell_programmers_seem_to/ 17:23:08 symbo1ics.com is his stupid blog which he keeps bugging everyone in here to write a post on. 17:23:15 elliott: no you 17:23:29 elliott: yeah I've invited people to write things if they wish 17:23:35 banning me is so cliché it's happened like 4 times by now 17:23:40 but I'm done bugging people about it. I just made an open offer 17:25:30 well at least you're well on your way to becoming just as overly-dramatically acerbic as Stanislav without actually having decent opinions to back it up, i predict imminent internet fame 17:25:38 or at least proggit. what's the difference. 17:25:49 elliott: u mad 17:26:13 proggit is bad enough without your crap. 17:26:32 i didn't post it btw 17:26:38 Wait, is .. was about to ask 17:26:43 Quadrescence: also considering you just mentioned IIRC /two days ago/ that you were finally learning haskell i seriously doubt you're even /close/ to competent enough to have a decent opinion on it. 17:26:51 but let's not let that stop us. 17:26:51 elliott: what? 17:26:55 Quadrescence, do you just accept all programming related thoughts? 17:26:58 when did I mention I was learning haskell 17:27:16 oh wait bsmntbombdood said that 17:27:16 elliott: i wrote a blog post about haskell like 2 months ago 17:27:16 lawl 17:27:49 i suppose it's too much to expect you to realise that nobody likes Num, it's a historical relic 17:28:14 [18:36] mauke: I'm not talking to Haskell inter- 17:28:15 preters, I'm talking to humans over the internet. 17:28:23 except that [Num t => t] is valid with existential quantification. 17:28:26 so it's hardly a nitpick. 17:28:44 elliott: if I said "forall", maybe it would! 17:29:39 actually what am i saying "forall" 17:29:52 fuckyouall 17:30:13 You are having a heated debate over a failure in communication. 17:30:22 Ping times: 65.4ms and 1.5ms... 17:30:32 yeah for once i agree with Sgeo__ :) 17:30:55 Sgeo__: no, no we're not 17:31:00 -!- Mathnerd314 has joined. 17:31:12 Sgeo__: I'm having a non-heated shit-slinging over the fact that Quadrescence is a moron and just about every sentence in the post is either blatantly incorrect or stupid. 17:31:33 elliott: r u mad cuz i attacked haskell 17:31:48 elliott, I have no comment about the rest of the post, but Quadrescence and the rest of the world need to figure out how to talk to eachother 17:31:49 no, i don't even /like/ haskell all that much 17:32:03 Sgeo__: the problem is firmly Quadrescence's. 17:32:43 In breakdowns of communication, the prolem is firmly whoever things that it's the other side's fault entirely 17:32:56 Well, ok, not "firmly" 17:33:24 Sgeo__: i'm not sure you quite understand: he did not write a post about how mauke is an idiot for being a pedant, this is one minor point in a whole gigantic, shining orb of idiocy. 17:33:25 I'm going to go back to napping now 17:35:05 elliott: y u so mad 17:35:43 the only thing even vaguely "mad" is mild irritation that proggit is being clogged up with another idiotic headline. the rest is just you being a moron :) 17:36:34 some programmer found it sensible. i guess he is probs an idiot too eh 17:37:19 wait, SOME PROGRAMMER?!?! 17:37:24 holy shit, those are some credentials there 17:37:29 you bet 17:37:41 got another programmer on line three, says VB is the best language ever and anything with esoteric in the name is a tool of the devil 17:37:43 gotta agree with him 17:37:48 see you, satanic cocksuckers 17:37:49 -!- elliott has left (?). 17:38:06 he seems upset 17:38:20 -!- elliott has joined. 17:38:25 decided satanism is the thing for m 17:38:27 *e 17:38:57 wb elliott, master programmer of #esoteric 17:39:14 sorry no, i think you're forgetting: Mr. VB 17:40:21 Mr VB doesn't vent about his favorite website being clogged with nonsense, he just Continues On His Way 17:40:57 and uses VB, yep. 17:41:03 and thinks we're all going to hell. 17:41:05 nice guy. 17:41:45 that is very nice of you to elaborate on his opinions. perhaps you can tell me more about who he is because i am curious why he posted my non-sensical blog 17:41:54 -!- sshc has joined. 17:42:08 well you see he's magical. 17:46:14 so are you, master elliott 17:46:35 lord over my domain. all ~seven of us. 17:47:57 hm I wonder where Deewiant is 17:48:55 -!- sftp has joined. 17:49:01 Vorpal: do you know how to merge two LVM volumes? 17:51:22 Vorpal: doing something deewiant, probably 17:54:31 anyone want to fix my interpreter? >:) 17:54:53 elliott: where is it 17:55:04 -!- Wamanuz2 has quit (Read error: Connection reset by peer). 17:55:04 on my filesystem 17:55:43 hmph wait why the fuck does that run out of heap 17:55:50 whaat 17:55:57 ohh. 17:56:07 (define (interpret p before after) 17:56:07 (eval 17:56:07 `(letrec ((interpret (lambda (p before after) ,interpret-code))) 17:56:07 (interpret ',p ',before ',after)) 17:56:07 (interaction-environment))) 17:56:17 methinks ',after might not like to be evaluated if after is infinite 17:56:33 > (eval `',zeroes (interaction-environment)) 17:56:33 [hang] 17:56:34 indeed 17:57:16 -!- Wamanuz2 has joined. 17:57:54 -!- atrapado has quit (Quit: Abandonando). 18:02:34 oerjan: can i troll you please? http://esolangs.org/wiki/Brainfuck/w/index.php%3Ftitle%3DTalk:Brainfuck/index.php 18:02:40 oerjan: is this language Turing complete or not? ;) 18:02:53 oerjan: it can run any computation that brainfuck can, just so long as it halts 18:03:49 -!- Sgeo__ has left (?). 18:03:55 -!- Sgeo__ has joined. 18:04:08 What the fuck am I doing that XChat interprets as "close this tab"? 18:04:13 -!- Wamanuz3 has joined. 18:04:21 Also, you're all addicted to /index.php 18:04:26 Also, I'm gibbering mess 18:04:52 Sgeo__: Actually, I'm just addicted to reacting to spammers that spam "Talk:foo" for ridiculous foo by creating a language named foo, so that Talk:foo cannot be reasonably protected. 18:04:54 It's freezing cold outside, I haven't had a good night's sleep for... um 18:04:54 Basically I hate the admins. 18:05:14 Also all these foo languages are basically trolls against the concept of a computational class. 18:05:47 elliott, what did you think of the disussion of SM-complete? 18:06:04 Sgeo__: To be honest I glossed over it as it didn't seem very interesting. 18:06:31 elliott: it's not TC, since you cannot emulate an arbitrary turing machine computation in it 18:06:48 oerjan: sure you can -- just so long as it halts 18:06:50 -!- Wamanuz2 has quit (Ping timeout: 255 seconds). 18:06:57 where "emulation" requires a halting computation for the translation, naturally 18:07:02 oerjan: you can even sort of emulate an infinite computation 18:07:10 oerjan: by running it for N steps for paramaterisable N 18:07:31 oerjan: also, you can trivially construct a program which is valid iff a given Turing machine computation halts, so it's /super-Turing/ and /sub-Turing/ at the same time 18:07:34 oerjan: confused yet? 18:08:23 02:46:46 http://cm.bell-labs.com/who/ken/trust.html this is it? 18:08:23 02:46:51 This is the whole thing? 18:08:24 elliott: sorry, but i believe TC requires you to be able to translate a computation which you don't know whether halts or not, and give a valid program as result 18:08:30 -!- asiekierka has joined. 18:08:31 hai 18:08:41 Sgeo__: Yes, that is the thing that made the most common opinion to be that computer trust was inherently limited. 18:08:49 For at least a decade. 18:09:26 oerjan: sure. but then, it is super-Turing in a way -- you can construct a program which, given an error-compliant implementation, behaves differently when given a halting turing machine program vs. a non-halting one 18:09:35 oerjan: even if one of these cases is an error -- this is edging close to Kimian quines! 18:10:36 Kim Jong-Il writes quines? 18:10:44 Sgeo__ I LOL'D 18:10:47 eek 18:11:26 Sgeo__: what 18:11:29 oh. 18:11:32 shaddap :D 18:11:33 oerjan: eek at what? 18:12:25 elliott: well your language reminds me of promise problems 18:13:10 and the issue of detecting whether something is a valid problem is a completely different task to detecting what the answer is if it is 18:13:41 oerjan: but consider this: 18:13:52 (lambda (p) ...run turing machine p, discard all output, print out "YAY!"...) 18:13:54 of course since your language has no IO the second task is actually trivial for it 18:14:05 oerjan: given a strictly-erroring implementation, you can run this program with various inputs to determine whether the given turing machine halts 18:14:46 oerjan: now imagine a simple shell script wrapper: do this. if the program halts, run it on an actual turing machine emulator. if the program does not halt, run it an infinite number of times. first telling it to execute instruction 1, then 2, etc., given the previous state 18:14:54 oerjan: now obviously the infinite loop here means the wrapper is providing a lot of the TCness 18:14:57 elliott: yes. but then you are essentially solving the first task, which means you are not _really_ making use of only legal programs in the first place 18:15:02 sure 18:15:13 but I'm saying that an error-conformant implementation is both:: 18:15:15 *both: 18:15:18 and then of course that is super-turing 18:15:24 - super-Turing (can solve halting problem for Turing machines) 18:15:31 - and sub-Turing (can't emulate all of them with valid programs) 18:15:41 and can be made TC by combining the first with a simple conditional infinite loop 18:15:54 tl;dr WTF IST DIS 18:17:37 oerjan: also consider: a non-error-conforming implementation is TC 18:17:44 oerjan: and can be implemented on a turing machine 18:17:48 (just use a bf interpreter) 18:17:58 oerjan: because non-halting programs will have their undefined behaviour be "run forever" :) 18:18:39 i am just saying, it's a promise problem and confusing the different subproblems of it will just give nonsense 18:18:52 oerjan: don't you think i'm /trying/ to give nonsense? 18:19:04 OF COURSE NOT. THAT WOULD BE _EVIL_ 18:19:18 -!- dbc has quit (*.net *.split). 18:19:23 oerjan: it is, as i said, a troll :) 18:21:26 http://esolangs.org/w/index.php?title=User:Chris_Pressey&diff=20610&oldid=20565 am i a bad person now 18:22:23 ...i already did a similar correction, as did cpressey 18:22:54 oh it's a user page 18:22:54 oerjan: but not on his user page :D 18:23:13 oerjan: http://esolangs.org/w/index.php?title=User:Chris_Pressey&diff=11261&oldid=7997 oh that's okay then 18:23:14 then yes, clearly genocidal evil madness 18:23:34 you know what's a really tempting smart-vandal target? 18:23:36 [[Template:Catseye]] :D 18:24:20 you don't say 18:25:03 oerjan: btw can you delete http://esolangs.org/wiki/Template:Catseye/inner, it's been unused for ages :trollface: 18:27:40 BUT OF COURSE 18:29:14 oerjan: well when will it be done?? 18:31:10 I NEVER SAID ANYTHING ABOUT "WILL" 18:32:29 * Mathnerd314 never figured out the difference between "could" and "would" 18:32:33 elliott, when is the ETA on that macbook air? 18:32:51 Vorpal: it's delivered via tiny particles in the air, you wait for them to spontaneously assemble to form a laptop 18:32:53 it's lighter that way 18:32:55 no packaging required 18:32:56 elliott, and more importantly: will it be beefy enough to run dwarf fortress 18:33:05 Vorpal: Maybe :P 18:33:25 the ETA are far too busy blowing up things in spain 18:33:26 Vorpal: 2.1 GHz semi-recent Core 2 Duo, 4 GiB RAM, and a decent GPU but that hardly matters for Dwarf Fortress. 18:33:28 elliott, doesn't it use text UI iirc? 18:33:48 elliott, so shouldn't you be able to get an account on bsmntbombdood's computer and play it over ssh? 18:33:49 Vorpal: Well, it renders its own UI which uses sprites that are mostly DOS codepage 437 plus some extra ones (like a dwarf glyph). 18:33:55 ah 18:33:57 There is a server for doing it over telnet/ssh, though. 18:34:04 But I doubt bsmntbombdood would do that :P 18:34:27 Vorpal: http://upload.wikimedia.org/wikipedia/en/8/80/Curses-tileset.gif this is what dwarf fortress looks like; notice the bearded dwarves 18:35:04 elliott, is it CPU bound or memory bound? 18:35:33 actually, memory bound is the wrong word 18:35:45 Vorpal: http://df.magmawiki.com/index.php/DF2010:System_requirements http://df.magmawiki.com/index.php/DF2010:Maximizing_framerate 18:35:45 since that would seem to refer to memory speed 18:35:54 "DF is not particularly RAM-hungry. Expect the process to allocate between 300 and 700 MB with medium regions. With 512MB you may be a bit on the short side, but 1 GB is absolutely sufficient. World Generation can eat up far more than that, but Generation will only be slower if not more RAM is available. Otherwise the influence of RAM on game speed is limited, as DF is not loading and offloading big ch 18:35:54 unks of data much." 18:36:17 elliott, 1 GB for dwarf fortress or 1 GB for the entire system I wonder 18:36:25 Vorpal: Entire system, I think. 18:36:38 Vorpal: I gather that just about anything can play Dwarf Fortress if you're okay with only seeing a handful of tiles at a time. 18:37:24 Vorpal: 18:37:25 CPU: AMD 7750x2 BE @ 2.7GHz 18:37:25 MBO: Gigabyte GA-MA78G-DS3h 18:37:25 RAM: 4GB DDR2 800 18:37:25 GPU: XFX GTX260 18:37:27 Game version: 31.08 - graphics 18:37:27 World size: Medium region (default, nonmodified) 18:37:29 Embark size: 5x5 18:37:31 Age of fort: 6 years 18:37:33 Number of dwarves: 140 18:37:35 Average fps: 6-14 18:37:46 Vorpal: Note extremely low average fps (it controls input too; apparently 5-15 fps is clumsy for text/mouse input) 18:37:47 heh 18:38:04 elliott, what makes it so CPU hungry? 18:38:29 Vorpal: It's reaaaaaaaaaally advanced. 18:38:38 Vorpal: For instance, world generation basically simulates the whole world for ages. 18:38:51 Procedural up the wazoo. 18:39:00 elliott, well... that would happen /before/ actual gameplay, no? 18:39:03 Yes. 18:39:09 Vorpal: Then after that, it's just really complex nature algorithms and everything affecting everything else, from what I gather. 18:39:20 I mean, each dwarf has its own AI (well, presumably). 18:39:23 (so while annoying to wait, it is not a major issue) 18:40:01 "Can't really give any solid recommendations, but I can share my findings between my machines. A 3.0Ghz P4 w/ 1GB of RAM ran the new version a little slower than the old. Another machine with a dualcore 2.0Ghz processor and 2GB of RAM ran it even slower. And my main machine, a quadcore @2.3Ghz with 3.25 GB of RAM ran significantly faster than the old version." 18:40:02 elliott, in most games each create has it's own AI on some level. Otherwise all copies would do the exact same actions at a given point in time. 18:40:27 Vorpal: You know why Minecraft is slow? 18:40:45 Vorpal: Imagine if Notch was a crazy perfectionist who spent less time making the game fun than making it RIDICULOUSLY COMPREHENSIVE and had a magic infinite-speed computer. 18:40:51 Vorpal: That's why DF is slow. 18:40:53 elliott, java mostly. It is slower in the beginning when stuff hasn't been jitted. 18:40:57 Er, no. 18:40:59 elliott, he 18:41:02 heh* 18:41:05 It's slow because it's handling thousands and thousands of blocks and shit at the same time. 18:41:11 OK, so Java doesn't help, but still. 18:41:15 elliott, for minecraft, yeah quite 18:41:22 It's OK in Minecraft because not that much is going on at any given time. 18:41:31 elliott, anyway, playing it locally gives lower FPS than playing SMP 18:41:37 only for desktop 18:41:47 for my laptop both give same (and lower) FPS 18:42:26 probably because my desktop has a good GPU but a somewhat dated CPU. And my laptop has a decent CPU but intel graphics 18:43:29 I'm optimistic about the Air's performance. 18:43:40 I think it'll probably be faster than my old iMac, which is good enough for me. :p 18:43:49 Also SSD. 18:44:46 Java performance... Java is quite performant, but has some rough edges that really murder performance if hit (large switch statements and virtual method calls). 18:45:10 Ilari: Switch statements being slow, who'da thunk it. 18:47:48 Apparently (at least the most common) JVM can't use jump tables to optimize switches. 18:48:33 I think you can switch on strings in java. 18:49:15 Well, yes, but even when switching on small integers it is slow. 18:49:37 yeah 18:50:11 back 18:51:33 And some array-intensive code can be slow too (because of bounds checking)... 18:52:03 now is time for... PINK FLOYD :F 18:52:19 which recording should I choose hmmm 18:53:03 -!- dbc has joined. 18:53:11 Dark Side of the Moon is always good. 18:57:07 nah 18:57:12 i mean yes 18:57:15 but not now 19:06:16 ah 19:06:18 shine on you 19:11:17 Yeah, "Wish You Were Here" is a pretty good album... 19:13:47 ineiros, skype again? 19:16:06 Ooooh. 27C3 started. 19:16:58 Vorpal: Yes. 19:17:28 -!- Phantom_Hoover has joined. 19:23:55 fizzie, mcmap failed with 19:21:23 [DIED] protocol.c:305: Unknown packet id: 0x68 19:26:14 Phantom_Hoover: As we've said, you failed. 19:26:22 How? 19:26:50 Phantom_Hoover: rm mcmap *.o 19:26:52 Phantom_Hoover: make 19:26:55 Phantom_Hoover: _build/mcmap ... 19:26:58 You were using the old version. 19:27:21 elliott, screw it, I'm removing it and recloning./ 19:27:39 Phantom_Hoover: You just did ./mcmap. It builds into _build/mcmap. 19:27:43 ./mcmap was your old build. 19:27:44 Duh. 19:28:38 Oh, sorry for not realising you'd changed the location of the executable from some vague references mixed with wrong advice. 19:30:51 I kind of like the presentation I made 19:36:18 Sgeo__, what was it on and should I care? 19:37:06 Phantom_Hoover, the incredibly vague topic of "misplaced trust", which I used to cover SQL injections, XSS, games, trusting trust, and social engineering 19:37:26 OK, I seriously cannot see anyone else on the server. 19:40:23 -!- zzo38 has joined. 19:40:40 * Phantom_Hoover guts .minecraft/bin 19:41:08 * Sgeo__ needs to put food on his stomach soon 19:41:27 Sgeo__, eat your copies of ActiveWorlds. 19:41:34 Sgeo__: So, that's like writing about "formal reasoning" for a math class, then? 19:41:53 Full of essential semimetals! 19:42:39 pikhq, hm. I don't think it's _that_ relatively broad, but close 19:42:39 Phantom_Hoover: Why do you keep dying? 19:42:44 Some packets must be being dropped... 19:42:47 Or somesuch. 19:42:55 Phantom_Hoover: You're stupid. 19:42:58 Phantom_Hoover: We can't see each other either. 19:43:01 Phantom_Hoover: It's a glitch due to teleporting. 19:43:04 Known. 19:43:07 It happens to us all the time. 19:43:12 We just don't want to reconnect because this is fun. 19:43:20 indeed 19:43:22 Did you ever discover who blew up the wonders of the world? 19:43:25 You could have told me, rather than waiting for me to complain and then being smug. 19:43:41 -!- Sgeo__ has changed nick to Sgeo. 19:43:58 Phantom_Hoover, we told you in game 19:44:02 * Sgeo shaves 19:44:15 (not literally) 19:44:16 Phantom_Hoover: We /did/ tell you. Several times. 19:44:23 Vorpal, oh, you mean when I was connecting and disconnecting constantly? 19:44:35 Phantom_Hoover, no, before that iirc 19:45:04 And I wasn't following the conversation; I assumed you couldn't see me but could see each other, and there was no evidence to the contrary. 19:46:03 Phantom_Hoover, except what we said 19:47:08 Phantom_Hoover, uninstall painterly? 19:47:09 why? 19:47:10 Phantom_Hoover: We said we couldn't. 19:47:20 Phantom_Hoover: There. Is. Nothing. You. Can. Do. It. Is. A. Problem. That. Only. We. Can. Solve. Stop. Messing. With. Things. 19:47:30 Is there a journal or book for citing Martin Pool? Is there some other algorithms? 19:47:31 Vorpal, because I gutted .minecraft before you told me. 19:47:41 elliott, notch could solve it too 19:47:44 Phantom_Hoover: WE TOLD YOU AS SOON AS YOU ENTERED. 19:47:45 elliott, please don't just assume I'm a fool. 19:47:55 Phantom_Hoover, your own fault for not reading what we said 19:48:02 otherwise we have to assume you are a fool 19:48:14 hi zzo 19:48:16 hi zzo thirty-eight 19:48:31 Erm... no, you can tell me after I notice the problem. 19:48:37 And start complaining. 19:48:39 elliott: I think it is because you kill Phantom_Hoover. Possibly, but not necessarily, by mistake (and/or indirectly). 19:49:03 zzo38 knows too much 19:49:12 Rather than saying how stupid I am after missing a single comment a long time ago when I had to reconnect anyway because of an unrelated chunk error. 19:49:29 Phantom_Hoover: We told you while you were walking around in the actual thing, post-chunk-error. 19:49:51 asiekierka: Do you like my program? 19:50:34 elliott, not at all clearly; I read it as me being invisible to you and you being invisible to me, but both of you being visible to each other. 19:50:46 Phantom_Hoover: Nope, we can both see you but nobody can see us. 19:51:05 Phantom_Hoover: BTW, I detonated a TNT in HHI headquarters. 19:51:10 Phantom_Hoover: ...but nothing got hurt. 19:51:13 This is because I am a magician. 19:51:33 Phantom_Hoover, I could post scrollback from mcmap then... 19:51:44 and you can see how wrong you are 19:51:55 Vorpal, the scrollback I've just been looking at? 19:53:35 -!- Wamanuz4 has joined. 19:54:47 Going to watch some DS9 today 19:54:50 Maybe 19:55:21 "Captive Pursuit" sounds boring 19:56:00 "The Federation ambassador from Betazed, Lwaxana Troi, visits the station, but develops an affection for Odo. 19:56:00 " 19:56:08 -!- Wamanuz3 has quit (Ping timeout: 240 seconds). 19:56:15 (Not "Captive Pursuit". "The Forsaken") 19:56:18 Of course she does 19:56:41 Sgeo: Why don't you watch DS78565398 yesterday, instead of watching DS9 today? 19:56:44 do we have a doctor here? 19:57:16 Bucket, irc medical advice 19:57:17 ...dammit 19:57:23 fungot, medical advice 19:57:23 Sgeo: anything else i could make the alpha key work and not really consistent with a decent product, if they didn't have methods? 19:58:01 http://irc.peeron.com/xkcd/bucket/literal_irc%20medical%20advice.txt 19:58:45 uhm 19:58:52 i think i'm allergic to something 19:59:05 nooga: Are you allergic to you? 19:59:21 we _do_ have a nutrition freak :D 19:59:28 it never happened but now sudenly i'm red and i'm shaking 19:59:32 besides that i feel good 19:59:34 elliott, reconnecting, but slow 19:59:34 nooga, call a doctor? 19:59:35 really strange 20:00:08 nooga: Yes, call a doctor. They can see you directly and since they are a doctor they might know better about this kind of things, too. 20:00:27 i will wait until it stops 20:00:29 FWIW, my dad is a doctor. I think I know what he'll say: "I refuse to give advice about someone I don't know" 20:00:37 And I think I agree 20:00:41 and if it does not want to stop, then i will call the doc 20:00:54 nooga: yeah it will stop one way or the other *cough* 20:00:55 * Vorpal prods elliott 20:01:04 oerjan: :P 20:01:17 i'm the one with skin cancer though ;f 20:01:24 ouch 20:01:31 (post) 20:02:07 which reminds me, i just yesterday saw a link to http://en.wikipedia.org/wiki/M%C3%BCnchausen_by_Internet 20:02:08 mhmhhm 20:02:21 (no accusation implied) 20:02:24 :F 20:02:29 okay, i will shut up 20:04:05 "Captive Pursuit" sounds boring 20:04:09 Sgeo: You do realise you can't skip DS9 episodes. 20:04:42 Are they less skippable than SG-1 episodes? Because I successfully avoided a boring SG-1 episode 20:05:02 I mean, I'll watch it of course 20:05:07 But just wondering 20:05:07 Sgeo: SG-1 is basically entirely non-linear. 20:05:10 You can skip every episode. 20:05:24 DS9 is heavily linear and has many important B-plots in otherwise irrelevant episodes. 20:05:49 * Sgeo wants to see more about the Dominion War dangit 20:07:09 ineiros, more skype? 20:07:23 ineiros: ASTOP TALKING TYO PEOPLE ON THE INTERNET WE ARE DOEING SEIROUS 0BUSINESPK!!!!890 20:08:04 I think it is just down 20:10:18 Well, I'll be off... 20:10:22 -!- Phantom_Hoover has quit (Quit: Leaving). 20:10:53 nooga: you still alive? 20:11:39 well that was that, then. 20:11:53 remember kids, always call the doctor in time. 20:12:10 * oerjan does not actually follow his own advice much 20:12:50 Vorpal: No more. 20:15:05 nooga: Skin cancer? The almost-harmless kind or the nasty kind? 20:15:24 -!- variable has joined. 20:24:23 Vorpal: "Seeds are dried to a moisture content of less than 6%. The seeds are then stored in freezers at -18°C or below. Because seed DNA degrades with time, the seeds need to be periodically replanted and fresh seeds collected for another round of long-term storage." 20:24:40 elliott, heh 20:27:04 -!- asiekierka has quit. 20:36:11 What is computation class of Brainfuck/w/index.php?title=Talk:Brainfuck/index.php language? Is it the same powerful or not, than BlooP with the REDPROGRAM command added? 20:36:43 zzo38: It's sub-Turing, but a fully compliant interpreter can be used to solve a super-Turing problem: determining whether a Turing machine halts or not. 20:36:46 Confused yet? 20:38:12 elliott: Yes I realized that. But exactly what sub-Turing class is it? And of course a proper interpreter that gives error must be super-Turing to work properly. It is confused!! 20:38:25 It is very confused indeed. 20:38:41 zzo38: It's a rather powerful sub-Turing class, I don't think it has a name. 20:38:58 For most sub-Turing classes ST, there is a program p \in TC such that halts(p) but p \not\in ST. 20:39:11 Whereas \forall p \in TC, halts(p) implies p \in ST. 20:39:12 elliott, prod 20:39:19 (Calling this one ST.) 20:39:50 System.out.print.some.more.dots.because.java.loves.dots.man("ow!") 20:40:23 elliott: Invent a name for it if it has no name 20:41:59 But do you know the computational class of BlooP+REDPROGRAM? BlooP is sub-Turing, if you add REDPROGRAM command in, it will still halt, but exactly by how much does it affect its computational class? 20:42:52 s/sub-Turing,/sub-Turing;/ 20:44:15 I do not know. 20:44:30 zzo38: What is REDPROGRAM, again? 20:44:32 Are you going to make the computational class of Brainfuck/w/index.php?title=Talk:Brainfuck/index.php called "Ha ha ha ha ha ha ha ha ha ha ha ha ha ha ha ha class"? 20:45:50 elliott: First I will define GREENPROGRAM. There is a catalog of all programs ordered by length and alphabetical order of FlooP programs. GREENPROGRAM takes the catalog program number (all numbered consecutively) and the input number. REDPROGRAM is the same but the catalog only contains programs 20:45:56 that halt for all values of their input. 20:46:32 (So if GREENPROGRAMs 1 to 99 halt and 100 doesn't but 101 halts, then REDPROGRAM #100 is the GREENPROGRAM #101.) 20:46:50 zzo38: Can you say "REDPROGRAM f(x)+3"? 20:46:53 For some function f. 20:46:54 And variable x. 20:47:41 elliott: I am assuming in this variant of BlooP, that the REDPROGRAM command takes two numbers as input, which can be specified in any way you can specify numbers, just like any other function. 20:48:03 OK. Why two numbers? 20:48:06 Shouldn't it be one? 20:48:21 (BlooP is sub-Turing, always halts; FlooP is BlooP+MU-LOOPs) 20:48:38 elliott: Two numbers, because one is the catalog program number, the other is the input to that program. 20:48:47 ah 20:49:34 Vorpal: Quick, is unionfs1, unionfs2 or aufs "better"? 20:49:42 elliott, no idea 20:49:52 Psht. 20:50:12 elliott: They're all terrible. elliottunionfs is the only choice. 20:50:27 pikhq: Why are they terrible. 20:50:41 Also, elliottunionfs would consist of me forking Gregor's cunionfs and making it usable :P 20:50:52 elliott: Because they don't have elliott's magic sauce on them! 20:51:08 That... I am not planning to put my "magic sauce" anywhere near a Kitten. 20:51:20 Wow, this Tomas M guy really hates unionfs and really loves aufs. 20:51:31 http://www.unionfs.org/ <-- Register a domain for open source research project X, use it to attack X! 20:51:40 No, I did not mean semen. 20:52:06 Do you have any idea about the computation class for BlooP+REDPROGRAM? 20:52:09 * elliott mentally notes to never use Slax. 20:52:28 pikhq: We all know what a sick, perverted furry you are now! 20:52:33 Tsk tsk tsk. 20:53:28 zzo38: i think BlooP + REDPROGRAM is superturing, no? 20:53:47 because you can determine if any program halts, by binary search 20:54:14 oerjan: are you sure? 20:54:18 oerjan: Yes it might seem so. Can you prove? Still, programs in BlooP+REDPROGRAM still always halt, and you have no access to GREENPROGRAM or BLUEPROGRAM. 20:54:23 oerjan: REDPROGRAM just runs a program 20:54:28 zzo38: you do have access to GREENPROGRAM, you can generate it 20:54:37 even a sub-turing language can enumerate all valid floop programs 20:54:51 oerjan: you can't really distinguish two different programs which output the same thing given some input 20:54:53 so you can't tell what program it ran 20:55:12 elliott: But how can you match the catalog numbers between GREENPROGRAM and REDPROGRAM, especially if you cannot call GREENPROGRAM? 20:55:25 zzo38: I am not sure. 20:55:31 elliott: oh hm 20:55:48 zzo38: er what is the _output_ of the REDPROGRAM function? 20:55:52 (I think you cannot even call BLUEPROGRAM; there is a diagonal argument saying you cannot do so.) 20:56:25 oerjan: The output of the REDPROGRAM function is a single number. (Numbers in BlooP and FlooP are natural numbers, which are unbounded.) 20:56:39 presumably, by program zzo38 means one-argument function 20:56:41 elliott: 20:56:44 pikhq: 20:56:51 elliott: You're the one going on about magic sauce near a kitten. 20:56:59 elliott: Yes, I mean a function taking one number argument and one number output. 20:57:22 pikhq: BUT WHO BROUGHT THE SUBJECT UP 20:57:29 (It is possible to encode many numbers in one number. There are multiple ways to do so.) 20:57:51 elliott: Þou hast. 20:58:00 elliott: Because they don't have elliott's magic sauce on them! 20:58:18 pikhq: Is it tomato sauce, or pesto sauce? 20:58:32 elliott: Þou art þe one wiþ þe mind in þe gutter. 20:58:45 Or taco sauce? 20:59:06 Hmm. How much more inefficient is reading/writing to a loopback device, vs. a real partition? 20:59:54 pikhq,elliott: Look that only elliott wrote "Kitten", and pikhq wrote something else (and, in addition, did not mean semen). 21:02:22 pikhq: So, stowfs is some hurd only thing right? 21:02:48 elliott: Quite. 21:02:56 pikhq: Lame. 21:03:00 elliott: Though the *concept* would be fairly easy to do elsewhere. 21:03:13 pikhq: What's the difference between stowfs and a unionfs? 21:03:31 elliott: The stowfs automagically handles the union. 21:03:38 pikhq: Uh, so does unionfs? 21:03:53 You drop a folder into /stow/ and its contents automagically becomes part of the union. 21:03:53 ok if REDPROGRAM m n is just the result of running halting program m on input n, then i don't see how to use that for anything useful 21:03:59 UnionFS doesn't do that. 21:04:30 You could probably make a userspace unionfs-alike do it in an afternoon, though. 21:05:59 pikhq: Or just use unionfs and have a daemon watching /stow/ with gamin. 21:05:59 oerjan: You would somehow have to calculate a number "m". You might do so from other known halting programs. I don't know. 21:06:13 elliott: Less elegant! 21:06:26 "unionfs also stops unioning at mount points, which is really annoying and makes it unusable for a lot of purposes. e.g. a lot of the path-translation stuff in fakeroot could be avoided (and robustness improved) if you could union-mount the fakeroot directory over / before running the fakerooted command, so the changes that `make install' or whatever did landed in the fakerooted directory, but it norma 21:06:26 lly saw the original /. But this doesn't work because of the mount-point-traversal problem." 21:06:27 -!- j-invariant has joined. 21:06:28 Hmm. 21:06:34 pikhq: Sure, but more elegant than stow. 21:06:51 Oh, by far. 21:06:56 And I don't know if quining helps at all. 21:08:34 +3 21:08:37 elliott, hm *prod 21:09:39 Vorpal: ? 21:10:22 (you found it) 21:12:33 I wawtched the ashes fora b it 21:12:35 zzo 21:12:45 I don't know the rules 21:13:16 j-invariant: What ground did they play and what scores? 21:13:26 I dont know 21:14:22 j-invariant, what game? 21:14:33 cricket 21:14:38 ah 21:15:02 j-invariant, the game that no one who isn't a fan can understand at all 21:15:18 I don't know the rules 21:16:02 (at least with football, which I'm no fan of, I dislike it even, I know that the point is to get the ball into the side of the game area that isn't guarded by your own guy. Then there are various arcane stuff like "off sides" rules or whatever) 21:16:19 (but cricket just looks random) 21:16:59 (random to the point of mornington crescent) 21:17:32 In cricket the basically idea is that the bowler bowls the ball, the batsman should then try to hit it so that the fielders do not break the wicket. If they break the wicket, the batsman is out. Otherwise, the batsmen can run back and forth earning points, and stop when you think it is not safe. 21:17:55 zzo38, see, lots more jargon than you need to describe football 21:18:11 (I didn't understand it, I got lost halfway through) 21:18:20 zzo38: that's funny because I saw all of that except the part with the guy running back and forth 21:18:28 Vorpal: That may be. 21:18:50 j-invariant: He didn't run probably because he decided it wasn't safe to run. 21:19:08 pikhq: 21:19:08 stowfs 21:19:09 ... is a special mode of unionfs. 21:19:10 --hurd wiki 21:19:11 zzo38: and also that process does not sound like it takes very long - how is the overall game so long? 21:19:40 (When you step out of behind the popping crease (the popping crease is the line on the ground you have to stand behind to be safe), the fielder can throw the ball at the wicket and break it, and then you are out.) 21:19:41 "I'm the goddamn batsman." etc. 21:20:14 lol 21:20:58 j-invariant: The reason the game is long is because you will often defend so that you can continue and hope to score runs later. Also, there are eleven players in a team, there must be two batsmen in play at all times, so the innings isn't finished until ten batsmen are out (unless you declare). 21:21:44 So basically the batsmen try to score and the fielders try to break the wicket so that the batsmen cannot score. 21:22:08 elliott, how is the glass cube going? 21:22:16 elliott, weren't you going to do it during xmas? 21:22:21 thanks zoo 21:22:23 thanks zzo38 21:22:24 Vorpal: Still xmas holidays here! 21:22:39 elliott, well yes but *during*, it won't last forever 21:22:49 j-invariant: There are other rules too, but I have described the basically the way the game works. 21:23:46 elliott, I plan to spread out and build an underwater base, so I might claim a large lake if you don't 21:23:55 elliott, it will need 128x128 too so... 21:24:13 elliott@dinky:/pkg$ ls foobar 21:24:13 elliott@dinky:/pkg$ ls -l foobar 21:24:13 total 0 21:24:13 -rw-r--r-- 1 root root 0 Dec 27 21:23 x 21:24:13 elliott@dinky:/pkg$ ls foobar 21:24:14 x 21:24:23 I think I may want to set udba=notify. If only it wasn't erroring on that ... 21:24:46 j-invariant: Did you ever notice anything in the game that I have not described? 21:24:58 (btw ls foobar/x worked before all that) 21:25:02 zzo38: well no, one thing was the filming 21:25:14 they vary the speed of time quite sharply 21:25:38 I would rather they didn't 21:26:17 j-invariant: That is just for instant replays and all of that kind of stuff so you can watch on television, it has nothing to do with the rules of the game. (If you do not like it, you might be able to go to the stadium?) 21:26:53 anyone used aufs? 21:27:41 elliott, iirc that is like the single non-bugfix patch in arch kernel 21:27:46 (I use vanilla kernel though) 21:27:54 Vorpal: doesn't answer my question :p 21:28:09 elliott, presumably every arch user not using a custom kernel then 21:28:21 unless it is a module 21:28:23 not sure 21:28:26 Vorpal: "use" 21:28:29 Vorpal: it's a filesystem. 21:28:35 yes 21:28:37 a union filesystem. 21:28:40 so no, i doubt every arch user uses it. 21:28:45 as they'd have to mount it manually 21:28:49 elliott, but if the code is loaded into the kernel then it has been used in one sense 21:28:59 ... 21:29:03 are you trying to be unhelpful? 21:29:31 elliott, yes same as you are when you do not answer which lake you plan to use. Since I'm just going to pick a large one at random then for this project 21:29:36 * Sgeo feels like a douchebag 21:29:37 maybe the one east of spawn 21:29:40 who knows 21:29:55 Said something I know I shouldn't have said, even though I only had good intentions 21:30:10 Sgeo, this is not your diary. This is IRC. 21:30:11 Vorpal: east of spawn will invoke server's wrath. 21:30:17 elliott, depends on how far 21:30:31 elliott, I was planning the one near the TNT test 21:30:41 or maybe one of the large one to the west 21:30:47 Are you rebuilding Deewiant's stuff? 21:30:56 pikhq: KITTEN WILL SHIP ONLY WITH GNUSTEP MWAHAHAHAAHAHAHAAHAHAAHIAHAAHAHAHAAIAIDIOJASHAJKLASDJFKG;ALD JN 21:31:05 Sgeo, that is done 21:31:11 o.O awesome 21:31:55 elliott, or I could make an artificial lake between my place and mth 21:31:59 or something 21:32:06 Vorpal: not too close. 21:32:37 elliott, well I'm not sure yet. Or I could help on the cube if you start within the next few minutes (<5 minutes) 21:33:02 Vorpal: Err, help how? 21:33:14 elliott, draining water, digging, stuff like that 21:33:16 RIP OpenSolaris -- the last System V derivative. 21:33:20 elliott, marking out edges 21:33:23 Vorpal: Link me to those possible locations again? :P 21:33:27 elliott, opensolaris died? how? 21:33:33 Vorpal: Oracle have cancelled it. 21:33:36 "OpenSolaris was just one of many Sun projects acquired by the proprietary database vendor Oracle, and although several of the others (Java, OpenOffice, and MySQL) have had their fair share of headaches and battles since the acquisition, OpenSolaris is the only one to be scrapped outright. A leaked Oracle memo announced the move in September, under which upcoming "Solaris 11" releases might be availabl 21:33:36 e through a "technology partner program," but the open source version marches straight for the grave." 21:33:47 System V is now dead, dead, dead! 21:33:56 Well. 21:34:02 elliott, have to find it 21:34:02 *RIP OpenSolaris -- the last _free_ System V derivative. 21:34:13 heheh 21:34:17 Also the first, I think. 21:34:19 So it's not that big a deal. 21:34:24 i'm experimenting with SPARC machines 21:34:26 ouch 21:35:01 elliott, http://sporksirc.net/~anmaster/tmp/placement.png 21:35:06 and i've recently met a team from Wroclaw's technical university that wants to build experimental, distributed OS for SPARCs 21:35:38 and they love Plan 9 21:35:53 elliott, what about the previous version 21:35:57 elliott, that one is still available no 21:36:01 elliott, and could be forked or? 21:36:07 Vorpal: Well, presumably. I doubt it will be. 21:36:09 if it can't be forked, then it was never free 21:36:17 elliott, hm 21:36:21 Vorpal: Hmm. That overlay makes it hard to see if there's any good mountains nearby. 21:36:28 Vorpal: I need a mountain nearby for: (1) Entrance, and (2) Mining. 21:36:36 Alt 2 is out; all that's near is sand. 21:36:42 minecraft = price wall 21:36:43 elliott, you get more stuff when mining below surface 21:36:49 Vorpal: Sure, but still. 21:36:51 nooga: "Price wall"? 21:36:55 It's still pretty damn cheap. 21:37:09 cheaper than most games 21:37:19 Even the final price ($20 I think) is cheaper than most games. 21:37:24 Modern games cost like £40 here. 21:37:37 I wonder how buggy final will be 21:37:39 presumably very 21:37:46 (and then a number of bug fixes for it) 21:37:52 Adventure mode sounded fun until I read that you can't even place or remove blocks. 21:37:56 Remove blocks that you didn't place, sure. 21:38:01 But you should have to build things to get by! 21:38:07 Complete a circuit to open a door, say. 21:38:15 mhm 21:38:44 Alt 1 or Alt 3 ... hmm. 21:38:49 elliott, anyway you have to check topo map to find mountains (which you don't need) 21:38:56 Alt 1 is slightly closer to civilisation and spawn. 21:39:16 Vorpal: Alt 3 has less water around it than Alt 1, right? 21:39:29 I really want it surrounded by water. Grr. I might have to explode some land. 21:39:32 elliott, hard to tell 21:40:14 elliott, for alt 1 I reserve the right to develop the waterfall area near it. 21:40:27 Vorpal: I could explode the land in-between,t hough? 21:40:27 elliott, I think that grown a bit since then 21:40:32 That currently blocks off alt 1 from waterfall area. 21:40:36 elliott, also the mines cover much 21:40:59 elliott, as in, that has the underground dock and huge lava lake area 21:41:04 Vorpal: Tell you what. Do you know the coords of alt 1 and alt 3? 21:41:06 I'll look at both personally. 21:41:12 elliott, hm no I don't. 21:41:16 I could teleport there approx 21:41:23 (by map clicking) 21:41:34 Vorpal: That would be nice. I think it's about 10 ROUs above the ROU. 21:41:40 On that map. 21:42:07 well alt 3 I been past a few times 21:42:13 alt 1 I believe I gone past once 21:42:29 Vorpal: We both bring 256 cobbles? 21:42:40 Vorpal: 512 cobbles is enough for a 129x129 border at sea level. 21:43:19 elliott, connection rest 21:43:21 reset* 21:43:35 Vorpal: You okay bringing 256 cobbles? 21:44:04 PH: I've borrowed 256 cobbles on extended loan, hope you don't mind. Put some back in there. 21:44:07 Will return soon enough. 21:44:13 elliott, well I don't have 256 with me atm 21:44:28 Vorpal: How many, then? 21:44:43 what is this about 256 cobbles? 21:44:46 elliott, 10 21:44:52 elliott, I was on my way when you said it 21:44:56 j-invariant: minecraft :P 21:45:03 Vorpal: Can't you /home and //goto? 21:45:18 Dear PH: I've borrowed another 256. Sorry. 21:45:34 elliott, no due to lag I can't get out of /homed area (steel door) 21:45:56 elliott, you landed and parted game 21:45:59 Surely it's annoying gathering materials? 21:46:04 Vorpal: Chunk loading error. 21:46:12 Sgeo: Yes, it is. Although stone is ridiculously common so cobbles are easy. 21:46:38 I suppose if collecting stuff didn't exist, the game wouldn't be fun? 21:46:57 finite resources etc 21:48:51 Sgeo: It'd be fun. That's what Classic was. 21:48:52 But this is more fun. 21:52:10 ....why does chess boxing exist? 21:54:29 There needs to be snow in MC 21:56:04 elliott: i would pay... 5 eur for such a game 21:56:21 nooga: because why? the "bad" graphics? 21:56:25 nooga, come play in Active Worlds! 21:56:27 snow in MC? 21:56:28 no 21:56:28 Sgeo: there is snow in MC, you dolt. 21:56:32 MC is snow-free 21:56:34 coppro: "no"? 21:56:36 there's snow in it. 21:56:41 the hallowed halls shall ever remain clean 21:56:56 -!- KingOfKarlsruhe has joined. 21:57:02 http://www.biostatistics.ca/wp-content/themes/biostatistics/images/mc-building.jpg 21:57:23 Gregor? 21:57:29 ^MC 21:57:40 -!- KingOfKarlsruhe has left (?). 21:57:58 I don't know why a pink tie made me think of him. If the building were wearing a hat that would be more sensible 21:58:12 elliott: no, because the autor is already too rich and he can't code 21:58:25 (unfortunately this view of the building no longer exists as they are putting a building roughly where the camera would have been) 21:58:58 I still have to know why the building is wearing a tie 21:59:12 because it's professional 21:59:18 http://www.orientation.math.uwaterloo.ca/2010/pinktie.php 22:00:09 ashes 4th test is starting now in ITV4 22:00:56 * Sgeo suddenly wants a pink tie 22:01:20 lol 22:02:29 j-invariant: Who won the toss? 22:03:01 the bit about the dean's tie isn't entirely accurate. There are a number of reproductions given out on special occasions 22:03:31 (but the right to give them out is reserved for the dean) 22:03:34 coppro: I have seen some mathNEWS stuff even though I do not live in that province. 22:03:41 zzo38: yeah, I recall 22:03:54 zzo38: I didn't know if there was a toss 22:04:06 they've garble warble fashes 22:04:30 j-invariant: There is always a toss at the beginning of each match. That is how they decide who goes first. 22:04:54 of a coin? 22:05:17 coppro, um 22:05:30 j-invariant: Yes, a coin. 22:05:47 * Sgeo assumes that coppro is just joking around or somesuch, and is not having a stroke 22:06:01 Sgeo: I'm joking 22:06:08 if you don't get the joke, I'm quite ashamed of you 22:06:37 I mostly got that it wasn't serious, but what was humorous about it? 22:08:13 Sgeo: it was nonsenes 22:08:29 But why was coppro spouting nonsense/ 22:09:02 j-invariant: Whoever wins the coin toss gets to decide who goes first (one team bats while the other team fields, and then after one innings they switch). There is some strategy involved in making this decision. 22:09:23 zzo38: how can it be strategic, everyone has to have their turn 22:10:20 j-invariant: The strategy has to do with the conditions of the ground and of the weather. 22:10:37 it was not nonsense 22:10:44 zzo38: really? 22:10:48 http://www.google.com/search?client=ubuntu&channel=fs&q="garble+warble+fashes"&ie=utf-8&oe=utf-8 22:10:52 coppro: They've table warble farble. 22:11:10 OH 22:11:13 It's been a while 22:11:42 :/ 22:11:43 j-invariant: Yes. There is strategy in this game involving timing, ground conditions, weather, relative abilities of the players, endurance, and other things. 22:12:14 (For example, if the ball has bounced on the pitch a lot, it might make dents in the pitch.) 22:12:47 ah that would make it harder to bowl 22:12:57 Yes. 22:14:01 What-the-fucks-his-name dies in that book. And in the 5th book. And in the first book. 22:14:29 * Sgeo vaguely wonders if that's spoilery 22:14:36 zzo38: hey there are actually two batsmen, and they both run back and forth 22:15:11 j-invariant: Yes. That is correct. One is the striking side. If they run an odd number of times, they will have swapped positions. 22:15:45 zzo38: thiss is getting more complicated all the time 22:16:58 Sgeo: Slartibartfast? 22:17:05 pikhq, no 22:17:08 It does seem to get more complicated all the time, but the rules have logical sense, the rules aren't just completely random. 22:17:14 j-invariant: As Gregor said, the game of cricket is so complicated that the human mind can either understand it, or all other games. 22:17:15 Agrajag? 22:17:21 Yes 22:17:33 I had a computer called that. 22:17:44 fizzie: Did Arthur kill it in a fit of rage? 22:18:24 No, though it did have a habit of saying "CPU Fan Error - press F1 to continue" at boot-time. 22:18:31 lol elliott 22:18:49 I like how not only has Agrajag died every time to Arthur in some way, but /everything Arthur has ever eaten or caused the death of has been a reincarnation of Agrajag/ 22:18:58 elliott: The rules may be complicated, but not as much as some games. There are more complicated games. I think Quintuple Arcana is probably more complicated (in fact, so complicated that nobody has written out all the rules yet). 22:19:10 coppro, hmm, didn't remember that 22:19:36 coppro, the sperm whale? 22:20:02 Sgeo: yes 22:20:28 haha 22:20:38 so I have this throwaway email address I use sometimes 22:20:46 zzo38: Yeah, but most of those games aren't popular sports. 22:20:50 the website said it will be terminated by Dec 8; it's still there 22:20:58 pikhq: Yes. 22:21:20 the ball hit the edge of the field? 22:22:16 j-invariant: If the ball hits the boundary before anyone else catches it (or if someone catches it while it is outside the boundary), the batsman scores four points (or six points if it hasn't hit the ground yet). 22:22:36 You can score without having to run in this case. 22:22:37 I would have thought he wasn't supposed to get it rigpht outside 22:23:23 Cricket kinda is, if you happen to have allegiance to Her Majesty Elizabeth the Second, by the Grace of God, of the United Kingdom of Great Britain and Northern Ireland, and of Her other Realms and Territories, Queen, Head of the Commonwealth, Defender of the Faith. 22:24:40 pikhq: Is that relevant? 22:25:10 zzo38: It's not very popular outside of Her Realms. 22:25:12 and how come cricket AND baseball exist in the same world? and football and soccer 22:25:33 basketball and volleyball 22:25:43 j-invariant: Probably because they are different games. 22:26:04 how many games are there? 22:26:08 j-invariant, next you'll say that only one of C and C++ should exist or... oh wait, there's a good argument for that 22:26:19 j-invariant: There are *many* varieties of football. It just so happens American football and association football are the two most popular. 22:26:39 coppro hates me now 22:26:54 j-invariant: Likewise, there are many bat-and-ball games, baseball and cricket being the two most popular. 22:26:56 Probably a lot. Even with card games, some people will make up some variant rules; with chess, there is FIDE chess but many people will make up variants; etc. 22:27:04 the crowd are making an ominous jeer 22:27:15 j-invariant: I can't say anything similar for basketball and volleyball, though; those are very unrelated games. 22:27:22 it's not clear whether the batsman hit the ball or not 22:27:23 -!- variable has quit (Read error: Operation timed out). 22:27:26 volleyball is a net sport 22:27:27 About the only thing in common is the term "ball". 22:27:40 net sports overlap with racquet sports 22:27:48 rugby and american football 22:28:03 j-invariant: Yes, rugby is another football game. 22:28:27 j-invariant: That does sometimes happen. Sometimes they have a TV camera that they can record it and watch more accurately. But other than that it is the umpire's decision to make once someone appeals. 22:28:43 they even have a heat vision camera 22:28:44 -!- variable has joined. 22:29:01 -!- Sgeo has changed nick to unaffiliated. 22:29:02 There's also Australian and Canadian football. See, tons of football games. 22:29:07 -!- unaffiliated has changed nick to Sgeo. 22:29:11 Registered 22:32:24 zzo38: the batsman dived to get past the line before the ball with pushed against the wiket. It was close to within 1/30th of a second but he made it 22:33:26 j-invariant: OK. 22:33:53 I'm surprised that it is so close 22:34:22 wicket 22:35:54 Of course such a thing might happen sometimes. Like other things might happen sometimes, too. 22:36:03 tennis and badmington 22:36:30 I don't know how common it is to be that close within 1/30th of a second, but of course it is possible. 22:36:38 -!- cheater99 has quit (Ping timeout: 240 seconds). 22:37:10 zzo38: I imagine things come closer as the skill of the players increases - so these playes must be very good 22:37:49 unless it was just random 22:38:26 j-invariant: I would imagine that is probably the case. It is a Test match, so it is the highest level first-class and they would have good players there. But it can happen just by random, too. 22:40:06 What does 4/283 mean, as a score> 22:40:19 back 22:41:02 j-invariant: It means they have scored 283 points in 4 wickets (in this sense, a "wicket" means the play before you are out (being out is also called "losing a wicket" or "fall of wicket")). 22:41:50 (It can sometimes get confusing that "wicket" means two things until you are used to it, then it isn't really any more confusing than any other words meaning two things.) 22:42:05 I see 22:46:59 does anyone happen to know if there is a meterology channel on here? 22:48:00 I don't know. 22:48:14 harm 22:49:09 -!- cheater99 has joined. 22:49:29 I would like an opinion. Should I use Martin Pool's algorithm (but in a more generalized way)? Is there a journal or book to cite in the bibliography? 22:49:43 Vorpal: down? 22:50:09 ineiros: Ping. 22:50:58 one of the players got hit by the ball and he wont get back up 22:51:22 well they cut away and now everything is back to normal 22:53:22 that must suck, playing with a sore knee 22:53:55 zzo38: is that something which orders like 1,2,3,4,5,6,7,8,9,10,11,... rather than 1,10,11,2,3,4,... ? 22:54:12 j-invariant: Yes. 22:54:38 zzo38: I don't like those but that's just because the basic algorithm is simpler, maybe some people find this easier to use or something 22:54:57 elliott, up? 22:55:26 -!- oerjan has quit (Quit: leaving). 22:55:41 Vorpal: yes 22:56:11 j-invariant: Well, I am using it to make the program versatile. You can modify the S table to adjust the sorting algorithm that my program uses. 23:04:58 What is the correct bibliography citation to use? 23:15:08 NOTE TO SELF BEEP BEEP BEEP: (-200, 1000) IS CUBE 23:18:00 Cube? 23:24:24 I think the reason I'm scared of this episode is it reminds me of VOY 23:27:29 Sgeo: Cube = 128x128x128 23:27:37 Glass walls/floor. Lit by lava 23:27:38 *lava. 23:28:05 W 23:28:06 T 23:28:07 F 23:28:08 WTF 23:28:29 minecraft bots 23:28:33 are there any? 23:28:45 This is a happy WTF, but still a WTF 23:28:47 mobs? 23:29:09 I do not deserve to get an A. 23:29:42 bots 23:30:31 Sgeo: is that for the class you forgot about? 23:30:35 Yes 23:33:55 elliott, got bus error from mcmap 23:33:56 wtf 23:34:05 Vorpal: I Blame Notch. 23:34:13 elliott, also not it fails to connect 23:34:21 Vorpal: That happens sometimes. 23:34:22 Keep tryin'. 23:34:26 I think minecraft.net is the slow. 23:38:39 bots 23:58:33 -!- zzo38 has quit (Remote host closed the connection). 2010-12-28: 00:00:18 BLORP 00:01:00 I was over at a friends' yesterday, and they were playing Rock Guitar Band Hero Idol Game. They told me to play, and I said I only would if I "sung" by playing the melodica through the mic. 00:01:08 Long story short, five-minute guitar solo to Free Bird on melodica: Best idea ever? 00:04:42 Gregor: YES. 00:08:57 Gregor: :D 00:09:41 They play in some club every Tuesday. If I can figure out a reasonable approximation in a day, I could troll a whole crowd of people who think they're musicians. It would be ... quite entertaining. 00:11:08 -!- augur has changed nick to AaronBurr. 00:11:14 -!- AaronBurr has changed nick to augur. 00:11:54 Sgeo: why don't you deserve an A? you know the material, right? 00:13:33 Mathnerd314, do people who put off half a semester's worth of work for the last 48 hours or so ... beyond what should have been the absolute deadline, deserve As? 00:13:45 ineiros: http://wiki.hey0.net/index.php/Flatfile_Configuration#kits.txt 00:14:03 Sgeo: "easy A" 00:14:06 Sgeo: yes, if you've learned the material. 00:14:06 Is getting this A really going to be a decent punishment for my brain? 00:14:23 Mathnerd314, I answered a chapter's review questions without even looking at the chapter 00:14:43 Sgeo: excellent! 00:14:51 (assuming you got them right) 00:14:56 They're not "What is X Y Z" sort of things 00:15:16 They're more out-of-the-box. They test creativity and some understanding, I guess, but not knowledge 00:15:25 Sgeo: We already know your university is crap. 00:16:30 Sgeo: yeah, that chapter seems pretty useless 00:16:59 -!- MigoMipo_ has quit (Read error: Connection reset by peer). 00:17:36 example question, just to confirm? 00:21:55 "Most people think of security as a cost to projects, products, or services: the cost of analyzing a system for vulnerabilties, the cost of providing products or processes to detect unwanted activities, the cost of products or processes to prevent or mitigate wanted activities, and so on. But security can also be considered a benefit, such as when adding security to a product attacts more customers or enables a provider to raise a product's p 00:21:55 rice. Discuss the various ways that security provides economic benefit, not only to an enterprise but also to a nation." 00:24:02 -!- Sgeo has left (?). 00:24:06 -!- Sgeo has joined. 00:25:40 elliott: What else leads us to believe his university is crap? 00:26:29 Sgeo: what's the course on? "Ethical implications of software" 00:26:33 pikhq: the fact that it's crap 00:26:42 does it have an IRC network or channel> 00:26:44 ? 00:26:46 coppro: I'm asking for details. 00:26:49 all the cool unis do 00:26:56 pikhq: All his courses are taught by stupid people. All his courses have stupid people in them. 00:26:58 (we got a Christmas card from Oxford this year!) 00:27:07 pikhq: It's Random State University with thousands upon thousands upon thousands of students. 00:27:11 coppro: what's MIT's irc channel? 00:27:19 pikhq: And he's in a course titled "Computer Information Systems" (IIRC). 00:27:30 pikhq: Or something similarly not-*even*-software-engineering course. 00:27:45 elliott: Okay, so... He could do *worse*, but we're not exactly talking good here. 00:28:10 Mathnerd314: dunno 00:28:13 but they better have one 00:28:24 Sgeo: what's the course on? "Ethical implications of software" 00:28:25 :D 00:28:32 * coppro usually twitches at the mention of software engineering 00:28:34 *cough*University of Phoenix*cough* 00:28:36 s/ethic/economic/ 00:28:56 if MIT has an IRC channel they'll be too elitist to let anyone else know about it :) 00:29:19 * pikhq usually twitches at the idea of programming being a lecture-teachable skill rather than being a hard-earned craft. 00:29:30 pikhq: I twitch at that too 00:29:33 coppro: so what unis *do* you know with IRC channels, since you clearly have a small sample size? 00:29:41 Mathnerd314: McGill, UW, and Oxford 00:29:56 coppro: Up there with the idea that a CS degree is a course in programming. 00:30:02 pikhq: oh god 00:30:07 brick science! 00:30:32 pikhq: the university of phoenix is the anticool 00:31:00 Cryptography and Computer Security is the course 00:31:16 Degrees from the Crazy Drunk Hobo School of Dubious Merit are more valuable. 00:31:34 Sgeo: did you cover buffer overruns in extreme detail? 00:31:54 No. Unless I skipped that material by accident 00:31:58 pikhq: CS ought to be part of math, and programming should either be part of engineering or obliterated as a profession 00:32:07 Since I didn't real much of the textbook like I was supposed to 00:32:10 Mathnerd314: like at my school! 00:32:10 Mathnerd314: CS in my mind *is* a field of mathematics. 00:32:14 Sgeo: your course is fail then 00:32:21 Mathnerd314: And programming is quite obviously a craft. 00:32:22 CS absolutely is a field in mathematics 00:32:31 programming is a craft 00:32:35 Mathnerd314: To which engineering can be applied. 00:32:38 an SE degree is debatably a programming degree 00:32:46 but that's more okay 00:32:49 since it's engineering 00:32:52 hmm, ok. 00:33:15 What, do you want to read the paper I wrote? 00:33:22 pikhq: CS ought to be part of math, and programming should either be part of engineering or obliterated as a profession 00:33:26 lol @ the latter. 00:33:31 CS is already mathematics (at decent places). 00:33:34 obliterated by an AI 00:33:38 Sgeo: you wrote a paper? is it full of complete BS? 00:33:41 software engineering (i.e. programming) is a perfectly valid discipline. 00:33:42 elliott: decent places are few and far between 00:33:43 Mathnerd314: it's not a "paper". 00:33:56 coppro: 90% of everything is crap, but you avoid it, don't you? 00:34:03 Mathnerd314, it's full of not very in depth discussion about a somewhat random hodgepodge of topics 00:34:16 If it were up to me, "CS" would be dubbed "computational mathematics" or some such. 00:34:24 elliott: yes 00:34:36 pikhq: CS and CM are two separate disciplines at UW, actually 00:34:41 Sgeo: then no. I think I've heard enough to know that taking that course is not worthwhile 00:34:53 CM courses have a high overlap with CS and AM 00:34:55 pikhq: CS is "computing theory". 00:34:56 coppro: ♥ 00:35:04 Note: not the same as computability. 00:35:06 http://www.ucalendar.uwaterloo.ca/1011/COURSE/course-CM.html is the CM courses 00:35:19 pikhq: CS is not about computers and it is not a science; it is about computing, and it is a field of mathematics -- computing theory. 00:35:24 "computing theorist" isn't as catchy though. 00:35:29 (How about "mathematician" instead.) 00:35:43 elliott, are you sure that the plot for this DS9 episode wasn't cribbed from VOY? 00:35:56 Sgeo: Almost certainly the other way around. 00:36:04 Sgeo: Which episode? 00:36:06 Sgeo: VOY gleefully cribbed stuff poorly. 00:36:11 Captive Pursuit 00:36:15 DS9 is 99.99999% good and Voyager is like 100 - epsilon% bad, so. 00:36:24 when I look at the CM courses, though 00:36:26 Sgeo: 1993. It predates Voyager. 00:36:27 I don't quite see the point 00:36:27 coppro: how does applying there work? are there a lot of US students? 00:37:04 Mathnerd314: Probably quite a few; it's not terribly hard for a US student to go to Canada for school. 00:37:12 bonus: Canada 00:37:31 pikhq: thus the question :p 00:38:02 Mathnerd314: applying? what about it? 00:38:07 you apply, you might get accepted... 00:40:16 hmm, nvm then 00:40:34 or do you mean to specific programs? 00:41:44 also, Mathnerd314, where do you go to? 00:41:58 * Mathnerd314 is in HS still 00:42:01 (there are a fair number of US students at UW, btw) 00:42:02 oh right 00:42:13 fizzie: Vorpal found your throne. also me. 00:42:14 if you're considering applying to UW, I definitely recommend it 00:42:21 grade 11? 00:42:24 you apply, you might get accepted... 00:42:24 hmm, nvm then 00:42:30 Man, if I might get /rejected/, what's the point! 00:43:00 coppro: no, senior with a procrastination habit :p 00:43:21 Mathnerd314, try not to turn into me 00:43:34 Mathnerd314: oh. You'd fit in perfectly then! 00:43:45 Sgeo: parents are reviewing essays ATM 00:43:46 all your highschool year names are stupid 00:44:11 elliott: which name would this be? 00:44:17 fizzie, it seems it is next to the cube being built 00:44:32 I concur with elliott 00:44:39 Mathnerd314: freshman sophomore junior senior 00:44:40 wth 00:44:43 especially sophomore 00:44:51 coppro: and then it STARTS OVER AGAIN AT "COLLEGE" WHAT 00:44:58 Oh yeah, I'm a freshman. But last year I was a senior! 00:45:15 grades, forms, or years please 00:45:39 Considering how screwed up my college experience has been, I don't like to use those terms 00:45:44 coppro: don't forget the missing metric system either :p 00:47:09 that one is just funny 00:47:16 Sgeo: you should see UW 00:47:27 hm? 00:47:39 nth year doesn't even mean much 00:47:47 because of co-op, failures, etc. 00:49:16 Considering how screwed up my college experience has been, I don't like to use those terms 00:49:17 what 00:49:37 elliott, first few semesters, didn't have a full course load 00:49:38 etc. 00:50:01 oh, that too 00:50:07 it's kind of funny, actually 00:50:31 the registrar's office tries to keep track of which term you are in by assigning "1A" "1B" "2A" to people but half the time it doesn't work 00:50:49 (and "4C" and "4D" terms happen) 00:50:57 even though those are officiall still 4B 00:51:02 UW might be fun to go to. 00:51:20 it is 00:51:43 I'm biased though, I like Canada :P 00:51:59 Mathnerd314: you should apply! 00:52:04 Ilari, skyping again? 00:52:35 coppro: looking at the admission stuff; confusing website 00:52:49 Mathnerd314: OUAC? 00:52:51 yeah 00:54:39 btw, if you are thinking of both CS and math, the thing about CS is it's harder to get into (you can't just declare it) and you need to pay extra $$. They won't let you in after long enough because of the $$ and they won't generally let you take upper-year CS courses without approval if you aren't in CS; also they get pissed if non-CS students try to take too many because they want your $$. 00:55:44 sounds like the best thing to do is stay the hell away from CS 00:56:05 j-invariant: some of the upper-year CS courses are awesome 00:56:07 yeah, I think I'll stick with the nice US schools where you can switch majors anytime you feel like it :p 00:56:18 coppro: whice ones? 00:56:52 Mathnerd314: non-CS non-Acturial Science math majors are a la carte 00:57:10 j-invariant: trains, compilers, programming languages, formal languages and parsing, graphics... 00:57:23 what's trains? 00:57:55 real-time programming 00:59:46 coppro: colleges I'm applying to have all those and more, so not too worried about missing anything 01:00:06 you are missing something :D 01:08:59 yep, but I'm guessing it's mainly the pain and suffering of another college app 01:09:32 -!- wth has joined. 01:11:16 -!- wth has left (?). 01:18:48 -!- variable has quit (Read error: Operation timed out). 01:20:27 -!- cheater99 has quit (Read error: Connection reset by peer). 01:21:24 -!- variable has joined. 01:35:20 yep, but I'm guessing it's mainly the pain and suffering of another college app 01:35:34 Mathnerd314: ah yes, the famous "Wrestling A Snake With Spikes All Over It To Death" test 01:35:37 coppro can tell you all about it 01:37:14 -!- cheater99 has joined. 01:37:37 -!- wareya_ has joined. 01:39:40 -!- wareya has quit (Ping timeout: 265 seconds). 01:39:40 -!- cheater99 has quit (Read error: Connection reset by peer). 01:40:58 -!- pikhq has quit (Ping timeout: 276 seconds). 01:42:01 -!- pikhq has joined. 01:44:27 -!- j-invariant has quit (Quit: leaving). 01:47:03 -!- j-invariant has joined. 01:51:36 elliott: I did exactly one application. It took an hour for the formal application, and like 2 hours for the extra info form 01:51:51 coppro: And then you had to wrestle a snake with spikes all over it to death, yes? 01:54:29 elliott: nope 01:54:47 Mathnerd314: Look at how they lie. 01:55:13 coppro: but you're from Canada 01:56:22 -!- cheater99 has joined. 01:58:45 -!- cheater99 has quit (Read error: Connection reset by peer). 02:01:30 Mathnerd314: that's true 02:01:46 Mathnerd314: oh, I also had to mail them a transcript 02:02:06 Mathnerd314: I don't know about the process for foreign students, but I can't imagine it being much different from what I went through 02:02:26 since I was out-of-ontario 02:02:59 .win 2 02:03:01 whatever. 02:03:17 * Mathnerd314 distracts himself with supercompilation 02:03:27 supercompilation? 02:04:59 yeah, never heard of it before, but it sounds ool 02:05:00 *cool 02:07:46 Meh. Specialisers are the only decent compilers. :p 02:08:10 what's the difference ? 02:08:26 j-invariant: well nobody really knows what "supercompilation" means. 02:08:33 sometimes it means specialisers, sometimes i have no idea what the hell it means 02:10:23 ;5;54 02:11:34 elliott: managed to define products in terms of universal cone btw 02:11:40 j-invariant: awesome 02:14:34 elliott, again mc 02:15:21 -!- cheater99 has joined. 02:17:41 -!- cheater99 has quit (Read error: Connection reset by peer). 02:21:30 elliott: theoretically.. one could implement all sorts of categories and instance their limits etc etc.. at this point 02:22:05 not sure if it's a good idea though 02:30:01 categories? 02:30:07 like Set? 02:31:09 Quadrescence: youre such a dickface. lol 02:31:24 why 02:31:28 haha 02:32:51 your little temper tantrum against haskell 02:33:04 i want my mommy! 02:33:44 :P 02:33:49 when was this? 02:33:51 I must read logs 02:34:26 -!- cheater99 has joined. 02:34:35 coppro: http://www.reddit.com/r/programming/comments/es29o/the_air_on_which_haskell_programmers_seem_to/ 02:35:30 Has it been proven that all imperitive data structures have an equally efficient functional version? 02:37:08 -!- j-invariant has quit (Ping timeout: 272 seconds). 02:37:08 -!- cheater99 has quit (Read error: Connection reset by peer). 02:37:51 Sgeo: iteration is equivalent to recursion? 02:39:31 hmm? 02:39:58 I know there's an efficient functional queue, but can the same be said of all other data structures? 02:41:06 it depends on what you mean by "efficient" "functional" and "data structure" 02:43:18 "as fast as C" "written in haskell" "uses 'data'/classes" 02:43:35 lol 02:43:37 equiv time complexities 02:46:05 Quadrescence: do we get to design CPUs that are optimized for functional code not imperative code 02:46:07 ? 02:46:17 because if not, then C will always have the possibility for advantage 02:47:10 Is there a way to pretend that microoptimizations don't exist? 02:47:42 -!- j-invariant has joined. 02:49:01 -!- augur has changed nick to World. 02:49:06 -!- World has changed nick to augur. 02:50:34 Quadrescence: do we get to design CPUs that are optimized for functional code not imperative code 02:50:36 augur: Please yes. 02:50:42 elliott: :3 02:50:47 Quadrescence: youre such a dickface. lol 02:50:48 concurred 02:50:54 ive tried to think of ways to do this, actually 02:51:01 Sgeo: the opposite 02:51:12 "thrive reeks of foul stench of cargo cult" are words that could only come from reading the loper os blog waaay too much. 02:51:16 augur: http://www.cs.york.ac.uk/fp/reduceron/ 02:51:23 Sgeo: you need mutation for ceratain things 02:51:29 elliott: the only thing i can think of is something that does in-place rewrites of ASTs 02:51:31 night → 02:51:37 j-invariant: not really true? 02:51:39 augur: http://www.cs.york.ac.uk/fp/reduceron/ 02:51:47 augur: it does lazy graph reduction 02:51:55 interesting! 02:52:01 augur: implemented on FPGA etc. 02:52:05 memos are very interesting 02:52:06 sexy 02:52:16 augur: core language is "typeless", it's basically just graph-rewriting-lambda-calculus 02:52:28 thats an interesting nothing 02:52:36 augur: an interesting nothing? xD 02:52:42 elliott: persistent vs ephemeral 02:52:42 .. 02:52:52 notion 02:52:55 j-invariant: well sure 02:52:56 Has it been proven that all imperitive data structures have an equally efficient functional version? 02:53:02 stupid fingers 02:53:19 Sgeo: theoretical results IIRC suggest that functional languages are "inherently" less efficient than imperative ones in certain cases ... at least that's what Okasaki says, but: sufficiently smart compiler. 02:53:32 also, as Okasaki goes on to prove in his book... yes, basically, all the structures you can think of have efficient functional versions. 02:53:52 -!- cheater99 has joined. 02:54:15 coppro: yeah I already did Set though 02:54:35 j-invariant: what's Set's limit? 02:54:48 coppro: huh? 02:54:55 21:21 < j-invariant> elliott: theoretically.. one could implement all sorts of categories and instance their limits etc etc.. at this point 02:55:00 you said you did Set? 02:55:12 Quadrescence: lol 02:55:30 limits: terminal and initial object, products, sums, equaliziers lots more things too 02:55:37 Quadrescence: did it ever occur to you to simply define Monoids over Num rather than over Int 02:55:39 set has them all 02:55:52 coppro: REEKS OF FOUL STENCH 02:56:14 coppro: i wouldn't bother talking to Quadrescence anyway considering he's never once talked about esolangs. or done anything other than be irritating really. 02:56:30 but I didn't implement any limits 02:56:30 but hey, i respect anyone who likes wasting their time :p 02:57:24 -!- cheater99 has quit (Read error: Connection reset by peer). 02:57:30 j-invariant: well then why did you say you did it already? 02:57:42 "one could implement all sorts [...] and instance their limits [..] at this point" 02:57:45 one *could* 02:57:55 21:53 < j-invariant> coppro: yeah I already did Set though 02:58:22 coppro: he already implemented Set, not found its limit. one would presume. 02:58:50 limits 02:59:40 elliott, so you respect me for the unpaid project I worked on? 02:59:49 Sgeo: what? 02:59:53 oh. shut up. 03:04:00 coppro: do you know much category theory 03:05:29 elliott: I am starting to doubt whether it really does magically solve all problems :/ 03:05:51 j-invariant: yes 03:05:54 j-invariant: It does! If you believe in it. 03:05:55 j-invariant: I'm just trolling 03:06:02 heh 03:06:40 elliott: that's what I hate about christmas - "if you just beleive in something with zero evidence or reasonable explanation... then you will find it!" 03:06:46 christmas films* 03:06:57 j-invariant: like religion! *ducks* 03:07:18 well it's probably a general flaw of human thought 03:07:29 but why celebrate it... 03:08:38 elliott: it's the same with the loch ness monster, there's even a film that pulls this 03:08:48 thankfully it's possible to overcome our cognitive biases ... but very hard 03:08:50 j-invariant: gh 03:08:52 *ugh 03:13:56 -!- cheater99 has joined. 03:14:21 UFO films don't usually do that though 03:17:09 that's more like science fiction 03:17:30 yeah 03:20:12 -!- cheater99 has quit (Read error: Connection reset by peer). 03:25:33 -!- cheater99 has joined. 03:29:07 -!- p_q has quit (Quit: This computer has gone to sleep). 03:29:17 pikhq: http://en.wikipedia.org/wiki/Pikachurin 03:29:20 pikhq: Please /nick pikhqrn 03:30:40 new mcmap out. :p 03:30:45 Relevant only to noansi users. 03:40:28 -!- Wamanuz4 has quit (Ping timeout: 272 seconds). 03:46:52 -!- bsmntbombdood has quit (Read error: Connection reset by peer). 03:47:23 -!- bsmntbombdood has joined. 04:08:56 elliott: you should put algebra on these categories : 04:09:19 j-invariant: yeah that does not sound painful at all :D 04:09:24 elliott: it will sort of be like a 20x more difficult version of what you did before.. 04:09:26 maybe if i get this algebra thing working nicely 04:12:05 Silly question: what is the difference between an FSA and a Turing Machine? is it the unboundedness of the memory ? 04:13:08 variable: yes pretty much 04:13:20 variable: a finite state machine can be written as a huge table of "state1 -> state2" 04:13:36 variable: e.g., for your computer, assuming no IO devices, the contents of registers, RAM, disk, etc. 04:13:41 to the new contents, after executing one instruction 04:13:48 this list is finite since your RAM/disk are finite 04:14:13 variable: of course you won't find a real turing machine ... but TC languages are more interesting than FSAs generally 04:14:54 [20:55.10] Quadrescence: did it ever occur to you to simply define Monoids over Num rather than over Int // Did it ever occur to you that a monoid might not actually support what Num does? 04:15:14 um since Int is a Num ... 04:15:40 ............... 04:15:41 variable: http://esolangs.org/wiki/Finite-state_automaton 04:15:48 elliott, I just read that 04:15:52 variable: heh :) 04:16:26 elliott: r u implying i should declare all Num t as monoids 04:16:33 variable: if you think you have a fairly good grasp on what turing completeness is, why not let my languages plunge you back into deep confusion: http://esolangs.org/wiki/Befunge/index.php http://esolangs.org/wiki/Brainfuck/w/index.php%3Ftitle%3DTalk:Brainfuck/index.php 04:17:16 (http://esolangs.org/wiki/Talk:Befunge/index.php has a proof that the first is simultaneously TC and not, depending on your definition) 04:17:24 oh hello Quadrescence 04:17:30 hey bsmntbombdood 04:17:30 i heard you where stirring up some shit 04:17:35 yeah i guess so 04:17:54 -!- poiuy_qwert has joined. 04:18:28 elliott, my understanding of a TC language is that given unlimited memory it can compute any algorithm - is that correct? 04:18:36 variable: Define algorithm :) 04:18:48 variable: a turing complete language can emulate a turing machine 04:18:48 variable: The most common definition is that you can simulate any Turing machine in it. 04:18:51 variable: This, however, has ambiguity. 04:18:53 Quadrescence: Uh, no. 04:18:57 um yea 04:18:59 Quadrescence: There are plenty of non-universal Turing machines. 04:19:04 Quadrescence: So. No. 04:19:07 yes 04:19:12 I don't understand Brainfuck/w/index.php?title=Talk:Brainfuck/index.php :S 04:19:17 And being able to simulate one doesn't make you TC. 04:19:18 j-invariant: why not? 04:19:19 A universal turing machine can emulate any turing machine - correct 04:19:30 variable: yes. 04:19:46 variable: but when you step outside of things that are strictly turing machines and try and relate this concept to other languages it is difficult :) 04:19:46 does the implementation really do what it says? 04:19:59 j-invariant: yes (but it's written in Scheme-1, which has only super-Turing implementations) 04:20:06 j-invariant: note the "H" procedure, it's a Turing halt-checker 04:20:16 see http://esolangs.org/wiki/Banana_Scheme 04:20:35 curious: which class should I expect to learn this stuff in? 04:20:35 ah I didn't notice "Scheme-1" was something special 04:20:58 variable: computability theory 04:21:04 /theory of computation 04:21:15 * variable didn't see that on my course list :-\ 04:21:18 * variable looks again 04:22:27 j-invariant: btw if you do (define (H n p) #t) that interp actually works 04:22:34 but of course just loops forever on invalid programs ;) 04:23:24 elliott, Automata theory and Formal Languages 04:23:25 ? 04:23:32 variable: look for anything with "computation" in the name like "languages and computation" or intros to computer science theory 04:23:42 variable: pretty much, yep 04:23:48 yeah that might have it 04:23:50 :-( 4 more years 04:23:51 variable: see e.g. http://en.wikipedia.org/wiki/Automata_theory#Classes_of_automata 04:24:06 * variable wishes I could that class now 04:24:21 elliott, oh - perfect 04:24:25 I was looking for such a list 04:24:27 variable: #esoteric suffices pretty well for learning this stuff, it's just a bit of a random walk so it takes time ;) 04:24:28 variable: you can, just get a book 04:24:30 well that list isn't really perfect. 04:24:33 elliott: should implement scheme-n in Coq 04:24:40 j-invariant: heh. NO :) 04:24:45 Quadrescence, recommendations ? 04:24:49 elliott: just make it so that executing a program is interactive theorem proving 04:24:49 j-invariant: (you could with axioms but it wouldn't construct ofc) 04:25:19 variable: what do you know already, both in math, and compsci? 04:25:28 Quadrescence, formally or informally? 04:25:32 informally 04:25:58 g'nigh' 04:26:06 I know most major programming languages and a few esoteric ones. I've read an operating systems book cover to cover 04:26:15 and I get how programming languages are compiled 04:26:20 thats about it 04:26:22 variable: Do you know the lambda calculus? 04:26:28 math is <= calc 04:26:49 * variable is a freshmen - so I havn't taken most university math classes yet 04:26:52 -!- elliott has quit (Quit: Leaving). 04:27:31 variable: What programming languages are you comfortable programming in 04:28:44 Quadrescence, any particular book to read on computational theory? or do I need more of a math background first? 04:28:44 and if so which book should I read on that? 04:29:08 variable: well, despite its name, lambda calculus is really just a model of computation 04:29:19 variable: Have you read SICP? 04:30:35 Quadrescence, ? 04:31:25 variable: Read the book "Structure and Interpretation of Computer Programs"; and do all of the exercises. It will introduce you to a broad array of which are highly beneficial to know before diving into computability. 04:31:42 elliott, see pm 04:31:48 elliott left 04:31:56 [22:26.25] << elliott (~elliott@unaffiliated/elliott) has quit: Quit: Leaving 04:32:59 I'm comfortable in C, C++, Java, PHP, VB/QB (years ago), Bash, a few others. 04:33:11 I know Python, Perl, and a few others - but not that well 04:33:23 "Structure and Interpretation of Computer Programs" ---> which author? 04:33:35 Abelson and Sussman 04:33:46 * variable googles 04:33:49 Don't worry, the book will not rehash stuff you already know 04:33:59 I need to learn Scheme 04:34:12 (i mean, some things you might know, but it's not a Learn To Program In Language X) 04:34:13 http://mitpress.mit.edu/sicp/ --> ok - that book is now on my list 04:34:33 creative commons textbook 04:34:34 As I said, you should do all of the exercises. If you do, you'll learn a lot. 04:34:34 WIN 04:34:58 Quadrescence, I will 04:35:09 its winter vacation now for me - so I should have time to do so 04:35:44 variable: You'll learn a good deal about computability in it too. So you'll actually have a head start if you decide you want to read pure computability theory. 04:37:03 Quadrescence, thanks for the link 04:37:24 * variable reads 04:37:44 variable: Oh, do you have a Scheme implementation installed? 04:37:49 Quadrescence, yeah 04:37:53 Which? 04:39:01 Quadrescence, chicken 04:39:14 variable: great, that's my favorite 04:39:47 I havn't started yet 04:39:53 it would be my first functional language :-) 04:40:11 procedural 04:40:19 variable: The nice thing is that it's functional, but also has imperative and whatever constructs too. 04:42:49 I want to do scheme -> haskell -> list 04:42:51 *lisp 04:43:03 variable: well Scheme is a lisp 04:43:29 hrm? 04:43:43 I meant the regular lisp 04:43:49 Common Lisp 04:43:50 variable: You mean "Common Lisp" 04:43:59 yeah 04:44:03 Any reason why? 04:44:45 I was told that scheme is the easiest functional language to learn. Then I wanted to learn something different (non-lisp) 04:45:00 and I want Common Lisp somewhere on the list 04:46:08 Scheme might suit your Lisp desire. It's like Common Lisp, except a lot more elegant 04:48:02 variable: you might be interested in http://symbo1ics.com/blog/?p=729 04:48:26 * variable bookmarks 05:06:51 -!- bsmntbombdood has quit (Ping timeout: 246 seconds). 05:16:20 variable, maybe your first functional language should be purely functional? 05:16:57 Although hmm, that could be throwing you into the deep end I guess. 05:18:33 Sgeo, I tried haskel already - but I got a little confused -- I guess I'm so used to the imperative structure that I need a crutch for my first step 05:19:43 * variable needs to go to sleep - gnight everyone 05:21:56 Night variable 05:22:14 Hmm... an esolang whose functionality varies based on time of day 05:22:28 Night variables only accessible at night, or somesuch 05:22:32 hehe 05:22:54 sgeo: it's been done but more extremely 05:28:46 -!- bsmntbombdood has joined. 05:30:41 Quadrescence: you wrote this http://symbo1ics.com/blog/?p=788 05:33:06 yes... 05:34:05 Quadrescence: I haven't read it yet 05:34:13 Quadrescence: You should collect responses and criticisms 05:34:43 reddit is collecting them for me 05:35:24 Quadrescence: into a blog post 05:35:41 no 05:37:17 -!- Sgeo has quit (Read error: Connection reset by peer). 05:39:17 -!- kanzure has left (?). 05:43:06 Quadrescence: do you have a different language to continue this in? 05:47:46 Quadrescence: what is cargo cult mathematics 05:49:55 Quadrescence: yes, every number is a monoid 05:50:16 if a category has one object, then it's a monoid 05:50:28 yes, that's true 05:50:34 but I was talking about Haskell 05:50:46 but you can have a monoidal category, which is a different thing 05:51:04 j-invariant: what are you currently doing with your life again? 05:51:07 lol, more of this? 05:51:40 still talking about it in #haskell too 05:52:31 coppro: I need to find somethign to do actually - I welcome suggestions 05:53:06 bsmntbombdood: they're talking about it in haskell? 05:53:12 coppro: that is very true 05:53:16 mmhmm 05:55:30 j-invariant: no, I mean school, work, etc. 05:55:38 or are you actually just doing nothing 05:55:48 bsmntbombdood: talking about what in #haskell? 05:56:03 Quadrescence not understanding haskell 05:56:14 coppro: I just finished a maths course so I need to find something now 05:56:35 Quadrescence obviously knows haskell 05:56:48 it's just because he said something vaugely acidic that people decide to belittle him 05:57:15 -!- cal153 has joined. 05:57:48 just one math course? 05:58:01 yes 06:05:26 Quadrescence: why dont' you want to talk about it 06:06:24 -!- iamcal has joined. 06:06:25 -!- cal153 has quit (Read error: Connection reset by peer). 06:06:59 j-invariant: I don't feel like making a blog post with the collection of everything. That is what the comments are for. Although I am required to accept a comment, I accept them all if they are not spam. 06:08:06 Quadrescence: but you gave up on haskell for this... my question is what will you use instead? 06:08:50 j-invariant: I gave up on writing the "tutorial". 06:09:10 (I wasn't very fond of Haskell before it anyway) 06:09:20 My previous posts suggest what language I primarily use. 06:09:24 so you give up on this problem? 06:10:13 No. I wrote a "haskell for mathematicians" post. I was going to write another one. But I decided not to as a result of not wanting to explain the deficiencies (in my opinion) of the language. 06:13:57 i'm not even sure what Quadrescence is complaining about 06:14:12 is it just that 5 is a number instead of an Int? 06:15:06 the problem is you can't define an algebra heirarchy in a useful way in haskell 06:15:10 typed 06:15:33 but you can 06:15:38 no you can't 06:15:40 bsmntbombdood: has anyone done it? 06:15:54 numeric prelude, etc 06:15:57 people have sort of done it with the Numeric-Prelude 06:16:35 are you sure that numeric-prelude doesn't suck? 06:17:16 I looked through the code. I don't want to say it sucks. It is better (mathematically) than the current prelude. But I wouldn't say it's ~great~ 06:18:56 bsmntbombdood: My complaint was also about the community. 06:20:04 Quadrescence: can you elaborat eon that please 06:22:22 j-invariant: http://symbo1ics.com/blog/?p=788#comment-876 06:24:39 In mathematics, we strive to rid our expositions of ambiguity, and we deem the expositions with the least ambiguity as “rigorous.” <-- this doesn't fit with my picture at all 06:24:43 coppro: what about you? 06:24:47 what do you do 06:26:01 Quadrescence: There are individuals, however, who thrive on the “mysteriousness” afforded by this unapproachability. They revel, rather than find distaste, in the “genius” image pinned to those who can speak in this technical tongue. <-- this is very astute and important observation 06:26:35 j-invariant: rigorous: rigidly accurate; allowing no deviation from a standard; "rigorous application of the law"; "a strict vegetarian" 06:27:00 which means if something is less open for interpretation --- less ambiguous --- it is more rigorous 06:27:15 Quadrescence: a kind of pseudo-mathematics <-- consider (a -> b) -> (f a -> f b), it should really be Hom a b -> Hom (f a) (f b) 06:27:25 even simpler example than Monad 06:30:12 Quadrescence: something is probably wrong when you’re using Functor f => Algebra f b -> GAlgebra f (Cofree f) a -> (f :~> f) -> FixF f -> a <--- where did you find that code? 06:30:23 Vorpal: I don't skype... :-) 06:30:32 j-invariant: the good ol' http://www.haskell.org/haskellwiki/Zygohistomorphic_prepromorphisms 06:32:19 Quadrescence: can you make any constructive suggestions? 06:33:08 rename monad to something else, delete "morphism" from your vocabulary unless you have reason to need it 06:36:27 Quadrescence: that's not radical enough 06:37:56 ok, rename haskell to Fortran++ 06:38:07 lol 06:38:11 Fortress? 06:38:35 no 06:38:56 (Fortress is just upgraded Fortran) 06:39:01 -!- Mathnerd314 has quit (Disconnected by services). 06:39:09 (note that ++ doesn't imply upgraded; see C++) 06:39:23 -!- Mathnerd314_ has joined. 06:39:30 Quadrescence: anyway what is your goal in programming 06:39:51 i don't really have a goal in programming 06:39:57 at least not in general 06:40:06 -!- Mathnerd314_ has changed nick to Mathnerd314. 06:40:07 ok 06:41:22 I wish someone would talk to me about something interesting 06:42:01 go ask #haskell to talk to you about zygohistomorphic prepromorphisms 06:42:19 I talk to haskell for a bit but it died down 06:42:53 I guess the truth I released about Haskell is sinking into their minds~ 06:43:01 lol 06:45:00 -!- pikhq has quit (Ping timeout: 255 seconds). 06:47:02 -!- pikhq has joined. 06:47:53 Quadrescence: The issue is that fundamentally, the entire type system does not work with your idea of what "mathematics" is. 06:47:55 Which seems to actually consist of your interpretation of a set of common definitions *in* mathematics. 06:48:28 pikhq: there's a reason why the post was put in the category "Opinion" 06:49:56 pikhq: And no, the issue is that fundamentally, Haskell is trying to be mathematical (in my opinion!!!) by interpreting 5 as Num t => t, when the most sane option (in my opinion!) is Integer (or Int, which should be a special case anyway) 06:50:31 Does not work in Haskell unless you want to have *no easy form of literals* for any other numeric type. 06:51:13 It does not work because it was not designed to work ;D 06:51:36 See, if it were to work, then type inference would break. 06:52:00 And then you no longer have Haskell. 06:52:17 I dono't know how anyone programs in haskell 06:52:18 Inference worked fine in my implementation. 06:52:34 don't you find that you write some code then start to feel like it's all wrong and stop? 06:52:38 What, with an implicit cast from Integer to Num t => t? 06:52:43 That inherently breaks it all. 06:52:53 j-invariant: s/in haskell// 06:52:56 Quadrescence: just write int 5 what is the problem? 06:52:57 No, with '5' defined as an INteger to begin with. 06:53:14 Quadrescence: Okay, but that makes a lot of stuff a *royal fucking pain*. 06:53:21 pikhq: Like what? 06:53:29 Quadrescence: Every other instance of Num! 06:53:47 How? 06:54:17 (fromInteger 2 :: Int) + (fromInteger 2 :: Int) 06:54:28 pikhq: that's just syntax, deal with it 06:54:42 j-invariant: Yes, and it's still agony incarnate. 06:55:07 I think you need to be able to ignore taht sort of thing if you want to spot the deeper problems 06:55:10 pikhq: Or scrap "Int" and use a library if you need machine precision integers specifically. 06:55:13 Quadrescence: Not to mention, any use of "x + 1" would be forced to have the type of Integer. 06:55:24 Yes. 06:55:28 Not Float. Not Natural. Not Rational. Integer. 06:55:42 Which... Defeats the whole point of *having* typeclasses. 06:56:16 Yeah, it's a shame no one has yet invented any idea of contagion. 06:56:24 Contagion? 06:56:38 stuff like Integer + Float -> Float 06:56:51 Quadrescence: it's impossible to implement that in haskell 06:57:23 *echm* Learn you some Hindley-Milner type inference. 06:57:35 Quadrescence: you need something more expressive than typeclasses 06:57:36 pikhq: I wrote an implementation just the other day in lisp. 06:58:18 And did you also solve the halting problem before riding away on your unicorn? 06:59:03 pikhq: What's the issue? You seem to be saying that defined rules about contagion prohibit the ability to type. 06:59:12 they do 06:59:17 No they don't. 06:59:25 They prohibit the ability to *infer* type. 06:59:36 SoRrY, ~inferrrrrrrrrrrrrrr~ 06:59:41 Quadrescence: you can't solve LUB of a poset in Hindly-Milner, not even HM + Typeclasses 07:00:26 Granted, some Haskell extensions also cannot have types inferred, but those end up being special cases, rather than exceptionally common use-cases. 07:00:53 I agree that "x + 1" cannot be inferred if x cannot be inferred (under my model) 07:02:04 BTW, the whole point of typeclasses is that you can define instances later. 07:02:20 thanks for the memo 07:02:25 You are literally arguing against the entire *point* of Haskell's type system. 07:02:34 Not merely the Num typeclass. 07:02:38 you seem to not get the point of what I wrote 07:02:38 Literally the entire thing. 07:02:44 And probably every other form of polymorphism. 07:03:48 Funny, it seems to me "It can't figure out from (Num t, Monoid t) => [t] that it's [Integer] because I happened to define only one instance so far." is what you're saying. 07:03:57 Which is, uh, kinda inherent in polymorphism. 07:03:59 yes, indeed 07:04:22 you two - be more interesting :/ 07:04:26 you're just arguing past each other 07:04:40 Which is used in almost every programming language. 07:04:42 remind me; is there a way to define types in ghci? 07:05:00 coppro: Uh, should be just the same as in Haskell source. 07:05:42 parse error on input `data' 07:05:53 Okay, apparently not. 07:07:27 it is too bad haskell doesn't have finite subtype inference, which would fix all the numeric bullshit 07:07:58 It's also too bad that I don't have a function that can tell me if any arbitrary function on arbitrary input will halt. 07:08:01 I also want a pony. 07:08:05 "finite subtype inference"? 07:08:15 pikhq: i didn't say arbitrary subtype inference 07:08:22 if you're not aware, what i said is decidable. 07:08:39 see the paper by Duggan 07:08:41 That said, the Num typeclass is entirely crappy. Just not for any reasons you mentioned. 07:09:58 And it really bothers me that Float is an instance of it. 07:10:14 yeah I hate Floats in almost every language 07:11:08 why does everyone want inference to be complete? 07:11:16 No idea, I don't 07:11:24 j-invariant: It's a nicety. 07:11:36 One that certain extensions to Haskell breaks, anyways. 07:11:42 pikhq: exactly.. it's just a nicety, it doesn't give you any theoretical guarantee about actual programs 07:12:03 j-invariant: that's approximately my philosophy 07:12:04 s/breaks/break/ 07:12:35 Quadrescence: What about using category theory to specify and organize programs? 07:13:03 j-invariant: I think it can provide nice theoretical underpinnings. 07:13:19 But I don't know of anyone who thinks they're doing lambda calculus when they're coding in e.g. Scheme 07:13:22 like how the type system just makes sure your syntax is good 07:13:27 Unfortunately, people tend to gloss over at the word "monad". 07:13:38 I personally don't see a huge amount of applicability of category theory to programming theory 07:13:41 but I could be wrong 07:13:44 it could act as a meta type system that makes keeps the semantics of your code in check 07:13:56 whatwhat 07:15:07 coppro: Well, there kinda is, but it's a bit hidden unless you're looking for it, usually. 07:15:42 Of course, by the same notion category theory has applicability to a child's arithmetic class, so hey. :P 07:15:47 pikhq: well, in some sense there is, I suppose, but I have yet to see evidence of something that makes my life as a programmer easier 07:16:06 coppro: I was just saying purely theoretically. 07:16:32 I don't think the development of integers from peano arithmetic helps anyone do their taxes 07:16:37 Quadrescence: Theoretical underpinnings of programming languages are useless to me unless they actually help me program 07:16:44 no, but they help with other stuff 07:16:53 numbers are widely applicable 07:17:00 programming langauges are a comparitively narrow field 07:17:01 coppro: ok under that definition, yeah, it's mostly useless 07:17:12 coppro: numbers are useful, sure! 07:17:16 so advancements of number theory are more likely to have useful application 07:17:38 whereas advancements in PL theory are respectively less likely to have useful application 07:17:45 coppro: do you program haskell? 07:17:48 not that PL theory can't have useful application - see type inference or GC! 07:17:52 j-invariant: not as much as I should 07:18:38 coppro: Arguably, monads actually *have* application. 07:18:50 But even then, you're not caring much about the category theory about it. 07:19:07 You're just caring that it's some form of object with bind and return functioned defined. 07:19:22 Actually, the same applies for most of the "category theory" things in Haskell. 07:19:46 I mean, sure it's kinda from category theory and all, but category theory itself is basically irrelevant to it. 07:20:01 (and contradictory in some of the stupider cases, like Monads not being Functors) 07:21:29 yeah 07:25:31 why is haskell.org down 07:25:49 It seems to do that often. 07:25:56 I suspect it's on a shitty server. 07:27:21 (after all, the server software was written in haskell!) 07:27:21 btw, something I would like for haskell to have would be typeclasses that could somehow be instantiated with more than one set of functions 07:27:22 i kid 07:27:55 (I am well aware of the size of wrenches this throws at it :( ) 07:28:07 coppro: hehe 07:30:14 coppro: Ow ow ow. 07:30:40 for instance, {ZZ, +} is a monoid, but {ZZ, *} is too 07:30:50 yea 07:31:01 i've been working on that in the system i'm making 07:31:29 Quadrescence: what abot mathematically structured programming? 07:31:48 "system I'm making"? 07:31:49 do tell? 07:32:05 http://symbo1ics.com/blog/?page_id=81 07:33:11 i guess that doesn't say much 07:33:13 maybe see the PDF 07:33:23 in the INFO section 07:33:40 it only really has notes and ideas, it's nothing solid; i didn't even plan on releasing it 07:38:26 Quadrescence: looking over the section on algebras; you must be very careful about implicit introduction of == 07:39:21 yes indeed 07:40:08 i'm generally assuming there that there exists an algorithm to determine if x == y; but yes you're right 07:40:17 here's a fun one: 07:40:34 if A,B are objects in category C. A = B means that there is an isomorphism between A and B 07:40:51 but to define composition you need equality of objects 07:41:02 (to check the composition is well formed) 07:41:36 but equality is not defined in terms of isomorphisms 07:41:49 or are you just using that as an example of where = might mean something different? 07:42:16 Quadrescence: I like the notion of associative sequences but I don't immediately see applicability 07:42:41 coppro: the ability to do pattern matching with associative functions 07:43:03 erm bad example 07:43:05 Quadrescence: do you know Knuth-Bendix algorithm? 07:43:08 yes 07:43:22 help me !! :) 07:43:43 you know category theory, you should be able to figure out KB 07:44:04 I wan tyou to help me with Knuth-Bendix but you don't have to if you don't want 07:44:23 i am just lazy and it is late 07:44:52 cool alg though 07:51:23 Quadrescence: btw, have you looked at proof verifiers? 07:51:33 yes, extensively 07:52:13 there is a difficult balance i am trying to strike 07:52:45 that of practicality/usability and that of "correctness" overall 07:54:24 where are you in life, btw? 07:55:33 i am working on these projects full time at my father's home, if that's what you're asking, and which I'm exceptionally grateful for 07:55:58 coppro: I asked you 07:56:30 j-invariant: oh, sorry, I missed that. first-year undergrad 07:56:35 coppro: oh okay cool 07:56:38 Quadrescence: educational background? 07:57:38 No formal (i.e. admitted-into) Uni background, but I go over to the university and audit a good number of graduate classes. I did 6 classes last semester 07:58:01 hah, nice 07:58:42 what exactly does auditing entail at that university? 07:59:01 I just went to the uni and sat in the courses. 07:59:06 oh 07:59:10 not a formal audit then 07:59:19 what is a "formal audit" 07:59:26 Quadrescence: you can get audit status in courses here 07:59:34 ah 07:59:43 gets you more priveleges than just sitting in sometimes 07:59:50 Quadrescence: You're registered as an auditer. You're formally part of the class, just not actually expected to do coursework. 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:00:10 Of course, you don't get any *credit* for it, but that's neither here nor there. 08:00:21 of course 08:00:36 I see. Well I don't know what benefits that would necessarily give. Maybe it's just a way to keep you happy about paying? :) 08:00:49 Quadrescence: usually you don't have to pay extra 08:00:54 I guess if there were laboratory courses, that would make sense. 08:01:07 in practice, you pay for the grade 08:01:13 yeah 08:01:40 It also makes sense if the university ends up having nearly-full classes. 08:02:01 but you might get benefits like the ability to see reserved library books or access restricted online material 08:02:06 Registering to audit means that you actually know whether or not you're getting a seat. 08:02:43 pikhq: yeah, makes sense, but seemed not to matter for the stuff I did, as there were usually no more than 20 kiddos 08:02:44 except that someone might squat th eseat 08:02:54 Of course, with graduate courses, it's probably not going to matter. 08:02:55 yeah, for grad courses it's probably not a major concern 08:03:15 Unless the prof gives you funny looks. 08:03:21 hahahaha 08:03:30 the prof doesn't know who anyone is usually 08:03:55 they just though I was Another Guy for a while 08:04:15 -!- oerjan has joined. 08:04:39 suspicion did increase when the weirdo lie groups/lie algebras prof had a "small-group" style of teaching 08:04:51 we all got into small groups every day and answered questions 08:05:02 Quadrescence: which uni? 08:05:11 university of minnesota: twin cities 08:05:25 that was a weird class 08:05:30 ah 08:06:44 the two guys I got paired with were extremely quiet and anti-social :( 08:07:13 they just mumbled "mrmrmrmrmrmr orthogonal matrix mrmrmrmrmrmrmrmr" 08:07:23 sounds fun though, I never had that pleasure 08:07:28 no, it wasn't 08:07:37 it sounds like it could be, but it was a flop 08:07:50 no one ever knew what was going on since the prof didn't actually teach 08:11:28 teaching mathematics must be fucking miserable 08:12:11 at least to undergrads 08:14:20 I will almost certainly take several grad courses in my undergrad career 08:14:50 Quadrescence: see the logs 08:15:05 we were talking about your post for a while 08:15:21 j-invariant: too lazy 08:17:58 -!- oerjan has quit (Quit: leaving). 08:18:23 oh god, there's a plan at my school that actually requires Convex Optimization and Analysis to graduate 08:18:28 hahahahahahaha poor sods 08:18:42 I like Analysis 08:18:58 oh 'Convex Optimization and Analysis' is a single thing 08:19:05 yes 08:19:09 it is a course at my school 08:19:20 coppro: that sounds very... 08:19:27 I think there are some good algorithms in Convex Optimization but I haven't studied it 08:19:35 fun >_> 08:19:40 it hs been described as the most rape to ever be perpetrated in a single course 08:20:05 (probably make you use MATLAB, so understandable) 08:20:16 no 08:20:20 very far from it 08:22:46 :) 08:23:01 its enrolment this term was 9 08:23:07 exactly 2 of them were undergrads 08:23:10 (I know both of them) 08:23:17 haha 08:23:51 this is a cross-listed undergrad/grad course 09:04:32 -!- sebbu2 has joined. 09:06:18 -!- sebbu3 has joined. 09:07:08 -!- sebbu has quit (Ping timeout: 264 seconds). 09:07:09 -!- sebbu3 has changed nick to sebbu. 09:09:19 -!- sebbu2 has quit (Ping timeout: 276 seconds). 09:29:43 -!- sftp_ has joined. 09:30:07 -!- sftp has quit (Ping timeout: 276 seconds). 09:38:57 -!- dbc has quit (Ping timeout: 250 seconds). 10:53:45 -!- Wamanuz4 has joined. 11:19:50 -!- cheater99 has quit (Ping timeout: 240 seconds). 11:20:52 -!- j-invariant has quit (Quit: leaving). 11:32:19 -!- cheater99 has joined. 12:53:22 -!- MigoMipo has joined. 12:56:38 -!- cheater99 has quit (Ping timeout: 240 seconds). 13:09:36 -!- cheater99 has joined. 13:14:20 -!- pikhq has quit (Ping timeout: 255 seconds). 13:16:09 -!- pikhq has joined. 13:57:57 -!- oerjan has joined. 14:18:16 -!- Wamanuz5 has joined. 14:22:02 -!- Wamanuz4 has quit (Ping timeout: 272 seconds). 14:44:38 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep). 14:53:07 -!- variable has quit (Ping timeout: 250 seconds). 14:57:40 -!- sftp has joined. 14:57:50 -!- sftp_ has quit (Ping timeout: 255 seconds). 15:13:45 WONKOTDOOG 15:17:25 -!- elliott has joined. 15:17:34 20:31:42 elliott, see pm 15:18:07 mighten be a _tad_ difficult 15:18:54 -!- elliott_ has joined. 15:18:55 -!- wareya_ has quit (Read error: Connection reset by peer). 15:19:22 -!- wareya has joined. 15:21:04 22:33:08 rename monad to something else, delete "morphism" from your vocabulary unless you have reason to need it 15:21:16 Quadrescence: oh, oh, and rename "Commutative" to OrderDoesn'tMatter too?? 15:21:21 sounds like a warm fuzzy idea 15:21:48 -!- elliott has quit (Ping timeout: 246 seconds). 15:21:51 22:49:56 pikhq: And no, the issue is that fundamentally, Haskell is trying to be mathematical (in my opinion!!!) by interpreting 5 as Num t => t, when the most sane option (in my opinion!) is Integer (or Int, which should be a special case anyway) 15:21:56 therefore haskell REEKS OF THE FOUL STENCH 15:22:14 seriously you are the most whiny idiot i have ever seen. and that's counting myself. 15:22:55 now now don't be so humble 15:23:22 *, 15:23:42 23:04:26 you're just arguing past each other 15:23:55 is it even an argument? Quadrescence is just wrong and he doesn't really care, we're just yelling at him. 15:26:34 23:58:01 hah, nice 15:26:34 23:58:42 what exactly does auditing entail at that university? 15:26:40 coppro: you see they get out the e-meter ... 15:27:12 either elliott_ saw the same reddit post as i did or this is synchronicity... 15:27:25 oerjan: erm which post, i haven't loaded reddit yet today 15:27:26 (well i have now) 15:27:40 http://cadencewatch.com/420-watch classy 15:27:40 i'll have to reload myself 15:28:31 the top r/pics one 15:29:02 (i.e. the top post on reddit frontpage for non-logged in users) 15:29:33 heh 15:29:43 oerjan: isn't that a rather _tenuous_ bit of synchronicity :) 15:30:03 -!- variable has joined. 15:30:11 well i didn't know the scientology meaning of "auditing" until that post 15:31:53 07:17:25 --- join: elliott (~elliott@unaffiliated/elliott) joined #esoteric 15:31:53 07:17:34 20:31:42 elliott, see pm 15:31:57 i said "i was offline" after this. 15:32:00 oh look variable's here now 15:32:03 now /that's/ synchronicity 15:32:09 (i just saw that in the logs) 15:32:23 hi 15:33:24 variable: can you resend last night's pm? 15:33:25 i didn't get it 15:40:40 Vorpal: I don't skype... :-) <-- Ilari mistab, meant ineiros 15:40:55 elliott_, anything happened on cube? 15:41:05 Vorpal: just woke up 15:41:23 elliott_, oh. Just got home myself. 15:41:29 cubistic matters 15:41:34 Vorpal: bet you were up at like 4 am! 15:41:38 CRAZY MAN 15:42:11 elliott_, eh? I woke up 14:00 today, then I went to shop and made use of the warranty of a product I bought there about a year ago. 15:42:38 elliott_, also am/pm: can never remember which is which. 15:43:05 Vorpal: am is early. pm is late. 15:43:12 hm 15:43:26 elliott_, any mnemonic for that? 15:43:27 post meridiem : after midday 15:43:30 it's 12:00 am because midnight is early morning :) 15:43:34 Vorpal: yes, see oerjan and then learn latin 15:43:35 oerjan, latin doesn't help 15:43:46 "post" isn't that unusual... 15:43:49 elliott_, I suck at natural languages 15:43:59 oerjan, but how to remember it isn't after midnight instead 15:44:10 "diem" means day 15:44:15 hm 15:44:27 Vorpal: meridiem - meridian 15:44:31 noon = meridian hour 15:44:41 post meridiem, post meridian, post-noon 15:45:04 hm 15:45:19 a is for ante of course but that's not as common as post i think 15:45:34 Vorpal: ever had a chunk load and then unload? :) 15:45:36 antediluvian 15:45:38 btw new mcmap out, only relevant if you use -c 15:45:46 elliott_, -c ? 15:45:48 I use -s 15:46:04 -c is noansi. 15:46:11 but really, why not switch to % 6 for months. So we are no in the second june I think. 15:46:15 I use: 15:46:16 elliott@dinky:~/code/mcmap$ _build/mcmap -c -x 2 -s 300x300 a322.org:25566 15:46:21 makes as much sense as taking hour % 12 15:46:45 elliott_, as in, no colour codes? I like the colour codes. I use a proper terminal 15:46:56 Vorpal: I do too! Except it has a light background and dark text. 15:47:02 So colour codes don't work very well. 15:47:03 elliott_, that is not proper 15:47:05 the way I define it 15:47:27 elliott_, but the solution is trivial: use background colour codes to set it to black as well ;) 15:48:15 (note: joke) 15:48:35 Vorpal: I find the contrast of lit text on totally-off pixels to be jarring. 15:49:54 I've been doing dark-on-light every now and then too, but I'm on my dark period now. 15:50:08 hah 16:06:24 is the esolang wiki down? 16:06:29 Firefox can't find the server at esoteric.voxelperfect.net. 16:06:49 http://esolangs.org/ works 16:08:10 huh 16:09:08 indeed 16:11:28 DNS for esoteric.voxelperfect.net doesn't resolve 16:12:31 eek 16:12:56 www.voxelperfect.net has the text: "NOTICE: This domain name expired on 12/27/2010 and is pending renewal or deletion" 16:13:32 ;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 11300 ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1 16:13:41 Well, that explains it. 16:14:29 esolangs.org should be good until 24 May 2011 16:14:41 ...that's only a few months... 16:14:46 ineiros, after the manual backup, did you remember to turn on saves? 16:15:44 oerjan: oh dear. 16:17:37 oerjan: are we /sure/ that graue likes us enough to renew it? 16:18:11 Hmm... querying DNS records for esolangs.org doesn't give AD flag for me... 16:18:11 well i'm sending him an email 16:20:24 what's AD flag? 16:21:09 i was just going by whois record or esolangs.org: Expiration Date:24-May-2011 19:21:16 UTC 16:22:27 Well, it's hosted by everydns's servers, that's one of the free dns services. 16:23:04 AD is a dnssec-specified flag that's set if the server has gotten the zone data in a dnssec-enabled way. 16:23:11 Ilari: what's AD flag? 16:23:17 oh 16:24:41 -!- Warrigal has joined. 16:24:52 * Warrigal (ihope@thay.Stanford.EDU) 16:25:01 Warrigal: congratulations? 16:25:15 It's as if I were going to Stanford now. 16:25:33 Warrigal is at Stanford, tswett is at GVSU. 16:25:37 I have determined this using science. 16:25:44 Precisely. 16:25:46 CLONES 16:26:39 And now, since I cannot bear the shame of being at GVSU instead of Stanford, I will die. 16:26:43 -!- tswett has quit (Quit: Terminated with extreme prejudice - dircproxy 1.1.0). 16:27:01 Ooh, he was terminated with extreme prejudice. 16:27:12 -!- Warrigal has changed nick to tswett. 16:27:21 tswett: now please give back the body of the Stanford guy you murdered. 16:27:34 Oh, that Stanford guy is still alive. 16:27:47 tswett: JUST BECAUSE YOU'RE NOT INTELLIGENT ENOUGH DOESN'T MEAN YOU SHOULD TAKE IT OUT ON THOSE WHO ARE 16:28:09 I don't know where he is, but his name is Mason Chua. Maybe you can find him. 16:28:45 He's the guy I locked up in a closet. 16:32:03 -!- variable has quit (Read error: Connection reset by peer). 16:32:22 -!- variable has joined. 16:32:38 argh all my visited wiki links turned blue again... 16:32:47 * oerjan ponders what he saw last 16:33:47 tswett: DID YOU REMEMBER TO FEED HIM 16:34:04 I can't feed him; I'm not in California. 16:34:12 So... yeah, I guess he's going to be dead in a while. 16:34:28 how sad. 16:34:30 * elliott_ googles Mason Chua 16:35:15 Hey, he has an amateur radio license. 16:35:56 You can see his address. 16:38:00 Gasp! He's a real person! 16:38:03 What have I done? 16:38:04 -!- MigoMipo has quit (Read error: Connection reset by peer). 16:38:52 OK, I need to know. 16:38:59 How the hell does Google get its website summaries? 16:39:02 Torsion Operating System 16:39:02 Multitasking SASOS with transparent data persistence: users and application programmers need not know or care that system memory is transient and must be ... 16:39:02 www.torsion.org/ - Cached - Similar 16:39:06 That text is *nowhere* on the Torsion site. 16:39:15 And I haven't seen ... anyone ... refer to Torsion apart from the Loper OS blog, which doesn't say that. 16:39:21 Does Google have people writing these all the time?! 16:39:49 -!- oerjan has set topic: EGASSEMTERCESATONSISIHT | voxelperfect.net has expired, the wiki is still reachable at http://esolangs.org/wiki/Main_Page | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 16:48:43 It is theoretically possible for them to have submitted a separate metadata text file thing as a sitemap thorough google's web-admin things, but I don't know how likely that is. 16:49:07 (It doesn't seem to have robots.txt or sitemap.xml files on-site.) 16:49:12 fizzie: I doubt it, since the website is circa 2004. 16:49:14 -!- MigoMipo has joined. 16:49:16 fizzie: Also, I see this shit for *loads* of websites. 16:49:25 fizzie: Like, accurate, objective summaries of things that are /nothing/ like the pages themselves. 16:49:39 Perhaps they use that AI for theirs. 16:49:42 fizzie: (Google also makes up its own page titles a lot ... and they're usually better.) 17:10:25 Vorpal: "TIL torches can be placed on leaves only if fast graphics are on, though won't disappear if changed back to fancy graphics." 17:10:39 elliott_, TIL? 17:10:39 Vorpal: "Apparently this also applies to mobs? I've heard they don't spawn on trees if fancy graphics are on, but they will if fast graphics are." 17:10:42 Vorpal: Today I Learned 17:10:48 elliott_, also I think that is no longer the case about leaves 17:10:48 Vorpal: TIL Notch is a terrible coder 17:11:02 "I think in fancy, leaves are treated exactly like glass. In fast, they're treated exactly like grass... and all the connotations that brings." 17:11:20 "(Disclaimer: this is mostly guesswork) It's more complicated than that: basically, glass and fancy-leaves are treated as air that you can't walk through. (incidentally, this also means that if you drop an item and place a block of glass over it, the item will not 'pop' out, but will be sealed inside the glass)" 17:11:22 elliott_, no longer the case, I tried it some weeks ago and I could place on fancy leaves 17:11:23 Vorpal: this game ... so badly written 17:13:28 elliott_: try googling the phrase. it seems to be text from the various sites linking to it. 17:13:45 gaah 17:13:47 .NET 17:14:14 elliott_: most probably this: http://www.google.com/Top/Computers/Software/Operating_Systems/Single_Address_Space/ 17:14:33 heh 17:14:56 remember when dmoz made any sense at all :) 17:20:16 new language: http://esolangs.org/wiki/TOD 17:20:23 elliott_, no - it never did :-) 17:20:46 * elliott_ fixes up the article :P 17:20:51 elliott_, working on that now :-) 17:21:12 OK then 17:21:13 I'll add it to the list when its ready 17:22:54 elliott_, is it turing complete? 17:23:07 variable: I don't know! :P 17:23:10 actually - you could fix up the article 17:23:12 :} 17:23:26 variable: It's hard to define TCness in this case because ... well ... it's time-dependent. 17:23:36 I think no because you can't write a program that predictably emulates a universal Turing machine. 17:23:58 Yes you can - as long as you *start* it at the right time 17:24:15 of course it will only work that once and never again :-} 17:24:36 variable: what is the difference between an operation and an instruction? 17:24:43 Yes you can - as long as you *start* it at the right time 17:24:44 instruction is the actual value in memory 17:24:47 no, there is no instruction to sleep 17:24:51 instruction is the actual value in memory; operation is what happens 17:24:53 well it might be possible ... 17:24:57 yeah "delay" 17:25:11 delay sleeps for one clock cycle 17:25:19 ah 17:25:33 how long is a clock cycle? 17:25:49 depends on the processor 17:25:52 its like a NOP in assembly 17:26:34 variable: Wouldn't "nop" be a clearer name then? :p 17:26:44 probably 17:26:55 I was originally thinking of an actual delay - but then decided to change 17:27:03 renaming it would be better now :-) 17:27:46 variable: the pointer points to one byte, yes? 17:27:57 yes 17:28:27 variable: is the tape right-infinite, left-infinite or both? 17:28:33 i.e., say ^ is the pointer 17:28:34 is it 17:28:36 ^0 0 0 0 0 0... 17:28:37 or 17:28:42 0 0 0 0 0 0 0 ^0 17:28:43 or 17:28:47 erm 17:28:48 right infinite 17:28:50 ...0 0 0 0 0 0 0 ^0 17:28:50 or 17:28:55 ...0 0 0 0 0 0 ^0 0 0 0 0 0 0... 17:28:59 ^0 ..... 17:29:48 elliott_, aha, so this is where you are! 17:30:07 variable: Cleaned up the article. 17:30:36 elliott_, thanks 17:30:48 * variable HATES HATES HATES (both-infinite) wiki syntax 17:31:09 variable: one byte per instruction, right? 17:31:18 i.e. a file looks like "010101111000" where those are the ascii bytes for 0 and 1? 17:31:49 no - the instructions are bitwise 17:32:03 but the stack (where the input and output goes) is bytewise 17:32:20 so 0101 would be "delay" "do" delay" "do" 17:32:39 http://esolangs.org/wiki/TOD there we go 17:33:02 I'll add it to the table now 17:33:20 serious language.... or joke language... 17:33:23 * variable can't decide :-) 17:33:45 elliott_, could I rename it to #Aardvark-tod so it goes first ???? 17:33:47 :) 17:33:58 * ###Aaardvark-tod 17:34:42 variable: no :P 17:34:47 variable: it's not a joke language 17:34:49 what table? 17:35:01 http://esolangs.org/wiki/Language_list 17:35:41 that's not a table :-P 17:35:52 variable: but yeah, no, joke languages are those which aren't even "real" languages 17:36:23 elliott_, I know - I was joking 17:36:29 right :p 17:36:39 some people have got legitimately confused about that list before, mind 17:36:45 hence the ":-)" 17:37:11 variable: how do you do loops or some equivalent? I can't see how to get a non-halting program 17:37:14 bah, notice how many of my lines have :Ps in it 17:37:22 Mathnerd314: indeed. 17:37:28 it's definitely sub-TC. 17:37:33 Mathnerd314, infinite 0s 17:37:46 its all initialized to 0 17:37:47 variable: ...and? 17:37:59 elliott_, I didn't make a way to halt.... 17:38:05 oh - I have an idea 17:38:09 * variable adds a halt 17:38:17 variable: no, you need a _non-halt_ 17:38:19 how can you loop forever? 17:38:47 what do you mean? 17:38:53 what loop? 17:38:58 variable: umm, ok. 17:39:04 variable: I want to make a program that loops forever, doing nothing. 17:39:07 variable: what program does it? 17:39:31 just run it - its right infinite running with all 0s 17:39:58 variable: I don't get it -- the tape isn't the program, is it? 17:40:04 oh right 17:40:17 sorry 17:40:21 * variable wonders 17:40:53 elliott_, would a "go backwards N instructions be fine" ? 17:42:00 maybe... starts to get ugly though 17:42:13 variable: it would allow an infinite loop, but I very much doubt it would be TC 17:42:15 how about "go back to the start" 17:42:24 (considering all your operations are locked behind time, and you can't "wait until 12pm") 17:42:31 (only "wait an unspecified amount of time", and you don't even know what time it is now) 17:42:57 so what could I change to fix this? "wait until 00:00" ? 17:44:29 variable: yes. and if you say nop waits exactly one second, say. 17:44:36 variable: you'll still need a conditional jump, though 17:44:41 i.e. jump if and only if this certain condition is true 17:44:44 say, the current cell is not 0 17:44:54 variable: oh, and what range do the cells have? are they signed or unsigned bytes? 17:44:58 how about time based conditional jump? 17:45:06 jump iff its 4:35 17:45:18 they are 2s compliment integers 17:45:40 or does it have to be based on the data? 17:46:15 variable: time might work 17:46:22 variable: 2s compliment -- ok so they're signed 17:46:29 (in brainfuck usually they are unsigned i.e. 0 to 255 inclusive) 17:48:06 elliott_, jump iff it is is currently the apocalypse ? and change "delay" to "wait 1ms"? 17:48:33 variable: I'd change delay to "wait an hour", to be honest. 17:48:37 Otherwise programs will be gigantic. 17:48:42 exactly :-) 17:48:42 variable: Except ... 17:48:46 variable: You need to know what time it is. 17:48:51 variable: Jump one hour doesn't help; you need to get to 12pm, say. 17:49:06 nah - it depends on when you start it 17:49:13 variable: Then it's not Turing complete. :) 17:49:33 what if 17:49:43 the program automatically delays until 00:00 ? 17:49:57 for the first instruction ? 17:50:00 variable: Yes, that would work. 17:50:03 variable: Or better. 17:50:09 variable: Have the interpreter error out if it's not 00:00. 17:50:13 ok 17:50:19 That is, 00:00:00 to the second. 17:50:33 yeah 17:50:56 -!- sebbu has quit (Ping timeout: 264 seconds). 17:51:19 variable: Then if you add two more things to the do instruction -- say "skip the next instruction if the current cell is 0", and "jump to the program location specified in the current cell"... then it still wouldn't work, because you'd only have 256 places you can jump to. 17:51:41 ah ok 17:51:59 my goal is to avoid adding the brainfuck's [] operators but still have it be TC 17:52:11 variable: yep. good luck with that :P 17:52:19 is it doable ? 17:53:13 variable: well, there are plenty of TC languages without loops. 17:53:29 but you definitely need some kind of conditional jump for your structure to work. 17:53:37 -!- sebbu has joined. 17:53:48 elliott_, can it only jump to the start and still be TC? 17:54:27 jump to instruction 0 iff its the apocalypse 17:54:55 variable: no. i don't think that will work :) 17:55:22 -!- sebbu2 has joined. 17:55:38 I need to set some kind of label ? 17:56:51 variable: possibly 17:57:04 how does lambda calculus do it? 17:57:07 or other languages? 17:57:36 variable: Lambda calculus has first-class functions and no concept of memory or instructions. 17:57:40 variable: So it's ... not easy to relate. 17:57:43 ah 17:57:49 All lambda calculus is, is: 17:57:59 how do other functions do it? 17:58:02 * languages do it 17:58:14 LC := 'λ' name '.' LC | '(' LC LC ')' | (name) 17:58:15 e.g. 17:58:21 (λx. x) y 17:58:22 ==>y 17:58:24 for any y 17:58:37 λx y z. is the same as λx.λy.λz. 17:58:50 -!- sebbu has quit (Ping timeout: 240 seconds). 17:58:53 (λw. w w) (λw. w w) ==> (λw. w w) (λw. w w) ==> ... 17:58:58 (infinite loop) 17:59:02 variable: usually other languages have loops :-P 17:59:05 I havn't done any lambda calculus 17:59:07 -!- sebbu2 has changed nick to sebbu. 17:59:10 or, really, just conditional jumps 17:59:21 variable: lambda calculus is really really simple. I just described it there, basically 17:59:27 I didn't tell you the actual evaluation rules, but it's just function application 17:59:34 except you don't evaluate function arguments until you really need to 18:00:03 elliott_: " therefore haskell REEKS OF THE FOUL STENCH", you seem to have been confused about my opinion, which indicates failure on your part to employ elementary logic, which is surprising for me since you seem to display aptitude in logic. 18:00:18 Quadrescence: actually it's called mocking :) 18:00:20 elliott_, I just need "if current cell is zero delay until next 00:00:00" 18:00:38 variable: nah, that won't work -- then the rest of the program means two different things, and I doubt you could make them both do the right thing :) 18:00:43 elliott_: Which in turn just made you look ``like an idiot'' ;) 18:01:09 Quadrescence: well, no, you look like the idiot w/ that post, it'd be hard to top. 18:02:19 great, now i'm lost in this damn pit 18:02:35 I'm not quite concerned how I look. I do think people got their panties into a bundle because I seemed to insult them. A lot of people seem to agree though, but (unfortunately?) those who do don't have the loudest mouths. 18:02:48 -!- Wamanuz has joined. 18:02:59 elliott_, how about something like iff apocalypse "move the instruction pointer backward in sync with the stack pointer until a 0 is seen on the stack" 18:03:35 variable: wait, since when is there a stack :) 18:03:48 elliott_, the "data pointer" or where the input/output occurs 18:03:50 * variable calls that a stack 18:03:54 even though its not\ 18:04:00 cause its not LIFO 18:04:12 variable: hehe... I don't think you can make any of this work without a way to keep the current time predictable ... and having some kind of conditional jump :) 18:04:13 the tape -- better turn 18:04:30 -!- Wamanuz5 has quit (Ping timeout: 255 seconds). 18:04:30 elliott_, current time is predictable now: delay == 1ms 18:04:45 variable: well, right 18:04:51 but you're proposing making jumps wait time based on value 18:04:55 which is _not_ predictable :) 18:05:41 anyone got a secret stash of tnt i can borrow? 18:05:43 why not? 18:06:33 variable: why not what? 18:06:42 why is the current time not predictable now? 18:06:43 variable: because what "do" does after a conditional wait is completely unpredictable 18:06:49 it could do one of two things, and you can't know which at the time 18:07:04 so you have to write your whole program so it does the right thing based on the condition no matter which of the two times it is ... and it's just not gonna work 18:08:16 elliott_, if I forced [ and ] to occur at specific times would that be a problem? 18:08:24 ie at the hour and at the half hour? 18:08:48 variable: probably not, since you can always wait 18:08:53 variable: oh, you need to specify how long instructions take 18:08:55 variable: I suggest 1 second 18:09:07 (and if the interp takes more than one second to execute an instruction, it has to quit because the time's been messed up) 18:09:23 back 18:09:39 I added a note about timezones btw 18:10:51 instructions take 1s - fine. delays are 1s as well 18:11:43 elliott_, I can't see how I could add labels without changing from a bitwise instr. set to something else 18:13:17 variable: you don't really need labels 18:14:47 variable: ok, how about this 18:14:53 variable: add two things to the do instruction 18:14:54 Quadrescence: do you know how popular your blog is? did it just get a huge boost from that post? 18:14:57 variable: 18:15:02 - skip next instruction if current cell is 0 18:15:09 - jump forwards/backwards according to current cell value 18:15:13 i.e. jump 0 is an infinite loop 18:15:15 jump -1 goes back one 18:15:19 jump 1 goes forwards one 18:15:20 (instruction) 18:15:26 elliott_then your limited to 256 values 18:15:32 variable: yes, but it doesn't matter because it's relative 18:15:40 variable: then you could basically do 18:15:42 that's what I said before :- } 18:15:51 hmm wait 18:15:53 variable: make it 18:15:57 - skip next do instruction if current cell is 0 18:15:59 then you could do 18:16:20 wait until skip time; do; wait until increment time; do; wait until skip time; do; wait until increment time; do; wait until skip time; do; wait until jump time; do 18:16:31 that'd jump forwards 2 after the last do if the current cell isn't 0 18:17:42 ok 18:19:06 variable: but you'll need to subdivide time further :P 18:19:21 why? 18:19:31 elliott_, I'm keeping time at "clock cycle 18:19:40 and leaving it machine dependant 18:20:05 -!- Wamanuz2 has joined. 18:20:10 variable: (1) because you need two new instructions 18:20:14 variable: (2) then it's not even a language 18:20:21 because the semantics are /radically/ different depending on the implementation. 18:20:31 variable: if you did it "program counter modulo N" 18:20:31 hrm - fine 18:20:32 then it'd work 18:20:37 but then it would not be time of day based :) 18:20:46 I'll make it 1 second 18:20:50 and I have my two times 18:20:58 you do? 18:21:07 variable: wait wait wait. 18:21:12 variable: how on /earth/ do you determine sunset and sunrise. 18:21:17 elliott_, adding that now 18:21:21 if you don't make those real times, it can't possibly work :P 18:21:32 elliott_, I had an idea - I just didn't write it 18:21:42 btw you probably want to say UTC rather than GMT on there 18:21:45 even though they're the same 18:22:56 -!- Wamanuz has quit (Ping timeout: 240 seconds). 18:23:02 I'm using RFC 2119 terms - that's ok - right? 18:24:04 sure :P 18:24:39 I changed it to UTC, since GMT isn't actually formally defined anywhere 18:24:48 (it's mean solar time at Greenwich Observatory technically :P) 18:25:19 elliott_, I already made that change 18:25:24 oh :D 18:25:32 variable: wrong 18:25:36 just checked the history 18:26:01 elliott_, I didn't hit "edit" edit 18:26:02 * yet 18:26:08 I was making other changes too 18:26:26 ah :D 18:28:11 elliott_, refresh 18:28:53 -!- poiuy_qwert has joined. 18:29:00 variable: ok, so time is now nondeterministic because of relying on external data, and the language is sub-TC 18:29:14 also, the undefinedness of the two extra times make it not only sub-TC, but an undefined language too :-) 18:30:11 elliott_, what do you mean? it will occur in 2012 :) 18:30:44 variable: yep, but you can't wait backwards, and you can't figure out how far away you are from 2012 :-P 18:30:51 so you can't ever wait until the apocalypse consistently 18:31:08 elliott_, also https://secure.wikimedia.org/wikipedia/en/wiki/Interesting_number_paradox 18:31:24 I know :) 18:31:40 welp, your language definitely isn't TC, that's all I can say >:) 18:31:57 -!- sebbu has quit (Ping timeout: 250 seconds). 18:32:02 elliott_, fine :-} 18:32:14 do you think its better if I made it TC? 18:32:37 variable: well. I can't imagine anyone actually running a program in it, so the distinction is rather academic :-P 18:33:18 elliott_, I just need to write a 99 bottles of beer in it now :-} 18:34:39 I want it theoretically possible to write a program in it 18:34:45 so perhaps I should make it RC 18:34:46 * TC 18:35:26 variable: well 99 bottles of beer doesn't even require TCness 18:35:45 in fact C is arguably sub-TC (I think C + POSIX is TC and C + libc is probably TC, but plain C itself is sub-TC). 18:36:07 elliott_, well yeah: if there was some operation that resulted in 99 bottles of beer.... 18:36:15 why is plain C non TC 18:36:19 variable: nope, there are plenty of languages with loops that aren't TC 18:36:27 e.g. "loop from 0 to N" for fixed N 18:36:31 variable: plain C is non-TC because of sizeof 18:36:33 consider, 18:36:38 all pointers must be castable to (void *) 18:36:43 sizeof(void *) must be an integer 18:36:46 therefore pointers must have finite size 18:36:50 and therefore the addressable memory is finite 18:36:51 QED 18:37:10 now, sizeof is measured in chars 18:37:11 so 18:37:18 sizeof(void *) = 1 where char is a big-num could work 18:37:21 except for CHAR_BIT :) 18:37:31 elliott_, so if I removed the google source and changed those two times it wouldbe TC ? 18:37:41 but since CHAR_BIT is in the libc you could argue it works ... 18:37:52 variable: I don't know, it's really hard to demonstrate TCness... but I think it would be quite likely, yes :) 18:38:03 really hard = write a BF interpreter in it is the easiest way 18:38:14 why ? 18:39:01 variable: why what? 18:39:32 elliott_, "based on a pre-generated table supplied to the interpreter?" 18:39:35 for the TZ 18:39:49 and "why is it so hard to demonstrate TCness?" 18:40:10 variable: because you essentially have to demonstrate an isomorphism to another TC language 18:40:18 showing a table with BF instruction --> equivalent TOD code on the right would be sufficient 18:40:22 elliott_, that that gravel I threw you 18:41:43 elliott_, refresh 18:42:38 elliott_, would "based on a pregenerated table" be sufficient for sunrise and senset 18:42:48 variable: yeah, as long as you specify the table in the article 18:43:02 ah - ok 18:43:42 elliott_, I can't have it "user supplied" 18:43:43 variable: I'd just set it at, e.g., 7pm 18:43:52 variable: no, you can't, because then the TCness of the lang would depend on the table :) 18:43:54 and also the behaviour of programs 18:44:10 I want it to vary in the summer and winter 18:44:50 and location 18:45:32 variable: then the language is sub-TC 18:45:40 because a program that works in summer won't work in winter 18:45:58 variable: well, ok, if you specified the timezone and season to execute it'd be TC 18:46:01 but still :p 18:46:04 i mean 18:46:10 it'd really be tz*season languages 18:46:16 and all of them would be TC 18:46:22 but programs won't only work in one of them 18:46:23 fine 18:46:39 I'll set it to 7am/7pm 18:47:37 elliott_, refresh 18:48:16 variable: ok. I think it is TC then. 18:48:34 variable: but i can't be sure :) 18:48:42 heh 18:48:59 elliott_, now.. to write hello world :-} 18:49:18 variable: good luck with that. 18:49:33 variable: you'll need a lot of nop*3600 :P 18:50:03 elliott_, I should add a note that "programmers without large HDDs should probably write in a compressed format 18:51:36 variable: Mind you, 3600 nops is only 450 bytes. 18:53:26 -!- mycroftiv has quit (Ping timeout: 260 seconds). 18:55:33 elliott_, tyvm 18:55:47 np :P 18:58:22 -!- sebbu has joined. 19:02:18 -!- sebbu2 has joined. 19:02:56 -!- sebbu has quit (Ping timeout: 240 seconds). 19:12:58 -!- sebbu has joined. 19:15:15 -!- sebbu2 has quit (Ping timeout: 246 seconds). 19:23:41 fizzie: You store gravel right? Can we borrow some? (To give back.) We're emptying the Cube. 19:27:40 -!- pikhq has quit (Remote host closed the connection). 19:31:34 * Ilari would like to see IPv6 exhaustion counter. The "addresses left" counter would go down at an impressive rate, but the number would have 37 digits... 19:33:36 elliott_: No, I've been throwing all my gravel into lava. 19:33:48 fizzie: Bah! 19:34:08 fizzie: For your inconsiderateness, you must help the mind-numbing work of excavation and draining. (Hey, we already have a glass wireframe. :p) 19:34:56 Even 10^20 addresses allocated per second is not enough to exhaust IPv6 address space before the Sun fries Earth... 19:38:47 Okay, that might be low rate. Let's throw a factor of 1000 more. That's still over 10 million years... 19:41:30 fizzie: I DON'T SEE YOU HELPING 19:43:57 This month (according to latest data I have) 28 126 260 029 466 696 220 239 013 609 472 IPv6 addresses have been allocated/delegated. 19:46:54 Okay, that's good bit more than 10^20 (or even 10^23) per second... Like 120 * 10^23 per second... At current rate, current unicast IPv6 space would be exhausted in about 100 000 years... 19:50:13 that pesky Y100K problem 19:50:47 1.5 trillion IPv6 network prefixes allocated/delegated this motnth... 19:51:15 Ilari, heh 19:51:35 otoh i humanity hasn't developed a way of efficiently fixing problems long before then, it's doomed anyway 19:51:38 *if 19:51:50 there is something fishy about my f key 19:52:49 And that isn't even one millionth of current unicast space... 19:53:47 fizzie: Can we borrow sand then? :p 19:54:20 Oh, and seems like for universal IPv6, one would need few quadrillion subnetwork prefixes... 19:56:50 -!- Wamanuz3 has joined. 19:59:20 -!- Wamanuz2 has quit (Ping timeout: 264 seconds). 20:08:24 Vorpal: http://en.wikipedia.org/wiki/Stone_soup 20:08:58 will check when MC isn't running 20:51:44 fizzie: We hereby ENSLAVE you. 21:09:34 elliott_, working on a python implementation of TOD 21:09:46 variable: cool 21:16:45 Vorpal: I went to -200 10000 by mistake >_< 21:17:08 elliott_, well what happened 21:17:20 elliott_, also write code to save bookmarks 21:17:22 elliott_, or such 21:17:33 I love that story :-) 21:18:15 elliott_, also wrt link above: "The story is most commonly known as nail soup in Scandinavian and Northern European countries." <-- oh that 21:22:36 -!- Sgeo has joined. 21:22:51 Open source stone soup: exactly like stone soup, except the travellers had to supply all the ingredients instead, and then someone dropped some mud in it 21:23:30 elliott_, someone saying something stupid about open source? 21:23:38 Sgeo: Nope, that was me saying that. 21:26:21 's pretty stupid though. 21:26:26 Gregor: That's why it was a joke. 21:26:32 ...well, 90% a joke. 21:26:43 So's your mom, but you don't see her complaining. 21:26:51 I don't remember the last time I saw an open source project that got started with a single stone (a README, say) :-P 21:27:07 "Subtlety is my ex's name." "At least, I think she's my ex now. She wasn't very clear about it." 21:27:16 -!- Phantom_Hoover has joined. 21:27:20 Vorpal: http://www.minecraftwiki.net/wiki/Explosion 21:27:22 Phantom_Hoover! Hello! 21:27:28 Phantom_Hoover: CUBE CONSTRUCTION IS START 21:27:28 elliott_, word seen on wikipedia: "sphericity" 21:27:30 (I like it) 21:27:32 Vorpal: xD 21:27:34 sphericalosity 21:27:46 Oh, consistent internet connection, how I have missed you! 21:27:51 elliott_, the sentence was "Then the part is honed to improve a form characteristic such as roundness, flatness, cylindricity, or sphericity." 21:27:56 Phantom_Hoover: Set your visor-goggles (fog) to Far, and //goto -200 1000. 21:28:05 * Sgeo does want to play Minecraft :/ 21:28:06 Will do! 21:28:10 Phantom_Hoover: BEHOLD THE WIREFRAME. GAZE AT THE PARTIALLY-EMPTIED SEA. GAWP AT THE GIGANTIC UNDERGROUND EXCAVATION CAVERNS. 21:28:11 Or at least, explore the worlds 21:28:12 Phantom_Hoover: BTW: You really want far. 21:28:15 Also, I awesomised my SSP world. 21:28:16 Sgeo, so buy it? 21:28:20 Phantom_Hoover: Otherwise you can't see the wireframe. 21:28:33 Phantom_Hoover: P.S. I've sort of used some of HHI's duplicated TNT to help excavate... please don't hurt me 21:28:58 elliott_, you're demoted to junior undersecretary of juniority! 21:29:07 That's great, I can steal more under the radar! 21:29:17 Phantom_Hoover: ALSO ALSO: /kit g gets you a shitload of glass. And if you don't have enough inventory it goes into your armour slots. And YOU ACTUALLY GET A GLASS ORB ON YOUR HEAD. 21:29:22 It is HILARIOUS. 21:29:30 AWESOME 21:29:55 Phantom_Hoover: BTW: Reconnect after //goto. 21:29:58 You become invisible if you don't. 21:30:07 Why? 21:30:22 Phantom_Hoover: Because you do. 21:31:57 http://www.nypost.com/p/news/local/heart_stopping_medics_limit_cpr_7Ahv46Qfw6NXpYklWpMhiO 21:36:14 Hah... Fail: Official Food pyramid: 60% carbohydrate, 25% fat, 15% protein. Cattle rancher animal feed formula for fattening animals: 61% carbohydrate, 25% fat, 14% protein. 21:36:43 Hah 21:37:38 Okay, 60% carbs, 25% fat and 15% of protein diet can be reasonable if one picks carb and fat sources well (definitely not the way food pyramid recomends). 21:38:09 yeah, pretty lulzy 21:38:16 there's a difference though 21:38:33 in that the ranchers are not in the business of mining fat deposits 21:38:38 they want fatty meat 21:38:41 but the mean must still be ther 21:38:45 *meat 21:38:46 *there 21:40:27 IIRC, there was some primitive (i.e. healthy) population with diet approximately 70% carbs, 20% fat (15% saturated!) and 10% protein... 21:43:57 Ilari: so basically the food pyramid is perfect for cannibals? 21:44:30 If one wanted to look who food pyramid is good for, it is pharma companies... 21:46:11 everything is goddamn good for the goddamn pharma companies :( 21:46:27 "This leads to a problem. When there are an infinite number of instances of every possible observation, it becomes impossible to determine the probabilities of any of these events occurring. And when that happens, the laws of physics simply don't apply. They just break down. "This is known as the "measure problem" of eternal inflation," say Bousso and buddies" 21:46:44 I assume that it's the journalist screwing that up, because what I just read makes no sense 21:46:48 http://www.technologyreview.com/blog/arxiv/25807/ 21:48:52 -!- zeotrope has joined. 21:59:34 Sort it randomly and compute the limits as number of observations increases? 22:00:01 Sgeo: No, I think they're serious 22:00:36 coppro, is there some sort of math going on that makes more sense than what was in that article? 22:00:44 That's what I'm caught up on 22:01:10 Or are people just being dumbfarks? I don't want to just make that assumption 22:01:12 Sgeo: did it occur to you to read the paper? 22:02:05 No :/ 22:02:10 * Sgeo goes to look at it 22:03:25 The first two paragraphs say pretty much the same thing 22:03:33 * Sgeo sees something that may be useful in the next 22:04:58 Why not just make the calculations for a given amount of space in a given amount of time? 22:05:29 Oh, is that what they're saying? 22:06:18 " Some 22:06:18 observers will have their lives interrupted by the cuto" 22:06:23 How is that interesting? 22:07:53 This cutoff they are talking about. I thought it was a mathematical tool so they don't have to look at everything. Why are they talking about it as though it has a physical reality 22:07:55 I don't get it 22:09:04 me neither 22:09:18 but the argument "math doesn't work so it won't happen" is one worth considering 22:13:04 elliott_, if you carry any sand: use it now 22:13:21 * Sgeo ponders switching back to Opera 22:13:52 play more netcraft imo 22:13:56 it has vertex shaders 22:17:06 -!- j-invariant has joined. 22:22:01 CRAZY PHYSICS IDEA #2: Hawking generator. 22:22:31 Make black hole. Stabilise mass loss due to Hawking radiation by pouring junk into it. ??? Profit! 22:23:20 Any fatal flaws I've missed? 22:24:05 How much energy does it take to put junk into it? 22:24:25 Sgeo, "negative". 22:25:15 You could get even more energy from the gravitational potential were it not for the fact that once you have a method for total mass-to-energy conversion, which I think this is, your energy needs are basically solved. 22:25:16 coppro: does netcraft actually have a release at all 22:25:26 elliott_: no 22:25:38 I'm just trolling 22:25:40 coppro: a public source repository? :p 22:25:44 Link? 22:25:47 it's semipublic 22:26:18 Umm... isn't Hawking radiation basically matter? 22:26:23 no 22:26:52 Wait, what types of particles are "formed"? 22:26:58 mostly photons 22:27:05 which usually aren't considered matter 22:27:12 coppro, I thought it was matter and antimatter in equal proportion? 22:27:21 So photons if you wait a while. 22:27:29 photons are their own antiparticles 22:27:45 ergo, photons meeting photons = explosion 22:27:49 ergo, shining two lasers at the earth = BOOM 22:27:51 Everywhere in the quantum foam of spacetime, particle-antiparticle pairs spontaneously appear then anhillate eache other. 22:28:16 j-invariant: no silly it's all made out of tiny vibrating strings! 22:28:19 When this happens right at the edge of a black hole, it's possible that one of the partcles gets sucked in, so that the other has nothing to anhillate against 22:28:28 j-invariant, yes, that's my understanding. 22:28:43 Phantom_Hoover: yes, your idea is crazy but Just Might Work 22:28:52 there are two problems thought 22:29:00 I know, I know, mass. 22:29:01 #1 is capturing the radiation 22:29:07 #2 is feeding the mass at the right rate 22:29:43 elliott_: I thought this was a consequence of string theory 22:29:44 * Sgeo suddenly wants portable black holes for use in spaceships 22:29:52 Sgeo, naaaa. 22:30:01 elliott_: I don't know how this quantum foam arises though 22:30:02 j-invariant: i was joking :) 22:30:06 You can't even move black holes without massive gravitational forces. 22:30:17 But configurations of holes in orbit, now... 22:31:11 How much Hawking radiation do black holes emit? Enough to be usable? 22:31:29 why did I never see git's description before? 22:31:39 Sgeo: I think it has been experimentally detected in a lab recently 22:31:47 Sgeo, the formula is on the WP article. 22:32:11 Sgeo, for a black hole with mass M: 22:32:26 yikes, some guy in the ashes tried to catch the ball but it just slapped his thumb 22:32:36 "catch"? 22:32:55 For some reason, I thought in cricket, the ball was usually on the ground 22:32:58 P = \frac{\hbar c^6}{15360\pi G^2 M^2} 22:33:17 hbar? 22:33:28 h/2\pi IIRC 22:33:30 Sgeo: well someone throws it, then the batsman hits it, after going through the air it rolls for a while 22:33:52 j-invariant, aaaaaaaorganisedsportgetitaway 22:33:53 What if someone gets killed by the ball? It happens in baseball :( 22:34:14 Sgeo: wow. I didn't know thatt 22:34:22 why did I never see git's description before? 22:34:23 what? 22:34:27 yesterday the batsman got hit in the knee but he did keep playng 22:34:31 Anyway, let's calculate the mass necessary for you to get a 1 on the Kardashev scale! 22:34:39 http://www.northjersey.com/sports/hs_sports/120510_Garfield_deals_with_grief_as_probe_continues_in_teen_baseball_players_death.html 22:34:43 j-invariant: are the ashes worth watching 22:34:46 Sgeo: poor cat 22:34:50 all he wants is some lasanga 22:34:58 *lasagna 22:34:59 wt 22:35:00 f 22:35:04 that's a word, spellchecker. 22:35:31 What's the Mathematica thing to rearrange an equation so a given variable is dependent? 22:35:36 elliott_: well that's what I am trying to find out 22:35:49 j-invariant: you haven't figured it out yet? :D 22:35:52 Phantom_Hoover: what? 22:36:05 elliott_, ! 22:36:12 Sod it, the equation is trivial to rearrange. 22:36:15 Vorpal: what 22:36:39 elliott_, you pick that up, not me 22:38:28 It annoys me that h is an angular momentum, yet they have no immediately obvious relation. 22:39:35 Phantom_Hoover: random names in mathematics? shocking 22:39:54 elliott_, no, it's the dimensions. 22:40:20 ah 22:40:32 h : m^2*kg*s^-2 22:40:48 Angular momentum is the same. 22:41:10 Phantom_Hoover: torques are energy! 22:41:27 coppro, it's so crazy! 22:41:42 lesson: just because the units work out doesn't mean you're right 22:43:40 coppro, but it's so inelegant! 22:46:50 elliott_: I definitely don't "get" it.. yet(?) 22:46:50 ANYWAY, who wants to know the mass of the Hawking generator needed to produce a watt of power! 22:47:18 j-invariant: I think you need to, like, blend fifty rule books into a smoothie and drink it every day for five weeks 22:48:01 It turns out to be 5*10^-17kg! 22:48:08 Hmm. 22:48:13 This may be a problem... 22:48:24 lol 22:49:03 I mean, the slightest disturbance in the mass you're feeding in and you end up with no black hole and a gamma ray explosion. 22:49:32 lol 22:49:38 HMM. 22:50:02 Well, the good news is that Sgeo's dream of having one on his spaceship is fulfillable! 22:50:02 I don't get how this blog post has led to so much discussion 22:50:18 I guess haskell folks juts hate the idea of being a cargo cult so much 22:50:34 rofl 22:51:12 How it scales with power? What would be the mass for 1kW? 22:51:25 Ilari, the larger the power the smaller the hole. 22:52:28 Wait, I've messed this up. 22:53:06 no actually that's right 22:53:15 Hawking radiation is quicker in smaller black holes 22:53:44 I don't understand that 22:53:47 how does that work? 22:53:57 coppro, yeah, and my formula doesn't get that. 22:54:25 -!- MigoMipo has quit (Read error: Connection reset by peer). 22:54:27 j-invariant, gradient of space around hole something something something physics. 22:54:35 oh curvature I see 22:55:09 Oho, that's why the formula is wrong! 22:55:49 OK, NOW it works. 22:56:14 it's like how surface gravity of a black hole is really weak 22:56:24 OK, so now I have 2e16 for the mass of a 1-Watt Hawking generator. 22:56:40 MUCH more practical. 22:56:44 Very. 22:56:46 kg? 22:56:50 oerjan, yes. 22:57:05 Phantom_Hoover: how much for 1 megawatt >:) 22:57:07 or does it scale linearly 22:57:22 elliott_, it scales 1/square rootly. 22:57:41 so 2e13? 22:57:43 So a huge amount of power is actually far less mass. 22:57:53 oerjan, yep! 22:58:09 but of course you would need to put more mass in to keep it going 22:58:19 Of course, this is where the real practical problems come in. 22:58:44 You need to compensate the mass loss, which doesn't take much mass, but is tricky for very small holes. 22:59:19 Phantom_Hoover: so how much energy for 1 kg 22:59:20 Type 1 on the Kardashev scale is 1e16, so... 22:59:31 1kg of mass suppiles about 90PJ... 22:59:36 elliott_, it's quite simple, it's just e=mc^2. 22:59:37 -!- calamari has joined. 22:59:40 Phantom_Hoover: oh ofc 22:59:42 And P=E/t 22:59:48 Phantom_Hoover: but you see, you're forgetting 22:59:50 Phantom_Hoover: I'M LAZY 23:00:16 10^8 would get you to Type 1 on the Kardashev scale. 23:00:37 But this is where the real problems come in. 23:00:41 except you wouldn't actually be able to get that to work 23:00:44 "It is important to note that as Sagan's Kardashev rating is base-10 logarithmic, a value of 0.72 means we are using approximately 0.16% of the total available planetary energy budget." 23:00:56 1e16 would be ridiculously hard to control. 23:01:24 And one would need to inject about 110 grams of matter per second to keep it stable... 23:01:39 And getting mass into the hole at all would be nigh-impossible. 23:02:02 Ilari, not too hard if you ignore the energy output 23:02:18 Hell, you could get that with a shovel. 23:02:25 OpenTyrian FTW 23:02:52 Phantom_Hoover: I am now imagining a guy shovelling coal into a hole. 23:03:00 On a sleek, shiny, lens-fare spaceship. 23:03:01 :) 23:03:12 coal's far too valuable 23:03:14 That was my intention. 23:03:22 how about Christians instead? 23:03:30 Although what kind of spaceship is Type 1? 23:03:41 coppro: lmao 23:03:52 coppro: i'll have to remember that for asiekierka 23:04:22 But yes, you can use absolutely anything. 23:04:48 the good news is that with that level of energe, you could afford the particle accelerator required to make it work 23:05:02 coppro, hmm. 23:05:06 Phantom_Hoover: Could you even use EXCESS ENERGY 23:05:20 Thus giving a perpetual motion machine if you don't use it all! SCIENCE 23:05:44 elliott_: no, you would need matter as fuel 23:05:52 coppro: SHUT UP 23:05:53 SCIENCE 23:06:12 OK, so you have 1e16W of radiation coming out, so how do you get stuff to it without it being vapourised? 23:07:56 Hmm, our current energy consumption is 16TW. 23:08:39 Which requires a 1e11 hole. 23:08:40 Phantom_Hoover: neutron stream? 23:09:00 Phantom_Hoover: Speaking of mathematics, me and Vorpal just simultaneously thought that 10x10x10 = 1000. 23:09:02 erm 23:09:03 Phantom_Hoover: Speaking of mathematics, me and Vorpal just simultaneously thought that 10x10x10 = 100. 23:09:10 coppro, well, I was kind of hoping you could just stick some rock in a mass driver. 23:09:27 OK, so you have 1e16W of radiation coming out, so how do you get stuff to it without it being vapourised? 23:09:32 And hope that enough of it got in to keep the generator stable. 23:09:32 Phantom_Hoover: just make a tube out of indestructium 23:09:33 Phantom_Hoover: well, neutrons shouldn't interact with the outgoing radiation at al 23:09:34 straight into the hole 23:09:36 and route it outside 23:09:41 coppro, momentum? 23:10:00 Phantom_Hoover: hmm? 23:10:01 Probably not very significant if the neutrons are moving at all quickly. 23:10:12 momenum of what? 23:10:21 The photons? Doesn't matter 23:10:29 oh, net momentum 0 23:10:51 or do you mean them colliding with the neutrons? 23:10:56 Yes. 23:11:08 What's M_E again? 23:11:33 6e24kg. 23:12:16 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep). 23:12:42 OK, so you could fix our entire energy problem with less than a hundred trillionth of the Earth's mass. 23:13:23 Phantom_Hoover: but won't the photons not collide? 23:13:51 coppro, I don't know, I assumed you were Mr Knows Physics. 23:13:56 Phantom_Hoover: oh, no 23:14:09 Who is Mr Knows Physics here, then? 23:14:14 actually wait, that won't work 23:14:17 neutrans have quarks 23:14:35 that is, I think they wouldn't work because of that 23:14:50 i was wondering, how much time and how many jet engines working at full power would take to change earth's orbit 23:15:25 how many depends on how far and how much time, how far depends on how many and how much time, etc 23:15:50 nooga, ask Sam Hughes, he's an expert on this kind of thing. 23:16:30 There really ought to be a name for kg/s. 23:17:52 Phantom_Hoover: Kuggs. 23:19:45 i tried to calculate that 23:20:08 but it was too riddiculous 23:21:20 oh no 23:21:21 wait 23:21:36 it was about changing the rotation direction 23:26:49 nooga, trivial. 23:27:09 I mean, I can't be bothered to work it out, but I know that I could. 23:29:11 Work out the change in angular momentum. 23:29:55 i know 23:29:58 and i did that 23:30:38 but it turned out that one should basically fill the entire Earth's surface with jet engines 23:30:41 :D 23:31:32 http://vimgolf.com/ 23:31:35 whoa 23:34:00 haha 23:34:26 nice! 23:36:31 http://www.xamuel.com/images/madfrege.JPG 23:37:43 hmm 23:37:46 http://vimgolf.com/challenges/4d1a71c0b8cb34093200010b 23:37:56 pretty sure I can totally beat 189 23:38:20 (although does this run vimrcs? if so you could easily cheat) 23:43:05 * Sgeo wonders if there are MMORPGs whose servers are written in Erlang 23:44:47 * Phantom_Hoover wonders how many baked beans he can stick up his nose 23:46:46 hrm 23:46:52 vim is being weird 23:46:52 mm, baked beans 23:48:09 why can't I update marks within an @ command 23:49:05 no wait 23:49:09 I can't do 'a in a @ 23:51:41 Sgeo: i knew two guys who wrote basic MMOG in Erlang 23:52:02 and they had a presentation on a gamedev conference in Siedlce 23:52:34 When I last looked at Erlang, what did I dislike about it? 23:53:18 http://i.imgur.com/L3ILW.png troll 23:53:30 "Marcin Gazda, Michał Ślaski - Rozproszony serwer œwiata wirtualnego jako narzędzie do analizy potrzeb serwerów MMOG." 23:54:15 distributed server of virtual world as a tool for analysing demands of MMOG servers 23:54:29 it was in 2005 23:54:53 and these two guys were Erlang freaks 23:56:34 What do most MMOs do? 23:58:13 j-invariant: i think the cheating part is that a and b will also be polynomials, not numbers 23:59:52 brb, sleep 2010-12-29: 00:01:27 * Sgeo checks out digg 00:01:37 * Sgeo wtfs at how few comments there are on everything 00:05:41 What killed it? I've never had a straight answer to tha. 00:05:44 *that 00:06:00 Phantom_Hoover: Yes you have, you just wanted infinite details. 00:06:51 Well, it was along the lines of "they changed the UI and had a few outages and everyone left". 00:09:48 Suppose you had a box which prints out an infinite stream of bits 00:10:16 the bits are not a computable function, they can be any sequence you can define.. is it possible to make an infinite energy generator with it? 00:10:46 j-invariant, XD 00:10:48 (you have to put electricity in to get the bits out) 00:10:51 Phantom_Hoover: coming back? 00:10:52 Oh. 00:10:59 so you have to covre the costs of the LED or whatever 00:11:13 j-invariant: I doubt it 00:11:19 elliott_, it's not that I'm bored or anything, just that it sucks down time. 00:11:23 j-invariant: how do you refine raw entropy :-P 00:11:26 but this thing has infinite amount of information in it 00:11:54 j-invariant: yep, but that's not very useful 00:12:04 j-invariant: well anyway 00:12:10 j-invariant: do they /have/ to be uncomputable? 00:12:20 I mean you can specify the bits to be anything 00:12:26 j-invariant: well 00:12:31 well not "instructions for building an infinite energy machine" but... 00:12:34 j-invariant: you could use the LED's light 00:12:36 when the bit is 1 00:12:41 to power some light-based electricity generator 00:12:43 or even its heat 00:12:47 its very, very minimal heat 00:12:52 j-invariant: except no 00:12:53 j-invariant, except such a thing exists. 00:12:54 no you have to cover the costs of the LED 00:12:56 since you have to cover the LED generator 00:12:59 j-invariant: ok then no 00:13:08 * Sgeo vaguely wonders why he installed Braid from Steam 00:13:14 Quantum much? 00:13:16 j-invariant: I define the sequence to be 0, 0, 0, 0, 0, ... 00:13:24 j-invariant: zomg! the AIR is that machine! 00:13:30 obvs the air gives us infinite energy :} 00:13:50 elliott_, read The Minecraft Experiment lately? 00:13:54 He reached the Nether. 00:13:55 Phantom_Hoover: a few days ago 00:13:59 air?? 00:15:01 j-invariant: yep, just don't plug the led into anything 00:15:03 infinite 0 bits 00:15:30 that doesn't disprove that this might be possible 00:15:55 elliott_, see mc 00:15:58 j-invariant, so how are you getting energy here? 00:16:46 suppose the machine was a halting oracel for the nth brainfuck program 00:17:11 I might be able to prove some difficult mathematical theorems just by waiting a long enough time 00:18:00 or if this was the 1800s I could have one that prints out instructions for a flying machine 00:18:17 that's a bad example actually 00:18:37 since we only know post facto that the sequence exists 00:18:41 don't be silly, machines can't fly 00:20:40 IT'S TRUE 00:20:47 j-invariant: but um, i don't think you can use it to generate infinite energy 00:20:54 j-invariant: well 00:20:57 j-invariant: how does it generate the bits? 00:21:00 j-invariant: does it come with the LED built in? 00:21:00 I just feel like if an alien asked me what what infinite sequecne of bits I would like.. I wouldn't be prepared 00:21:07 j-invariant: as in 00:21:20 j-invariant: is it an impenetrable black box that lights up occasionally iff you give >= N watts of energy? 00:21:21 you can't open the device up 00:21:24 into a little hole in the back 00:21:26 yes exactly 00:21:27 j-invariant: i.e. the LED is built in, yes? 00:21:27 ok 00:21:48 j-invariant: I'd say ... definitely no, because we can't access the information in any physical form 00:21:56 j-invariant: only the LED, which we're covering 00:22:11 j-invariant: i.e. the actual /physical/ results of generating the information are not accessible 00:22:11 -!- oerjan has quit (Quit: Good night). 00:22:15 which is what is relevant here 00:22:24 hm? what's the diffence, same 1s and 0s 00:22:36 Wait, what's the actual principle for the infinite energy? 00:22:48 j-invariant: well because the point is that heat etc. 00:22:52 i dunno :D 00:23:38 Grumblegrumblemyideawasbetter 00:24:44 Phantom_Hoover: ? 00:24:52 For energy! 00:24:56 j-invariant: can I cheat? 00:25:08 You have a man. Shovelling coal. Into a black hole. 00:25:11 WHAT MORE DO YOU WANT 00:25:21 you can cheat if it's clever 00:25:27 j-invariant: I request the sequence of bits that represent ASCII instructions in easily-comprehended-by-a-modern-physicist English that describes all steps necessary to build an infinite energy generator given our current materials and understanding 00:25:39 j-invariant: presumably, the black box itself uses some kind of infinite energy source to do it 00:25:48 so if it was constructed specially by aliens, they can tell us how to make us one that gives electricity! 00:25:55 or heat or whatever 00:25:58 elliott_: that only works if such a machine exists -- current evidence suggests it doesn't 00:26:19 j-invariant: current evidence suggests this infinitely-outputting box doesn't exist either! 00:26:39 j-invariant: & if they can't give such a sequence, they're frauds, as their magic box must use an infinite energy generator 00:26:47 (or physics is really, *really* weird) 00:27:57 j-invariant: this is totally cheating though :) 00:30:25 hehe 00:30:31 I think it's the best approach so far 00:35:43 iirc, the last time I got angry with Opera was because it failed to save my settings properly 00:35:58 But i remember that as a last straw. What else was wrong with it? 00:36:08 Maybe I should have a private blog so I rememer things like this 00:36:22 Vorpal: no minecart tunnel yet. 00:36:25 until it's all done 00:36:29 Sgeo: Or just use a text file. 00:37:12 10.10.31:16:42:28 It occurs to me that I have a record of my Opera usage 00:37:12 10.10.31:16:42:42 So if I'm ever tempted to try Opera again, say in a few years... 00:37:59 ty 00:38:14 elliott_, idea to confuse people: add "no pun intended" where there is no pun. It is correct but confusing 00:38:24 WTF. 00:38:26 Spawn reverted too. 00:38:33 elliott_, what 00:38:38 elliott_, that's weird 00:38:45 yeah to pre-second-explosion 00:38:50 ineiros, are you behind this? 00:38:55 ineiros said he'd help now where is he >:| 00:39:06 and also, I hope my home doesn't revert again 00:39:18 because I dumped more pumpkins and fixed the lava there 00:39:35 10.10.29:19:06:37 What an awesome security feature, Opera 00:39:35 10.10.29:19:06:42 * Sgeo gives Opera the middle finger 00:39:37 10.10.25:22:05:18 Opera complains about an illegal port number 00:39:40 10.10.25:22:03:32 * Sgeo angers at Opera 00:39:48 10.10.25:12:51:34 elliott: http://codu.org/tmp/websplat-does-not-work-on-opera.png 00:39:53 10.10.24:14:24:52 Opera seems to be having some problems again 00:39:55 10.10.23:18:55:30 Dear Opera, quit feasdf 00:39:58 10.10.22:18:00:05 Why does Opera force me to click the flash before interacting? 00:40:02 10.10.22:11:33:12 Dear websites/Opera: Stop making it so that Opera keeps thinking that something changed in your tab 00:40:02 10.10.22:15:44:34 Opera fails to mark files as originating from the Internet 00:40:11 10.10.22:18:00:05 Why does Opera force me to click the flash before interacting? <-- good idea 00:40:18 10.10.22:15:44:34 Opera fails to mark files as originating from the Internet <--- ??? 00:40:26 Vorpal: good idea that IE invented :) 00:40:43 10.10.25:12:51:34 elliott: http://codu.org/tmp/websplat-does-not-work-on-opera.png <-- this... is this hard mode? 00:40:45 or 00:40:48 impossible mode? 00:41:10 also, 544 images? 00:41:15 Maybe Opera 11 fixed all that 00:41:42 Sgeo, why not use another browser, such as firefox. Firefox may be bad, but it works 00:42:21 Vorpal: because Sgeo hates chrome now for no clear reason 00:42:30 and WON'T SHUT UP ABOUT IT BECAUSE HE NEVER SHUTS UP ABOUT ANYTHING NO MATTER HOW LITTLE ANYONE CARES 00:42:50 Vorpal: It was creating its enemy images, then counting them, then creating more and recounting them, then creating more etc etc. 00:43:24 Gregor: Played websplat lately? :P 00:43:34 Gregor, awesome 00:43:43 elliott_, issues with it? 00:43:44 elliott_: I was just thinking about it; implementing zalgo went all fail :P 00:43:50 Gregor: wat 00:43:51 Gregor, zalgo? 00:44:04 I know what zalgo is 00:44:06 but the sentence does not parse 00:44:26 Vorpal: Zalgo is to invoke the hive-mind representing chaos. 00:44:52 elliott_, if zalgo is a generic noun then it makes sense 00:45:16 Gregor, so how did you try to implement that? 00:45:31 Ṫ͈̭̖ͅo̤̊̿͋̂́ͅ ̨̳̭͚̹̘̬̮̙ͥ̅̈́̿̍͌̌i̛̐̽̿ͪ҉̢̭͔̼̘̮ͅṅ̢͖̭̤͕̮̹̪ͧ̐̿ͦ͞v̷̬̙̻̳̤͔͙̓ͨͣ́̎o̦͔͐̇̂͋͊͂ͨͫ̚k̫̈͞ͅeͯͮ̌̂̓͑ͬ҉̳͍̖̠̰̖̭͎ ̮̝̪̲̦͈͎̗̿͐̄̌ͨͤ̉ͬͩ́t͈͐ͭ̑h̙͎̙̲͉̬͎͖̟́͗̓̓e̖̘͖̳̫̟̔ͬ̿ͬ͠ ̸̻̳͖̋͗̄̿̂̚ḩ̜̀̾̓͜i̼̘͗́̽ͭͩv̜̆̂̾̋́͋ͥ̾é̷̺͎ͬ̀̑ͭ̿̈̂͢͝-͚͍̙͉ͫ̆͛̆ͮ͗͘͝͡m̯̠̩̠͍̭͓̝ͭͫ̔̆iͧ̏ 00:45:31 ̸̴̞͔̝͍̭̂̑ͦ̑ͫ͜n̷͖̥̺ͮ̋̎̈́d̷͓̟̩̄ͨ ̽̔̕͜͏̰̤̼̠̤͖̠r̴̹̔̂͐͌ͦͣȅ̷̛̳̞̩̘ͫͤ͐̋ͨ͛p͎͚̃̒̄͌̈̕r̶̻̮͉͓̩̳̲̖ͤ̀ͨͧͪ̒̈́̈͡e͌̓̅ͥ͏̼̘̩͈͟s̸͎̮̭̘̥̫̒͂̉͗̎̕e̵̵̛̘̺͑ͬn̯̠̖͋͂̎̽͘ẗ̰͖͔̠͚̲̫́ͫ͐ͩ̔̈̂ͤͩ͟ͅi̗͇̦͈̙̮͆ͥń̨̛̰̘̘̮͓̙̫ͭ̍ͫ͛̀g̸̪̗̩͕̙̜̩͊ͮ͌̇͠ ͧ͂ͫ̆̔ͧ̽͏̮̭̫̣͚͇c̴̛̝̪͙̼̦̪͛͋ͬh̵̦͍̼̞͚͖͚ͧ̑̀ȃ̓͌̔ 00:45:31 ̵͍̥̣̩͉͉̤̫̔̓̀͠o̙̼̅́ͫͩͩ̇́s̪̟͚̲̋͋̿̄͆̉̏ͬ̓́ͅ.̲͙͈̖̏̂ͦ́ 00:45:33 ̴͎̝̩̮̤̲͈ͣ͛ͅĮ͉̖̱̭ͫ̎̈̒̒̿ͪ́n̞̰͔̱͖̯̜ͩ̇ͯͯ̈̚͘͠v̜̭̏ͩ̍̔͛ͣ͂͂͢͢ǒ̷ͭ̄̀̊ͧ̒̽҉̠̻̤̹k̡̰͓̰̱͂ͭ͋̔́ͅi̯̤̒͊͌ͥͦͬ͐n̤̤͐̿̏̌̇̆̈́͆́g̨̙̱̗̤̙̾̏̍̈ͧ͡ ̵̵̟̲̙̭͙ͩ̄̽̇t̺̫̔ͭ͟͞h̡̭̗̻̠̫̥̩͍ͮͧ̓̈̎̊̊ͮ̀͜e̴̝͙͉̘̙̍́̂̐ͥ̃ ̨͉͇̭̯̝̖̰̰͂̑ͫ͊͗͘ͅf͓̓͗̓ͧ̐ẹ̠͔̔ͬ͒ͧ͋ͤ̉͋e̹̫̥͊ͦͫ̍̌͝l̢͙̺̙̺̩ͥͭ̇̐ͫͧͧ͂͢ȋ̈͋̉͛ 00:45:38 ̧̟͉̩̘̼̙́̄ͧ̚͢ǹ̢͓̞̮̗͖̝̮͍ͭ͜g̙̻͖̠̎̚͜͟ ̢͎̪̲̬ͯ̊ͬͪ͒ͨ̑͜͡ͅo̗̙͋̊̂͌̄̋͌͝f̠͎͕̯͗̒ͯͯͪ͊̊ ̨̼̩̪̯̜̲̖͖͑ͤc̸̻̪̖̱ͭ͐ͨͫ̋h̴͈̹̦̼͙͇̼͖̣̄͗͡͡a̤̱̬͉̼͇̲̜ͮ́̏͋͊ơ͙̝̮̜̈́̐ͪ̿͗̔ͮs̖͎̟͊ͧ̇̈ͅ.̘ͬͧ̐ͣ́͠ 00:45:42 ̨̞̬̳̖̘͎ͮ̈̍ͫͬ̏̚Ẃ̛̻̗̒̓̉̉ͣȉ̺̬͎͖̭͔̝͆ͤͤ͑͝t̨͈̯̬̠̍̍̊̐h̛̯̬̬͗̃͗ͭ͐ ̨͇̹̬͓̗ͪ͑͛͗ͩ͑̒̚͠ǫ̶̶̫̱̼̮̦̪̟̔͐̇u̱͓̹̞̦̾t̸̮̘̭͌͗̐͛͛ͨ͂́͂ͅ ̊ͭ҉̸͕̟͖͉̙̣̩̲̹ǫ̸̬͕͖̰̍̑ͦ̾͐̐ͫ͒͘r̴͎ͬ̒ͧ̇ͪ͊̂̅͜d̯̙̙͍̦̼̣̭ͨ͊̀͟e̶͔̟̦͍͌ͤͧ̿̐̋̀ͮ͞ṛ̳͓̈ͦ͊ͨ̽ͩ̕.̨̲͖̳͔͉͇̯́̉ͨ̋͡ 00:45:47 ̃̍͏͏͓̙̖̱T̢̩̘̭̞̟͍̣̦̦́͊ͬh̨͓͈̻̗͙̱̘͛ͮͮ̑̍ͣẹ͙̰͉̲̘̹ͦͫ͂ͥ͞ ̶̨̬͉ͮ̑͐̃̀̂̈́̕N̫̲ͦ̒ͧ̊ͤ̈̉̕͜ͅe̷̲̊̾̐͐̅̕z̜͔̮̯̬̺̣̉̓͌̒͑͝pͨ̽͏͇̥̥̱͟e̸̖̤͊͗ͮ͝r̦̣͇̦̱̹ͨ͋͜d̞̺̘̪͕̯͎̹ͨ̓̄ͫͯͥ͊̂͡ͅi̢̖̍̊ͤͮ͑̈a̶̹ͫ̈̿́n̪̺̯̣̝ͮͬ̋ͨ ̡̰̍̉ͤ̊ͩ͡ẖ̴͚̼̯̖̈́ͤ̔͋ͬ̐̈͑́͠i͙͔̤̮̳̗̤̥ͯ̐̒̾̍ͯ̓̍̚v̛͉͎̫͆ę̤̳̮͈̟̪̰̰̿̆ͬ-̈́̈ 00:45:52 ̝̠̞͢m̶̷̯͎͑̚i̴̅͏̡̜̙̘̘n͗̌͗̅̅͛ͯ͋̃҉̸̡͉̜̼d̹͈̗̀ͦ̿ͣ͆̒ͣͨ͜͝ ̡̡̪̙̹̲͚͔̗͈̈̓́ŏ̶̥̣̬̘̯̟̼̺͉̅͗f̡̟͎̪̹ͬ̐͒͠ ̛̦͈̹̫͚͖̜ͯ̇͂͜c̴̥̬͚̣̹ͩ͌̔̅̚̕h̎̆͑͑̈͡͏͉̺̠̻̳͓̱͎a͂̄̊͋͐̍͊͗̕͡҉͍̪̣̹͚͚͇o̷̶͖͙͇̣͇̥͖̎͌͑͛͋̽ͦͤś̟̪ͦ͝.̯͎͈̞͗̄͆͗̾̏̈͑ͅ ̢̜̟̣ͯͯ̃͂̌ͩ͋Z̬̘͎͛̍ͣ͛ͣa̟͈̙͕͗ͦͨͪ͑̆l̛̘̤̤̼͍̏̑̉̀ğ́ͬ̅̆ͧ 00:45:57 ̪̫̖̌̊̀o̷̻̤̰̼͉̞͖͖ͩ̂͊ͩ̽̓ͭ̚̚.̧̹̪̉́͆̽͌̈́̒̂ ̷̵̭̲̳̲̝̱̞ͩͫ͗͊ͪ͂ 00:45:59 ̢̭̤̓̐ͯH̵̲̮̬̹̣͓̮ͩ̉ͦ͌̍ͦ̑̌̀̚̕e̼̼͓̞͌̿ͣ̀ͩ ̧͔̭̭̙̩̥͑̍̔̃͗ͮ̉ͪ͟w̶̓ͮ҉̳͕͇̲͔͓h̥̱͖̘͔͕̔̄̊̉̆͊ͤo͊͗҉̫̹̲̰͉̀ ̶̼̼͕̙̙̫̝͚̩͐͒̓ͤ́͒̂́Ŵ̤̄̎ͫ̐̆̑͞a̳̣̞̣̟͚̯͙̪ͣ͐͠i̡̿̈̽̍͗̐́ͭ͏̞́ť̡̗͕̼̰͙ͣ̽̈́ͧ́̑ś̩͖͔͉̘̥̋͂̏̑͐ͯ̆͜ ̵͂̋ͮͣ̊͡͏̘͇͔͕̞B̢͚̼̞̔̉̒̓ͧͯ͌ͯ͘̕e̊̓̓ͬ͂ͦ͒̈҉̶͉̣̠̳̦̖̘ḣ͉̭̖ͣ̈ͪͅi͗̋ͩ̚͏͞ 00:46:02 great. It *didn't* mess up my terminal 00:46:04 ͔́ņ̹̱͍ͥ̇d̜̻̹̹̿̈́̉̽͂ͩ̃ ̵͓͍͎͓̳̝ͬ̅͂̄́T̴̢͉͔̝̫͎̺̪̺ͧ̈́̋̄̎ͪͅḩ͖̝͕̰̳ͭ̾͐͞ͅe̯͙ͨ̋ͥ̎̆ͩ ̸̡̘̦̂̆̀̔̇́̕Ẁ̮͉͈̿ͤá̸̡̘͚̏͛ͥ̓͐̾̌ͪ͝ͅl̛͇̼̼ͯ̈͡ͅḻ̤̰̈ͫ̋ͩ.̲̙͔̫͓ͩ͋̎ͦ̈́ͥ̆̆̚͞ 00:46:05 and it won't 00:46:08 ̢̠͔̳̆̽͛̾͘Z̦̺̺͊ͥ̒̒̏ͫ͜ 00:46:10 ...wow, XChat failed at that 00:46:12 T̷̞̭̺̩͚̹̙̜͓̞ͭͧ̉ͩ̀ͤͥ̂͂ͨͫ̈ͨ̎̀͆ͨ̊̕o̶͉͔̮̺͙̳͈̰̙̞̝̖̜͕̗͇̣̭ͬ̐̀̈̽̽ͯ̆̔̇̉̕͡͝͝ ̵͎̜̩̹̻̲̜̪̉ͧ̔̓͂̀̈́ͣͤ͗̉͞i̴̢͇̻͍̘̦̜̦̩̜͓͎̗̠͊̉̈́̌͜ṋ͇͕͔̰̱̘̝̼͔͎̼͖͓͋ͬͪ̊́̀v̴̨͈̟͓̬̯̙͍̩̟̙̞̰͛̈́́̓͛͜͢ȍ͗͒͐ͥ̆͏̡͚͖̳̪̼͎͕k̡̛̖̥̭̬͚͙̟̫̰͔̦͖̲͕͖̟̥͈̘ͣ̈̄ͯ̌̌̓̏̈͆̇ͬͯ͊ͣ̋́̕eͭ̈́̀ͥ͂̏̽̈́̏̓̍̋ͤͮ̽̈́͌͐҉̷̛̣̭ 00:46:17 ̮̳̖ ̶̧̼͕̲̤̰͙̠̮͍̦̖̟̺̬̙̳͍̜̣̂̓͒̊ͮ̈́̉̃͑̽͡t̷̿ͧͦͨ҉̖̹̣͈̖̲̗͍͈̤ͅh̢ͮͭ͆ͯ̅̚҉̥̮̮̮͓̥̮͍e̷̡͍̼̲̞̣̘͓̻̠̻͖̩̤̹͔͒̊ͯ͘͟ͅ ̨̝̼͓̼̥̜̘͈̖̏̒́ͨ̑ͫ̌ͫ̿̐ͫ͊́́̒̉́͋̀͞ḩ̵̴̩̞̗͉̤̔̊̾iͭ͌͗ͮͥͤ̾ͭͪ͑ͮͣͨ̑̌̊ͫ͠҉̴҉͏̙̫̹̘͕v̦̠̰̝̱̱̄ͭ̀ͨ͋ͦ̃̂ͬ̊̈̂ͧͩ͐͌̚̕e̸̢̟̫̰͕̲̫ͩ͒ͬͨͫ̾͋̑̐͆̒ͬͮ̚̕-̗͉̱̳̣̥̣̏ͧͣ̿̕m̓̅̄̚ 00:46:22 ̿͐̔ͭͨ̿̓̉ͬ̚͏̷̸̣̭͉̦i̧̩͚̜̜͔̖̞̥̭̇ͪͣ̆ͬͫ̆̐̓̐͢͢n̔ͨ̇͐ͦ̃̉҉̷̠͎̳̝͍̲͚̙̟̬̤̟͉ͅd̐̉̄̾̀́͑ͮ͗̃͛̏ͩ͑̀̆̚҉͏͏̙̺͉͈͈̗͍̪̩̮͚̝̣͙͢͞ͅ ̸̮͓̰̱͎͇̙͔̖̙͓͔͇̙̾͆̊̅̍̄ͮ̿̅̃̃̚͜r̷̡͔̩͚̥̗ͩͮ̄ͨ̕ẽ͌͐͂ͮ̀͂̍ͮ̓́̎̈̊̒͗ͯ͏̴̫̰̙͇̳̙̫͍͈͈̦̙͖͘p̢ͯ̒̋̓ͩ̃ͥ̓̀ͯ̾͛̅ͬͨ̀҉̢̹̝̟̥̬͈̩̩͚͖̟ṛͧ͆̾̽̏ͫͣ͑̋ͤ͐͛ͫ̉̔̓͛̚͟͜ 00:46:23 elliott_, did it? 00:46:27 ̳̞̗̯̫̟̗̘̣̲̫͚̝ͅe̜͚͚̞̝͎͖̗̺͐ͫ͛̔ͯͧ̐͒͆̊̊ͫ̀͆̋̿ͧ́ͪ̀̕͜͜͞ş̲̦͉̪͔̪ͭ͛ͬ́̈́ͦ̐ͯ̍ͯͫͭ̋̕e͖̟̩̠͐ͫ͒̀̀̚n̽͒͊̆̀͏̰̩̗̜̫̖͚͉̣̤̯͉̻t̡͍͈̦͓͔̟̱̳̰̹̺͈̖̪̪͐ͮͣ̊͗̾̉ͣ͛ͧ̚ỉ͖̗̹̲̩̤̖̗̗̦̹̟̳͎̯͈͒̑̈́ͤ́̕n̴̷̘̞͓͚͔̼̳̣̘͋̃̎̋͐̾ͅͅg̢̧̢̨͖̣̱̙̖̫͔͕͐̉̑͐͆̔̃͊ͩ̋ͮ̈̐̏̋̀͊ͪ ̵̼͎̼̬͚̜͇̔̈͂͊ͦ̿̃́͠͡͡ͅcͬͦ̿͊ͥͬ 00:46:33 ̸̨̰̩̪͎͍̥̫͔̻͖͍̯͔̤̖̋́͝h̨̙̬͓͈̱͉͖͈̖̫͍̫͕̱̟̼̳̥͌̓͒ͬ̈́̂̇́͛̎͂̈̓͠͞å̴̢̭̘͕̖͔̳̪̠͑̃̒ͭͤ̇̀͝o̴̺̩̰͚͎͚̺͓̭̘͕̠̩̫͍̺ͨͯ̒ͩ̈͂̀͘͜s̈́͒̓͛̎͌ͨ҉̳͎̩̙̣̗̣͍͓̰̟͎̟̖͔.̶̨̧̣̺͙͓̂͑ͬ̏͂ͩͧͪͭ̋ͦͤ͞͡ 00:46:34 how did it fail? 00:46:36 ̷̥̖̙͓̊̂̏̈ͭ̌ͩͯ̔͛̿ͬ͟͠I̶̷͓̥͔̗̰̼̬̽̽̆̓̐ͭͤ̋̅̍ͥ̒͒̑ͬ͠ͅn̵̶̘̠̳̠͕̥͈̳͈͓̈́͆ͬ̂ͥ̄ͮͨ̆ͫ̎ͥ̎v̛͍̹̲̳̗̼͚̮̹͕̖̺̘̗̲̭̊̀̽͒ͩ͋̓͌͌̿̕ͅö̡̆ͭͭ͊̓̌̈́̿̄̑ͧͦ̎̐͑͑͏̨͙̰̞̭̠̰̹̼̣͍̭k̲̲̪̖̫̗̠͇̼̲̗̣̣̩̟̦ͭ̆̽̈́͐͒ͮ͐̉͑̅̿̎͝ͅi̡̲̦͕͈̗͙̞̜̦̯̽ͯͣ͒͝ñ̵̴̨͇̳̦̦̻̱͚ͫ͛̓̔͂ͯ̍͢͟g̷̴̸̘̱̠̼̫̙̘͕̳̝̥͖̰ͩ̓̿̄ͬ̚͜͠ ͧͨ 00:46:41 ̨̗͇̱̹̦̺̐͆ͥͭ́͢͝͠t̴̺̝̩̹̺̠͙̺̘̱̤̻͖͓̐͐̈́ͭ͟͠h̲̼̮̰̰̤̞̙̅̒ͯ̃ͤ̽̓́̊̎ͬ͒̇̄ͨ͂͘̕e̸͓̥̯͈̬̘̼̯͕̱̠̖ͪ̔̽͐̈̉͊̿͊̓́̾͛̿͆̇̓͑͟͞͡ ̸̫̥̯̺̺̫̬͓͇̯̼̩͗̓ͣ̉̐̀ͭ̐ͣ̾ͭͪ͆͆́̑̀͠f̸̢̹͈̯̘̖͑̐̈́̏ͤ̊͛͞͡ͅë̶̛̛͙̦̱̻̣͔̘͙̠̣̖̯͇̻͈̓ͩ̔ͭͣ͗̿͒ͯ̎̂̈́̀͠ė̷̠͔̗̜̮̥͖͈̮ͥ̀̉ͪͨͬͩͩ͊͂̈ͭ̐͊ͯ͘͘l̇ͭ̏͋͒͐͑̈́ͭͥ̎̅ͮ̚͟҉̢͠ 00:46:46 ͖̪̪͇̙͕̣̲̟̻̹̬͕̹̜̱̝͖ĭ̢̡͔͚̼̞͙̖̮̙̯͕̺̪͚̪͔̘̼͓̖̾̉̓ͬ̔ͤ̊̊͒̐̊ͪ̍̓̕͘͟ñ̻̬͓̯̙̪̥̭̞͇͉̯̹̬̘̱͓̏̌ͦ̊͒̓ͦ̈́͜͡g̶̼̥̗̻͓̟̩͚̱̺̗̼̰̈̓̒ͬͯ́́͠ ̧̛̦̺̫͔̥̲͇̪̈͛̌̑ͫ͆ͨͮ͛̆̒̚̚ȍ̧̖̺͎̤̘͈͎̫̱̩̆̽͑ͦͤ͌͌͡͡f̛̜̤̹̙̱̟̩̞̻̱ͣ͂̓̌͗̋ͬ̽ͤ̅̔̅͠ ̶̸̬̝̩̜̱̥̆ͤ͛ͧ̈̔ͩ̕͢͡c̷̵̢̯͉̦͚̘̳̹̘̭͙̦̈̃̊͐͋ͧ̉̾ͩ͊͆͆ͭͤͫ̀ 00:46:51 ̲̖̰͇̲̰̣̳hͥ̓̈̓ͭ̊͛̒̕͏͕̲̘̥̹̲̥̩̹̗͇̼ͅͅaͩ̍̈́̔͐ͥ̋͐̔̾ͩ͗ͮͣͫ̚̚͏̧̩̭̫͉̞͉̗́̕͝ő͎͉̤̈̅̓̆͐ͨ̎͗̽̉͋ͬͪͩ̂͡͝͞ͅs̮̣̮̤̺̘̣͍̱̤͕̠͓̼̗̦͌̔ͣͦͣ̓̊̑̑̏̋̆̿̀̕͜ͅ.̸̶̡̬̖̠̖̦͎̲͖͈͓̲̦͓̱̮͉̥̂̒ͦͩ͟ 00:46:55 ̡͙̳͙͍͓̞͚͖̤̘̯̭̮̹̥͉̊̐̏ͭ̐ͨͯ̿͘͡ͅW̵̨̡̯̮̜̰̩͎͇̠̮̖͚̗̯̬̞̦͓̒ͦ̑̈͑͗̑ͥͩͫͪͬ̋ͦ̂̔̀̚i̅͊ͣͫ̒̊̾́͊ͪ͐ͩ̌͒ͦ͂͏̰͔̞̮͉̹͔̲͖͉̩͎̤̟̳̫ͅt͆̓͐ͫͧ́̉̈́ͪ̋ͣ̄͑ͮ͗͒̓͏̧̛̪͇̳͟͡ͅ 00:46:59 ... 00:47:01 it is fail :( 00:47:03 stupid IRC length limit :P 00:47:05 Also XChat cutting off limit 00:47:26 elliott_: you seem to be spitting out line noise 00:47:37 calamari: that's just the zalgo. 00:47:48 calamari, actually biased noise 00:47:53 to unicode combining chars 00:49:12 elliott_, zalgo is part of zlib right? 00:49:19 the z algorithm obviously 00:49:23 ah.. you're right I can read it every few chars there's a real letter 00:50:59 Gregor: when you going to make websplat work on the wii... so I can have my computer back when my kids come over? 00:51:41 calamari, it seems to read as a message 00:51:43 calamari: When you buy me a Wii! 00:51:46 in lots of unicode combining 00:52:03 Gregor: is there some kind of debug mode? 00:52:20 to give you environment information or such 00:52:44 I assume it's failing due to the js engine sucking 00:52:46 calamari, doesn't your browser have a js console? 00:53:05 not that I could find 00:53:10 Vorpal: We're talking about the Wii. 00:53:20 Gregor, make it work in opera mini (note: I doubt this) 00:53:27 Gregor: Buy me a Wi 00:53:28 i 00:54:03 elliott_, verily 00:54:06 I guess I could go through the source and try to figure it out instead of complaining like a loser 00:54:41 how is wii wrt. homebrew? 00:54:45 specifically, linux 00:55:14 there's linux and a bunch of homebrew 00:55:34 ah 00:55:34 the media player is nice, well as nice as SD resolution will allow 00:55:52 calamari, SD? 00:55:55 480p 00:56:18 calamari, right... I prefer my 24" computer TFT for all purposes 00:56:31 (except for carrying, then I prefer a smaller 15" laptop) 00:56:54 OH GOD IT PLUGS INTO A TELEVISION IT'S USELESS 00:56:59 -_- 00:57:08 elliott_, yes, I have a TV from the 80s 00:57:15 That's sort of your problem 00:57:21 it lacks scart and so on 00:57:26 elliott_: calm yourself.. ssh server ;) 00:57:37 calamari: I was mocking Vorpal, not agreeing with him. 00:57:41 ah ok 00:58:48 it /is/ useless compared to a full PC. Except for getting money from buyers 00:59:04 Vorpal: You realise it's meant for playing games, yes? 00:59:18 elliott_, yes, so why not an advanced PC for it? 00:59:28 elliott_, see bsmntbombdood's computer for example 00:59:40 ? 00:59:40 Vorpal: I am punching you over the internet, and one day, you will be able to experience it. 00:59:44 Vorpal, because, and I know you have trouble with this, MOST PEOPLE ARE NOT YOU. 00:59:49 Vorpal: Because technology is worthless, today is not that day. 00:59:53 Vorpal: But one day, you will feel the punches. 00:59:55 Phantom_Hoover, that doesn't really answer it 01:00:03 THEY DO NOT WANT AN EXPENSIVE HIGH-END MACHINE TO PLAY GAMES. 01:00:13 btw cost of bsmntbombdood's machine: $1600 01:00:16 cost of Wii: like 3 cents? 01:00:23 THEY WANT A CHEAP, COMPACT GAMES CONSOLE WHICH WORKS WITH VERY LITTLE SETUP EFFORT. 01:00:32 elliott_, cost of wii games = high, very high 01:00:33 I got the Wii due to the games available for it 01:00:40 Phantom_Hoover, this makes no sense 01:00:45 Vorpal: Cost of PC games = high, very high 01:00:49 Vorpal, £40 for new releases, drops off later? 01:00:49 elliott_, yes true 01:00:58 Phantom_Hoover, more than minecraft 01:01:09 Vorpal, what. 01:01:11 Vorpal: PEOPLE PLAY GAMES THAT AREN'T MINECRAFT 01:01:20 elliott_, really? 01:01:26 elliott_, this sounds like a strange concept 01:01:29 I think most of the games I want to play are PC games 01:01:32 I am not punching you any more; I am using a knife, and it is stabbing you. 01:01:35 Sgeo, quite 01:01:36 also, hack your wii, download games for bittorrent.. games = $0 01:01:42 *from 01:01:44 calamari, hah 01:01:44 Vorpal, do please indicate a modern game that's less than £40. 01:01:48 A new one. 01:01:53 Vorpal: BTW, making stupid jokes doesn't distract anyone from the fact that you've lost the argument. 01:01:55 Like, just released. 01:01:57 Vorpal: used that to try a couple games before I bought them 01:02:00 Phantom_Hoover, minecraft. 01:02:04 Phantom_Hoover, minecraft. 01:02:04 Phantom_Hoover, minecraft. 01:02:05 Phantom_Hoover, minecraft. 01:02:07 Vorpal: FUCK OFF >_< 01:02:09 Vorpal, OTHER GAMES. 01:02:14 Phantom_Hoover, you didn't say 01:02:19 FROM A MAJOR GAMES STUDIO 01:02:22 Phantom_Hoover, but then I don't know. I don't follow that market 01:02:28 Vorpal, ...ugh. 01:02:32 Vorpal: And yet you believe yourself to be qualified to speak about these subjects. 01:02:40 elliott_, yes I believe they are too expensive 01:02:42 they are 01:02:42 Presumably because you have successfully lodged your head firmly up somewhere it's not meant to go. 01:02:50 THE FACT THAT GAMES ARE EXPENSIVE IS IRRELEVANT. 01:02:53 mental note: never mention the wii in this channel again 01:02:53 We are talking about *consoles*. 01:03:03 You are just so utterly, utterly thoughtless. In the literal sense that you put no thought whatsoever into what you say. 01:03:04 BTW: The Wii would still have to be sold if computers existed. As an IR receiver. 01:03:05 And a controller. 01:03:13 Those would be a big part of the cost of the Wii itself. 01:03:15 elliott_, if games were priced like minecraft you would get much less pirating 01:03:19 calamari: It's okay, it's just that Vorpal is a moron. 01:03:19 wait computers don't exist 01:03:24 We yell at him no matter what. 01:03:26 Vorpal, Jesus, you just have no idea. 01:03:26 sure you still get some 01:03:43 vorpal is right on one level 01:03:47 and wrong on so many ohters 01:03:48 Minecraft is not Half-life 2. 01:03:57 oh I agree.. the wii hardware is total crap 01:04:03 NO IT'S BETTER BECAUSE I DON'T LIKE FPSES, ERGO, I'M RIGHT 01:04:05 Q.E.D. 01:04:09 I didn't get it for that tho.. 01:04:47 although I have to admit being able to put linux on it did make it appealing lol 01:04:53 calamari, do you have WoG on Wii? 01:05:19 * Phantom_Hoover → AWAY FROM VORPAL'S IDIOCY 01:05:45 -!- Phantom_Hoover has quit (Remote host closed the connection). 01:05:59 elliott_, quite. I'm an moron for helping with the cube 01:06:05 I have no idea why I did in the first place 01:06:11 Sgeo: this? no http://www.amazon.com/Mario-Sonic-Olympic-Winter-Nintendo-Wii/dp/B001SIFNXW 01:06:22 calamari, I meant World of Goo 01:06:24 Vorpal: Everything is going to end up in you saying "WAAH CUBE" isn't it. 01:06:46 elliott_, I did not say that 01:06:49 Vorpal, does building stuff like that in MC require special intellect? 01:07:12 Sgeo: No. 01:07:18 Indeed. 01:07:19 The bits Vorpal is helping with are essentially drudge work. 01:07:19 very droll 01:07:44 elliott_, and getting coords, and so on. A lot of stuff you couldn't have done without getting lost 01:07:45 Hmm, when was the last time I was called a complete idiot? 01:08:15 Vorpal: I could have found the lake myself, it would have just taken longer. 01:08:55 so. you think I'm a complete idiot for thinking gaming consoles are stupid and pointless... right 01:09:03 shows you have strong feelings about them 01:09:06 What. 01:09:12 I don't even own any consoles, the last I bought was the GameCube. 01:09:12 Sgeo: hadn't heard of it.. I assume you like WoG? 01:09:18 I just think that your reasons are really, really, really stupid. 01:09:21 Which they are. 01:09:23 Vorpal, maybe they're pointless for you. Other people like Wii games 01:11:03 PS3 was nice 01:11:06 there's a Wii emulator.. how fast does it run on your fancy pc? 01:11:08 when you could run linux on it 01:11:22 calamari, I wish I had a fancy PC. never invested in one 01:11:40 well wish for this convo 01:11:43 * Sgeo wants a fancy PC 01:11:45 I do have the money 01:11:54 I just don't have the need 01:12:03 Vorpal, give me the money? ;) 01:12:06 so I spend it on other stuff 01:12:11 oh my bad, bsmntbombdood's pc 01:12:13 Sgeo, not going to happen :P 01:12:30 calamari, well he could do it. my current computers can't, but I could afford one that could 01:12:38 calamari: bsmntbombdood's is i7/SSD/12 GiB, so it should work fairly well :-P 01:12:42 but it's a lot cheaper to buy a wii. 01:12:50 Vorpal: also, unless you get the IR receiver and the wiimote it's... beyond pointless. 01:12:57 and that's like 60% of the cost of a Wii right there. 01:13:29 so the games shouldn't have been made for that platform really. Of course emulation is going to be slow 01:13:50 Wait... games shouldn't have been made for the Wii? 01:14:02 Because emulating the Wii system on PC is annoying? 01:14:07 Or am I misreading Vorpal 01:14:09 nope 01:14:11 you are misreading me 01:14:16 I'm glad they weren't made for pc because then I'd have to boot winblows to play them 01:14:20 +1 01:14:28 calamari, that is a fair point 01:14:33 you are misreading me 01:14:36 lol. 01:14:55 Vorpal: there's no real point to keep talking about this because (1) you've enumerated all of your "points", several times and (2) nobody agrees with them. 01:15:28 Vorpal said I was misreading him 01:15:28 elliott_, while /you/ have not given any real substantial reasons 01:15:32 Maybe he should clarify 01:15:36 only good reason I seen so far is that calamari made 01:16:04 Vorpal: yeah, except, i don't /feel/ like giving any reasons since you're the one spouting bullshit 01:16:11 Sgeo, of course emulation will be slower than native. For any platform, A Wii emulating a PC to play a PC game would be slow as well 01:16:12 I've /rebutted/ all your stupid reasons and that's enough. 01:16:14 that's not really a good reason... lol 01:16:40 Sgeo, so the "speed for emulating" question is a bit nonsense 01:16:51 i suggest we stop feeding him 01:17:16 I'm not trolling 01:17:32 No, elliott wants you to die 01:17:40 right 01:17:41 never said you were trolling. 01:17:44 but i do think we should stop feeding you 01:17:47 elliott has wanted me to die in the past, I'm sure 01:17:59 calamari, he wants everyone to die at some point 01:18:05 well everyone except himself 01:18:16 if he could have stabbed me with an icepick through the internet he would have (re: forkbomb article) 01:18:17 he is very emotional, easy to overreact and so on 01:18:17 he probably did 01:18:34 calamari, what article was that? 01:18:43 and I probably would have deserved it a little bit lol 01:18:55 calamari: i don't want anyone to die, but hey, in that case pikhq had just as much vitrol as me >:) 01:19:19 Vorpal: i don't really overreact so much as I'm always ready to start yelling at you because I find the requirement to come up astonishingly often. 01:19:32 elliott_, you do at other people too 01:19:37 it's like when you used to be able to set Mozilla to load at system startup to make it quicker when you start it 01:19:58 Vorpal: not really. I don't recall yelling at ais523 or olsner or Gregor or ... 01:20:11 elliott_, gregor and autoconf 01:20:14 elliott_, seriously? 01:20:17 you yelled at him 01:20:20 I didn't "yell", I disagreed. 01:20:31 Possibly with *bold marks*. 01:20:35 i don't recall you yelling at anyone. do you ever caps lock? 01:20:35 elliott_, ais523: only once iirc, and over a year ago 01:20:42 I'm an opinionated asshole, it's easy to get into it with me :) 01:20:46 quintopia, that is rare. But he doesn't yell that way 01:20:46 * Gregor is watching a Bit of Fry and Laurie. 01:20:51 Vorpal: The fact that you're *keeping track of who I yell at* suggests you're ... uh, crazy. 01:21:01 Gregor: love that shit. which one? 01:21:02 quintopia: I capslock exclusively for Vorpal, it is a privilege and honour reserved solely for ihm. 01:21:16 elliott_, wrong. You yelled at sgeo I think 01:21:17 ha 01:21:35 Yes, but I hold down shift at those junctures. 01:21:38 quintopia: First episode. 01:21:39 Since he usually shuts up pretty quickly. 01:26:21 I may have misplaced trust in elliott_ 01:26:27 What. 01:26:33 Trust in me is always golden. 01:26:39 I am like a shining pillar of perfection. 01:27:09 Sgeo: ? 01:27:38 Hmm, when was the last time I disagreed with elliott_? 01:27:47 All the time? 01:27:48 I may have misplaced trust in elliott_ 01:27:48 Why 01:28:07 elliott_, I take your opinions too seriously 01:28:29 Sgeo: Well, I *am* always right. 01:28:53 -!- zeotrope has quit (Ping timeout: 265 seconds). 01:29:58 elliott_, do you know what hubris is? 01:30:00 you overstate your positions sometimes, but you have a lot of rightness. occasionally you make matters of opinion out to be more black and white than they are and that is a bit irksome. 01:30:12 Vorpal: Something that doesn't apply to people who are already right. 01:30:15 quintopia, verily 01:30:18 quintopia: You see, the thing is that I'm always right. 01:30:31 (Note: I do not actually believe that I am always right.) 01:30:33 (Yes I do!) 01:30:36 (No I don't. etc.) 01:30:39 except when i am right and i disagree with you 01:30:41 (also split personality) 01:30:53 quintopia: then you're wrong 01:30:53 you might start to sway me into thinking i'm wrong 01:31:09 quintopia, don't let that happen 01:31:09 but then i realize i was wrong about being wrong and was actually right 01:31:15 it's good to know you are wrong sometimes 01:31:29 quintopia, are you right about that? 01:32:02 sometimes 01:32:09 good 01:32:15 quintopia: unfortunately, you're wrong, that never happens 01:32:19 i know this because i know it never happens 01:32:20 and i'm always right 01:32:38 anyone need instructions for making a cross compiler to RCX on modern linux? 01:32:49 I wrote a guide, surely /someone/ out there needs it 01:32:52 well, here's proof you're sometimes wrong...you are wrong about always being right 01:33:16 anyway http://sporksirc.net/~anmaster/lego/rcx-toolchain-guide/guide.html 01:33:17 Ugh, the smell of nitrogen is overpowering 01:33:41 obtw, True Grit is a p cool movie. i smell an oscar nomination for jeff bridges 01:33:52 isn't nitrogen odorless? 01:34:02 Sgeo, I'm pretty sure you can't smell nitrogen 01:34:11 * Sgeo was joking 01:34:19 well, here's proof you're sometimes wrong...you are wrong about always being right 01:34:20 wrong. 01:34:28 http://www.reddit.com/r/WTF/comments/esj6l/fire_officials_noticed_a_strong_odor_of_carbon/c1akw23 01:34:43 01:34:46 No it's not. It's HTML. 01:34:48 Although that commentor is a moron 01:34:52 But whatever 01:35:03 elliott_: hypertext markdown language 01:35:39 elliott_, the source of it is 01:35:45 elliott_, see same file .md 01:36:07 Vorpal: well it's a lie 01:36:09 ergo you are sometimes wrong 01:36:11 elliott_, I saw no way to make a comment in markdown :P 01:36:13 ergo i'm right 01:36:28 elliott_, I never claimed I was /always/ right. I just disputed you were always right 01:36:42 also I see another typo there 01:36:45 which I will fix 01:36:45 Vorpal: your Makefile is wrong 01:36:49 you don't define all and clean to be phony targets 01:36:55 so basically you're a failure right 01:37:08 elliott_, well all and clean are not required to be that 01:37:13 elliott_, if you create them: so what 01:37:21 that is not my issue 01:37:24 Vorpal: touch all; make 01:37:27 this will produce incorrect results 01:37:30 your makefile is WRONG. 01:37:37 elliott_, so will rm -f Makefile; make 01:37:43 elliott_, that produces wrong result too 01:37:55 Vorpal: but all is a perfectly valid filename and so is clean 01:37:56 * Sgeo gets slightly creeped out by Reddit Enhancement Suite being in View Source of a reddit page 01:38:02 your makefile doesn't say "BREAKS IF YOU MAKE ALL OR CLEAN" 01:38:14 elliott_, you are absurd 01:38:45 no elliott_ is quite correct 01:38:52 all and clean ought to be phony targets 01:38:56 coppro, yes but it is not of any importance really 01:39:06 elliott_, it also breaks if you >guide.md && > guide.html && make 01:39:08 it's one line 01:39:09 go do it 01:39:13 elliott_, this will not rebuild guide.html 01:39:25 coppro, now that ehird said it? No :P 01:39:33 Is Vorpal having an off day? 01:39:36 msut be 01:39:58 coppro, actually they are already phony locally 01:40:04 coppro, so I guess I just forgot to push 01:40:13 WELL THEN PUSH GODDAMMIT 01:40:20 coppro, sure. 01:40:35 coppro: AMEND 01:41:35 [on web browsers] 01:41:35 09:05:35 Sgeo: what you must do, of course, is write your own 01:41:36 09:06:23 Able to use WebKit, Gecko, or .. the IE one as necessary 01:41:36 09:06:32 Able to use extensions from any browser 01:41:36 09:06:50 Can use GreaseMonkey scripts designed for any browser 01:41:43 And why, my OS can run Windows, Linux, and BeOS binaries! 01:41:53 no it can't 01:41:58 coppro, refresh 01:42:02 coppro: it was a joke 01:42:08 Vorpal: I don't even know what you're talking about 01:42:29 coppro, since you complained about the makefile above, refresh 01:42:41 Would that be easier than the browser thing? 01:42:57 Sgeo, ........................................................................................................................................ 01:43:05 I think we should kill Sgeo. Also Vorpal. 01:43:18 09:11:35 Can I use IE6's Trident if IE>6 is installed? 01:43:19 09:12:11 So that businesses can use this browser in place of IE6 01:43:57 I'm sure you could, with a lot of pain. Such as a VM. 01:44:00 and invoke that 01:44:41 I miss cpressey. 01:45:06 If the kernel can be set up to invoke WINE, and WINE keeps improving, a system would run both Win32 and Linux executables easily 01:45:08 elliott_, yeah haven't seen him for a while 01:45:12 elliott_, I wonder where he is 01:45:20 Vorpal: he left because the channel was eating all his time. 01:45:23 he's still active on the wiki. 01:45:26 elliott_, ah okay 01:45:29 but i miss mocking you in /msg! 01:45:32 maybe i shouldn't have said that 01:45:42 elliott_, yes I know you are a complete turd. So what 01:45:53 Vorpal: so cpressey is a complete turd too? :) 01:46:16 elliott_, probably not. Only 45% or so 01:47:08 -!- zzo38 has joined. 01:47:26 hi 01:47:26 Why is voxelperfect.net expired? 01:47:38 Because the owner was LAAAAAAAAAAAAAAAAME 01:47:45 -!- quintopia has set topic: this channel is 45% turds on average | voxelperfect.net has expired, the wiki is still reachable at http://esolangs.org/wiki/Main_Page | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 01:48:01 I will correct the bookmark now. 01:48:16 who was the owner? 01:48:20 graue 01:48:29 I hope esolangs.org won't expire 01:48:31 -!- elliott_ has set topic: turds at http://esolangs.org/wiki/Main_Page | historical turds at http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 01:48:37 I thought graue owned esolangs.org? 01:48:45 Gregor: Ineded 01:48:46 *Indeed 01:48:56 I think voxelperfect only had esolangs on really 01:49:00 Well, I fixed the bookmark now. 01:49:17 Administrative Contact: 01:49:17 hrrm 01:49:17 Feeney, Scott another.step.away@gmail.com 01:49:19 Gregor: That's Graue. 01:49:21 elliott_: He ... owned both, and didn't tell us when one expired, even though all it had was esolangs? :P 01:49:24 esolangs is a better name anyway 01:49:33 Gregor, yes I'm scared 01:49:35 Gregor: It might have been an accidental slip; it was just the 27th. 01:49:39 Vorpal: He's edited the wiki recently. 01:49:43 And esolangs is registered until 2011. 01:49:44 elliott_, hm 01:49:51 elliott_, that is just a few days away! 01:49:52 possibly he got tired of paying for two 01:49:55 Gregor: It conceivably had non-esolangs stuff that just wasn't linked to 01:50:04 What. 01:50:07 esolangs.org isn't Graue's. 01:50:13 Registrant Name:Alan Dipert 01:50:13 Registrant Email:completelycrazy@aol.com 01:50:18 Guess we're OK then :P 01:50:20 who the heck is that 01:50:21 who dat? 01:50:22 Created On:24-May-2005 19:21:16 UTC 01:50:22 Last Updated On:03-Dec-2009 07:12:24 UTC 01:50:22 Expiration Date:24-May-2011 19:21:16 UTC 01:50:24 Uhhh 01:50:26 elliott_, who is alan dipert? 01:50:26 But who is that? 01:50:31 I have NO FUCKING CLUE :P 01:50:34 uh uh 01:50:39 http://alan.dipert.org/ 01:50:41 elliott_: Then maybe they could get a subdomain if we need to, for non-esolangs stuff? (Except possibly things in the wiki, such as DottyWeb and so on) 01:50:52 well at least we have an email 01:50:56 Google thinks one of his best works is https://github.com/alandipert/ncsa-mosaic 01:51:18 elliott_, dude how the heck did he get around the license problems of that 01:51:28 mosaic is /not/ foss 01:51:44 well the source has been available for N years. 01:51:59 yes but check https://github.com/alandipert/ncsa-mosaic/blob/1e53bc1a5fb778f0bbcf49364d5947e666f2fbbd/COPYRIGHT 01:52:16 * Licensee may make derivative works. However, if Licensee distributes * 01:52:17 * any derivative work based on or derived from the Software, then * 01:52:17 * Licensee will (1) notify NCSA regarding its distribution of the * 01:52:17 * derivative work, and (2) clearly notify users that such derivative * 01:52:17 * work is a modified version and not the original NCSA Mosaic * 01:52:17 * distributed by the UI. * 01:52:27 So basically all he had to do was email NCSA and change one line. 01:52:36 elliott_, hm 01:52:39 Vorpal: It's (almost) as FOSS as TeX. 01:52:48 TeX you have to change the name; this you have to change the name and tell them. 01:52:59 NCSA probably aren't going away ever. 01:53:00 hm fair enough 01:53:17 After NCSA stopped work on Mosaic, development of the NCSA Mosaic for the X Window System source code was continued by several independent groups. These independent development efforts include mMosaic (multicast Mosaic)[19] which ceased development in early 2004, and Mosaic-CK and VMS Mosaic which are both under active development as of July 2010. 01:53:31 multicast mosaic? 01:53:33 how... 01:53:35 http://www.w3.org/AudioVideo/9610_Workshop/paper05/paper05.html 01:54:05 wow 01:54:18 http://www.w3.org/AudioVideo/9610_Workshop/paper05/user-ex.gif UNIX! 01:54:37 I could not look at screens like that all day without vomiting :P 01:54:43 Actually with TeX it is a bit different: Files like plain.tex you have to just change the name; with tex.web you have to put changes in separate files (but can still call it TeX as long as it passes the TRIP test), but the algorithms in TeX are public domain, so I assume the copyright on tex.web is like a collection copyright. 01:54:58 elliott_, blame mosaic's fucking stupid X resources 01:55:01 zzo38: Fair enough. 01:55:07 Vorpal: The cyan background doesn't help 01:55:20 elliott_, true 01:55:24 (Of course, you are still not allowed to call any software derived from it "tex.web") 01:55:32 elliott_, but bold italic menus? 01:55:37 zzo38: Even if it passes TRIP? 01:55:39 elliott_, that's just utterly stupid 01:55:45 Vorpal: I don't /think/ that's default. 01:55:50 So someone, somewhere, decided to TURN IT INTO THAT. 01:55:50 elliott_, it is 01:55:52 Genius. 01:55:53 Vorpal: heh 01:56:06 This is why us typography nerds are important, guys. 01:56:12 If we'd been around then, we'd have bludgeoned the guy to death. 01:56:14 elliott_, was like one of the first things I changed when I got the thing to work 01:56:25 elliott_, yes and you would have been locked up 01:56:25 Why did you ever try and get Mosaic to work. 01:56:27 elliott_: Yes I think so. However if it doesn't pass TRIP, you are not allowed to call *executables* derived from it + change files "tex". If it does pass TRIP, you can call its executables "tex". 01:56:29 elliott_, yes and you would have been locked up 01:56:34 Vorpal: Worth it to avoid Mosaic, innit? 01:56:34 good typography is invisible, bad typography is everywhere 01:56:37 At least this is how understand it. 01:56:46 elliott_, worth it anyway! 01:56:54 That's what I said. 01:56:58 s/how /how I / 01:57:03 elliott_, oh right 01:57:20 elliott_, anyway, I tried mosaic because I was interested in computer history 01:57:29 elliott_, same as you tried PDP emulators 01:57:32 Do you think this is correct? (Knuth hasn't made it entirely clear; but I think this is the intention.) 01:58:01 Vorpal: Yeah, but history enthusiasts don't try and be a Jew in a realistic reenactment of the holocaust. 01:58:09 (That is, use of the name TeX is intended to be governed by trademark law, not copyright law.) 01:58:10 Vorpal: So why did you revisit an interface holocaust? 01:58:21 elliott_, yet they reenact the civil war and such 01:58:29 Vorpal: Yeah, but they don't use actual guns. 01:58:32 elliott_, I didn't know the interface 01:58:36 Using Mosaic is like shooting yourself repeatedly. 01:58:43 elliott_, I found out after 01:58:50 You ... didn't know? 01:58:53 How long ago was this? 01:58:57 elliott_, a few years 01:59:15 There are two things to look at: The copyright page of Computers & Typesetting Volume B, and the comment at the beginning of tex.web. 01:59:17 elliott_, like, weeks after I learnt C 01:59:31 http://www.kickstarter.com/projects/1319327833/clubcompy-kids-heart-computers/posts/46045 "Why Teach Programming with BASIC" ... I think I have another person I need to kill. 01:59:33 -!- wareya has quit (Read error: Connection reset by peer). 01:59:51 So I believe it is like a collection copyright. Do you think this is reasonable? 01:59:56 Or perhaps encourage him, and infect his curriculum with insanity; hopefully it will scare everyone subjected to it off from programming forever. 02:00:06 (Yes, that's better than having BASIC-weened programmers running around.) 02:00:09 zzo38: Sure. 02:00:18 -!- wareya has joined. 02:01:03 elliott_, anyway mosaic isn't that bad 02:01:06 elliott_, apart from the UI 02:01:09 and the actual code 02:01:13 it isn't that bad 02:01:20 which means only the idea is left 02:01:20 Vorpal: But Mosaic is a UI made out of code. 02:01:22 and that isn't bad 02:01:28 elliott_, yes but the non-UI code is also horrible 02:01:31 Um 02:01:32 The idea is WIMP, and I'd argue WIMP is pretty bad :P 02:01:49 Does the BASIC referred to have decent control structures? 02:01:54 Maybe they don't teach GOTO 02:02:12 Sgeo, what's wrong with 20 GOTO 10? 02:02:23 Vorpal: Teaching it to kids 02:02:42 Sgeo, ... did you think I was serious? 02:03:09 No comment. 02:03:14 XD 02:03:15 I wonder what makes Sgeo try and apologise for idiots. 02:03:59 nah, everyone knows you sshould teach programming with LOGO 02:04:20 I made a program once that allowed you to write GWBASIC programs without line numbers (something like WEB, actually; there were a few differences, one was that it printed to Epson control codes). 02:04:39 "Similarly, BASIC's relative lack of abstractions is an advantage to people who've never programmed before." or, you know, you could just choose a language that has those abstractions but doesn't force them 02:04:39 quintopia, I'm all for scheme. Though if you are targeting pre-high school that might not work out so well for the majority of the cases. 02:04:45 (Python comes to mind) 02:05:21 Sgeo: Python is a terrible first language to teach. 02:05:28 Or a second language -- or a third language -- or a language. 02:05:40 quite 02:06:02 The big issue that I see with it being a first language is that it's different from mainstream languages in the importance of indentation 02:06:07 elliott_, an imperative one might work better if you are trageting pre-highschool 02:06:12 People might rely on it too much 02:06:20 Vorpal: Not really. 02:06:28 Sgeo: ...shut up. 02:06:30 elliott_, not for you and me indeed 02:06:32 Sgeo: these are like 10 year olds. 02:06:35 Vorpal: Imperative seems intuitive only because we know it. 02:06:36 elliott_, /but/ for the majority of kids 02:06:39 Vorpal: Same with WIMP interfaces. 02:06:42 Vorpal: Same with filesystems. 02:06:53 I can guarantee you that none of these are actually intuitive the first time around. 02:07:22 elliott_, I think you are wrong, but I give you the benefit of doubt. imperative is like shouting commands. functional is like math. 02:07:50 Vorpal: Filesystems are like filing cabinets. Object space is like goop. Do you have any idea how much trouble my mother has with filesystems? 02:07:57 Yes, you can construct metaphors that seem just about right. That's irrelevant. 02:08:18 elliott_, like goop? eh 02:08:30 Vorpal: Yes, formless nothingness where you have to dig to find anything. 02:08:34 I make new computer, BASIC and Forth are both built-in to the system. (Others can be installed separately, or cross-compiled from other computers, or whatever.) And BASIC is not recommended for new programs, it is there for compatibility with old computers and old books. 02:08:39 Filesystems are not like filing cabinets. That you can construct a bad analogy does not mean that all analogies are bad 02:08:43 elliott_, hm. Are you sure that is a /good/ thing 02:09:00 elliott_, also I agree filesystems are bad 02:09:02 Vorpal: Of course not. 02:09:09 Vorpal: I was showing how metaphors can make filesystems look good. 02:09:14 This way makes sense? 02:09:15 They're intuitive - everyone knows how to use filing cabinets. 02:09:16 elliott_, but a file system is not the same as imperative programming 02:09:24 Vorpal: I'm DEMONSTRATING HOW METAPHORS ARE NOT A VALID METHOD OF ARGUMENTATION. 02:09:29 And yes, I used capslock. 02:09:30 elliott_, I agree they aren't 02:09:40 Imperative -- it's like shouting commands! No, that doesn't really work at all. 02:09:48 (And really, is asking for input a command you shout?) 02:09:51 (The link is very tenuous.) 02:09:59 elliott_, "WHAT DO YOU WANT?" 02:10:02 Imperative is a list of instructions. 02:10:07 There, why not that? 02:10:21 Vorpal: Anyway, even if imperative is "easier" to teach it's still a bad idea. 02:10:23 Sgeo: Yes that is better is more like how imperative is like. 02:10:30 elliott_, so it is 02:10:43 elliott_, A HOLLOW VOICE SHOUTS PLUGH (yes, yes, paraphrased) 02:10:45 I'd rather have less people be able to program than a bunch of people who have no idea how to program well. 02:11:05 elliott_, verily but try to get that past the radar 02:11:29 elliott_, it will be screams about elitism and segregation all over. 02:11:52 at least in Sweden 02:12:05 your politics might be different 02:12:09 Vorpal: Ha, you are so lucky to be able to complain about too *much* populism. 02:12:15 (For some value of populism.) 02:12:25 Vorpal: I think programming at pre-high-school level is more likely to get cries of "but that's *useless*!" here. 02:12:36 elliott_, well it would that too 02:13:08 elliott_, not sure this is populism actually. It is generally the Swedish education style. Dumb things down until almost everyone pass. 02:13:56 Vorpal: Yes, well, you see that everywhere because of STATISTICS, we need better STATISTICS, exam results will improve THIS MUCH in five years -- and they do because now they're easy. 02:14:01 elliott_, this is true up to university level. Then it changes /drastically/ 02:14:03 What I do is this my new make computer, even the manual includes information about how to use these built-in programming languages, and you are encouraged to learn it and write a program. But you do not have to write a program to use this computer; you could just insert the DVD and play the game. 02:14:04 Politics is fucked, what's new? 02:14:37 how zzo... 02:14:59 (and it doesn't change anything really) 02:15:11 (it is like pre-installing MSVC or something) 02:16:20 Going to watch Q-Less soon 02:17:37 Sgeo: It's a Q episode and it's not Enterprise. Prepare for suckage. 02:17:48 You meant TNG 02:17:49 ? 02:17:51 Er, yes. 02:17:57 *and it's not set on the Enterprise. 02:17:58 HAHA RETCON 02:18:16 Vorpal: I think it does change some things, the entire computer is very different. 02:18:16 I suppose it's still mandatory? 02:18:36 Sgeo: It's a Q episode and it's not Enterprise. Prepare for suckage. <-- I was wondering if it was star trek too 02:19:07 s/too// 02:19:25 <3 watching stuff on YouTube 02:19:48 (Such as, you do not have to learn any operating system, you can just put the DVD in and push START button if you want; but you can learn the operating system too (or even modify the operating system) if you want to.) 02:19:50 like what stuff? 02:19:57 Star Trek 02:20:38 Sgeo, split into 10 minute videos? 02:20:52 Probably. 02:20:56 Because BitTorrent is HARD. 02:21:12 elliott_, won't they get "aaargh remove this" stuff 02:21:12 My wikilog is 528MB 02:21:16 and thus not have them there 02:21:18 I'm surprised that it's not bigger than that. 02:21:21 Gregor, wikilog hm? 02:21:25 what does that do 02:21:32 I just heard a quote that I seem to remember has some relevance later 02:21:39 is it like irc logs which you can comment on, using a wiki? 02:21:50 Vorpal: ... no :P 02:21:59 Gregor, it should be! 02:22:06 Gregor, (but seriously, what is it?) 02:22:08 Vorpal: That ... is nonsense. 02:22:25 Vorpal: My backup of the wiki is stored in hg, so I have a log external to its own log. 02:22:36 Gregor, oh nice 02:22:47 Gregor, it is good to know someone has a backup of it 02:23:24 There are several. 02:24:04 Gregor, could be that graue lets shit hit the fan and so on 02:24:16 (vps/dedi/whatever going away or such) 02:25:32 I made in TeXnicard, a variation of Martin Pool's natural compare algorithm, but it does more things such as roman numerals compare, numbers with radix point, numbers with comma as thousands separator, and a few more. It is customizable at run time by the S table. 02:25:43 What is your opinion about this? 02:26:11 that's very sophisticated 02:26:20 you could probably use it elsewhere 02:26:52 -!- mycroftiv has joined. 02:27:16 I have put it in its own chapter. You could probably use it elsewhere and put a bibliography citation if you want to. 02:31:36 j-invariant: except it's in TeX :) 02:32:23 elliott_: Actually it is in C. 02:32:43 Oh, okay. 02:33:01 TeXnicard is not written entirely in TeX. 02:34:21 (It does create .tex and .mf and whatever as output files, and then TeX makes the .dvi file, and then TeXnicard will read the .dvi file again and then calls ImageMagick to create .png and so on.) 02:38:08 Is this a proper code in C, assuming both functions have the same return type and arguments? (fractional?compare_left:compare_right)(pa,pb) 02:42:10 zzo38: Probably not. 02:42:18 (*(fractional?compare_left:compare_right))(pa,pb) possibly. 02:44:17 -!- Wamanuz3 has quit (Ping timeout: 265 seconds). 02:44:43 zzo38, does it handle comma as decimal separator (Swedish use that) 02:44:44 elliott_: Actually it looks like it compiled without error. 02:44:54 -!- zeotrope has joined. 02:44:59 Vorpal: You can customize those things by modifying the S table. 02:45:29 zzo38: Plenty of invalid programs compile without error. 02:45:31 zzo38: What compiler? 02:45:41 elliott_: GNU C 02:45:54 zzo38: Try -std=c89 -Wall -pedantic. 02:45:59 elliott_, if both return function pointers 02:46:03 they it sounds valid 02:46:05 zzo38: That will probably tell you it's not valid C90. 02:46:09 but I won't promise you that 02:46:14 Vorpal: "(fractional?compare_left:compare_right)(pa,pb)" I am not sure this is valid. 02:46:22 I think you need to do (*f)() in such a complex expression. 02:46:30 elliott_, hm maybe 02:46:58 elliott_, who knows 02:47:24 elliott_, function pointer syntax is a bit whacky really 02:56:06 zzo38: did you get an error? 03:00:39 It also should be kept in mind that 'bastards' is often used in English as a generic derogatory term, not necessarily relating to the marital status of one's parents.[3] 03:04:59 "Then it makes even less sense, with no moving parts there isn't anything with a velocity. 03:04:59 A shutter requiring the energy of a nuclear bomb to work is much cooler to think about." 03:05:23 j-invariant: so have you built that infinite energy machine yet 03:06:10 I was thinking of using it to build a maxwell demon 03:06:29 but in that case it would have to know where it was, as well as where every air particle is 03:06:58 that's not really the kind of abstract information I was trying to exploit 03:09:33 j-invariant: i think the issue is this: fundamentally, infinite information != infinite energy 03:09:42 j-invariant: infinite information *generated according to physics* = infinite energy 03:09:49 but this box basically violates physics, you can't exploit any byproducts of it 03:10:32 lol 03:10:36 yeah I guess os 03:10:50 Information confuses me 03:15:49 -!- variable has quit (Read error: Operation timed out). 03:16:07 -!- variable has joined. 03:21:23 j-invariant: do you know what complexity class Coq is? 03:21:35 j-invariant: it's bigger than PR (has Ackermann) but smaller than R (obviously) 03:21:41 Wikipedia lists no classes in-between those two 03:22:13 alternatively what type of automaton it is 03:26:14 BARTYOUWANNASEEMYNEWCHAINSAWANDHOCKEYMASK 03:27:34 elliott_: might have to understand a normalization proof to get a handle on that - I have absolutely no idea 03:27:57 j-invariant: hehe yeah 03:30:44 coq guarantees halting 03:30:46 ? 03:30:57 yes 03:32:24 quintopia: yes. 03:32:29 quintopia: if it did not, it would be inconsistent. 03:32:51 _|_ is a proof of anything. also, you would have a _type_ that doesn't halt i.e. _|_ : Set and I have no fucking clue what that would mean 03:32:55 but it sounds very scary :-) 03:33:57 i don't see why it would be inconsistent? wouldn't it just be incomplete in a different way? (i have never used coq so i need more exposition) 03:35:02 quintopia: because _|_ would prove everything 03:35:04 proofs are values 03:35:15 if you know Haskell -- 03:35:19 you can initialise any value to undefined 03:35:27 thus, undefined is a value of every type 03:35:28 == 03:35:33 thus, undefined is a proof of every proposition 03:35:33 in Coq 03:36:11 huh 03:36:41 is it coq/haskell tradition to call bottom undefined? (i don't really know haskell either) 03:36:44 p : P means that p is a proof of P. If we can always reduce p to a normal form the we can make the following argument: 03:37:03 There is no proof of false because there is no normal form proof of false 03:37:21 is it coq/haskell tradition to call bottom undefined? (i don't really know haskell either) 03:37:22 haskell has 03:37:25 undefined = error "undefined" 03:37:31 but it's just haskell tradition 03:37:37 coq has no _|_-relevant traditions, as it has no _|_ :) 03:38:39 j-invariant: but being less than total recursive makes it impossible to guarantee p can always be reduced to a normal form and therefore the argument fails? 03:38:49 Coq has no _|_? 03:38:50 o.O 03:39:12 quintopia: what do you mean less than total recursive? 03:39:55 elliott_, does agda always guarantee termination as well? 03:39:58 < elliott_> j-invariant: it's bigger than PR (has Ackermann) but smaller than R (obviously) 03:40:20 PR? 03:40:24 which one is that now again 03:40:29 Vorpal: primitive recursive 03:40:32 every primitive recursive function is total 03:40:33 elliott_, oh right 03:40:36 and agda does, unless you tell it not to, in which case you can do whatever you want 03:40:42 elliott_, ah 03:40:43 (this is used an uncomfortably lot) 03:40:49 ouch 03:41:02 elliott_, it should really only be used to make a main loop or such 03:41:08 that is what I feel 03:41:11 'Solvable groups are sometimes called "soluble groups," a turn of phrase that is a source of possible amusement to chemists. ' <-- hear that chemists??? possible amusment! 03:41:15 Vorpal: you don't need that 03:41:18 http://mathworld.wolfram.com/SolvableGroup.html 03:41:19 elliott_, oh? 03:41:20 say if you have a codata IO monad :-) 03:41:20 j-invariant: my bad...i meant the name of the class of all computable functions 03:41:34 elliott_, ah 03:41:40 j-invariant: oh man i feel this possible amusement bubbling up in my gut 03:41:41 elliott_, it has that sort of stuff 03:41:43 or is that indigestion 03:41:47 elliott_, or does it? 03:41:48 Vorpal: well no agda doesn't :D 03:41:48 afaik 03:41:49 quintopia: all computable functions are total 03:41:52 elliott_, right 03:42:01 elliott_, does any language? 03:42:28 elliott_, I mean, any implemented one 03:42:36 Vorpal: no, but thankfully there are only like three languages like Coq and Agda. :) 03:42:39 it's just that you can't make a programming language that matches that exactly 03:42:44 j-invariant: yes you can 03:42:44 j-invariant: so is my statement correct about said class? is that the reason the proof fails? 03:42:48 elliott_, which is the third one? 03:42:50 j-invariant: http://esolangs.org/wiki/Brainfuck/w/index.php%3Ftitle%3DTalk:Brainfuck/index.php 03:42:56 http://damienkatz.net/2008/03/what_sucks_abou.html 03:42:59 Vorpal: Epigram? :p 03:43:02 elliott_, oh 03:43:04 elliott_, 1 or 2? 03:43:05 * Sgeo decides that the criticisms of if are braindead 03:43:09 I mean in a Turing machine 03:43:12 I get the reordering thing though 03:43:33 j-invariant: i'm just trolling :) 03:43:39 most languages step over the line, and you have a lot of programs which never halt. Coq and others don't cross the line but they try to get close to it 03:43:42 j-invariant: also you can if you acecpt the undefined behaviour of not halting when given an invalid program 03:43:44 *accept 03:43:48 elliott_: no it's a good point I shouldnt' make that assumption implicitly 03:44:08 well super-turing languages are pretty useless :p 03:44:22 and sub-turing languages requiring a super-turing machine to run with full error reporting triply so 03:44:27 "But it also means you can't distinguish easily at runtime between a string and a list, and especially between a string and a list of integers." 03:44:40 elliott_, actually super-turing languages are very useful. But not usable 03:44:43 typing [97,98] into erlang returns "ab" 03:44:43 :) 03:44:45 I can understand how Erlang's string stuff has problems... that's not really one of them 03:44:45 lol 03:45:02 not having a char type is pretty lame imo but whatever 03:45:04 elliott_, this is correct. It is the REPL trying to be "helpful" 03:45:12 elliott_: heheh we should get quad to do a blog post on that 03:45:18 Vorpal: It is not helpful if you have some data which happens to be all in ASCII range 03:45:22 Vorpal: if it does unicode, well, wow 03:45:29 suddenly everything prints as a string! 03:45:37 j-invariant: it's a more valid complaint than having to write a tiny type signature :-P 03:45:38 elliott_, I'm not sure what it does to random unicode. 03:45:39 * Vorpal tries 03:45:48 Vorpal: maybe a HEURISTIC 03:45:55 ((#\[) (let ((body (parse))) 03:45:55 (cons body (parse)))) 03:45:58 :( this makes my code uglier 03:45:59 1> [$ä]. 03:45:59 "ä" 03:45:59 2> [$¬]. 03:45:59 "¬" 03:46:01 WELLL 03:46:04 That's a REPL problem really 03:46:04 ¬ is latin-1 03:46:09 elliott_, oh fair enough 03:46:15 3> [$→]. 03:46:15 [8594] 03:46:18 lol. 03:46:31 Sgeo: it's a problem with the language not encoding rich enough information into values 03:46:58 elliott_, so the reply tries to be helpful. Also since erlang is dynamically typed there isn't that much point in adding a char type. 03:47:25 "Give me memory, or give me death!" 03:47:32 * Sgeo reads 03:47:33 sweet, r5rs doesn't even have command line argument facilities 03:47:36 Ok, THAT looks serious 03:47:44 elliott_, I bet r6rs has 03:47:57 Vorpal: yeah it also has an aborted fetus sitting on top of a throne pooping on people who like the language too much 03:48:03 (not really, but R6RS is of comparable horribleness) 03:48:06 right 03:48:12 note: i am sleepy 03:48:25 Sgeo: it's a problem with the language not encoding rich enough information into values <-- possibly, but dynamically strongly typed sounds... weird 03:48:38 The following top-level program obtains the first argument from the command line via the command-line procedure from the (rnrs programs (6)) library (see library chapter on “Command-line access and exit values”). It then opens the file using open-file-input-port (see library section on “)”, yielding a port, i.e. a connection to the file as a data source, and calls the get-bytes-all procedure t 03:48:38 o obtain the contents of the file as binary data. It then uses put-bytes to output the contents of the file to standard output: 03:48:39 indeed. 03:49:51 http://damienkatz.net/2008/03/what_sucks_abou.html <-- unidiomatic use of if. It is not like if of something like C 03:49:52 group theory is so fucking complicated 03:50:10 of course you need to handle all variants 03:50:18 this is by design 03:50:58 anyway it is the wrong way to do it in those examples 03:51:01 Vorpal: damien katz wrote couchdb FWIW. 03:51:08 elliott_, huh 03:51:12 Vorpal: so I _think_ he probably knows that ;) 03:51:21 elliott_, the first if example: should be case 03:51:34 the second one: function with two entry clauses 03:52:48 "Erlang string operations are just not as simple or easy as most languages with integrated string types." <-- actually they work fairly well in my experience 03:53:15 * Sgeo ponders falling in love with Erlang 03:53:44 elliott_, also he criticises it for single assignment. I rest my case on this point. 03:54:17 Vorpal: it looks like a bit of a rant. considering he created and maintains a _very_ popular, complex Erlang system. 03:54:34 I think the memory thing is possibly a valid thing, assuming he's telling the truth 03:54:41 "case should_foo(X) of 03:54:41 true -> foo(); 03:54:41 false -> ok 03:54:41 end" 03:54:43 Now that is stupid. 03:55:09 elliott_, well yes, but what would haskell do? 03:55:20 if should_foo x then foo else ok 03:55:20 Vorpal, Erlang isn't pure, Haskell is 03:55:29 single-assignment is stupid in an impure language 03:55:29 elliott_, you could use if for it yes 03:55:52 Sgeo: "Update: On OS X with the most recent Erlang VM (R12B-1, emulator version 5.6.1), I can no longer reproduce this problem. Yay!" 03:55:52 Vorpal: nope 03:56:00 Sgeo, erlang is pure if you stay away from IO and ETS basically (okay process dict too) 03:56:00 bar() -> 03:56:00 if 03:56:00 should_foo(X) -> % compile error on this line! 03:56:00 foo(); 03:56:00 true -> ok 03:56:01 end. 03:56:03 This limitation is due to Erlang's "when clause" pattern matching engine, which needs certain guarantees from the expressions for static optimization. Erlang allows a subset of the built-in functions (BIFs) in conditional expressions, but no user defined functions can be called whatsoever. 03:56:07 Vorpal: from the article 03:56:09 elliott_, awesome 03:56:21 if should_foo x then foo else ok <-- that's haskell for it? 03:56:26 then it is about as bad 03:56:30 not quite 03:56:32 but similar 03:56:34 Vorpal: it doesn't mention True and False for no reason. 03:56:45 Vorpal: anyway Erlang should at /least/ have realif 03:56:46 elliott_, fair enough 03:56:50 if its "if" statement is so useless :p 03:56:59 elliott_, realif? 03:57:13 real if 03:57:18 I would agree that records have annoying syntax however 03:57:18 one that accepts _any_ condition 03:57:26 elliott_, it does 03:57:32 bar() -> 03:57:32 if 03:57:32 should_foo(X) -> % compile error on this line! 03:57:32 foo(); 03:57:32 true -> ok 03:57:32 elliott_, you can add any number of clauses? 03:57:33 elliott_, where can user-derived functions be used in tests? 03:57:33 end. 03:57:35 This limitation is due to Erlang's "when clause" pattern matching engine, which needs certain guarantees from the expressions for static optimization. Erlang allows a subset of the built-in functions (BIFs) in conditional expressions, but no user defined functions can be called whatsoever. 03:57:39 Clearly not. 03:57:41 bar() -> 03:57:43 if 03:57:45 should_foo(X) -> % compile error on this line! 03:57:47 foo(); 03:57:49 elliott_, yes that is an issue 03:57:49 true -> ok 03:57:51 end. 03:57:51 elliott_, a large issue 03:57:53 This limitation is due to Erlang's "when clause" pattern matching engine, which needs certain guarantees from the expressions for static optimization. Erlang allows a subset of the built-in functions (BIFs) in conditional expressions, but no user defined functions can be called whatsoever. 03:57:57 Vorpal: ^ 03:57:57 elliott_, that iirc is working on being fixed 03:57:59 That is not real if. 03:58:00 elliott_, already partly fixed 03:58:03 elliott_, right 03:58:06 Nice language revision. 03:58:12 Isn't it meant to be stable? 03:58:23 elliott_, it won't break anything existing to add this 03:58:24 What, exactly, do large Erlang programs do currently? 03:58:34 Sgeo has a knack of asking terrible questions 03:58:36 elliott_, it will let more code compile, it won't let less code compile 03:58:38 *knack for 03:58:49 elliott_, yes I'm trying to figure out what the hell he meant 03:59:02 Vorpal: I think he means to combat the IMPOSSIBLE PROBLEM OF "IF". 03:59:09 oh 03:59:18 elliott_, I never found it a problem in practise 03:59:42 "Update: On OS X with the most recent Erlang VM (R12B-1, emulator version 5.6.1), I can no longer reproduce this problem. Yay!" right this is old 03:59:47 R12B-1 ? 03:59:48 http://catseye.tc/projects/wumpus/src/wumpus.erl THIS IS THE MOST ENTERPRISEY WUMPUS GAME EVER. 03:59:49 very old 03:59:54 Vorpal: the post was posted 2008. 03:59:55 as you can see. 04:00:00 elliott_, even then it was somewhat old 04:00:10 Vorpal: no, it was the most recent. 04:00:12 obviously. 04:00:13 as he says. 04:00:17 * elliott_ does not want to live in a world where 2008 is somewhat old, incidentally. 04:00:17 elliott_, erlang got unicode after R12B. It has lots of new stuff since then 04:00:24 http://catseye.tc/projects/wumpus/src/wumpus.erl THIS IS THE MOST ENTERPRISEY WUMPUS GAME EVER. 04:00:29 behold the enterprisey 04:00:32 * elliott_ does not want to live in a world where 2008 is somewhat old, incidentally. <-- eh? 04:00:38 elliott_, wow 04:00:48 yes, I think I don't like cpressey any more 04:00:53 it's ... perverse 04:01:15 elliott_, I wouldn't use a record when you have like 4 members 04:01:20 I would just use a tuple 04:01:28 Vorpal: Should data structures ever have more than four members? 04:01:45 elliott_, well, sometimes that might be the best option 04:01:51 Vorpal: (Apart from boring enterprisey database stuff (like table of personal information).) 04:02:00 elliott_, what about a bf compiler 04:02:12 Admittedly, that wumpus code has a nice antipattern: passing around a gigantic world state and returning new versions of it. 04:02:21 It's really stupid because ... it's imperative, you just hide it behind a lot of mess. 04:02:31 elliott_, heh 04:02:43 elliott_, no it doesn't 04:02:47 elliott_, digraph.... 04:02:53 Vorpal: ? 04:02:53 digraph uses ETS 04:02:58 %% The state of almost the entire game is encapsulated into one record, 04:02:58 %% so it can more easily be passed between functions. 04:02:58 -record(game, 04:02:58 { 04:02:58 map, % a digraph representing the cave system 04:02:59 location, % a vertex representing the player's current location 04:02:59 (no idea why) 04:03:00 arrows, % an integer representing the number of arrows left 04:03:02 nasty % a list of hazard records representing the nasties 04:03:04 }). 04:03:06 elliott_, digraph uses ETS! 04:03:13 Shaddap. 04:03:16 elliott_, it is impure 04:03:38 "Parts of this program were derived from the Erlang example program bf.erl." 04:03:41 Now that's some example program. 04:04:08 elliott_, that game records will look like this tuple: {game,,'strange$atom$whatever',42,[a,list,of,some,sort]} 04:04:12 record* 04:04:40 Heh. 04:04:53 elliott_, I don't remember what an ets table reference looks like 04:04:59 elliott_, probably /not/ 04:05:20 elliott_, could be an atom, could be something else 04:06:10 I recently made a variant of Wumpus game, some of the differences are: that you do not always know exactly where you are, that the game is scored, that there is a time limit, etc... 04:06:35 the zzo edition of the world would be a strange place 04:06:46 0mg cPR£ESSY!!!! http://catseye.tc/projects/openflax/openflax_core/doc/design/api.html itz 1nvalid 04:06:57 Maybe I'll stay away from Erlang 04:07:10 Sgeo, erlang is decent. But it isn't perfect. 04:07:18 that sums it up pretty well I think. 04:07:38 elliott_, probably wrong mime type 04:07:48 Vorpal: yeah he needs to set it as text/html ... or de-xhtml everything :) 04:08:21 elliott_, or add those quotes. works too 04:08:29 Vorpal: Not if it has other errors :P 04:08:44 elliott_, well he could fix those as well 04:09:11 elliott_, probably easier than reconfiguring web server 04:09:18 It is part of the CGA Collection, which can be downloaded at: http://zzo38computer.cjb.net/GAMES/cgacoll.zip 04:09:18 Vorpal: He already has an .htaccess of overrides. 04:09:28 elliott_, oh? 04:09:36 elliott_, apache is shit 04:09:38 When pikhq bugged him into fixing the types. 04:09:46 Vorpal: Pretty sure he uses a shared host. 04:09:51 ah 04:10:11 Did you try the CGA Collection games? 04:10:20 No. 04:11:01 It has 27 games. 04:11:18 okay and? 04:12:15 -!- poiuy_qwert has joined. 04:12:44 Maybe you can try one or more of them. 04:12:56 zzo38, works under linux as is? 04:13:17 Vorpal: No, they are all DOS programs. But maybe you can run them in a DOS emulator they should work. 04:13:26 zzo38, too lazy to even consider it 04:13:44 zzo38: what port is your irc server 04:13:47 (Or, recompile them for Linux; although doing so probably requires modifying the programs) 04:13:51 elliott_: Port 194 04:14:17 (Maybe I should specify it in my userpage?) 04:14:34 yeah no one uses it, though it is allocated 04:14:49 zzo38: Incorrect! zzo38 uses it! 04:15:07 * cthulhu :Summoning user to IRC 04:15:07 * summon :Unable to SUMMON at this time 04:15:12 zzo38: What is it meant to do. 04:15:55 elliott_: You cannot summon too often. 04:15:58 elliott_, presumably SUMMON from original RFC 04:16:30 (I made it so after SUMMON is used, it sets a timer and you cannot summon anymore until the timer is expired) 04:16:43 You can use the HELP SUMMON command for help, too. 04:17:29 "The only solution we've found is to create a parent watchdog process to monitor the VM and restart it if it crashes." <-- erlang includes this 04:17:49 and iirc the bug that it was killed too was fixed 04:19:30 zzo38: How was SUMMON CTHULHU broken? 04:21:17 "Anything in Erlang using a GUI, like the debugger or process monitor, is hideous on Windows and pretty much unusable on OS X." <-- aka Tk. 04:21:34 (been fixed since in many cases) 04:22:57 (still I can live with tk, some people can't( 04:22:57 Vorpal: No 04:23:01 the VM /itself/ was failing 04:23:04 s/(/)/ 04:23:08 coppro, on os x? 04:23:09 the /entire VM/ needed to be restarted 04:23:14 coppro, yes I know 04:23:22 coppro, thus the heart process 04:23:29 which has been fixed since 04:23:57 ok, fixed since, but you made it sound like it was never the case 04:24:04 coppro, no I didn't 04:24:13 "The only solution we've found is to create a parent watchdog process to monitor the VM and restart it if it crashes." <-- erlang includes this and iirc the bug that it was killed too was fixed 04:24:23 coppro, how was this not clear 04:25:55 .. 04:36:54 -!- zzo38 has quit (Remote host closed the connection). 04:48:22 -!- zzo38 has joined. 04:49:22 I fixed it. 04:50:11 But I broke it. 04:50:30 elliott_: You did? Then *you* fix it this time. 04:50:39 Oh no 04:53:40 Now it should automatically do FLUSH when doing PART or QUIT 05:01:38 Latest xkcd was meh 05:02:45 It seems Martin Pool's natural compare algorithm is no book or journal, how can I cite it in the bibliography, then? 05:07:03 zzo38: http://sourcefrog.net/projects/natsort/ presumably 05:07:49 elliott_: I looked at that URL, I can see no information about citations there. 05:08:00 zzo38: Cite it as http://sourcefrog.net/projects/natsort/. 05:08:05 Martin Pool, Natural Order String Comparison; http://sourcefrog.net/projects/natsort/. 05:08:07 Or whatever. 05:10:13 OK I did like that. 05:11:12 Actually I made it slightly different to match the style of the citation for the random number algorithm. 05:12:46 But the other one has a date it says "Marsaglia (July 2003)" should this one have a date too? 05:14:17 Or is there no date? 05:17:15 zzo38: There is probably a date, but it doesn't mention one, so who knows. 05:19:34 I will just omit the date for now. 05:22:00 -!- elliott_ has quit (Quit: Leaving). 05:24:51 http://www.youtube.com/watch?v=QyvJI2nch24 05:31:14 My Cryptography & Computer Security professor: " When you speak of me, speak well." 05:37:48 I have located the location of the music box 05:39:05 -!- zzo38 has quit (Remote host closed the connection). 05:41:35 Q: What's hot, chunky, and acts on a polygon? A: Dihedral soup. 05:41:44 http://mathworld.wolfram.com/DihedralGroup.html 05:41:59 "Renteln and Dundes (2005) give the following (bad) mathematical joke about the dihedral group" 05:45:04 Unless someone tells me what's so bad about Racket other than not being Scheme-like enough when it was called PLT Scheme, I am going to try it 05:45:46 Sgeo: the only bad thing about racket is the stupid name 05:46:34 IMO, the only stupid names are ungoogleable 05:47:18 Fuck you, factor newspeak j c 05:47:26 heh 05:49:31 I've heard good things about Racket's module system 05:51:41 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep). 06:22:46 I think I like Racket 06:22:57 Although so far haven't seen anything that's Racket-specific 06:23:01 lol 06:23:11 Well, some stuff, but it's trivial and not too relevant to me liking it 06:24:15 w/in 48 06:24:25 the macro debugger is great 06:24:27 Sgeo: try that out 06:24:53 coppro, hm? 06:31:12 The Racket's guide's length example isn't tail recursive 06:31:26 They know *shrug* 06:35:24 that's odd 06:36:12 j-invariant, hmm? 06:36:26 They have an example afterwards making a tail-recursive version 06:36:27 -!- sebbu2 has joined. 06:38:32 -!- sebbu has quit (Ping timeout: 240 seconds). 06:41:14 o.O at Racket's infix convention 06:44:20 -!- zeotrope has quit (Ping timeout: 264 seconds). 06:46:33 "The number categories integer, rational, real (always rational), and complex are defined in the usual way" 06:46:36 Uhhhhh 06:48:16 is there a known diagonal c/2 fuse in GoL? 06:54:35 oh, it seems there is...a very simple one too 06:59:32 (if (void) #t #f) 06:59:49 I should probably install Racket at some point 07:01:37 I don't like the different types of hashes, tbh 07:17:30 > (rational? (sin 1/2)) 07:17:30 #t 07:17:31 > (sin 1/2) 07:17:31 0.479425538604203 07:17:31 > (exact? (sin 1/2)) 07:17:31 #f 07:17:43 Genius! 07:17:53 is that sarcasm? 07:18:03 Yes, it is 07:38:26 Quadrescence: WOW "This statement is out and out slander; it is frankly sick." 07:40:29 Hm? 07:46:47 -!- calamari has quit (Quit: Leaving). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:03:08 (struct dot (x y) #:mutable) 08:03:09 Grr 08:03:25 Syntactic forms are allowed to do that with keywords, but regular functions aren't? 08:20:44 -!- Mathnerd314 has quit (Ping timeout: 260 seconds). 08:29:15 Hmm 08:29:23 What if I want to use alternate PLaneTs? 08:43:12 -!- a1234567890 has joined. 08:46:10 -!- bsmntbombdood has quit (Quit: Leaving). 08:46:20 -!- bsmntbombdood has joined. 08:49:42 hmm, no elliott-variant here today? 08:50:32 anyway, I recently discovered that pretty much every clever idea I had about my kernel/user interface already exists in L4 08:50:52 I wonder if this means I'll be making an L4 clone, because that'd be a bit boring 08:55:07 Isn't it something like 08:30am in elliott-land? I think he's usually here later in the day. 08:56:55 Well, maybe more 09am, but still. 08:58:32 right... but why log out of irc, he should just use it as a messaging service while away 09:07:34 maybe he switches off his computer 09:11:35 j-invariant: that's just absurd! 09:37:23 -!- oerjan has joined. 09:39:27 IS NO ABSURD AT ALL 09:41:49 Heh... 3G IMS (IP Multimedia System) is IPv6-only. 09:42:55 * Sgeo o.Os at Racklog 09:43:48 I think Racket's goal is to consume all possible uses for any languages into itself. 09:44:07 It has a LaTeX substitute, a Prolog substitute 09:46:24 Was about to comment on Factor's presentation stuff, but Racket has that too 10:04:37 -!- MigoMipo has joined. 10:10:32 -!- ais523 has joined. 10:12:31 hmm, an unusual side effect of a) being ill, and b) sleeping all day and waking all night 10:12:44 is that you end up picking an incredibly dark theme for your operating system 10:12:53 also, the 'a' key on my keyboard has become unreliable, which is really annoying 10:13:31 but I think that's unrelated 10:19:42 -!- zzo38 has joined. 10:19:50 wow, I just got my first spam ever on my callforjudgement email account 10:20:05 and it is completely full of apparently deliberate typos 10:20:21 to the extent that they've embedded alphanumeric line noise in the middle of about half the words 10:20:33 ais523: Can you add spellcheck to the spam checking program? 10:21:00 for a representative line, the spam is apparently from "Danial@kdelbhljaakgltdgkfleh.{SPF_D1}" 10:21:07 -!- oerjan has quit (Quit: leaving). 10:21:14 zzo38: hmm, I fear it would cause too many false positives 10:21:36 Why do spammers do that, exactly? 10:21:46 to get round spam filters 10:21:56 I used to use email a long time ago. So, I think any message with tabs in the subject line is probably spam message. 10:21:56 it seems that they no longer care if anyone actually reads the spam 10:22:20 (likely, it's subcontracted; someone pays someone else to make sure spam is delivered, that person holds up the letter of the agreement) 10:23:01 ais523: Maybe that is how it works. 10:23:09 hmm, this theme really shows up what a) has a hardcoded foreground /and/ background, b) hardcodes exactly one of the two 10:23:14 white on white ftw 10:24:18 But now days if someone tries to send me spam message they will probably get error due to unreachable SMTP server. 10:24:40 elliott for the logs: Brainfuck/w/index.php?title=Talk:Brainfuck/index.php is completely obviously a finite state machine 10:24:47 all defined programs halt, thus only use a finite amount of memory 10:24:54 and you can just run them to see how much they use 10:26:35 I guess that if you do not care about errors, any valid Brainfuck/w/index.php?title=Talk:Brainfuck/index.php program can run in a normal brainfuck interpreter. 10:28:19 indeed 10:28:40 also, I think elliott's trying to stop spambots editing the wiki by creating a legitimate page at every title they try to create 10:28:50 -!- Phantom_Hoover has joined. 10:29:09 Some services require my email address to register, so in that case I can start the SMTP server and then when the message is received, I can stop the SMTP server. If they try to send spam message to me later, they will be unable to connect to the SMTP server to send a message!! 10:29:32 zzo38: but what if the ywant to send you useful information about your account? 10:30:30 j-invariant: They can't. I don't want them to. If I need to know something about my account I will log in and see what happened. 10:31:12 ok 10:31:31 this is annoying my program is taking too long to compile 10:31:49 it seems to be taking a massive effort to complie this single line of code 10:32:25 What program is that? 10:32:53 it's just a definition that says given functions x -> a and x -> b we have x -> a*b 10:33:08 it isn't written in (oklopol's) Clue, is it? 10:33:36 (note, there are two esolangs called Clue, it's about time the wiki had a disambiguation page, but I don't think they're both up yet) 10:33:49 no 10:35:40 Do you like to see natural sort algorithm (and the other algorithms)? See it at: http://sprunge.us/KiaC 10:38:32 how long have you worked on this code? 10:39:50 -!- cheater99 has quit (Ping timeout: 240 seconds). 10:44:36 I don't remember how long, but I do remember I have started some time this month (I don't remember what day though). 10:47:50 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds). 10:52:11 ais523: I cannot find oklopol's Clue? 10:53:02 -!- cheater99 has joined. 10:56:46 zzo38: it isn't on the wiki 10:56:49 it was discussed in-channel a bit 10:57:04 but basically, you give a bunch of input/output pairs and the interp bruteforces the actual program 10:57:29 most of the interesting construction in the language is designing it so that that actually works in a plausible timeframe, and so that you always get the right program 10:57:37 which is done by giving clues, thus the name of the language 10:59:54 ais523: Maybe it should be added into the wiki 11:01:15 -!- Phantom_Hoover has joined. 11:28:45 morning 11:28:48 hi ais523 11:39:20 Is the halting-problem always solvable of sub-Turing, if you have a Turing machine to solve it? 11:40:26 Vorpal, if elliott joins and I'm not around, give him a clip on the ear from me. 11:40:30 What computational classes is halting problem always solvable for? 11:40:55 zzo38: lots of languages where every program terminates - that's one class its' decidible for 11:41:00 decidable* 11:41:07 He (or I assume it was he) left some TNT next to the door at Mt. Hoover. 11:41:13 The door with a pressure plate. 11:41:31 Fortunately, the explosion didn't actually punch through the mountain. 11:42:39 zzo38: I think there should be sub-Turing languages for which the halting problem is undedicable but I couldn't think of one yet 11:43:50 It's decidable for FSAs, isn't it? 11:45:40 If a language has finite memory you can solve the halting problem by checking if it enters the same state twice 11:46:19 Corollary: the halting problem is decidable for C. 11:57:09 zzo38: I can't figure out an answer to that but very interesting question I hope someone knows 11:58:03 it does seem like every language for which the halting problem is undecidable is turing equivalent though - I retract my guess from earler 12:00:56 you can cheat the question (like having a language whose programs are mathematical propositions, if true they compute 1 if false they diverge -- so this language only computes the set {1} but it's halting problem is undecidable) but that's not a good answer 12:12:05 Is it possible to program a halting problem into a string of Typographical Number Theory? 12:13:39 -!- dbc has joined. 12:21:55 I don't understand "Typographical Number Theory? 12:21:58 I don't understand "Typographical Number Theory" 12:22:11 it's like you take Peano Arithmetic and ... call it something else? 12:24:03 zzo38: The set of positive values of 2y^4x + y^3x^2 - 2y^2x^3 - y^5 - yx^4 + 2y for positive integer inputs are exactly the fibonacci numbers 12:24:41 zzo38: using more complicated polynomials (higher degree and more than 20 variables) you can encode any turing machines in this way 12:25:46 Seriously? 12:26:19 Phantom_Hoover: yeah it's Hilberts 10th, solved by Matiyasevic and Robinson and others 12:26:29 ("solved" negatively) 12:26:31 Cool. 12:39:16 -!- zzo38 has quit (Remote host closed the connection). 12:40:43 * Phantom_Hoover laughs at some code. 12:41:00 http://programming-puzzler.blogspot.com/2010/08/racket-vs-clojure.html 12:41:11 I don't know enough about Racket to comment on those criticisms 12:41:24 It's meant to populate Oolite with an ultra-rare type of ship; the probability seems to have been intended to be 0.02. 12:42:10 But it does so 30 times, so the probability of seeing it is nearly 0.5. 12:51:29 Hey, one of the people on the Oolite board is from Hexham. I should tell elliott. 12:55:16 http://www.mywot.com/en/scorecard/steam.com 12:55:21 Geniuses, the lot of them 13:07:42 -!- MigoMipo has quit (Read error: Connection reset by peer). 13:09:37 Sgeo, zuh? 13:10:03 They're acting as thought steam.com is trying to steal Steam passwords 13:13:25 Oh, right. 13:43:02 This episode of DS9 features: Braindead computer security, and medical pseudoscience 13:43:19 "Humanoids only use a small portion of their brain" 13:55:51 God I hate that statement. 13:56:11 It's so obviously false for so many reasons. 14:00:49 Vorpal, if elliott joins and I'm not around, give him a clip on the ear from me. <-- sure, one paper clip pushed through the ear (I hope you planned to get earrings anyway!) 14:00:57 ;) 14:02:30 -!- Sasha has quit (Ping timeout: 240 seconds). 14:03:41 -!- Sasha has joined. 14:07:27 SG-1's treatment of this plot idea was better 14:09:33 -!- Wamanuz3 has joined. 14:13:50 Although SG-1 also pulls the same "We only use a small portion of our brains" bullshit 14:28:47 -!- poiuy_qwert has joined. 14:33:05 -!- Mathnerd314 has joined. 14:39:49 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep). 14:47:26 -!- j-invariant has quit (Quit: leaving). 14:49:08 Sgeo: what plot idea? 14:49:33 oh, with the ancients' learning machines 15:02:32 -!- poiuy_qwert has joined. 15:05:19 Huh? 15:08:53 -!- oerjan has joined. 15:16:55 Phantom_Hoover: What makes it /obviously/ false? 15:17:40 Deewiant, hi there. been on mc recently? 15:17:52 Nah 15:17:57 Deewiant, someone (we haven't found out how) was careless in the TNT room 15:18:08 Yes, I saw your messages about it earlier (yesterday?) 15:18:10 Deewiant, me and ehird helped rebuild things. 15:18:20 Deewiant, a few days ago. Yesterday we were working on the cube 15:18:33 Right, it was the day before 15:18:59 Deewiant, took a few days to repair it, so I would say at least 4 days ago (point of discovery) 15:19:17 2010-12-27 04:56:04#esoteric: ( Vorpal) Deewiant, your wonders of the world looks blown up 15:19:28 hm 15:19:31 oh right 15:19:34 middle of night 15:19:43 I meant in "number of times I slept"-days 15:19:46 I'd call that "early morning" already ;-) 15:20:03 But yeah, 3 sleep-times ago 15:20:12 Deewiant, or such 15:20:45 Deewiant, anyway, we did not add back the TNT, and some signs in the cactus/reed/wheat section are missing (we didn't know how they were placed) 15:21:15 Deewiant, but it blew out a large area. Even sand, gravel and clay on the opposite side 15:21:19 Fair enough 15:21:45 and actually the outer wall behind clay was missing 15:21:49 I don't remember how exactly the signs were placed either, it doesn't exactly matter whether it's precisely the same ;-P 15:22:29 Deewiant, I was at a Boxing Day party when it happened, so that gives you a clue as to the date. 15:22:47 Phantom_Hoover, no that was the day after iirc? 15:23:00 Well, I know you blamed me. 15:23:10 Phantom_Hoover, we /asked/ you if you had done it 15:23:38 Deewiant, anyway, if you add TNT again that isn't behind glass and inside an obsidian room we will be rather disappointed (and also not help if it happens again) 15:24:12 Did you rebuild it so that there's space for obsidian on all sides? ;-) 15:24:26 Deewiant, well, you need more than that 15:24:58 It's impossible to put on display in a room like that without leaving at least some direction open for destruction 15:24:59 Deewiant, you need some sort of zig-zag walkway to it. So the blast doesn't get through the "door" 15:25:07 Quite 15:25:13 Deewiant, actually just a zigzag walk works 15:25:28 Deewiant, anyway, a single TNT behind glass might be acceptable 15:25:30 Right, but that already takes up more space so it's a different kind of room. 15:25:35 (like the pumpkin) 15:27:52 what 15:27:55 the TNT is there again 15:28:11 oh wait 15:28:28 Deewiant, yesterday the server crashed. Some chunks were reverted then it seems. Including that chunk 15:28:48 Deewiant, XD 15:30:27 Vorpal, how fortunate. 15:30:28 heh 15:30:37 TOO FORTUNATE 15:30:41 Phantom_Hoover, not really, since i had to re-empty a lava lake 15:30:47 that also reverted 15:34:21 Deewiant, come see the Cube! 15:38:01 Perhaps later 15:38:10 Phantom_Hoover: You also didn't answer my question 15:38:26 Oh, right. 15:38:33 What makes what obviously false? 15:38:42 Oh, the 10% thing. 15:39:11 Well, for one thing, something like that would almost certainly be evolved out quickly. 15:39:46 I mean, one of the reasons childbirth is more dangerous for humans than other animals is the much larger size of the baby's heade. 15:39:48 *head 15:40:03 So you have a selection pressure towards smaller brains right there. 15:40:26 Fair enough 15:40:35 That issue wasn't obvious to me, though ;-) 15:48:38 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds). 16:03:41 -!- Phantom_Hoover has joined. 16:29:04 -!- Phantom_Hoover_ has joined. 16:31:26 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds). 16:40:00 argh the forum rss points all the links to voxelperfect.net even if i subscribe from esolangs.org 16:51:11 oerjan, weird, but surely not that bad? 16:51:41 Phantom_Hoover_: you didn't notice the discussion that voxelperfect.net has expired? 16:51:51 It has‽ 16:52:00 i put it in the topic but _someone_ has changed it again 16:52:08 -!- ehird has joined. 16:52:24 Guess what I'm not using. 16:52:31 IT'S A TIME TRAVELLER FROM THE PAST 16:52:48 ehird: deodorant? 16:52:49 Oh, right, I don't use this nick any more, do I...\ 16:52:52 -!- ehird has changed nick to elliott. 16:53:01 oerjan: I will ignore that insult...THIS TIME. 16:53:06 -!- elliott has quit (Changing host). 16:53:06 -!- elliott has joined. 16:53:06 -!- elliott has quit (Changing host). 16:53:06 -!- elliott has joined. 16:53:15 :D 16:53:47 Oh god, Sgeo's learning a new fucking language. 16:53:54 Way to put a damper on my day. 16:54:06 And liveblogging^WliveIRCing it too. 16:54:53 22:59:32 (if (void) #t #f) 16:54:59 Sgeo: The result of that is undefined. 16:55:04 (void) is not standard Scheme anyway. 16:55:10 -!- oerjan has set topic: turds at http://esolangs.org/wiki/Main_Page | turds at voxelperfect.net have expired | historical turds at http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 16:55:12 (Okay, Racket might give a consistent value, but Racket has no standard.) 16:55:20 oerjan: btw esolangs.org isn't owned by Graue 16:55:24 as I discovered yesterday 16:55:41 elliott: huh? 16:55:56 oerjan: what's huh 16:55:58 I mean the domain itself 16:56:52 oh. i noticed yesterday but somehow got the domains switched in my mind 16:57:10 so i thought it was a different name because it had expired, or something 16:57:31 ok who the heck _is_ alan dipert 16:57:53 oerjan: zis guy 16:57:57 I googled him, he's just a random dude. 16:57:59 of dudeness. 16:58:10 with no apparent relation to our community except being strange (he has a fork of NCSA Mosaic on github) 16:58:23 THE ANSWER TO "WHAT AM I NOT USING?" IS MY LAPTOP, FRIENDS 16:58:42 ais523: sorry, we're no longer hardware buddies. 16:59:11 02:24:40 elliott for the logs: Brainfuck/w/index.php?title=Talk:Brainfuck/index.php is completely obviously a finite state machine 16:59:24 ais523: are you SURE 16:59:25 elliott: that sounds disturbing given that that domain is about to expire soon as well 16:59:31 ais523: there are programs that use N bytes of memory for all N 16:59:37 oerjan: no, because it was last renewed in 2009 16:59:42 elliott, why is Sgeo learning a language so bad? 16:59:44 oerjan: we have no reason to suspect he doesn't feel like renewing it 16:59:53 i sure hope _someone_ knows him 16:59:55 Vorpal: because he thinks he's smarter than language designers and complains about stupid shit 17:00:03 oerjan: well email the bastard :) 17:00:13 02:28:40 also, I think elliott's trying to stop spambots editing the wiki by creating a legitimate page at every title they try to create 17:00:22 ais523: no, I'm trying to make it hard on the wiki sysops to protect talk pages 17:00:28 I may have been a Discordian in another life 17:00:34 elliott, "stupid shit" is a bit ambiguous here. "Stupid things in the language" vs. "stupid complaints" 17:00:35 elliott: well i already emailed graue, i'll wait for an answer 17:00:41 Vorpal: latter 17:00:45 ah 17:01:18 what why 17:01:25 nooga: why what 17:02:01 YOU GUYS, YOU ARE TOTALLY NOT TAKING MY ALL-CAPSED BAIT 17:02:59 03:41:07 He (or I assume it was he) left some TNT next to the door at Mt. Hoover. 03:41:13 The door with a pressure plate. 03:41:31 Fortunately, the explosion didn't actually punch through the mountain. 17:03:01 wait, what? 17:03:06 Phantom_Hoover_: I didn't know pressure plates activated TNT 17:03:14 the TNT has been there for a day or two, t'was an accident; I was planning to remove it safely 17:04:17 04:51:29 Hey, one of the people on the Oolite board is from Hexham. I should tell elliott. 17:04:23 Phantom_Hoover_: Are they competent? :p 17:04:51 lag spikes now 17:04:55 * Vorpal looks at ineiros 17:05:09 been fine for hours 17:05:45 Vorpal: he won't stop skype just for MC so why bother mentioning it? 17:05:49 hmm I should redownload Minecraft 17:05:56 elliott, redownload? 17:06:13 Vorpal: yes FINALLY SOMEONE TAKES MY BAIT. 17:06:16 elliott, competent in which sense? 17:06:27 elliott, why *re*-download 17:06:37 Phantom_Hoover_: Can e program? If not, can e form correctly-spelled and punctuated sentences that express coherent thoughts? 17:06:49 elliott, he had about 3 posts. 17:06:50 Vorpal: 'CUZ I DON'T HAVE IT ON MY SHINY NEW LAPTOP DUH 17:06:58 ^ how did it take you that long to fall into that trap 17:06:59 sheesh 17:06:59 elliott, oh right, not much of a bait 17:07:05 Vorpal: SHUT UP 17:07:12 elliott, but first you must try out dwarf fortress 17:07:15 elliott, and report FPS 17:07:18 evidently in Apple Time, 31st means 29th 17:07:26 I am not complaining 17:07:31 No, wait, he has 418 posts. 17:07:40 Vorpal: yeah, not until I get an IRC client :-P 17:08:15 elliott waiting with baited breath 17:08:22 Hello. 17:08:25 oerjan: die in a fire :} 17:08:31 elliott, I have absolutely no idea about him other than that he is from Hexham and his punctuation and spelling are good 17:08:34 I wonder if iChat supports MSN now. 17:08:42 elliott, going to run linux to it. Or will you live in the flash-hating vendor-lockin closed apple world (right, so that product is a normal laptop, but still) 17:08:43 Vorpal: Sorry, need to download Ubuntu. Stat! 17:08:45 NOPE 17:08:50 elliott: how rude. 17:08:53 ineiros, incidentally! 17:08:58 We are building the cube! 17:09:09 Vorpal: I'll put Linux on it sometime 17:09:12 ineiros, ah, about how long will it take do you think? 17:09:14 Phantom_Hoover_: not without me I hope! 17:09:18 Which requires excavating an approximately 128x128x64 cuboid! 17:09:28 don't work on the cube without me to supervise ;x 17:09:35 none of you UNDERSTAND my ARCHITECTURE 17:09:44 So can we finally have a TNT kit? 17:09:57 elliott, surely we can drain without you? 17:09:59 elliott, it is rather trivial for the shell actually :P 17:10:04 Phantom_Hoover_: Okay fine. 17:10:11 elliott, the issue is the interior floors, which I leave to you 17:10:13 And explode too. 17:10:17 But no expanding the glass wall! :p 17:10:21 Anyway, TNT kit! ineiros, we beseech you! 17:10:34 ineiros: IF YOU DON'T GIVE ME A TNT KIT I'M GOING TO BLOW UP EVERYTHING 17:10:46 I HAVE LIKE 6 STACKS OF EASILY-ACCESSIBLE TNT AND I'M NOT AFRAID TO USE THEM 17:11:06 HE USED THEM ON MY FREAKING MOUNTAIN 17:11:10 that is the wrong method 17:11:16 elliott: The stacks will be less available if I blow up the server. 17:11:17 now you are just making it /less/ likely 17:11:17 elliott, you're demoted to HHI janitor 17:11:30 ineiros: I'LL BLOW UP YOUR FAMILY 17:11:35 ... 17:11:38 And now you're promoted to landscape architect. 17:11:45 AND YOUR DOG 17:11:52 I'll try to get to your TNT needs today. 17:11:57 Your first job is to ment the 17:11:57 See? 17:11:57 elliott, this is exactly the opposite of what you need to tell him 17:12:02 I'm very convincing. 17:12:05 Vorpal: Worked, didn't it? 17:12:08 *mend the crater outside the door of the research facility. 17:12:10 elliott: No. :) 17:12:18 ineiros: Poor Woof. 17:12:25 I only wish he did not have to die. 17:12:26 elliott, nah, I think you didn't manage to make him change opinion from yesterday /yet/ 17:13:11 Then you will be transmoted to builder, and your job will be to rebuild the mouth of the tunnel to the research facility. 17:13:14 Heh ... YouTube is one of the default sites in the top-sites-Safari-gallery thing ... but this thing doesn't ship with Flash. 17:13:18 ineiros, so... any idea how long this download might take? 10 minutes? half an hour? more? 17:13:30 40 seconds. 17:13:33 And indeed clicking on videos says "lol no flash" 17:13:36 Vorpal: You are way impatient. 17:13:37 You shall then be demoted to joiner, and your job will be to fit a new door into the research facility. 17:13:38 ineiros, ah 17:13:38 Way so. 17:13:44 Phantom_Hoover_: Can I be demoted to turd? 17:13:56 elliott, no, just wondered if I should log off and do something else, or just wait a few minutes 17:14:04 After you've done all that. 17:14:07 irc question: can you "emote", like /me but with other people appearing to do the action? 17:14:22 Mathnerd314: um, no. 17:14:25 and that sounds horrible. 17:14:53 it'd have something like (from ) at the end of it 17:16:31 Can you make your own messages look like someone else's? 17:16:45 * Mathnerd314 takes a bike (from elliott) 17:16:48 You monster. 17:16:53 * nooga is playing OpenTyrian 17:17:02 Phantom_Hoover_: but with tags 17:17:03 awful 17:17:12 TODO: Get IRC, IM clients; install YouTube5; get Minecraft. 17:17:23 Put up mandatory shrine to Steve Jobs. 17:17:23 elliott: prefix it, then. 17:17:25 (from elliott) * Mathnerd314 takes a bike 17:17:42 elliott: new Mac? 17:17:47 elliott, the iPhone has no backquote symbol, does it? 17:17:54 Mathnerd314: (from elliott) * Mathnerd314 took / a $big (bicycle) / as he `shook 17:18:00 Phantom_Hoover_: This is an iPhone? 17:18:04 But no, it has no backtick indeed. 17:18:17 That's why I have that command to output ` followed by something, in EgoBot. 17:18:20 I forget the name. 17:18:21 nooga: Yes. 17:18:43 Right, so there's a simple, foolproof way of securing WiFi networks against iPhones? 17:18:54 !he echo I think it was this... 17:18:55 nooga: MacBook Air, 2.1 GHz, 4 GiB, 256 GiB SSD, 13" 1440x900. 17:18:59 Phantom_Hoover_: Brilliant. 17:19:01 `echo I think it was this... 17:19:13 I think it was this... 17:19:24 Grmbl, in the MORNING, get me out of bed and sdjdiofgj 17:19:34 elliott, I'd do it but half my family have iPhones now and they'd be nasty to me if I did so. 17:19:47 elliott: blargh 17:19:57 elliott: Airs are pointless but pretty 17:20:26 nooga: correction -- they /used/ to be pointless. 17:20:36 um 17:20:38 Now they have respectable specifications, the fastest SSD of the macs, and they have actual fucking ports on the side. 17:20:42 (Since late 2010.) 17:20:54 i would change my mind if i had one :D 17:21:00 elliott, why do you have this now? 17:21:11 elliott: so, the answer is: no, irc doesn't have that? 17:21:18 Mathnerd314: I said no right at the start. 17:21:33 Phantom_Hoover_: Dunno. I think I'll give up all my material possessions. 17:22:00 Now do I download Minecraft or LimeChat first? OH THE DILEMMA 17:22:08 OH THE DALAI LLAMA 17:22:44 elliott, I mean, did you actually ask for one? 17:22:52 Or go about purchasing one? 17:23:15 Phantom_Hoover_: I would not own this today if not for a swift but damaging onset of temporary insanity. 17:23:36 Did you see it in a shop and become overwhelmed by lust? 17:24:14 Phantom_Hoover_: No. Steve Jobs kidnapped me and did unspeakable things. 17:24:36 Sell the story to the Sun. 17:24:41 You'll make MILLIONS 17:25:17 This trackpad is ridiculously huge. 17:25:26 elliott: *LAMA 17:25:27 elliott, doesn't it include the buttons? 17:25:34 It's bigger than my palm. 17:25:37 Vorpal: The whole thing is a button. 17:25:39 oerjan: Intentional. 17:25:53 Vorpal: It's a gigantic glass touchpad that presses down :-P 17:25:55 elliott, you clearly have a tiny palm. 17:26:13 Obviously in future the keyboard will be replaced by a GIGANTIC touchpad. 17:26:16 Phantom_Hoover_: I do. 17:26:19 I am a rather tiny person. 17:26:38 elliott, obviously malnutrition due to the Harrying of the North. 17:27:07 Phantom_Hoover_: Indeed. 17:27:19 I am told that this is the reason I am taller than my entire extended family, although I am suspicious of this. 17:27:30 HAHAHA WHEN I SWIPE WITH THREE FINGERS IT GOES BACKWARDS AND FORWARDS IN THE BROWSER I AM THE MASTER OF MY DOMAIN 17:28:15 "The windows themselves contain some kind of unbreakable glass-like substance, probably glass." 17:28:48 Which windows? 17:29:01 Phantom_Hoover_: Um, context is long and I've already closed the tab. 17:29:16 Safari thinks this web chat window is titled "Yahoo!". 17:29:19 I am not sure why. 17:30:31 NOOOO IF I DRAG ANOTHER THING TO THE DOCK IT WILL SHRINK, BUT HOW CAN I VIOLATE STEVE JOBS' WISHES 17:30:40 Huh? 17:31:11 my eyes and brain hurt 17:31:13 In other news, have you finished your landscape-architect-builder-joinerial duties? 17:31:17 from playing tyrian 17:31:25 lol tyrian 17:31:44 Phantom_Hoover_: No. 17:31:46 Demote me to rock. 17:32:02 elliott, once you've moved your way down the rank! 17:32:04 *ranks 17:32:14 Now to Software Update. 17:32:15 we should invent a game 17:32:42 for ourselves and then introdouce a score table 17:33:05 -!- elliott has quit (Quit: Page closed). 17:33:07 ineiros, any idea how long this second download might take? Roughly 17:33:55 in Haskel is there a difference between take 3 [1..20] or just [1..3] ---> since things are evaluated lazily? 17:35:44 variable, no. 17:35:49 There isn't. 17:36:05 !haskell take 3 [1..] 17:36:19 Phantom_Hoover_, I mean - internally Haskel doesn't create the [1..20] list first 17:36:23 [1,2,3] 17:36:31 variable, that's what that example was for. 17:36:32 I know the output is the same 17:36:42 [1..] is an infinitely long list. 17:36:47 oh woops 17:36:50 * variable missed the .. 17:36:58 But the discarded elements aren't calculated at all. 17:36:58 I missed that there wasn't an end 17:37:02 ok cool 17:37:06 Phantom_Hoover_, thanks 17:39:31 -!- elliott has joined. 17:39:41 Oh wow, LimeChat's defualt theme is beyond ugly. 17:39:42 *default 17:39:47 -!- elliott has quit (Changing host). 17:39:47 -!- elliott has joined. 17:43:38 ais523: there are programs that use N bytes of memory for all N <--- I mean, any given program is an FSM, just like a lang that asked you to declare memory use in advance would be 17:43:46 right 17:44:03 brb 17:44:04 -!- elliott has quit (Remote host closed the connection). 17:44:38 -!- elliott has joined. 17:44:38 -!- elliott has changed nick to Guest12014. 17:44:54 hi 17:44:57 wtf @ my name 17:45:26 Guest12014: I suspect you aren't identified, and got automatically kicked to a different nick as a result 17:45:28 indeed 17:46:24 Guest12014, if the owner of your nick chose "secure" you have 30 seconds to provide a password 17:46:32 if they chose immediate you have no time 17:46:38 /ns help 17:46:41 Indeed. 17:46:43 I set it like that. :) 17:46:47 variable, he is the owner of his own nick. 17:46:49 But I think it's 30 seconds for me. 17:47:20 -!- Guest12014 has quit (Remote host closed the connection). 17:48:49 let fizzBuzz xs = [ if mod x 3 && mod x 5 then "fizzbuzz" else if mod x 3 then "fizz" else if mod x 5 then "buzz" else x | x <- [1..] ] 17:48:55 Couldn't match expected type `[Char]' against inferred type `Bool' -> so I get 17:49:03 why I can't mix strings and ints 17:49:08 but where did the bool come from ? 17:49:13 -!- dfj_ has joined. 17:49:25 Why is elliott "temporarily unavailable"? 17:49:26 My nick. 17:50:22 dfj_, /ns recover I think 17:50:30 ah 17:50:43 "invalid command" so, no 17:51:02 it's RELEASE 17:51:04 or release 17:51:08 yeah 17:51:08 -!- dfj_ has quit (Remote host closed the connection). 17:51:15 -!- elliott has joined. 17:51:17 now it works 17:51:18 wb 17:51:22 :) 17:51:41 -!- elliott has changed nick to Guest77998. 17:51:44 let fizzBuzz xs = [ if mod x 3 && mod x 5 then "fizzbuzz" else if mod x 3 then "fizz" else if mod x 5 then "buzz" else x | x <- [1..] ] 17:51:50 :-\ 17:51:57 or not Guest77998 17:52:08 what. 17:52:25 variable: erm mod doesn't return a boolean does it 17:52:36 oh righ 17:52:55 indeed not 17:52:59 variable: i'd do something like 17:53:18 wait nm 17:53:19 divBy x y = mod x y == 0 17:53:33 variable: I'd call that divides 17:53:34 then you could say 17:53:41 x `divides` 3 17:53:42 er wait 17:53:45 you'd want to swap the arguments 17:53:47 !echo hi 17:53:47 hi 17:53:52 divisibleBy 17:53:57 !echo !echo hi 17:53:58 !echo hi 17:54:00 :\ 17:55:45 variable: case gcd x 15 of 15 -> "fizzbuzz" ; 3 -> "fizz" ; 5 -> "buzz ; 1 -> show x >:) 17:56:04 oerjan: heh nice 17:56:04 variable, for maximum Haskell credit, write divBy point-free. 17:56:15 Phantom_Hoover_: for maximum haskell credit write EVERYTHING point free 17:56:16 Phantom_Hoover_, point free ? 17:56:21 variable: you don't want to know. 17:56:24 Guest77998, lie 17:56:25 Phantom_Hoover_: you don't want to tell him. 17:56:34 Phantom_Hoover_, explain 17:56:36 now 17:56:43 variable: Point free is where you write things using the function composition operator and other combinators, and don't name any arguments to the function. 17:57:08 variable, in simple terms, a function f is defined point-free if it's "f =" rather than "f =". 17:57:21 Guest77998: @pl \x y -> mod x y == 0 17:57:21 lambdabot: flip flip 0 . ((==) .) . mod 17:57:25 variable: So you could say 17:57:31 dividesBy = flip flip 0 . ((==) .) . mod 17:57:32 instead. 17:57:51 Note: Point-free style often improves code concision and readability. But not in this case. 17:57:54 I think that code may not be the best pl-ing of that. 17:57:55 Also lambdabot is a bit stupid about it. 17:57:58 Indeed. 17:58:14 It's (==0) . mod n 17:58:20 ah 17:58:23 that makes sense 17:59:02 Prelude> let divisbleBy (==0) . mod n 17:59:02 :1:28: parse error (possibly incorrect indentation) 17:59:07 variable: you forg = 17:59:09 *forgot = 17:59:11 oh woops 17:59:13 So I think it'd be ((==0).) . mod. 18:00:06 Prelude> let divisbleBy = ((==0).) . mod. 18:00:06 :1:32: parse error (possibly incorrect indentation) 18:00:12 !haskell (((==0).) . mod) 2 4 18:00:14 False 18:00:24 False 18:00:38 !haskell [1..] 18:00:40 !haskell (((==0).) . mod) 4 2 18:01:01 True :-} 18:01:03 [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,1 18:01:15 variable, !haskell is just GHCi. 18:01:17 very funny DCC chat 18:01:18 bbl food 18:01:29 Phantom_Hoover_, I noticed 18:01:31 variable: yeah it DCC chats to give you what it flooded 18:02:00 Guest77998, I could use that to flood its connections - just keep on doing [1..] 18:02:02 :-\ 18:02:05 so apparently Steve Jobs needs a picture of me, I swear to god that it wouldn't let me use the computer until I let it take a photo of me 18:02:18 variable: It's too slow for you to be able to flood it, my friend. 18:02:22 variable: And the first line would still go to IRC. 18:02:28 Well, sometimes it doesn't. But whatever. 18:02:43 either way 18:02:51 "\ntest" 18:03:00 !haskell "\ntest" 18:03:02 "\ntest" 18:03:24 variable: actually !haskell is both ghci and ghc, it tries them in sequence. this is sometimes confusing when you get an error message (only the last one is given) 18:03:31 !haskell putStrLn "\ntest" 18:03:31 !haskell "QUOTE MSG NICKSERV DROP" 18:03:37 :-} 18:03:49 anyway anyone who tried to hold up the bots just gets a ban :-P 18:03:52 !echo hi 18:03:53 hi 18:04:02 "!echo hi" 18:04:09 Guest77998, could I try something this once? 18:04:10 variable: also EgoBot sometimes times out :( 18:04:18 variable: sure. just don't do it all night :D 18:04:28 Guest77998, its afternoon - not night :-} 18:04:46 variable: yes, but it'll be night some day! 18:04:52 also it's 18:04, so, about midday 18:05:00 are there any other bots on this channel? 18:05:06 hmm it's 13:00 in new york, maybe i'm on american time 18:05:07 `echo Me! 18:05:08 Me! 18:05:11 variable: yes, and also fungot 18:05:11 Guest77998: specs and examples of feather btw, that argument is fundamentally unscientific :) thanks 18:05:13 ^echo Me! 18:05:13 Me! Me! 18:05:15 written in befunge, as you probably know 18:05:19 Guest77998, my goal: create a poly command between EgoBot and HackEgo :-} 18:05:29 fungot is the more attention-seeking of the two. 18:05:29 Phantom_Hoover_: output, and with its own set of variables 18:05:32 that makes them keep on looping 18:05:35 variable: fungot filters other bots, BTW 18:05:35 Guest77998: i know quitting high school was about creating a procedure from itself) with a generic object system relies on _static_ types. 18:05:42 variable, do you think we haven't thought of that? 18:05:44 ^ignore 18:05:45 `echo !echo hi 18:05:46 !echo hi 18:05:55 `run echo '!sh echo hi' 18:05:57 !sh echo hi 18:06:15 `run echo "!sh echo '`run happy'" 18:06:15 No output. 18:06:19 what 18:06:19 `run echo "!sh echo '`run happy'" 18:06:20 No output. 18:06:21 HackEgo pays attention to EgoBot, though. 18:06:22 what 18:06:22 meh - back to learn you a haskel 18:06:26 `run echo "!sh echo '\`run happy'" 18:06:26 !sh echo '`run happy' 18:06:32 ah 18:06:47 `run echo "!sh echo '\`run happy'" 18:06:48 !sh echo '`run happy' 18:06:51 * Phantom_Hoover_ curses 18:06:52 what 18:06:57 ok EgoBot ignores HackEgo 18:07:26 I spent about half an hour flying around in Oolite, only to realise that I hadn't actually picked up the passenger I was meant to be ferrying. 18:07:34 Phantom_Hoover_: :-D 18:07:40 No instance for (Show (t -> [[Char]])) 18:07:41 variable: mutual bot quines is a tradition in this channel, so most bots eventually is set to ignore the others 18:07:42 :-\ 18:07:55 *are 18:07:55 Guest77998, the worst part is that I've done this several times before. 18:08:38 -!- cheater99 has quit (Quit: Leaving). 18:08:52 Phantom_Hoover_, heh 18:09:38 variable: you're probably missing a function argument, as that usually implies you are trying to print a function 18:09:45 let fizzBuzz = [ if divisbleBy x 3 && divisbleBy x 5 then "fizzbuzz" else if divisbleBy x 3 then "fizz" else if divisbleBy x 5 then "buzz" else "#" | x <- [1..] ] 18:10:02 oerjan, oh wait - I had an extra "xs" 18:10:07 thanks 18:10:31 but now I don't get *any* fizzbuzz 18:10:33 Show is the type class for stuff that is printed 18:10:46 ["#","#","fizz","#","buzz","fizz","#","#","fizz","buzz","#","fizz","#","#","fizzbuzz","#","#","fizz","#","buzz"] 18:11:41 oh I lied 18:11:46 * variable missed the 10th one 18:11:52 * variable is an idiot 18:11:55 *12 18:11:59 * variable is still an idiot 18:11:59 variable: don't you mean "else show x"? :) 18:12:02 to get the numbers in there 18:12:13 Guest77998, no - I wanted the "#" for now 18:12:16 full fizzbuzz program: 18:12:24 main = mapM_ putStrLn [ if divisbleBy x 3 && divisbleBy x 5 then "fizzbuzz" else if divisbleBy x 3 then "fizz" else if divisbleBy x 5 then "buzz" else show x | x <- [1..] ] 18:12:30 compilable with ghc :-) 18:12:32 unless i fucked up 18:12:37 well 18:12:41 you need divisibleBy obviously 18:13:05 Guest77998, I didn't know about show so using "#" stood in until I could figure out what i needed for int->string 18:13:10 * Guest77998 redownloads Minecraft. ah sweet addiction... 18:13:12 variable: right :-) 18:13:45 regarding minecraft: I was told not to play it while I still plan on doing something productive with my life 18:14:04 nested ifs are sort of bad style in haskell. although they may be awkward to avoid inside a list comprehension... 18:14:04 variable: I concur absolutely ... and now to get to work on this 128x128x128 glass cube lit by lava 18:14:17 oerjan: i decided not to pick on his style until he's more proficient >:) 18:14:25 O KAY 18:14:30 oerjan, when is the "haskellian" way to do things 18:14:40 variable: pattern guards 18:14:44 Guest77998, please pick on my style - I don't want to get into bad habbits 18:14:51 * variable googles pattern guards 18:14:57 variable: But you already have -- a life of imperative programming :-) 18:15:13 Guest77998, nothing is wrong with imperative programming for certain types of tasks.... 18:15:34 variable: Yes there is. :-) (I am a bit of a zealot.) 18:15:44 variable: But hey, I never denied that. 18:16:01 variable: Haskell lets you write as much imperative code as you want, that's what "IO" and the do statement is for. 18:16:13 I just don't think all of a program should be imperative, which is what most languages make you do :-) 18:18:02 variable: if you just wanted to handle a single x you could use pattern guards as follows: fizzBuzz x | divisbleBy x 3 && divisbleBy x 5 = "fizzbuzz" | divisbleBy x 3 = "fizz" | divisbleBy x 5 = "buzz" | otherwise = show x 18:18:40 oerjan, that code looks clearer to me - but I'm not exactly sure of what it's doing 18:19:01 is it similar to a "switch" in that it looks for the first pattern that matches? 18:19:05 variable: well one-line formatting doesn't exactly help 18:20:15 :1:5: parse error on input `|' 18:20:17 but the parts between | and following = are the guards. the first guard for a pattern which is True is selected 18:20:35 variable: oh and that's a function definition, so you need to put let in front in ghci 18:20:40 I did 18:20:46 oh wait 18:20:49 I didn't 18:20:51 * variable slaps self 18:23:26 oerjan, what is "otherwise" 18:23:36 it always returns True ? 18:24:06 variable, otherwise is a keyword for the default if no pattern matches. 18:24:59 Haskel cares about whitespace? 18:25:04 fizzbuzz.hs:2:0: parse error (possibly incorrect indentation) 18:25:06 ? 18:26:30 http://notepad.cc/vefina87 -> how could this be formatted nicely - but still be compilable under ghc ? 18:27:10 variable: otherwise = True, it's just defined for convenience to make pattern guards look nice :D 18:27:34 oerjan, is there some way to print out what functions are defined as ? 18:27:56 variable: yes, Haskell cares about whitespace 18:28:02 variable: you can always use explicit bracing instead though 18:28:04 e.g. 18:28:14 main = do foo 18:28:16 bar 18:28:16 variable: i see nothing in that paste that should be a syntax error 18:28:17 is the same as 18:28:21 main = do { foo; bar } 18:28:54 | actually doesn't need to be lined up, although it looks better if it is. 18:29:11 oerjan, fizzbuzz.hs:2:0: parse error (possibly incorrect indentation) 18:29:20 variable: try a nother new line before "fb x"? 18:29:23 *another 18:29:24 variable: oh, you have a missing ) in the first line 18:29:29 that shouldn't do anything, but, it's a hunch- aaah 18:29:30 never mind 18:29:32 what oerjan said 18:29:32 brb 18:29:33 -!- Guest77998 has quit (Remote host closed the connection). 18:29:57 -!- sdfjsdf has joined. 18:30:04 -!- sdfjsdf has quit (Remote host closed the connection). 18:30:10 -!- elliott has joined. 18:30:10 or equivalently, an ( more than necessary 18:30:16 variable: try 18:30:23 divisibleBy = ((==0) .) mod 18:30:24 oerjan, I got it 18:30:24 erm 18:30:28 divisibleBy = ((==0) .) . mod 18:30:29 now I need to define main :-} 18:30:41 hehe 18:30:58 variable: careful -- that's MONAD TERRITORY! (note: this is completely irrelevant and you don't need to think about it at all to use main) 18:31:23 monad ? 18:31:38 elliott, explain 18:31:47 variable, that is a whole can of worms you do not want to get into right now. 18:31:58 * variable googles 18:32:00 Get a good grasp of the basics, particularly the type system, first. 18:32:02 -!- cheater99 has joined. 18:32:02 variable: It's a thing from category theory. LYAH explains it in some chapters' times. 18:32:03 noooooo! 18:32:05 Don't do that! 18:32:14 variable: Seriously, no, people are scared of monads for no reason. 18:32:20 They think it makes Haskell impossible to use. 18:32:24 They're silly. :p 18:32:40 You'll get endless analogies of how monads = burritos which are far more confusing than the simple definition! 18:32:49 Phantom_Hoover_, elliott I really don't like to delay learning new things - but I'll go in order of LYAH 18:33:26 variable: You can't learn all of Haskell at once, trust me :) 18:34:18 now: how could fb be written point freE? 18:34:35 variable, don't bother. 18:34:36 variable: oh man, i don't even know 18:34:37 nobod 18:34:38 y 18:34:40 would do that :) 18:34:47 variable: ouch, it is rather hard to use pointfree and pattern guards simultaneously 18:35:06 Point-free is nice and elegant when you have simple functions which simply chain other functions togetheer. 18:35:10 *together 18:35:10 oerjan, alright 18:35:15 variable: pointfree is best for things that follow a pipelined path without branching 18:35:19 main = [ fb x | x <- [ 1..20] ] -> what's wrong with this? 18:35:29 variable: main would result in a list 18:35:32 it has to result in an IO action 18:35:39 variable, type signatures don't match. 18:35:44 fb x :: [Int] 18:35:44 variable: main mus... right 18:35:48 variable: try this 18:35:49 main :: IO () 18:35:52 ok 18:35:57 variable: just put a print after the = 18:36:01 so - I tried "show" - but that didn't wor 18:36:01 yeah 18:36:09 variable: show :: (Show a) => a -> String 18:36:10 variable: but print is 18:36:15 print :: (Show a) => a -> IO () 18:36:18 main is :: IO () 18:36:20 read as: 18:36:24 an IO action giving no result 18:36:27 there's also 18:36:31 getChar :: IO Char 18:36:32 read as: 18:36:35 an IO action giving a character 18:36:37 variable: see? :) 18:36:40 elliott, is there some way to get ghci to print those declarations out? 18:36:48 i believe it is technically legal for main to be any IO a 18:36:49 variable: :t foo 18:36:51 ie - can I print what a function is defined at as? 18:36:53 gives the type of foo 18:36:58 elliott, oh - cool 18:37:11 but the a will nearly always be () in practice 18:37:13 main = print [ fb x | x <- [ 1..20] ] -> perfect 18:37:35 variable: i don't think ghci saves the source anywhere 18:37:38 variable: that'll show as 18:37:42 ["foo","..."] 18:37:44 variable: you might want 18:37:46 elliott, I mean - if I defined "blah" 1000 lines up there is no way to view the source 18:37:48 it's directly compiled 18:37:53 main = mapM_ putStrLn [fb x | x <- [1..20]] 18:38:14 variable: nah, i don't think that's stored :) 18:38:19 put good stuff in a file 18:38:25 variable: usually you want to do most definitions in a file with an editor, and just reload it after major changes 18:38:34 oerjan, I do that - just curious 18:38:45 yeah, you can only define types in a file too 18:38:57 variable: also reloading a file into ghci wipes out everything else 18:39:06 i think 18:39:14 http://pastebin.com/ecJmXtWw --> my first haskel program ;-} 18:39:42 variable: now try putting 18:39:46 fb :: Int -> String 18:39:49 before fb :p 18:40:20 because that defines the type of fb to only take an int and return a string 18:40:45 divisbleBy :: Int -> Int as well ? 18:41:24 variable: no 18:41:32 variable: it results in a boolean :) 18:41:39 oh right 18:41:48 * variable made the inverse mistake before 18:42:08 and capital letters indicate types 18:42:12 so it would be Boolean ? 18:43:32 elliott, it works with the one for fb but not the one for divisibleBy - with Bool as the type (:t True) 18:43:38 variable: actually capital letters also indicate other things, but type names are one of them 18:44:18 variable: no, Bool isn't the type 18:44:21 variable: common hint: use :t fb to find out what ghci thinks the type should be 18:44:23 that means divisibleBy would either be True or False 18:44:26 variable: it's Int -> Bool 18:44:34 I did that 18:44:35 oerjan: that'll show Num which is just confusing right now :) 18:44:39 variable: huh. what error? 18:44:40 oh right 18:45:06 anyway shouldn't it be Int -> Int -> Bool 18:45:19 oh 18:45:20 of course :) 18:45:22 oerjan, yes 18:45:29 that explains the "Inferred Type" 18:45:41 and the "couldn't match" part of the problem 18:45:42 cool 18:46:32 is there a preferred order for things: should I do type A, type B, function A function B, main or type A function A type B function B 18:46:44 variable: latter 18:46:56 variable: types should be right next to the functions; they're very useful documentation :) 18:47:00 machine-checked documentation at that 18:47:14 given the name and type of a function you can usually work out 90% of what it does quickly 18:47:33 elliott, yep ---> this has been my preferred style for a while 18:47:49 machine checked documentation :-} 18:48:38 now 18:48:44 that twas fun 18:48:52 careful, you're approaching Coq again 18:49:05 our machine-checked documentation is HUNDREDS OF LINES LONG PROOFS OF CORRECTNESS! 18:51:21 elliott, I get the distinct feeling that I'd liike Coq :-} 18:51:47 variable: unfortunately it is not very useful for actually writing programs :-) 18:52:00 variable: although there are one or two libraries that were extracted (automatically) from formally-proved Coq code 18:52:06 haskell libraries that is 18:54:21 what is the difference between head and fst? lists and tuples ? 18:55:12 variable: yep 18:55:26 note that fst only works on 2-tuples, even though there's 3, 4, 5 etc. -tuples 18:55:34 it's okay though because nobody uses >=3-tuples :) 18:55:52 let rightTriangles = [ (a,b,c) | c <- [1..10], b <- [1..c], a <- [1..b], a^2 + b^2 == c^2] -----> they should teach this in math class instead of making kids memorize 18:56:07 :-} 18:56:18 ...you memorized that? 18:56:28 I don't recall memorising that :-) 18:56:37 Multiplication tables on the other hand ... 18:56:37 oerjan, no - we had to memorize the Pythagorean triples 18:56:42 huh 18:56:46 variable: sucks to be you :D 18:57:25 elliott, I personally think that math classes should be more programming and less computation - but meh 18:57:28 variable: in that case you should at least have learned the _real_ formula for listing them all (note: i don't remember that either) 18:57:59 variable: well "maths" should be renamed to arithmetic and then be all but abolished :-) 18:58:16 erm not altogether, you know what i mean 18:59:50 -!- Sasha has quit (Read error: Connection reset by peer). 19:01:25 variable, so wait, which country are you in? 19:01:34 Phantom_Hoover_, USA 19:01:43 Figures. 19:01:44 our education system is junk 19:01:58 Phantom_Hoover_, where are you? 19:02:17 Scotland. 19:02:46 It's not terribly good here, although I'm informed that it's better than in England at final-year-of-school level. 19:05:43 (*) :: (Num a) => a -> a -> a 19:05:47 why is it not Int -> Int ? 19:06:01 oh wait - because it takes two ints 19:06:05 variable: yes 19:06:06 variable, ah, you are introduced to the wonderful world of typeclasses. 19:06:09 Phantom_Hoover_: no, not that 19:06:14 Oh? 19:06:14 it's the two-argument thing here i think 19:06:19 Phantom_Hoover_, I get typeclasses already 19:06:21 variable: yeah, takes two ints, returns one int :) 19:06:32 I'd prefer it was something like Int,Int -> Int 19:06:32 variable: btw a -> a -> a is the same as a -> (a -> a) 19:06:36 and f x y is the same as (f x) y 19:06:36 but its ambigious 19:06:42 variable: that's why it's not Int,Int -> Int 19:06:44 variable: because you can say 19:06:45 foo = f x 19:06:48 then foo y == f x y 19:06:56 variable: this is _very_ powerful & useful 19:06:56 variable, or, if you're adventurous, it takes an int and returns a function that takes an int and returns an int. 19:07:15 Phantom_Hoover_, ah - that makes sense 19:07:28 similar to my dividesBy function 19:07:35 Identical. 19:07:36 Phantom_Hoover_: Edinburgh? 19:07:43 nooga, mhm. 19:07:53 This all Just Makes Sense 19:07:55 variable, the (==0) bit is just that in a disguise. 19:07:58 Phantom_Hoover_: and you study computer science on university of edi ? 19:08:03 -!- Sasha has joined. 19:08:06 Phantom_Hoover_, yeah - I figured 19:08:06 nooga: he's in high school :P 19:08:06 nooga, no, but go on. 19:08:12 oh 19:08:18 then nothing 19:08:18 nooga, why? 19:08:21 * variable wishes I did this in High School :-\ 19:08:29 I'm close enough though 19:08:33 :-} 19:08:41 i thought maybe you're studying cs with a friend of mine 19:08:46 that'd be awesome 19:08:49 variable: mwahaha, i'm three years ahead of you ... well actually i learned haskell a year or two ago so a bit more 19:09:02 WASTED CHILDHOOD 19:09:06 elliott, ahead = your a senior ? 19:09:13 or your in HS ? 19:09:14 variable: ahead in learning 19:09:14 hahahahhahahaha 19:09:15 ajhahahha 19:09:16 :-P 19:09:17 elliott, ah 19:09:20 haskell, at least 19:09:21 lol 19:09:26 elliott, how old are you 19:09:31 variable, I think he's in school now. 19:09:31 variable: 15 19:09:38 ah - I'm 19 19:09:47 He used to be in a loony bin, but they let him out for not being very crazy. 19:09:47 Phantom_Hoover_: not sure how I'm meant to parse that sentence 19:09:52 * Mathnerd314 hates IRC 19:09:53 I was doing C++ then ;-\ 19:09:57 i approve of this version of history 19:10:00 Mathnerd314: why? 19:10:13 variable, you poor baby! 19:10:14 looney bin xD 19:10:24 elliott: not enough structure 19:10:35 Mathnerd314: i don't want to tag every message i write 19:10:39 freeform is nice 19:10:41 more flexible 19:10:53 elliott: but you can't even when you want too 19:11:00 Although I still yearn for that LaTeX-rendering plugin. 19:11:00 Mathnerd314: i never want to 19:11:11 Phantom_Hoover_: p. sure it exists 19:11:19 elliott: thus why you irc and I hate it 19:11:36 Mathnerd314: well don't complain about irc on irc, you'll find little support :P 19:11:57 elliott: I'm hoping for something backwards-compatible 19:15:08 other problems: you can't correct or annotate 19:15:23 good 19:15:33 I don't want mesags to change underneath me 19:15:34 *messages 19:15:36 ^ that is much nicer 19:15:49 elliott, so I'm assuming you approve of Learn You a Haskell? 19:15:58 Phantom_Hoover_: yes. 19:18:34 -!- zzo38 has joined. 19:18:48 I stopped reading it for reasons unclear to me now, which is a pity since I missed out on all of the stuff on functors and monads and stuff. 19:19:44 elliott: sure, you can correct, but it isn't structured; I can't tell what you were correcting 19:19:59 *if 19:20:06 Mathnerd314: yes you can, because you (probably) possess a brain 19:21:34 elliott: computers were invented so I could choose what to use my brain on 19:21:49 and you chose complaining about IRC 19:22:10 elliott: no, I'm asking for a way to stop using my brain for trivial things on irc 19:22:52 *to 19:23:14 cheater99, no, not with the ancient's learning machines 19:23:39 if you can even _notice_ the tiny percent of your brain power it takes to figure out what message it's correcting, well ... maybe you don't have much brain power to go around 19:24:18 Sgeo: ignoring half a day's conversation and going on with what he was talking about before. 19:25:04 elliott: no, I notice the accumulation. it's a reflex against falling into ruts 19:25:15 it's a stupid reflex. 19:26:44 elliott: not at all. how else do you notice that your life sucks? 19:27:10 Mathnerd314: your life sucks because you're figuring out what messages correct which other messages on IRC? 19:27:31 Sgeo: wait, then when? 19:27:39 elliott: exactly. so I want a program to do it for me, backwards-compatible with irc. 19:29:37 Holy crap. 19:29:51 There is a wiki of stuff that was too stupid for Uncyclopedia. 19:29:52 That. 19:29:54 *what 19:30:22 Phantom_Hoover_: So ... uh ... 19:30:25 No, I can't think. 19:30:26 Wht 19:30:28 What does it contain? 19:30:37 OK, I'm going in. 19:30:55 If I don't come back, fix that damn crater on Mt. Hoover, then make it into a memorial. 19:31:04 Phantom_Hoover_: give a link first 19:31:13 Phantom_Hoover_: also, agree with me 19:31:25 http://www.illogicopedia.org/wiki/Main_Page 19:31:36 * Phantom_Hoover_ goes to a random page. 19:31:42 Yes I saw Illogicopedia before too 19:32:01 http://www.illogicopedia.org/wiki/Mr._Bean 19:32:05 ...my brain. 19:32:25 It's not even hurting, it's just exactly the wrong shape for conscious thought. 19:32:30 It should be an SCP. 19:33:04 Phantom_Hoover_: http://www.illogicopedia.org/wiki/Flub_Nugget 19:34:02 It just... if Cthulhu's diary was translated into English, I suspect you'd get this. 19:34:14 elliott: so do you agree with me yet? 19:34:18 Mathnerd314: nope. 19:34:21 Mathnerd314, please shut up. 19:34:56 Phantom_Hoover_: that's new! why should I shut up? 19:35:06 I doubt it should be an SCP. 19:35:24 Mathnerd314, because you are being intensely irritating. Stop it or shut up. 19:36:41 Phantom_Hoover_: so why am I irritating? 19:37:10 elliott, how do you work XChat's /ignore? 19:37:22 ignore is cheating 19:37:28 Phantom_Hoover_: /ignore nick!*@* all 19:37:37 nick* if you want to catch foo_ as well as foo 19:37:39 give me a reason and I'd shut up right away 19:37:47 Done. 19:38:04 I have no idea what you just did. 19:38:06 Now, let's discuss something worthwhile. 19:38:50 * Mathnerd314 waits 19:42:28 Hmm. Why is Applicative dependent on Functor? 19:42:50 Phantom_Hoover_: because they're applicative functors 19:43:14 Surely fmap f = (pure f <*>) 19:43:52 you can't have a 19:44:00 instance (Applicative f) => Functor f 19:44:05 because that's all overlapping 19:44:09 so this is the best way 19:44:16 i would find it fun if Mr. Bean turned out to be god 19:44:51 and in some twisted, fucked-up world the deity turned out to have demented so far. he's still all-powerful, just barely ever uses those powers because he pretty much forgot about them. 19:44:54 Apparently this machine is called Elliott-Hirds-MacBook-Air. Worst hostname ever? 19:44:54 elliott, overlapping? 19:45:00 Phantom_Hoover_: yes 19:45:06 Explain 19:45:08 *. 19:45:19 -bash: git: command not found 19:45:25 Phantom_Hoover_: too lazy, google overlapping instances 19:45:55 Oh, of course. You'd do (Functor f) (Applicative f) or something? 19:46:46 Phantom_Hoover_: eh? 19:47:01 OK, maybe I should look it up. 19:52:30 Phantom_Hoover_: haskell doesn't support using the methods of a subclass to define the methods of a superclass implicitly. there have been extensions suggested to allow this. 19:52:54 oerjan, so just don't make Applicative a subclass of Functor? 19:53:07 Phantom_Hoover_: but every Applicative _should_ be a Functor 19:53:27 and if not for hysterical raisins, every Monad should have been an Applicative 19:53:39 oerjan, yes, so have instance (Applicative f) (Functor f) or whatever. 19:53:50 Where fmap f = (pure f <*>) 19:53:58 Phantom_Hoover_: and haskell does not support doing that, is what i'm saying 19:54:03 Oh, why? 19:54:22 Well, I looked up overlapping definitions, but I just ended up confused. 19:54:29 s/definitions/instances/ 19:55:07 Anyway, food. 19:57:21 Phantom_Hoover_: the algorithm ghc uses to look up whether a type belongs to a class does not look at other typeclasses it belongs to until _after_ deciding which instance to use, so class Applicative a => Functor a ... would be used for _every_ type a during the lookup phase. 19:57:51 unless you allow overlapping instances. 19:59:10 this restriction is in order to ensure that under normal circumstances, adding a new instance never changes the interpretation of already defined ones. 20:00:43 (without giving a compiler error for overlapping) 20:02:23 it may also have something to do with keeping the typeclass resolution decidable 20:03:11 also this has been complained about before, but the haskell gurus are ardent about keeping this "open world" property 20:09:37 btw 20:10:16 i thought about a compiler for a language typed pretty much like javascript 20:11:02 and i'd write type inference engine that would try to avoid any type hinting 20:11:21 but then it can't guarantee correctness, right? 20:11:34 Did you know...... there is big spider on my bed? 20:12:16 yuck! 20:12:39 how big? 20:13:08 approx. 1 metre 20:13:41 :F 20:14:15 Sorry, "F" is incorrect. The only choices are "A", "B", "C", "D". 20:14:27 (It is multiple choice question, isn't it?) 20:15:18 nooga: type hinting? 20:15:22 you mean type signatures? 20:15:28 nooga: what do you mean re - guarantee correctness 20:16:46 nooga: the technical theorem goes something like "full type inference in the presence of subtyping is undecidable" 20:17:11 oerjan: indeed, but if nooga's ok with hindley-milner ... 20:17:32 well javascript has object orientation 20:18:02 oerjan: yes, but javascript also has dynamic typing 20:18:08 so clearly nooga is straying slightly :) 20:18:14 oerjan: btw javascript has no inheritance 20:18:20 oh 20:18:24 oerjan: it's prototype-based, which is even /more/ of a headache 20:18:32 oerjan: yes, you can inherit things ... but you can also do hideous things too 20:18:48 oerjan: and it's hard to distinguish types (prototype objects) from values (their clones) 20:20:56 heh, apple doesn't let you register as a developer without specifying a company/organisation 20:21:02 elliott from N/A corp here 20:21:16 I think Javascript is better program language than PHP in general (ignoring their common uses) 20:21:55 Which Apple platforms do you develop with? Select all that apply. 20:21:55 iOS 20:21:55 Mac OS X 20:21:57 Safari 20:22:01 * elliott wonders how one "develops for Safari" 20:22:34 I think Hu Jintao is a much nicer politician than Stalin in general (ignoring their common policies) 20:22:52 Which web technologies do you work with? Select all that apply. 20:22:52 C# CSS 3 HTML 5 Internet Plug-ins Java JavaScript/AJAX/Ruby/Rails Perl/PHP/Python Other 20:22:59 "JavaScript/AJAX/Ruby/Rails" 20:23:03 I swear to god that is a single checkbox. 20:23:33 oerjan: there's an opinion in your message, but i can't find it 20:23:58 elliott: that comparing crap and horrible crap doesn't say much 20:24:11 oerjan: i never thought of you as a guy with opinions :D 20:24:19 [[By checking this box I confirm that I have read and agree to be bound by the Agreement above. I also confirm that I am of the legal age of majority in the jurisdiction in which I reside (at least 18 years of age in many countries).]] 20:24:24 oh snap, being under 18 i can check this without consequence 20:24:31 elliott: no no it's not an opinion, it's a meta-opinion 20:24:48 oerjan: well yes, but you just demonstrated anti-JS and anti-PHP sentiment :) 20:24:49 and i never m *hit by time-traveling anvil* 20:25:02 elliott: doesn't quite work that way 20:25:06 btw wouldn't mao have been more obvious 20:25:21 elliott: well i considered it 20:25:21 coppro: shh! I'm relying on being considered too stupid to have understood what I'm doing 20:25:30 uh 20:26:15 js is quite good 20:26:26 js is good apart from 90% of it which is horrible 20:26:29 the 10% is Scheme 20:26:33 yes 20:26:37 i like this 10% 20:26:43 nooga: yes, unfortunately it's useless 20:26:49 things like the object model and the DOM exist outside it 20:26:53 rainwave! 20:26:55 but look at the design of jQuery! 20:26:56 nooga: also the syntax is sub-optimal for a Scheme. 20:27:35 goddamit CBC 20:27:37 coppro: i'm using a system COMPILED ENTIRELY WITH CLANG APART FROM THE KERNEL 20:27:40 stop using the word 'troll' right 20:27:40 leading f'n edge 20:27:41 it's confusing 20:27:46 haha 20:27:47 elliott: nice 20:27:48 what 20:27:55 elliott: 'troll' as in fishing 20:27:55 coppro: yeah, they call it OS X :trollface: 20:28:00 coppro: Problem? 20:28:07 ;D 20:28:18 elliott: "The site trolls for information" 20:28:21 put elliott on /b/ 20:28:25 coppro: what xD 20:28:37 elliott: it is correct usage of the word 20:28:38 nooga: i'm an innocent flower who has never seen /b/ before. 20:28:40 watch trolls being trolled 20:28:41 and you better believe it 20:28:43 coppro: I know 20:28:44 coppro: but lol 20:28:56 elliott is so believable 20:29:16 5 hours until xcode downloads 20:29:19 i think i might plug into ethernet 20:29:28 that's how he gets close to you and *stabs* you 20:29:36 i believe that there are some highly intelligent /b/tards out there that make idiots of themselves on /b/ just for pure fun 20:29:53 this is true 20:30:22 nooga: that's all of them. 20:30:31 nah 20:30:38 well. ok. it used to be all of them :) 20:30:47 it used... 20:31:13 nooga: in the past. 20:32:45 yay it's going faster now 20:43:59 oerjan: http://article.gmane.org/gmane.comp.lang.haskell.cafe/84865 20:44:18 fizzie, mcmap somehow got desynced while building with torches near max alt. 20:44:48 fizzie, it "works" but the are has random "garbage" 20:44:52 Vorpal: I blame Notch. 20:45:00 oerjan: is it time for Peter Landin Facts? 20:45:10 elliott, hah 20:46:11 http://www.reddit.com/r/Minecraft/comments/essc7/ok_i_am_a_bit_freaked_out/ 20:46:28 Notch should make that kind of stuff generate naturally. 20:46:46 Evidence of people being there before, occasional hidden deposits of useful things... man-made objects... 20:47:51 -!- sebbu2 has changed nick to sebbu. 20:48:14 elliott, quite, might want it as an option though to avoid pissing of users who want to feel that they are the first to walk there 20:48:25 Vorpal: everything's an option :P 20:48:26 personally I'm ok with either 20:49:16 http://i.imgur.com/UGw2n.gif 20:49:21 holy shit what limechat 20:49:26 why are you inlining images 20:49:29 bad limechat 20:49:31 elliott, that think you linked: maybe F4 "bug"? 20:49:32 nobody link to goatse 20:49:36 elliott, that is an awesome MC idea. 20:49:45 Vorpal: apparently, it's chunks from old worlds being loaded 20:49:52 except if he didn't build a nether portal ... well ... 20:49:55 who knows anyway 20:50:03 fixed the image inlining 20:50:06 you can all link to goatse now 20:50:07 elliott, remember when pressing f4 gave you nether? 20:50:10 Vorpal: yes 20:50:20 * Phantom_Hoover_ doesn't. 20:50:23 elliott, maybe he did that by mistake, that is what I meant 20:50:31 Vorpal: doubt it. since the boats etc 20:50:33 `addquote nobody link to goatse elliott, that is an awesome MC idea. 20:50:36 Vorpal: and minecarts and chests 20:50:41 elliott, hm okay 20:50:52 elliott, then weird bug or a hoax? 20:50:53 * Phantom_Hoover_ swatpans oerjan --==\#/ 20:51:42 `echo hi 20:51:43 I wonder why they didn't include XCode on the reinstall drive that comes with the Air. 20:51:43 elliott, the steps for roof thing is quite nice when you can use it 20:51:50 (It's the tiniest USB drive I have /ever/ seen.) 20:52:08 By tiny I mean *TINY*: 20:52:08 http://news.cnet.com/i/tim/2010/10/20/DSC_0072_610x438.JPG 20:52:09 elliott, so it doesn't have the developer cd? 20:52:13 hi 20:52:13 256) nobody link to goatse elliott, that is an awesome MC idea. 20:52:22 `quote 256 20:52:23 256) nobody link to goatse elliott, that is an awesome MC idea. 20:52:23 Vorpal: The developer CD == the install DVD. Or maybe it still comes on 2, so the second DVD. 20:52:32 elliott, how thick is it drive? 20:52:33 Vorpal: But, eh, you can download it for free. All 3 gigabytes of it. 20:52:41 Vorpal: It's thinner than the USB port. 20:52:48 elliott, that sounds... unreliable? 20:52:53 Vorpal: Not really. 20:52:58 Bit hard to push in though. 20:53:15 elliott, I wouldn't dare push it 20:53:24 Vorpal: I had to wriggle it :-P 20:53:35 Incidentally, this thing is *crazy* thin. 20:53:44 It's exactly as high as a USB port ... in the highest place. 20:54:01 elliott, you need a border around the port, or it wouldn't be a port 20:54:04 (Well, OK, there is an imperceptible bit of non-USB-port aluminium above and below the USB ports. But still.) 20:54:19 I am fairly sure it's actually powered by gnomes. 20:54:26 Flat, two-dimensional gnomes. 20:54:27 elliott, unibody design I presume? 20:54:31 Vorpal: Yes. 20:54:37 [[But that is nuts.]] — someone on that Reddit thread who clearly has no insight into the twisted mind of Notch. 20:54:49 Vorpal: I think the connections to other parts would make it 10x thicker :-P 20:55:02 It actually has screw holes to open up the bottom though. 20:55:12 But it would be impossible to do anything but replace the battery. 20:55:25 The SSD isn't soldered on (the RAM is though), but it's chips without any enclosure, slotted into the motherboard. 20:55:25 elliott, what was the nature of the madness that lead you to buy this laptop? 20:55:37 elliott, soldered on ram? yeargh 20:55:37 And I don't think you can buy the chips separately. 20:55:58 Vorpal: To be fair, at least it was necessary in this case rather than being a "fuck you customers thing". 20:56:05 Well, necessary given the crazy design goals. 20:56:10 Phantom_Hoover_: God knows. 20:56:45 elliott, please run me through the events that lead to it coming into your possession. 20:56:52 elliott, is the wifi good? 20:56:59 elliott, and does it have bluetooth? 20:57:08 Vorpal: Yes. Well, I haven't tried any LAN stuff yet, but the WiFi is very reliable so far. 20:57:10 * Phantom_Hoover_ ponders doing an Oolite Let's Play. 20:57:11 Yes, Bluetooth. 20:57:23 hm 20:57:53 elliott, keyboard backlit? 20:57:57 elliott, FWIW, new Minecraft Experiment update. 20:57:58 Phantom_Hoover_: What's this. Oh. That's thin. Too bad the specs are -- it has a decent processor? Better GPU? 4 gigs of RAM? ...High resolution display? No. No. I won't do it. I won't be tem- HOW thin? DAMN YOU, STEVE JOBS, YOU CRAZY MAN! I CANNOT RESIST! 20:58:07 Vorpal: No. That is the one thing it does not have :P 20:58:14 (The previous model did IIRC, presumably it took up TOO MUCH ROOM.) 20:58:22 elliott, what about a lamp above it? 20:58:23 THANKFULLY I can touch type. 20:58:27 elliott, as in, above the screen 20:58:28 Vorpal: No. I can touch type. 20:58:32 Vorpal: Well. 20:58:37 Vorpal: You could use the camera-is-on LED :-P 20:58:42 Or just the light from the screen. 20:58:43 hah 20:58:56 It *is* LED, so it runs the full gamut from black to lightbulb. 20:59:01 elliott, what about flash reader? 20:59:10 I doubt it will do CF 20:59:16 but many some of the smaller ones? 20:59:28 Vorpal: It has an SD card reader, at least. I don't know if it's a fancy combo thing. 20:59:39 ah 20:59:40 http://cubeengine.com/ this + crafting system + procedural landscape + MMO server > minecraft 21:00:01 elliott, and how many USB ports was it? 21:00:05 nooga: As a fan of Wouter (like everyone here!): shut up. 21:00:11 Wouter? 21:00:18 wouter? 21:00:19 Phantom_Hoover_: Inventor of Aardappel, and also Saurbraten. 21:00:28 He's the guy with 3498573495349857393945 languages. 21:00:31 cube engine is pure awesomness 21:00:32 Also FALSE. 21:00:33 Of course. 21:00:39 Vorpal: A whole two USB ports. 21:00:39 I recognise these things, but I know nothing about them. Except FALSE. 21:00:52 Phantom_Hoover_: http://strlen.com/aardappel-language 21:00:54 elliott, hm... how is cooling? 21:01:03 elliott, and did you try dwarf fortress? 21:01:06 elliott, looking at it now. 21:01:26 Vorpal, Dwarf Fortress is pretty boring, to be honest. 21:01:32 Vorpal: It's cool enough that I'm using it on my lap with no discomfort at all, and it only got lukewarm when I played Minecraft on maximum settings. (But the fan made a bit of noise.) 21:01:37 Haven't tried Dwarf Fortress yet. 21:01:51 And there's no obvious Linux version. 21:01:56 Phantom_Hoover_: Yes there is. 21:02:09 *Obvious.* 21:02:09 SDL: Windows | Mirror 1 | Mirror 2 | Mirror 3 | Windows (No Music) | Linux | Mac (Intel) 21:02:11 Note "Linux". 21:02:19 It's on the same line as the Windows download. 21:02:19 THERE WASN'T WHEN I LOOKED 21:02:26 I tried to play Dwarf Fortress once. I don't like the game, also there is many things I cannot figure out how to change (if it can be changed), and it is slow. In general, I do not like this game. 21:02:37 Yeah I technically don't remember that either :P 21:02:41 zzo38: It's slow because your computer is slow. 21:03:01 Vorpal, Dwarf Fortress is pretty boring, to be honest. <-- that is not important here. The important bit is that it has high system requirements 21:03:33 elliott: Well, yes, my computer is one of the things that makes it slow. 21:03:37 Vorpal: This thing is better than my iMac, let's put it that way. :p 21:04:00 elliott, if you ran windows I would suggest crysis 21:04:08 When I tried playing it, I was astounded at the world generation, then confused to hell by the interface once gameplay actually started, then bored to hell and driven off by the prospect of (gasp!) micromanagement. 21:04:18 Crysis is only slow if you max the settings out, I gather :-P 21:04:41 elliott, well, I never tried it. 21:04:51 But it amuses me that, four years after it was released, getting it to run at high FPS on maximum settings is still reserved for the absolute most expensive cards. 21:05:01 hah 21:05:19 Play different game, such as the games I make you can watch. Or, please make up your own games (or game ideas)! 21:05:27 .... 21:05:39 zzo38: My game idea is to make a game that is Dwarf Fortress. 21:06:18 elliott, crysis is mainly GPU heavy right? So combine crysis 3D engine with dwarf fortress 21:06:18 Vorpal: I have to admit that swiping four fingers downwards to activate Expose makes me feel like a bit of an uncivilised savage. 21:06:27 Like I'm swatting something with my paw. 21:06:43 elliott: Can you write a FOSS game working like Dwarf Fortress and with improvements? 21:06:44 elliott, didn't they use to put that in F? 21:06:53 zzo38: Probably not :-P 21:07:13 elliott, if I suggested something like that, I would get a very different answer :P 21:07:26 Vorpal: They still do, but since over a third of the laptop's bottom is dedicated to a gigantic slab of clickable glass, I'm gonna use the shit out of it. 21:07:45 elliott, hope it doesn't break 21:07:58 Vorpal: What, the glass? 21:08:10 It's not like glassy glass, it's just glass-coated. :p 21:08:11 yeah 21:08:15 ah 21:08:20 It feels like very smooth plastic, basically. 21:08:22 http://zzo38computer.cjb.net/irc_log/ADMIN/1293597986 21:08:34 elliott, what about fingerprints 21:08:58 Vorpal: I don't see any. It's not like the iPhone's screen. 21:09:14 Note: I don't have any idea what it's actually made of, I just know it's coated with glass. 21:09:33 It's nice, though; most trackpads feel really small to me. 21:09:37 elliott: hey theoretically one could make a game that would keep using more and more resources the more computing power you throw at it, until it successfully simulates a universe in perfect detail 21:09:49 oerjan: indeed! get on it 21:10:13 theoretically, i am 21:10:25 * Phantom_Hoover_ wonders what the eigenratio of the universe is. 21:10:38 oerjan: er howso :D 21:10:47 oerjan, some sort of fractal might be a good way to do it 21:10:59 elliott: it's a very dubious theory 21:11:02 Vorpal: Matter is already fractal. 21:11:09 elliott, indeed. 21:11:13 Matter is made out of matter is made out of matter is made out of quarks is ... oh, wait, never mind. 21:11:26 elliott, fractal up to a point 21:11:26 (Is made out of tiny vibrating strings is made out of raw hate for Notch!) 21:11:29 elliott, matter is just a general term. 21:11:50 Phantom_Hoover_: Well, yes, but the way I see oerjan's idea, you'd go from simulating entire macroscopic objects to breaking them down slightly, to doing atoms, 21:11:54 to simulating THE VERY FABRIC OF MATTER. 21:12:06 elliott, but considering something like a tree. They have a fractal nature. So level of detail comes more or less "naturally" there 21:12:09 elliott: actually the virtual particle creation and destruction makes things fractal even at the elementary particle level, i believe. 21:12:22 It's more like Inductive matter := | | | . 21:12:24 yeah well 21:12:27 Invent the game called "Sandwich - The Card Game" and "Professional Octopus of the World" (these names are just generated by randomly) 21:12:28 your face is fractal ugly 21:12:32 oerjan, how? 21:12:51 `addquote Invent the game called "Sandwich - The Card Game" and "Professional Octopus of the World" (these names are just generated by randomly) 21:12:52 257) Invent the game called "Sandwich - The Card Game" and "Professional Octopus of the World" (these names are just generated by randomly) 21:13:45 -!- wareya_ has joined. 21:16:55 -!- wareya has quit (Ping timeout: 265 seconds). 21:17:12 Phantom_Hoover_: basically every elementary particle is surrounded by an infinite cloud of virtual ones, which only exist for tiny moments before being destroyed again. this causes the math to blow up and they have to use a trick called renormalization to calculate how the things we actually observe (which consist of "real" particle + "virtual" cloud) behave 21:17:19 Why don't you please try to play CGA Collection game, one of these games might be good game to you??? 21:17:33 oerjan, still don't see the fractalness. 21:17:49 There's no self-similarity, just loads of particles on the same scale. 21:18:09 Phantom_Hoover_: these virtual particles, for the moment they exist, have their own virtual cloud 21:18:23 Hmm. 21:18:51 But you're still selecting from a finite range of particles with constant size. 21:19:06 You can't zoom in on an electron and see lots of little electrons. 21:19:14 the particles themselves have size _zero_ in the theory 21:19:44 oerjan: is this theory widely-accepted? :P 21:19:49 elliott, yes. 21:19:53 But they have mass, though. And mass is also energy. 21:19:58 well, right 21:20:02 i meant the -- oh forget it 21:20:06 It's part of the accepted corpus of QM. 21:20:06 i am terrible at explaining things 21:20:07 but they can have differing amounts of energy. in fact a virtual particle can have higher energy the shorter they live. (heisenberg uncertainty) 21:20:29 oerjan, which leads neatly onto my awesome generator idea. 21:20:48 Which converts mass directly to energy without any of that tedious mucking about with antimatter. 21:21:25 zzo38: well mass is usually fixed for each particle type afaik. it's the extra which varies, i think. actually i'm not very sure about those details 21:21:42 *the extra energy 21:21:51 Phantom_Hoover_: oh? 21:22:40 elliott, Hawking generator? 21:22:50 I explained it yesterday when you were here? 21:22:54 Oh, right. 21:22:57 Didn't that involve antimatter? 21:23:28 I applaud 3GPP for making IMS IPv6-only... :-) 21:23:39 And no, hawking generator doesn't involve antimatter. 21:24:38 elliott, no. 21:24:54 Well, right. 21:24:54 Although you could use it to convert antimatter into energy as well. 21:25:00 Phantom_Hoover_: How is it *your* idea again? :-) 21:25:12 One thing about black holes: Is baryon number property of black holes or do black holes violate conservation of baryon number? 21:25:23 Phantom_Hoover_: it _does_ remain to be seen if a radiating black hole really destroys all quantum numbers other than charge and rotation, as predicted. hm if not would that prevent the hole from disappearing? 21:25:54 who cares, black holes don't exist anyway 21:25:54 *mass, charge and rotation 21:25:56 oerjan, hmm? 21:25:59 Same for lepton numbers (3 of them). 21:26:07 elliott, please tell me cpressey doesn't really think that. 21:26:23 Phantom_Hoover_: Well, he doesn't actively go around saying black holes don't exist but he isn't convinced of their existence. 21:26:33 * Phantom_Hoover_ sighs. 21:26:46 Why... just, why? 21:27:01 Also, B-L... That being violated would be even bigger deal than baryon/lepton number violations... 21:27:13 Phantom_Hoover_: Hey now, I distinctly recall some pop sci article saying SCIENTISTS were considering that they might not exist ;) 21:27:49 Phantom_Hoover_: if black holes preserve baryon number, say, then they would have to radiate matter rather than antimatter. and that would mean they couldn't radiate just mostly photons... someone's probably thought about this 21:28:11 I'd grep the logs for cpressey's opinions on black holes, but I'd need hg to check out Gregor's log repository, and to get hg I need Homebrew, and to use Homebrew I need XCode which is downloading. 21:28:22 Ilari: oh i didn't notice you asking the same question 21:28:24 elliott, wait, ahhh. 21:28:33 Well, the matter/antimatter distinction in hawking radiation doesn't matter anyway before they reach enough temperature to start radiating electrons... 21:28:35 oerjan, awww. 21:28:41 Phantom_Hoover_: ? 21:28:44 elliott: lawlfail 21:28:54 Gregor: SHUT UP, IT HAS A GIGANTIC GLASS TRACKPAD. 21:29:02 elliott, getting the codu repository from hg. 21:29:18 Phantom_Hoover_: Why did you go wait, ahhh. 21:29:40 And being able to reach 511keV thermally requires _quite_ high temperature. 21:29:48 elliott, because I've wanted that forever. 21:30:11 Phantom_Hoover_: Don't post the link, Gregor's method of conserving bandwidth appears to be to not publicise it at all and let people find it themselves :P 21:30:25 Admittedly it is just a one-time download of about 70 megs. 21:30:26 Pretty much :P 21:30:29 Maybe nearing 100 by now. 21:30:56 33 minutes remaining for XCode ... 21:31:20 I wonder if I can tell Homebrew to use clang by default. 21:31:57 Ilari: you could imagine that black holes would stop radiating at some point because they couldn't satisfy the necessary quantum numbers... 21:33:11 Phantom_Hoover_: http://i.imgur.com/H9nHB.png OUR GLASS HATS ARE ... WAIT FOR IT ... OLD-HAT 21:33:23 OMG 21:33:24 Phantom_Hoover_: http://i.imgur.com/eUq9d.png 21:33:26 Vorpal: http://i.imgur.com/eUq9d.png 21:33:34 WE NEED A CACTUS KIT THIS _VERY SECOND_ 21:33:41 Wait, is this GENERAL? 21:33:54 -!- Gregor has set topic: turds at http://esolangs.org/wiki/Main_Page | turds at voxelperfect.net have expired | historical turds at http://tunes.org/~nef/logs/esoteric/?C=M;O=D or via hg at http://codu.org/projects/esotericlogs/hg/. 21:33:59 Phantom_Hoover_: Well ... I think it has to be a _block_. 21:33:59 DUN DUN DUNNNNNNNN 21:34:04 Gregor: That ... is really unwise :P 21:34:04 btw is anyone mirroring the actual wiki? this dns business is starting to make me nervous 21:34:06 Gregor: Also you forgot https. 21:34:07 oerjan: yes. 21:34:10 Gregor has it in hg. 21:34:16 good, good 21:34:16 other people have backups 21:34:33 elliott: Works via both http and https 21:34:35 But Gregor would only host the wiki if he could make it Hackiki :D 21:34:40 Gregor: BUT HOW CAN I SECURE MY TRANSMUTION 21:34:49 elliott: By putting an 's' on it :P 21:34:55 Gregor: YOU ARE FASCIST 21:35:05 elliott: no no s is for socialist 21:35:26 Meaning the lack of 's' is for fascism. 21:35:27 Phantom_Hoover_: [[This works with any block on SMP. Not items though. I gave myself a lightstone head.]] 21:36:10 Phantom_Hoover_: http://dl.dropbox.com/u/6771672/minecraft/armorbug/stairs.png 21:36:16 Phantom_Hoover_: http://dl.dropbox.com/u/6771672/minecraft/armorbug/fence.png 21:36:23 Phantom_Hoover_: http://dl.dropbox.com/u/6771672/minecraft/armorbug/halfblock.png 21:36:36 Phantom_Hoover_: http://dl.dropbox.com/u/6771672/minecraft/armorbug/portal.png APPARENTLY THIS IS ANIMATED OMG OMG OMG WANT 21:36:37 elliott, OK, so what should I search for in the logs to see cpressey being nuts? 21:36:41 I WANT A SWIRLY HEAD 21:36:52 Phantom_Hoover_: Um, grep -i 'cpressey>.*black' 21:36:55 elliott, :P 21:37:00 *-ri 'cpressey>.*black' . 21:37:03 Well. 21:37:07 -i 'cpressey>.*black' 10* 21:37:31 Phantom_Hoover_: http://i.imgur.com/rNfZR.png 21:37:33 I think you should make esolang wiki have both MediaWiki and Hackiki, and allow some limited interaction between them. 21:37:52 "I put diamond ore on my head, many Lolz ensued" "Camp near where people are digging and hide your lower half, then when they try to mine the diamond the ore runs away :D" 21:38:29 Phantom_Hoover_: apparently you can get a torch stuck to your head 21:38:31 I want a lavaface 21:39:13 elementaly, my dear elliott 21:39:20 oerjan: racist! 21:39:21 *+l 21:39:35 its funny cuz of asians and r and l 21:39:44 elliott: hey i have nothing against fire elementals 21:40:04 ineiros, there? 21:41:03 elliott: i suddenly envision people getting in trouble for collecting shoe laces ("Oh, I'm a lacist!") 21:41:21 xD 21:41:24 ineiros, if so: wrt that bug. What I did for cryptsetup-luks on ubuntu (which also uses device-mapper in the end, like lvm), was to set up disk using system rescue cd. Then I booted ubuntu live cd, mounted stuff, and installed on there 21:41:56 ineiros, and before I rebooted I made sure the initramfs had cryptsetup of course 21:42:57 CALL APOGEE SAY "AARDWOLF" 21:43:17 * oerjan now envisions _chinese_ people getting in trouble for collecting shoe laces 21:45:23 i have a confession to make 21:45:27 i am addicted to this magnetic power cord 21:45:28 because 21:45:28 https? no httpy? :-) 21:45:35 it actually snaps into the computer 21:45:37 if you hold it close enough 21:45:57 Ilari_antrcomp: Httpy? You mean http://www.eros-os.org/pipermail/e-lang/2000-May/003341.html? :p 21:46:01 GAWD I hate the magnetic power cord attachment. 21:46:09 It only comes out when I don't want it to. 21:46:30 Gregor: The point is that it always comes out rather than having your laptop fall off the table, dude :P 21:46:48 I've never had this mystical laptop-falling-off-the-table experience. 21:46:48 elliott, the new ones are stupid iirc. Since the cable doesn't attach straight out 21:46:59 Vorpal: Define "attach straight out". 21:47:04 But I do have a never-ending sequence of plug-coming-out-of-laptop-for-no-reason. 21:47:11 Gregor: You are not clumsy. I am clumsy. 21:47:32 Admittedly it's come out once or twice without me wanting it today :P 21:49:32 Back when I still used the family MacBook the power cord broke at the attachment. 21:49:50 An entirely new cord was needed, at considerable expense. 21:50:25 cheater99, the one with the bad guy who enters minds 21:50:26 ones 21:50:35 Phantom_Hoover_: Was that a magsafe one or an older one? 21:50:43 elliott, magsafe. 21:50:58 MAGNETS ARE EXPENSIVE 21:51:44 They're not even high-end magnets. 21:51:44 Phantom_Hoover_: IIRC the original MagSafe was really badly designed. 21:51:56 -!- hagb4rd has joined. 21:51:56 elliott, you don't need to tell me tha. 21:51:58 *that 21:52:09 It *melted* in the end. 21:52:59 Phantom_Hoover_: Yeah... Apple like to rush things. 21:53:14 And overcharge for replacements. 21:53:33 Phantom_Hoover_: How much did the cord cost? 21:53:51 £60 or so IIRC. 21:54:04 Phantom_Hoover_: Niiiiiiiiiiice. 21:54:07 For a transformer, some wires and a magnet. 21:54:16 Phantom_Hoover_: Well, Apple do like to sell AppleCare. :-P 21:54:27 (AppleCare? No AppleDon't.) 21:54:29 I seriously don't understand people who think Apple gives you value for money. 21:55:45 I don't like the removal of mana burn in Magic: the Gathering cards 21:56:04 Phantom_Hoover_: Apple computers are, in fact, well-priced; the components are high quality. It's just that most people don't really care how well-shaped their aluminium computer is. 21:56:10 Replacements are a complete ripoff, of course. 21:56:17 Well, they do offer an easy to use alternative to Windows. Expensive, but still 21:56:34 Phantom_Hoover_: (For instance, the new iMacs are ridiculously cheap. Let's put it this way: The 27" models are as expensive as the _display they use_ would be by itself.) 21:56:36 (IPS.) 21:56:54 Ridiculously cheap in relative terms of course ... they still cost a bundle. 21:58:04 elliott, what's wrong with Racket? 21:58:30 Absolutely nothin' (well, some things, but not much). 22:00:13 -!- ais523 has quit (Remote host closed the connection). 22:00:35 RIP ais523 22:00:50 I agree that mana burn should've been kept, in general the game's been dumbed down too much IMO 22:01:41 Wait, what's the point either way? Are there a lot of things that cause there to be more than one mana put into the pool? 22:01:49 OMG. 22:01:49 Yes 22:01:51 Epiphany. 22:02:03 Phantom_Hoover_: We must make Dwarf Fortress: The Tabletop RPG. 22:02:08 All computation done by humans. 22:02:14 It would be THE WORST> 22:02:15 *WORST. 22:02:31 elliott, on that topic http://wiki.alioth.net/index.php/Random_number_generator 22:02:40 A detailed explanation of Elite's RNG. 22:02:40 Deewiant: Yes I think that is correct. Mana burn should kept, and a lot of things have been made badly. 22:02:52 And galaxy-production mechanisms. 22:03:02 I also think it has been dumbed down too much 22:03:14 Hell, I think they should've kept interrupts :-P 22:03:15 Phantom_Hoover_: "On that topic"? :P 22:03:26 elliott, procedural generation! 22:03:40 "Installing this software requires 9.53 GB of space." 22:03:47 I think that's in decimal gigabytes. But still. 22:03:51 Deewiant: No, I like how the stack works actually. But there are some rules I never liked, such as the rule that a Aura that is also a creature is destroyed. 22:04:16 I just liked that interrupts could be played during damage prevention but instants couldn't 22:04:47 Phantom_Hoover_: Is Oolite actually fun? 22:04:47 Nowadays you can block a creature, have it deal damage, and then return it to your hand with Boomerang for example; in the past I don't think you could 22:04:53 Have the blocker deal damage, I mean 22:04:59 elliott, depends. 22:05:01 I also don't really like the way that planeswalkers rules work 22:05:04 Phantom_Hoover_: On? 22:05:29 It's pretty boring slog at the start, but it gets better once you have the cash to pay for gadgets and blow things up. 22:05:30 Well the planeswalker thing is actually a complication so I'm kind of fine with that in terms of "dumbing things down", although mostly they seem overpowered to me 22:05:59 It is unnerving for disk activity to be happening with no audial indication. 22:06:45 I have written rules for a "playercard" which is somewhat similar to a planeswalker, but it acts as another player. It doesn't get turns normally, but some spells can give it extra turns if it is a card that can give players extra turns. 22:06:48 I recommend a RAID-1 array of a few dozen 10000 RPM disks, it should help with that 22:07:17 OK, I wonder if this thing is meant to get hot when installing software. 22:07:32 elliott, OTOH, you can always hack your save files to give yourself 10000000 credits and then buy tonnes of stuff, then install some OXPs and go nuts. 22:07:33 Playercards are not allowed to concede, their life total is equal to the number of their loyalty counters, and they are discarded if they win or lose the game (and the game continues). 22:07:40 Come on fan! You can do it! 22:07:45 VROOOOOOOOOOOOOOOOOOM 22:08:09 SOON I WILL BE INFERTILE 22:08:12 YOU MUST HELP ME OUT, FAN 22:08:17 SAVE MY CHILDREN 22:09:15 Dear god, it's gone into jet engine mode. 22:09:19 I'm worried. 22:10:43 Phantom_Hoover_: Vorpal: Recommendation seen on /r/minecraft: -Xincgc. 22:10:48 Incremental GC. 22:11:07 Phantom_Hoover_: Oh, time for irony. 22:11:09 Phantom_Hoover_: [[Problem is, Notch said gold is intentionally useless — to quote him, "it's kind of a political statement". He was interested in the way gold is useless in the real world, but still has such a high value, and wanted to replicate that in Minecraft.]] 22:11:17 Phantom_Hoover_: And yet diamond is the most useful ore in the game. 22:11:28 And gold is certainly not useless in the real world 22:11:32 Minecraft -- sponsored by De BEers. 22:11:33 *Beers. 22:11:34 See if you can figure out what any of these things do in Magic: the Gathering cards : 22:11:42 * A card with the type "Instant Land". 22:11:49 elliott, well, diamond is very useful IRL. 22:11:59 (As is gold, but not as obviously.) 22:12:06 * A creature with "Phasing. When ~ comes into play, it becomes an Instant in addition to its other types." 22:12:13 Phantom_Hoover_: Yes. But diamond is also not NEARLY as scarce as its price suggests. 22:12:19 An instant that granted mana makes more sense to me than "instant land" 22:12:29 Yet in Minecraft diamond is very rare and very useful, and Notch ... mocks gold for being useless? 22:12:31 Sgeo: That is not what I am asking. 22:13:01 * A card with "Tribal" as its only type. 22:13:11 elliott, so wait, the rumours about De Beers are true? 22:13:53 Phantom_Hoover_: The "rumours"? 22:14:00 Sgeo: I am asking what you would think would happen if a card's type somehow was "Instant Land", not what would make more sense and that kind of stuff. 22:14:07 When I was told them I was told they were rumours. 22:14:26 Phantom_Hoover_: If you mean the fact that diamond's supply is very carefully controlled to keep it expensive and rare-seeming, then I don't know if I'd call them rumours so much as definite facts. 22:14:46 Remember that De Beers was a monopoly for god knows how long. 22:14:52 Yes, that was it. 22:14:59 [[De Beers is well known for its monopolistic practices throughout the 20th century, whereby it used its dominant position to manipulate the international diamond market.[2][16] The company used several methods to exercise this control over the market: Firstly, it convinced independent producers to join its single channel monopoly, it flooded the market with diamonds similar to those of producers who refused to join the cartel, and la 22:14:59 stly, it purchased and stockpiled diamonds produced by other manufacturers in order to control prices through supply.[17] However, the De Beers model changed in 2000,[17] due to factors such as the decision by producers in Russia, Canada and Australia, to distribute diamonds outside of the De Beers channel, thus effectively ending the monopoly.[2][16]]] 22:15:06 Phantom_Hoover_: But the effects -- diamond's ludicrous price -- remain. 22:15:55 [[“I plan on adding some kind of overarching narrative to the game to drive the player forward and provide a sense of direction, and add many more new features, like monster towns and alchemy.”]] -Notch 22:16:35 I think the ruins idea is interesting. 22:17:10 Especially if there were old mines. 22:18:16 Hey, you could make it psychological horror or something! 22:18:30 MC is a very horrific setting in the first place. 22:18:43 Or at least SSP is. 22:20:05 it is a price people are willing to pay though 22:20:51 coppro: yes ... because of De Beers marketing them :) 22:21:34 the price will likely drop though 22:25:43 Spam subject: "stop smoking shark" 22:26:06 I'll smoke as much shark as I want. 22:28:19 #machomebrew is INSUFFICIENTLY ACTIVE. 22:29:07 -!- variable has quit (Read error: Operation timed out). 22:29:58 Please tell me that that means something other than what I think it means 22:30:08 Sgeo: What do you think it means? 22:30:33 elliott, a way to get binaries not signed by Apple onto Macs. Apple isn't THAT psychotic, is it? 22:30:41 Yes, yes they are! 22:31:42 Sgeo, programming on the Mac is *horrible*. 22:31:54 elliott, drained another two lines today in the cube. You haven't drained any today. No offence meant. Just a fact. 22:32:06 You need to get *every binary* signed by Apple. 22:32:09 Phantom_Hoover_, horrible as in, requires assistance from Apple, or horrible as in, .... WTF 22:32:19 Phantom_Hoover_, you're joking 22:32:20 Recompile? Need new signature. 22:32:23 You have to be joking 22:32:27 Nope. 22:32:42 -!- variable has joined. 22:32:44 Heck, even the interpreted languages are restricted. 22:33:20 They have their own versions of Python and Perl which perform signature checks, and any other interpreters are denied permission. 22:33:31 Vorpal: It's not just a fact, you're complaining. What would you prefer I do? Make packages magically install faster so I can compile mcmap? 22:33:37 Shall I get out my magic wand? 22:33:43 Phantom_Hoover_: Also Ruby! 22:33:48 Phantom_Hoover_, I think you're trying to illustrate the silliness of what I thought was going on 22:33:48 elliott, play without mcmap? 22:33:50 Right? 22:33:54 Phantom_Hoover_: And WALK to the Cube? 22:33:55 Sgeo, I wish I was. 22:33:57 I don't think so. 22:34:01 elliott, you have two computers. 22:34:12 Phantom_Hoover_, link to source? 22:34:13 I AM NOT TURNING ON MY OLD LAPTOP JUST TO RUN MCMAP FOR FUCK'S SAKE 22:34:23 elliott, also you don't /need/ mcmap as such. 22:34:33 sure, it is nice to have 22:34:43 Vorpal: I am not walking to the Cube. 22:34:51 Ergo I need //goto. 22:34:51 elliott, yeah, but I mean, you'll have to wait to get Apple to sign it as well. 22:35:07 Might as well break out the old laptop. 22:35:55 The GPLv3 prevents allowing them from doing such things unless you are given a separate key for your own computer so that it can be bypassed in that way 22:36:06 Does Python/Perl/Ruby have this license? 22:36:10 I don't know. 22:36:39 None of those are GPLv3'd. 22:37:09 But GNU packages are GPLv3'd. 22:37:29 Are you not allowed to run any GNU packages? 22:37:30 -!- hagb4rd has quit (Ping timeout: 272 seconds). 22:37:37 zzo38: You can if you homebrew them. 22:38:12 elliott: What does "homebrew them" mean? What do you do in order to do that? 22:38:22 zzo38: Break in. 22:39:18 Phantom_Hoover_, I think, when someone asks if you're being sarcastic, and you obviously are, the polite thing to do is to make fun of them for being slow to figure it out, not keep it going 22:40:01 Why don't they just give you a "unit key" for this purpose? Even the GPLv3 suggests doing this. 22:40:03 Sgeo, I apologise for nothing! 22:40:10 Sgeo: If you're that dense to miss obvious sarcasm, you deserve it. 22:40:21 zzo38, it was not, in fact, the truth. 22:40:25 And fuck that idea of "politeness"; mocking you is hilarious, fun and easy, like all good things in life. 22:40:52 Phantom_Hoover_: It is unclear what you are refering to. 22:40:58 You could have mocked me in a less cruel manner! 22:41:04 zzo38, the Apple thing. 22:42:28 Sgeo: That was not cruel ... that was an obvious joke. 22:42:31 You are way too sensitive. 22:47:44 #machomebrew appears a secret unregistered channel. 22:48:17 zzo38: Um, it's registered for me. 22:49:25 My computer says it is unregistered and secret but existing. 22:49:36 Why does it say that? Is that a lie? 22:49:42 I don't know. 22:50:18 * elliott taints his box with non-LLVM stuff 22:51:07 04:19:42 It probably says "PentiumPro" because PPro is the first CPU to return family=6, which is what pentiums II, III, M, and Core/Core2/Core i7, and Atom, return too. (P4 returns family=15, for some unclear reason.) 22:51:15 fizzie: Aren't all the ones listed PIII arcthiecture, and P4 NetBurst? 22:51:20 Or, wait, M is NetBurst too isn't it. 22:52:53 I have plans to make the computer and one day I will do it!! (I have access to barter some people might help with these things) It is many difference from other computer. 22:53:10 http://arxiv.org/abs/0908.1803v1 22:53:19 Dammit, all the good ideas are taken. 22:53:26 `addquote I have plans to make the computer and one day I will do it!! (I have access to barter some people might help with these things) It is many difference from other computer. 22:53:27 258) I have plans to make the computer and one day I will do it!! (I have access to barter some people might help with these things) It is many difference from other computer. 22:53:41 Racket has such a ... not-ready-for-prime-time-yet feel to it 22:54:11 I mean, in their response to those criticisms, for instance 22:54:40 I have to use only components with the following criteria: * Component is not expensive. * No special membership is required. * Public information is available how it works, someone else can make a clone or emulation. * It can be programmed without proprietary software. * Components are user-replaceable. 22:54:40 Sgeo: Um, it is *decades* old. 22:54:43 Well, okay, decade. 22:54:52 elliott, yes, which is why it's a bit concernng 22:54:54 concerning 22:54:56 1994 apparently. 22:55:02 Sgeo: Your complaints are stupid, though. 22:55:06 And possibly a few more criteria, too. 22:55:25 elliott, what about the complaints of the person I linked to? 22:55:33 What is your opinion of these criteria? 22:55:37 Sgeo: I didn't see. 22:55:52 http://programming-puzzler.blogspot.com/2010/08/racket-vs-clojure.html 22:56:08 OK, I need to name my computer. Anyone have any good hostnames? 22:56:10 -!- Sasha has quit (Ping timeout: 240 seconds). 22:56:19 Sgeo: Clojure is terrible so anyone who's comparing X to Clojure and preferring Clojure is a moron unless X is PHP. 22:56:48 elliott, I get the impression that the person wants to prefer Racket 22:56:56 And hates a lot of things about Clojure 22:57:00 -!- Sasha has joined. 22:57:04 I don't care about some random guy on the internet. 22:57:08 Now someone name my computer. 22:57:11 Phantom_Hoover_: You name it. 22:57:14 elliott: I don't know. Are you going to use some dynamic DNS service? Will you get a static address and DNS? Is it only for your private network? 22:57:18 elliott, ok, but eir criticisms might still be valid 22:57:25 (My previous one was called dinky; as this computer is EVEN DINKER, I have no idea what to call it.) 22:57:34 Sgeo: Yes, but I don't read every post that says HASKELL SUX either. 22:57:40 zzo38: Just for private network. 22:57:41 Someone defending Racket on that page: "In support of Racket, we have come up with a library of data structures in Typed Racket (a statically typed dialect of Racket). And we are in the process of integrating it into the Racket release" 22:57:42 elliott, the Anguish of Malevolence. 22:57:46 Call it "evendinker", then. 22:57:46 "Angy" for short. 22:57:52 i.e., "We're working on it" 22:57:57 *evendinkier 22:58:02 Sgeo: Typed Racket is very old. 22:58:08 Sgeo: So clearly they are just merging it into Racket itself. 22:58:13 Sgeo: Note that you can used Typed Racket with Racket. 22:58:19 Racket supports multiple languages in one implementation. 22:58:25 elliott, I am aware of that 22:58:26 They coexist and can use the same libraries. 22:58:36 It's pretty ... I think Racket wants to take over the world 22:58:41 Consume all other languages 22:58:56 Racket = Scheme \cup other cool things, yes? 22:59:03 -!- calamari has joined. 22:59:10 Phantom_Hoover_: Pretty much. Except it's not a strict R5RS superset now. 22:59:13 (Conses are immutable) 22:59:14 There will never be a Racket.NET, because Racket and .NET are almost in competition 22:59:35 Sgeo: Something wrong with creating a cohesive environment? 22:59:39 Sgeo, pleasepleaseplease tell me that's a quote? 22:59:43 *. 22:59:49 Nope. 22:59:49 Phantom_Hoover_, that what's not a quote 22:59:55 ...? 22:59:58 ? 23:00:05 elliott, if you do not call the computer Angy I will be very upset and I won't help you ever again. 23:00:23 Phantom_Hoover_, the thing I didn't put in quote marks? 23:00:24 Phantom_Hoover_: BTW, my previous computer names have been Bournemouth (the iMac, named after the computer in Look Around You series 2; previously Deep-Thought), and dinky. 23:00:38 Look Around You series 2! 23:00:45 I wish I had it! 23:00:51 Phantom_Hoover_: Yes! The comedy program slightly worse than Look Around You series 1! 23:00:54 At least series 1 is on YouTube! 23:01:12 Phantom_Hoover_: Bournemouth was a computer so clever it had to be kept in a cage to stop it escaping. 23:01:29 I'm sure that clip is on YouTube 23:01:33 I've seen it, so 23:01:40 IIRC. 23:01:50 Phantom_Hoover_: http://www.youtube.com/watch?v=hnNSvzvY6VE 23:01:53 elliott, hmm. Remember it vaguely. 23:02:25 I think more languages shoud have dual-pane REPLs like DrRacket 23:02:30 I'd call it ninja, were it not so cliche. 23:02:38 Sgeo, explain. 23:02:39 Maybe I'll call it REAL-ULTIMATE-POWER. 23:02:42 elliott, ANGY 23:02:51 Phantom_Hoover_, definitions separate from REPL entry 23:02:55 fizzie: Got a list of every named object in H2G2? 23:03:12 So you can just edit the definitions without retyping them or copy-paste 23:03:22 And without having a file to store the program open 23:03:35 Sgeo, oh, AKA @'s source editor. 23:04:00 "Yeah, @ did it first ... or is that will do it later..." 23:04:56 Phantom_Hoover_: I should call it Hotblack Desatio. 23:05:13 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep). 23:05:20 PLaneT sounds great, but... I think centralization shouldn't be the only answer to module management 23:08:20 -!- Mathnerd314 has quit (Quit: ChatZilla 0.9.86-rdmsoft [XULRunner 1.9.2.12/20101026210630]). 23:12:19 Sgeo: i forgot it, what was it about? remind me 23:12:56 DS9's was a murderer who escaped death by entering other people's minds, and was killed 23:13:04 (sorry for spoilers) 23:13:23 ds9 and spoilers? ahahahah 23:13:24 dude 23:13:28 -!- calamari has quit (Quit: Leaving). 23:13:45 cheater99: what's so funny, ds9 is incredibly linear 23:14:05 make: pkg-config: Command not found 23:14:22 FT-1'f jnf Nahovf jnf haxvyynoyr, naq gnxvat bire crbcyr. Ur riraghnyyl rfpncrq, ohg jnf gevpxrq vagb tbvat bagb n sebmra cynarg. 23:14:31 elliott: saying "i spoiled ds9 for you" is like saying "i threw away your two week old pizza leftovers, you can't eat them anymore" 23:14:53 Did you know that Snape killed Dumbledore/!??!. 23:15:00 it's not like he told us what's on the desert planet in star trek iv 23:15:10 (the answer is Khan) 23:15:16 no, the answer is 23:15:19 SG-1's was Anubis was unkillable, and taking over people. He eventually escaped, but was tricked into going onto a frozen planet. 23:15:22 KHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANNNN!!!!!!!!!!!!!!!!!!! 23:15:24 Sgeo: fixed that for you 23:15:33 oh him 23:15:56 he was boring 23:16:28 i liked how his avatar in the higher plane was a rotund banker 23:17:25 Does anyone sane use Insert Lambda in DrRacket? 23:17:56 what if they're sane but they use it to inflict pain on other people who later have to work with that code? 23:18:06 No, Snape did not killed Dumbledore. I did (accidentally) 23:18:12 there's a reason why i write production code with haskell 23:19:18 Sgeo: Sure. 23:19:21 Unicode lambdas are nice. 23:19:41 HERE GOES COMPILATION TIME TO RADIATE MY FUTURE BABIES AWAY 23:19:44 THE BENEFITS OF LAPTOPS 23:21:22 That's why my preferred means of getting babies is theft. 23:21:35 this is very funny 23:21:43 λ 23:21:53 Gregor: Before they're born? 23:22:08 Before their parents are born? 23:22:20 Gregor: I have this mental image of you pulling fetuses out of vaginas now and keeping them all in your lair, laughing manically. 23:22:27 It is possibly the best mental image I have ever had 23:23:17 Gregor, incidentally, are you really anosmic? 23:23:32 ==> ed - config.h < config.h.ed 23:23:33 i approve 23:24:06 i have taken all the numbers under 24 million, and grouped them in groups of 24. then i took the 1st, 5th, 7th, 11th, 13th, ... 23rd number off those. that's 8 numbers, and if the nth number is a prime number, the bit is 1. i have put this string of bytes in a wave file, and the output is.. white noise? 23:24:41 cheater99: ZOMG WHAT IS RANDOMNESS 23:24:42 cheater99: Why did you do that? 23:24:51 there are spiral forms if you render the distribution a certain way though IIRC 23:24:54 oerjan probably knows more 23:25:03 yes, google "primzahlenkreuz" 23:25:06 that's why i did 24 23:25:24 * Sgeo wonders how difficult it would be to implement a Python subset in Racket 23:25:26 someone came up to me with this idea, i immediately called BS on it 23:25:29 Sgeo: been done iirc 23:25:31 Erm, implement is the wrong word 23:25:33 someone did some denotational semantics thing 23:25:37 Have as a #lang 23:25:56 but i did this silly little calculation, and it proved interesting. 23:26:03 * Sgeo doesn't really know what denotational semantics is :( 23:26:06 Interesting as ... white noise? 23:26:22 exactly this amount of interesting. 23:26:27 console.c:144: error: ‘rl_mark’ undeclared (first use in this function) 23:26:37 fizzie: Compiling mcmap on OS X needs you to manually use GNU readline, FWIW. 23:26:42 Since it comes with libedit as libreadline, I think. 23:27:05 why does there have to be readline drama 23:27:09 what 23:27:12 all those people are out of their minds 23:27:14 ... 23:27:18 there is no readline drama 23:27:20 what the fuck are you talking about 23:27:22 of course there is 23:27:45 every second language that has an interpreter abandons readline and goes for some sort of alternative bs 23:27:56 because it's gpl 23:27:59 yes. 23:28:01 perfectly reasonable. 23:28:08 libedit is very common and well-known 23:28:10 elliott: Pretty much accurate. 23:28:13 Phantom_Hoover_: Hyposmic. 23:28:28 cheater99: is it unthinkable to you that some people like licensing code under something that isn't gpl? 23:28:32 thus preventing them using readline? 23:28:42 Gregor, what does that cause? 23:28:55 map.c: In function ‘map_init’: 23:28:55 map.c:107: error: nested functions are disabled, use -fnested-functions to re-enable 23:28:55 map.c: In function ‘map_draw_player_marker’: 23:28:57 map.c:399: error: nested functions are disabled, use -fnested-functions to re-enable 23:28:59 fizzie: ^ 23:29:20 world.c: In function ‘world_thread’: 23:29:21 world.c:460: warning: no return statement in function returning non-void 23:29:29 elliott: this is too complicated for my simple mind 23:30:13 fizzie: return NULL fixes that. 23:30:15 Phantom_Hoover_: It doesn't "cause" anything, it's a symptom, it's a reduced sense of smell. 23:30:38 Gregor, oh, of course. 23:30:50 -!- zzo38 has quit (Quit: PRINTER IS EXPLODING). 23:32:20 Come on mcmap, you can connect. 23:35:22 -!- poiuy_qwert has joined. 23:43:02 I MAKE RFID READERS FOR THE NEW WORLD ORDER 23:44:38 -!- Wamanuz4 has joined. 23:45:13 nooga, will they spare your organs when they make their harvest? 23:45:33 his organs will clearly be saved 23:45:46 now where and which purpose i cannot say 23:45:55 *for which 23:47:18 Clearly they'll keep him so that when they get bored after crushing all the dissidents they have someone to RFID tag everyone else. 23:47:56 -!- Wamanuz3 has quit (Ping timeout: 264 seconds). 23:52:28 Phantom_Hoover_: WHAT SHOULD I DO THAT IS INTERESTING 23:54:21 isn't there an exploration mode in MC that doesn't let you mod stuff? 23:55:17 There is one planned. 23:55:23 quintopia: There's an adventure mode. 23:55:28 Mod presumably you mean change blocks. 23:55:32 Adventure mode is pre-scripted stuff. 23:55:33 yes 23:55:33 i.e. it will never happen until Notch gets his act together. 23:55:42 I don't see why you'd want to explore and do absolutely nothing. 23:55:44 Which will never happen full stop. 23:55:46 You can; just never hit any blocks. 23:55:56 But that would be _boring_. 23:56:23 well. i was thinking you could make a true 3d maze and just trust everyone who plays it not to cheat :P 23:57:27 but it would be better if you had a 3d maze where hitting blocks was part of it...but can you even place indestructible blocks? i didn't think you could... 23:57:41 quintopia: well obsidian takes 30s or so to mine even with a diamond pickaxe 23:57:44 with hand ... minutes 23:57:52 quintopia: you can place bedrock as a server op though 23:57:54 which is indestructable 23:58:46 But you can't remove it, so god help you if you place a block wrongly. 23:58:55 so you could just make a map out of bedrock i guess... 23:59:24 elliott, is Racket's functional reactive stuff a good way to learn functional reactive programming? 23:59:25 Also, bedrock is destructible in the sense that it doesn't actually have infinite resistance to explosions, just mind-bogglingly high. 23:59:37 Sgeo: Doubtful. 2010-12-30: 00:00:01 So I suppose you could make a creeper farm or something, then set them all off at once once you had 186000 of them. 00:01:15 How do 186000 creepers explode? 00:01:38 Ilari: Explosively. 00:03:18 What's their kapow/gram ratio? 00:03:41 elliott, so what's a good way to learn? 00:03:42 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 00:03:50 Sgeo: Three goats and a pile of ratios. 00:04:01 Ilari: Approximately creeper kapows to the gram. :p 00:04:16 Creepers are 1/4 less powerful than TNT, with explosion power of 3. The harder the surrounding material, the less damaging the explosion will be. So secure homes need to be built with a stronger material to avoid creeper damage. 00:04:21 Ilari: http://www.minecraftwiki.net/wiki/Explosion 00:04:29 Ilari: You can work out the kapow/gram from that + explosion power = 3 :P 00:05:19 -!- poiuy_qwert has joined. 00:07:11 Phantom_Hoover_: Guess what an OUTDATED GHC I am installing. 00:07:25 I have no idea! 00:07:34 Phantom_Hoover_: 6.12.3 OH GOD 00:07:43 (Note: GHC 7 is not meant to be used by regular people yet :P) 00:07:58 minecraft cannons amaze me 00:08:01 Oh wait, there's a Haskell platform package 00:08:02 . 00:08:08 I'll just install that. 00:08:23 elliott: isn't there a HP beta/alpha/something for GHC 7 yet? 00:08:40 olsner: probably 00:08:46 nooga: http://www.youtube.com/watch?v=nN-CeXyTmBE 00:08:58 olsner: but homebrew doesn't have it :) 00:09:17 obviously... 00:09:35 olsner: your obvious 00:10:27 186000 creepers... Huh. 00:10:37 elliott: this is awesome 00:10:46 Ilari: Might be a BIT hard to get them into one place :P 00:10:50 Ilari: You'd need a very very big trap. 00:11:04 Ilari: And also a way to set them off and then get VERY FAR AWAY VERY QUICKLY. 00:11:08 (Perhaps with a Nether portal.) 00:11:14 elliott: btw, I was reading about L4 in the holidays... turns out it's pretty much exactly what I was going to build with my OS thingy 00:11:24 olsner: this is why i tried to golf your kernel 00:11:28 olsner: to beat L4 at its own game 00:11:35 olsner: but did you listen?! 00:12:46 well... I did listen, I just rejected all your ideas afterwards 00:13:00 Even 500 resistance is apparently enough to resist any explosion that can occur... 00:15:12 olsner: but WHY :D 00:15:13 100k explosions occuring at once won't help if damage isn't cumulative... 00:17:24 elliott: http://www.youtube.com/comment?lc=P78EgF_u1b1Ac68qVGQ4aPUxKZk9QNha7b6ooPb8gAQ 00:17:36 olsner: but homebrew doesn't have it :) <-- * suddenly realizes what this macho mebrew talk was about 00:17:47 lol 00:17:57 oerjan: :-D 00:18:14 oerjan: well OS X does use the Mach-O object format 00:18:23 what is it all about with this Racket, what is this language? :P 00:18:28 nooga: PLT Scheme 00:18:35 i saw the webpage but looks like another Scheme 00:18:37 oerjan: so one could say -- Mac Homebrew: "Mach-O, me brew" 00:18:40 at first glance 00:18:41 nooga: it used to be called PLT Scheme. 00:18:47 nooga: you know of it. it's that famous one. 00:18:53 ah 00:18:55 they decided it wasn't very scheme any more and rebranded 00:19:36 Hole with lots of creepers on bottom might be nasty for who falls into it... 00:19:36 uhm 00:19:40 oerjan: oh! http://www.haskell.org/pipermail/haskell-cafe/2010-December/087788.html oleg wrote that :-D 00:19:49 Oleg writing about Peter Landin being a genius, is there anything better? 00:19:59 Ilari: Hell, a handful of creepers is already very close to fatal even with full armour. 00:20:30 Ilari: Have a bunch of pressure plates activating a redstone circuit that detonates a huge amount of TNT below you, going way down near bedrock, where there are 20 creepers... 00:20:39 Ilari: Death trap, but requires a lot of rebuilding for each victim :-) 00:21:28 how about traps with sand and water 00:21:51 nooga: well, probably -- i don't know how to do them :-( 00:22:47 What about digging hole 3x3 blocks in size and two deep. Filling the bottom with TNT blocks and above with something like sand. Then rig a trigger on the center block on ground level... 00:26:30 Sgeo: Ponzi is better than Racket, anyway. 00:26:48 Ilari: Do you play Minecraft? If not, your evil genius is going SORELY to waste not doing so. 00:27:19 * Sgeo is uncertain whether that's a joke 00:27:20 * Sgeo wikis 00:27:47 Sgeo: Ponzi Scheme is the name I have eternally reserved for my Scheme dialect. 00:27:51 It's just SO PERFECT. 00:27:59 (1) Ponzi is memorable and short, and a good name for binaries; 00:28:02 (2) The pun is awesome. 00:28:13 Pressure plate to detonate TNT block immediately behind wall/floor/ceilling would probably be bad enough anyway... 00:28:31 (3) It will be talked about a lot, and get people interested, but never pay dividends 00:28:44 Ilari: But rather a pain to put back after some poor sap dies. 00:28:48 clearly ponzi scheme is destined to take over the world. and then cause its collapse. 00:29:52 the one disadvantage is googlability :D 00:30:00 but then, tech things tend to rank higher than their non-tech meanings on google... 00:30:04 nerds rule the internet 00:30:26 Or some TNT blocks hidden behind a wall and a creeper there... 00:30:52 Oh, put the creeper also behind a wall... 00:31:05 Ilari: At this point, I think I'd just start stabbing people when they walk into my house. 00:31:27 Sgeo: ponzi's scheme paid dividends. 00:32:00 that's why it was perfectly all right! 00:32:08 of course! 00:32:15 * elliott worries briefly about why oerjan knows about ponzi's scheme 00:32:26 elliott: wikipedia? 00:32:37 oerjan: CUT IT OUT, WITH YOUR LOGIC 00:32:43 and your, and, and your LOGIC 00:33:11 oerjan: you know what makes me sad? 00:33:12 I'm trying to talk about hotswapping, they're now talking about eval 00:33:20 scheme's inconsistency with mathematical operators. 00:33:35 > (+) 00:33:35 0 00:33:35 > (*) 00:33:36 1 00:33:38 but (-) gives an error 00:33:40 and (- x) = -x 00:33:42 rather than x 00:33:44 (-) should = 0 of course 00:33:55 and (/) should result in 1 00:33:57 BUT THE WORST 00:34:01 (min) and (max) are errors 00:34:06 (min) should = infinity 00:34:08 and (max) = -infinity 00:34:11 elliott: i don't see why, they're not monoid operations 00:34:11 for obvious reasons 00:34:21 (- and /) 00:34:30 min and max i might agree 00:34:30 oerjan: i'm just being silly 00:34:40 oerjan: but it would be more consistent to have (op x (op)) = x 00:34:42 for all op 00:34:44 (and x obvs) 00:35:07 oerjan: (and also you could use it to implement a fold where you don't have to specify the zero :)) 00:35:19 in fact such a fold could just be (apply op lst) 00:36:16 [[Knowingly entering a Ponzi scheme, even at the last round of the scheme, can be rational economically if there is a reasonable expectation that government or other deep pockets will bail out those participating in the Ponzi scheme.[2]]] 00:36:19 that's just silly :) 00:36:20 i vaguely recall there was some language where you could register identity elements for functions in that way 00:36:37 perhaps one of the CASes 00:37:14 probably 00:37:53 can i just say that http://en.wikipedia.org/wiki/Tulip_mania is the most amazing thing ever 00:38:17 * oerjan learned about that from a Phantom comic 00:48:08 Phantom_Hoover_: Want to invest in code-money with Ponzi Scheme Developments? 00:48:23 (I figure I can develop this on a Ponzi scheme model, using payments of code to pay other people who want implementations of that feature.) 00:48:35 XD 00:49:04 -!- Sgeo has quit (Read error: Connection reset by peer). 00:49:26 -!- Sgeo has joined. 00:50:00 Oh man, this display has so much better colours than my old laptop. 00:50:05 It is insane how differently things look. 00:51:29 Sgeo: have you played the PLT GAMES yet 00:51:38 No? 00:56:27 Sgeo: it's in the racket folder 00:56:33 PREPARE FOR AMAZING 00:58:10 ... 00:59:32 Sgeo: CARD - MOTHER - GAMES - FUCKIN' - PLT - YEAH 01:00:03 Is it suppose to show that these sorts of games are easy to implement? 01:01:31 Sgeo: I have no idea why it exists. 01:01:38 Presumably as a demo of ... its abilities? 01:01:58 I think Factor and Racket are related 01:02:10 Are we sure Slava isn't part of the PLT team? 01:03:25 Sgeo: Umm ... no he isn't. 01:03:37 I was joking, kind of 01:03:56 Both Racket and Factor seem to love the ability to include other languages inside itself 01:04:23 Racket and Factor both have slideshow libraries 01:04:31 Documentation DSLs 01:07:33 -!- elliott has quit (Remote host closed the connection). 01:08:26 -!- elliott has joined. 01:08:42 I'm going to go out on a limb here and assume that if your whole screen goes pink that's not a good thing. 01:11:57 -!- j-invariant has joined. 01:12:40 hi j-invariant 01:16:00 hey 01:16:22 elliott: it takes about 3 mins (= forever) to typecheck a single definition I have now :/ 01:16:36 j-invariant: wow :-D 01:16:46 not even a proof search, just Definition make_product : Hom X A -> Hom X B -> Hom X AxB 01:16:51 j-invariant: seriously? wow 01:16:55 j-invariant: how big is the printed term? 01:16:57 := fun f g => pi1 (pi1 ... f g)) 01:17:02 oh never thought of checking that 01:17:23 yeah it's not big at all 01:17:46 j-invariant: huh 01:17:50 j-invariant: how good is your machine :-P 01:18:09 well everything happens quickly except for this single definition 01:18:21 http://coq.pastebin.com/MJCUF7MT 01:19:22 I think internally, it's got a situation like to A x = A' y to check, and it unfolds A to get B C D and it unfolds all those for layers and layers and them normalizes these huge terms 01:20:15 yeah 01:20:26 i don't think there's anything you can do 01:20:32 j-invariant: are you low on ram? maybe that would help 01:20:40 if it's expanding REALLY huge terms :p 01:20:41 it's not very promising.. what if you wanted to actually USE this stuff? 01:21:33 top says 100% CPU but it's only getting up to 3.3% MEM 01:21:40 j-invariant: why would you do anything useful in Coq :D 01:21:49 oh now it's climbing up to 7% 01:24:12 its still going :/ 01:24:53 -!- Phantom_Hoover_ has quit (Remote host closed the connection). 01:27:11 elliott: I still like this idea of having a category theory language that checks with Coq to make sure everything is sound 01:27:28 elliott: although I only know how to make simple data types in catgeory theory and they're no fun! 01:27:32 -!- p_q has joined. 01:31:04 left object nat with pr is 01:31:08 0: 1 -> nat 01:31:11 s: nat -> nat 01:31:13 -!- poiuy_qwert has quit (Ping timeout: 276 seconds). 01:31:20 end object; 01:31:29 elliott: that's natural numbers and primitive recursion 01:31:36 j-invariant: nice 01:31:39 j-invariant: what are lists :-P 01:31:58 -!- oerjan has quit (Quit: Good night). 01:32:06 right object colist(X) with coprl is delist: colist -> coprod(1,prod(X,colist)) 01:32:09 end object; 01:32:17 j-invariant: any non-co version? :p 01:33:02 left object list(a) with foldr is 01:33:07 nil: a -> list(a) 01:33:11 oops 01:33:14 nil: 1 -> list(a) 01:33:18 cons: a -> list(a) 01:33:20 end object; 01:33:34 no that's wrong 01:33:49 that was maybe 01:34:36 cons: prod(a,list(a)) -> list(a) 01:35:00 elliott: best one is this: 01:35:00 right object exp(a,b) with curry is 01:35:00 eval: prod(exp,a) -> b 01:35:01 end object; 01:35:08 they define lambda 01:35:14 j-invariant: that is awesome. 01:35:16 (in order to do ackermann) 01:35:31 j-invariant: have you actually implemented this syntax? 01:35:38 no this is someone else 01:35:57 http://hackage.haskell.org/package/CPL 01:36:07 j-invariant: aww, boring! prior art is teh suck :) 01:36:20 i'd like to live in a bubble where nobody has done anything so i get to figure it all out myself 01:37:29 Time for more DS9 01:37:35 It is supposed to improve soon, right? 01:38:17 ds9 is good all the way through. but most especially in the later seasons 01:38:27 (note: if you think "oh i'll just skip to the later seasons!" you fail everything forever) 01:38:50 When does the Dominion War start? 01:38:57 * Sgeo <3 Odo 01:41:07 elliott: you know Charity 01:41:14 j-invariant: I know of it, yes 01:41:19 I think it's basically the same as that 01:41:21 except nicer 01:41:38 charity is so ugly 01:41:47 Sgeo: Season two is when the DOminion are introduced. 01:42:04 Sgeo: Then it takes until season five and six for the war machine to actually explode. 01:42:15 Sgeo: It's a slow series, live with it. 01:42:43 elliott, but are many of the episodes before 5 and 6 about the Dominion? 01:43:08 Sgeo: Plenty, it's all a long, slow buildup... but seriously, there are good non-Dominion episodes. 01:43:10 Stick with the series. 01:43:14 j-invariant: is charity category based? 01:43:15 I never knew 01:43:23 huh it is 01:43:45 j-invariant: this page has always amused me http://pll.cpsc.ucalgary.ca/charity1/www/wofm/wofm1.html 01:43:51 j-invariant: yeah charity is totally 50% practical 01:43:56 yeah lol 01:44:01 what with its complete lack of IO and strong termination requirement 01:44:13 and lack of any development or libraries at all :) 01:44:40 j-invariant: can you not have a constructor A->B->C in category theory? 01:44:43 I guess it all has to be A->B 01:44:45 that seems kind of ugly 01:46:19 did anyone answer zzos question? 01:46:32 Is there a sub-turing language that has an undecidable halting problem? 01:46:43 j-invariant: he answered it himself 01:46:46 no, there is not 01:46:49 why not? 01:46:51 or was it that you answered it 01:46:55 j-invariant: well 01:47:02 j-invariant: there was that cheat answer (he?) gave 01:47:06 so "yes" technically i guess 01:47:09 but no interesting ones :) 01:48:16 i dunno 01:50:52 -!- elliott has quit (Remote host closed the connection). 01:52:20 -!- elliott has joined. 01:52:48 elliott: btw CPL is a single category 01:53:06 elliott: and it's equivalent to simple lambda calculus 01:53:21 j-invariant: ah ... so those are not actually defining categories? 01:53:25 well 01:53:27 i guess that makes no sense 01:53:35 elliott: would be interesting to have one that lets you use multiple categories and equivalent to dependent types 01:53:35 j-invariant: the problem with category theory is that it's basically a meta-type-system 01:53:40 and generally you want to work in a type system :) 01:53:56 yeah I have been thinking about the idea of category theory as a meta-type-system 01:54:09 so you have (terms : types) :: CATEGORY THEORY 01:54:22 types make sure your syntax is good, category theory makes sure your semantics are good ? 01:54:29 (i.e. that the program is correct) 01:54:46 maybe 01:54:53 j-invariant: you need to make... METAGORY THEORY 01:55:20 ((terms : types) :: CATEGORY THEORY) ::::::::::::

METAGORY THEORY 01:55:23 llol 01:56:56 j-invariant: http://www.lfcs.inf.ed.ac.uk/reports/87/ECS-LFCS-87-38/ this is the lang that haskell thing implements apparently 01:57:09 "Ph.D. thesis - Price £7.00" <- fuck that 01:57:11 anyone wanna pirate it 01:57:18 heh you can get it off Haginos ste 01:57:25 http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.164.1837&rep=rep1&type=pdf 01:57:29 j-invariant: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.164.1837&rep=rep1&type=pdf 01:57:30 indeed 02:03:47 I think I've seen this episode before 02:04:01 elliott, is HtDP decent? 02:04:13 Sgeo: I've never read it and I don't care. 02:04:16 HtDP sucks 02:04:31 j-invariant: really, why? 02:04:34 it's all faux pragmatism and getting stuff "done" 02:05:11 sicccppppppppp 02:05:31 j-invariant: HAVE YOU READ YOUR SICP TODAY 02:06:15 heh 02:06:45 (RIP /prog/ being interesting some time -- some other time) 02:09:37 hm? 02:11:53 Sgeo: what? 02:15:34 -!- a1234567890 has quit (Quit: Ex-Chat). 02:17:13 -!- elliott has quit (Remote host closed the connection). 02:17:27 -!- elliott has joined. 02:21:57 -!- elliott_ has joined. 02:22:26 What's wrong with /prog/? 02:22:34 -!- elliott has quit (Ping timeout: 276 seconds). 02:22:36 Oh wait, you don't mean /r/programming do you 02:26:46 -!- zzo38 has joined. 02:28:19 If you have accessed by gopher server by a proxy, it will not work anymore, except Floodgap (there is two reasons I did not block Floodgap). Direct connection is prefer. If you do not want direct connection, you can use Tor. 02:31:02 Sgeo: Indeed, "/prog/" is not the same thing as "/r/programming" ... but /r/programming is terrible too. 02:31:05 zzo38: Why can I not use a proxy? 02:32:00 elliott_: I blocked the proxies from accessing it to prevent the gopher service from being indexed by Google. (You can still use Veronica to search it if you want to, though.) 02:32:15 zzo38: What is wrong with Google indexing it? 02:33:52 j-invariant: Our slogan is: “category theory can provide a better and more natural understanding of mathematical objects than set theory”, so we use it to guide our tour around the world of data types. Note that we do not mean to abandon set theory by this. We will still heavily rely on it, but our intuition should not be obstructed by it. 02:33:56 j-invariant: that is the least catchiest slogan ever 02:34:01 *catchy 02:34:18 elliott_: Two things. One thing is I don't want Google to index it (use Veronica if you want to search gopher). The other thing is the proxy requests indexed by Google waste power (but it is OK for Veronica and other things like that to index it, I am OK with these things). 02:34:37 zzo38: Why do you not want Google to index it? 02:35:14 elliott_: What do *you* think?? 02:35:33 zzo38: I don't know. I am asking why you do not want Google to index it. 02:35:51 elliott_: LOL 02:35:52 what's that from? 02:35:56 j-invariant: this thesis you mentioned 02:35:59 j-invariant: with CPL 02:36:03 ahh 02:36:25 CATEGORY INDUSTRIES -- category theory can provide a better and more natural understanding of mathematical objects than set theory 02:36:30 -!- Sasha has quit (Ping timeout: 246 seconds). 02:36:31 nope, still not very ctachy 02:36:32 *catchy 02:36:54 -!- Sasha has joined. 02:37:04 elliott_: That isn't their job. One thing Google is not suited for gopher search, and I don't particularly like Google and those other service, anyways. It is OK if Google indexes HTML pages linking to my gopher, that is OK with me and I have no problem with that. 02:37:14 If you want to search gopher, please use a gopher search service, such as Veronica. 02:37:27 zzo38: Why do you not like Google and other indexing services? 02:38:46 zzo38: why not like google? 02:39:26 Actually there are many thing I do not like about Google (not only the search engine, but other things too). I also do not want Copyscape to be able to find it (Copyscape uses both Google and Yahoo! to search), and I don't want someone to find the proxy page and not learn about the protocol. 02:39:38 And there are many more reasons that I will not list here it takes too much time. 02:39:44 zzo38: What are the things you do not like about Google? 02:39:56 And what is wrong with copyscape? 02:40:44 Well, one thing is the search engine. I don't like the way they tried to make it much more user-friendly, or they try to steal everyone's information (even if before they tried not to, they still do now), etc..... 02:41:24 zzo38: What do you mean by steal everyone's information? 02:41:26 If you want to use Copyscape you can use it. But I have some files protected by Anti-Copyscape (a program I wrote). 02:41:29 And what is wrong with user-friendly? 02:41:38 Why did you write anti-copyscape? 02:41:46 I do not understand what is wrong with copyscape. 02:42:19 elliott_: Actually the original reason I wrote Anti-Copyscape is that someone had no PDF reader and I wanted to copy it out for them. The PDF was protected by Copyscape. 02:42:38 zzo38: Excuse me? Copyscape is just a search engine. 02:42:42 They do not protect PDFs. 02:42:50 zzo38: You must be thinking of something else. 02:43:04 But there is only one file on my service affected by Anti-Copyscape, and it is not linked anywhere, so it doesn't matter much. 02:43:09 http://en.wikipedia.org/wiki/Copyscape As you can see here they do not do any PDF things. 02:43:13 http://www.reddit.com/r/AskReddit/comments/et6tb/anyone_else_see_eating_food_as_a_chore/ 02:43:36 elliott_: Actually they do PDF, since Google does PDF, so does Copyscape. 02:43:46 Someone who understands me! 02:43:48 zzo38: OK, but I do not know what protected means here. 02:43:54 zzo38: How did it prevent you from copying the file? 02:44:53 elliott_: There is PDF encryption (anyone without PDF software cannot read it), but that was not the reason for writing Anti-Copyscape. Basically, there is a "Protected by Copyscape" sign. 02:45:30 zzo38: OK, well, what does it matter if someone put that there? All it means is that they'll search with Copyscape for plagiarised works based on theirs every now and then. 02:45:38 What does Anti-Copyscape do? 02:45:59 elliott_: Forces the user to enter a number before entering. (It tells the user what number to type in) 02:46:15 zzo38: What does that accomplish? 02:47:19 It also disable indexing as well. 02:47:27 zzo38: What does having to enter a number accomplish? 02:49:21 elliott_: Nothing much. But that's old and I really have no use for it anymore. I wrote it only for someone's request because they wanted to access a specific PDF file but they had no program to access it. 02:49:37 Okay. Did they request you write Anti-Copyscape? 02:52:46 -!- p_q has quit (Quit: This computer has gone to sleep). 02:56:36 "This episode was ranked last in Entertainment Weekly's evaluation of the first two seasons of the show. 02:56:36 " 02:56:40 WTF? I liked it 02:56:40 elliott_: No; they couldn't have known about the Copyscape without seeing the PDF document. So I just had to make an assumption. 02:56:50 Sgeo: What show. 02:56:58 DS9 02:57:01 http://memory-alpha.org/wiki/Move_Along_Home 02:57:02 Sgeo: What episode. 02:57:26 Sgeo: BTW you liking a thing is inversely correlated with it being good. 02:57:46 I like Smalltalk! 02:58:48 Sgeo: Probably for all the wrong reasons. 02:59:19 (If they could see the PDF document, they would not need me to do this, isn't it?) 03:01:04 Sgeo: Do you like the wrong reasons for all the wrong reasons? 03:06:07 http://manifestoism.com/post/2183131490/manifestoist-manifesto Manifestoist Manifesto. 03:07:02 -!- cheater99 has quit (Ping timeout: 240 seconds). 03:07:43 Right, if someone wants to stop me making some kind of linkblahg to replace /r/programming so I can sleep at night, now is the time. 03:08:02 linkblahg?? 03:08:05 on reddit or what 03:08:15 elliott: What does linkblahg means? And what are you doing anyways? 03:08:39 j-invariant: linkblahg = linkblog = a bunch of summarised links and short commentary with an RSS feed. 03:08:53 think http://chneukirchen.org/trivium/, except cooler because it's me. 03:09:15 admittedly i doubt i'll be able to stop myself posting long-form crap but at the same time my laziness will ensure that it is vanishingly rare 03:09:57 I don't really care whether or not you make that. Decide by your own opinion, please. 03:10:06 http://excamera.com/sphinx/fpga-j1.html this is VERY cool! 16-bit Forth CPU in _200 lines of Verilog_! w/ TCP/IP stack, system can fit in 8 kbytes! 03:10:21 What's wrong with /r/programming ? 03:10:25 http://excamera.com/files/j1demo/docforth/invaders.fs.html space invaders! 03:10:27 Sgeo: it's terrible. 03:10:33 the thing about reddit is the comments are stupid 03:10:40 and everything crap gets upvoted 03:10:42 it used to be excellent but now it's all uninteresting bullshit 03:10:45 and all the comments are retarded 03:10:51 y;eah it used to be a great site 03:11:00 /r/haskell is still really good - but is of course haskell specific 03:11:08 if /r/programming was as consistently good as /r/haskell I wouldn't mind at all 03:11:12 It's how I found out about Factor iirc... or at least where I first heard of it 03:11:27 Sgeo: from our perspectives that is not a good thing as you have not shut up about it since 03:11:30 Someone said that they liked Factor and J, but they were frustratingly ungoogleable 03:11:49 elliott_, I've slowed down about it 03:12:07 elliott_: I don't like the commericalish/markety silliness that is taking over haskell 03:12:22 j-invariant: yeah, well ... I think it peaked a while back and is slowing down now 03:12:25 "Download Haskell" instead of "Download GHC", "apps" etc.. 03:12:34 j-invariant: right yes download haskell pissed me off 03:12:39 j-invariant: nothing wrong with "Download Haskell Platform" 03:12:41 which is what it /is/ 03:12:54 Haskell Platform as a brand name I can live with ... the capital P makes it ok imo 03:13:26 anyway the link blog would basically be like all the silly links i post here, except with more coherent commentry, more often, and in a feed :P 03:15:13 elliott_: you know I feel like the web could be more useful than it is right now, I'm not sure if that's because I just don't know about good sites though 03:15:45 useful in what sense? 03:16:43 j-invariant: well. the basic problem is that crap increases. so you need a filter, an aggregator to let you know what's good. the problem is that: filters run by one person can't keep up with the amount of content, and fundamentally rely on *other* filters (directly or indirectly, to find the content); and filters run by multiple people often get drowned out by noise as time goes on and they increase in popularity (e.g. reddit) 03:17:15 not only that 03:17:29 but each person has a different filter criterion 03:17:54 coppro: well, yes. but it's easy enough to be your own meta-filter (lol Metafilter) on a filter that matches closely enough 03:17:58 which /r/programming was circa 2007 03:18:03 since you can basically do it in real-time 03:18:14 Is there any Free (as in speech) FPGA? Is there any other hardware programming languages? 03:18:21 MetaFilter is actually quite nice incidentally, but it's rather generalised and so more of a timewaster than anything else 03:18:33 zzo38: VHDL and Verilog are the only ones I know of. 03:23:08 I would like to see one that you write the hardware program in terms of gates and macros of gates, and that you can do preprocessing with powerful. 03:24:11 I preprocess with powerful all day. 03:33:10 Increasing generality: finite automata < pushdown automata < linear bounded automata < Turing machines I get what one first and last are 03:33:16 what are the middle two? 03:34:43 what are pushdown automata 03:35:10 j-invariant, that is my question 03:35:16 -!- Wamanuz4 has quit (Ping timeout: 240 seconds). 03:35:29 finite automata which carries around a stack 03:36:26 and linear bounded automata ? 03:37:32 A turing machine is just a automata with unbounded memory 03:37:41 how could memory be linearly bounded? 03:38:48 Is there any Free (as in speech) FPGA or similar devices? 03:43:01 -!- j-invariant has quit (Quit: leaving). 03:46:46 Pornography: Are we getting enough of it? A new study by Future Lechers of America suggests that we are not. 03:48:34 hi 03:50:35 "Please donate to keep Wikipedia free" I FUCKING HATE THIS TEXT 03:50:39 it suggests - 03:50:40 don't donate 03:50:43 and we'll start charging 03:50:45 ads all over the place 03:50:46 bullshit 03:50:49 fuck you wikimedia 03:52:54 elliott_, adblock 03:53:54 variable: irrelevant 03:54:02 variable: whether i see them or not it's still stupid as fuck 03:57:37 -!- cheater99 has joined. 03:58:56 -!- elliott_ has quit (Remote host closed the connection). 03:59:31 -!- elliott has joined. 03:59:38 SO ANYWAY, 03:59:43 the back of my copy of SICP 03:59:49 refers to Hal Abelson as 04:00:00 a Class of 1922 Professor 04:00:03 it is actually 1992 04:00:12 but i prefer thinking that Hal Abelson is like 100 years old 04:00:19 and thank the back cover for this exciting alternate history 04:02:32 -!- poiuy_qwert has joined. 04:07:47 -!- zzo38 has quit (Remote host closed the connection). 04:13:40 `pastequotes 04:13:42 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.19947 04:22:57 * Sgeo WTFs at some of those 04:24:15 (23:14:15) A?? ???: ??? - want to write a program in a new language I invented? TOD? 04:24:15 (23:17:05) B?? ???: Sure 04:24:15 (23:17:53) A?? ???: http://esolangs.org/wiki/TOD 04:24:15 (23:20:48) B?? ???: I'M NOT WRITING A PROGRAM IN THAT LANGUAGE 04:25:08 -!- j-invariant has joined. 04:26:36 variable: bahaha 04:26:42 Sgeo: What's the WTF 04:27:18 Some of them aren't that funny, I guess. Just weird 04:27:51 Sgeo: It's not meant to be funny, it's meant to be amusing. 04:28:21 66) What else is there to vim besides editing commands? 04:28:22 :-} 04:29:02 variable: basically half our time is spent laughing at Sgeo :) 04:32:39 My cat is trying to eat my hand 04:46:07 Why am I still interested in Racket despite the lack of hotswapping stuff... I mean, it's theoretically doable, but I see nothing that makes it convenient 04:47:36 because it's got a cool macroexpander 04:48:24 And of course people in #racket had no idea what I was talking about 04:48:37 Sgeo: Because hotswapping is a very niche feature? 04:48:47 And I find it likely they know what hotswapping is and you just explained it terribly. 04:49:18 I find it more likely that I got a bad impression based on one person 04:50:13 Sgeo: why do you care about hotswapping all of a sudden? 04:50:37 I've always cared about it. It's just that most of the languages I've obsessed over before had it. 04:50:45 coppro: Because he's a moron who has no clue what he likes and basically just grabs onto things that are shiny, criticise things made by people many times more experienced than he is with greater expertise, basde on misconceptions, in here, for us all to see, 24/7. 04:50:59 Sgeo: Factor doesn't have hotswapping as far as I know. 04:51:04 Also, the AW stuff I was working on would have benefitted from it 04:51:09 Nobody gives a shit. 04:52:13 http://docs.factorcode.org/content/article-vocabs.refresh.html 04:52:28 That's about as "hotswapping" as Python's reload function. 04:52:38 You have no idea what hotswapping is. 04:54:39 I think it's somewhere between what you call "hotswapping" and Python's reload function 04:55:07 do you consider Erlang to have hotswapping (both of you)? 04:55:28 coppro, don't know Erlang that well, but I think so 04:59:00 coppro: Erlang is pretty much _the only_ lang with hotswapping. 04:59:15 Sgeo is presumably planning to write important, long-running network servers -- in which case -- god help us all. 04:59:17 Sgeo: Please don't. 04:59:50 elliott, how about a "only-important-to-the-players-of-a-game" long-running network server? 05:00:22 Sgeo: Perhaps a component of Active Worlds going down for a few minutes will have you reflect on how much of your life you plan to spend obsessing over it. 05:00:23 elliott, what does Smalltalk count as? 05:07:50 Has anyone in here done Perl 6? 05:13:33 not really 05:13:55 I will look at it when they bother finishing it 05:14:45 coppro: the spec is very close to being "final" actually 05:14:57 just nobody wants to admit it :) 05:20:47 yeah I know 05:21:03 but the thing is damned hard to read 05:21:08 it sort of assumes you know the history 05:26:07 coppro: yeah :-P 05:26:15 coppro: well it's better than perl 5's spec! 05:26:18 with such nice properties as existing 05:29:30 coppro: now let me amuse you, last person who spoke 05:29:32 coppro: [[On a completely diffrent side note, it might be cool to have a new type of game playable on computer where all things in game are represented with ASCII like the art form just like I demonstrated up above. Imagine ASCII Castlevania, ASCII Mario Bros or ASCII Zelda. LOL just a passing thought.]] 05:29:55 http://www.atariage.com/forums/topic/132116-porting-the-original-classic-castlevania-to-the-2600/page__view__findpost__p__1593512?s=bcada80a7c4f8d16bdf1b84820d4a2c9 <-- seriously, the guy reinvents NetHack's display system in like 15 lines 05:30:18 "And the ASCII thing was a non Atari related side thought. Like a remake of any general popular game where ALL graphics in game are represented by ASCII only. though in color though where each ASCII character is its own color." 05:30:19 gahaaha 05:32:58 coppro: maybe #esoteric should make its own Perl 6, a hodge-podge language consisting of everything useful/fun we can think of golfed to hell 05:34:17 i would have thought you'd be sleepy by now mr. hird 05:34:47 elliott: http://hackage.haskell.org/package/uAgda-1.0.0.1 interesting 05:34:53 ahahahah 05:35:08 quintopia: it's only 5:30 am ... going to bed soon though 05:35:12 coppro: WHAT'S SO FUNNY LITTLE MAN 05:36:07 2 ... Ke7 05:36:09 and winning with it 05:37:37 * Sgeo is turning into elliott 05:38:09 no you are not 05:38:12 Sgeo: how. 05:38:17 i find the notion offensive 05:38:18 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 05:38:25 Not going to sleep at decent times 05:38:48 Yes. That is what defines me. 05:39:22 Sgeo: It's 0:38 in New York. You are ful 05:39:26 *full of shit if you think that's late. 05:39:35 elliott, I didn't eat dinner yet 05:39:45 And last night, I didn't go to sleep. I was reading about Racket 05:40:10 -!- poiuy_qwert has joined. 05:40:40 coppro: IMO, this is the greatest Perl 6 feature: http://perl6advent.wordpress.com/2009/12/19/day-19-whatever/ 05:40:44 coppro: It, literally, means anything. 05:41:08 coppro: It is a single character that can do almost anything you want, and whose meaning is completely overridable and context-dependent in every way, having no common properties between them. 05:41:25 It is utterly hilarious (the world's first joke told with a language feature?) and yet beautiful somehow. 05:42:47 G'night. 05:42:48 -!- elliott has quit (Remote host closed the connection). 05:52:29 -!- zzo38 has joined. 05:53:37 Can you figure out this code golf http://golf.shinh.org/p.rb?List+of+numbers+to+factor I figured it out maybe I can write 2 hint? 05:54:49 -!- poiuy_qwert has quit (Ping timeout: 240 seconds). 05:55:40 zzo38: does the list of numbers differ between different programs? 05:57:09 The list of numbers has to be the specified list in order to solve the problem. You can make up this list of numbers using any algorithm you want to that produces this list. 05:57:38 so the list of numbers from the sample output is always the list/ 05:59:58 2 hint: * It has something to do with the root directory! * Look at the individual numbers (on the left side) more carefully! 06:02:03 no idea man 06:02:05 (you can also use a embedded solution if you prefer, this is also valid for many problems; but you might prefer not to) 06:03:01 i don't think you can get down to 27 chars that way :P 06:03:55 You are right you probably cannot do it that way, but you can try and score anyways, it just won't be the best score. 06:11:42 -!- Sgeo has quit (Read error: Connection reset by peer). 06:12:08 -!- Sgeo has joined. 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:05:54 Hmm... IPv4 allocation rate of APNIC has slowed a bit... Currently the pool is at 2.75. I guess it'll pick up after new year... 08:09:01 Does it usually? 08:12:37 I haven't looked into that. But the days between xmas and new year tend to be slow anyway... 08:12:38 -!- wareya_ has quit (Read error: Connection reset by peer). 08:13:26 -!- wareya has joined. 08:14:44 Or then APNIC suprise-allocates around new years, bringing immediate X-day... 08:35:33 Hah... This piece of news gats IPv6 address space size wrong. First it says the number of addresses is 340 undecillion (right), but then it says "which is a 34 followed by 35 zeros". Except that 340 undecillion is 34 followed by _37_ zeros. 08:37:01 Would that be the same as 340 trillion trillion trillion by any chance? 08:37:07 Wait, no, that makes no sense 08:38:01 Wait, just googled 340 trillion trillion trillion, and the first few hits are about IPv6 08:39:54 Yes. 08:40:40 For every meter I travelled upwards in Second Life, there's an IPv6 address >.> 08:42:10 There is one IPv6 address for every possible key AES-128 has... 08:45:20 BTW: A while ago I patched git built-in git:// client and server to deal with IPv6 properly and sent the modifications upstream. :-) 08:46:24 Ilari, you're awesome 08:48:53 <3 08:51:33 Basically the problem was that neither the client or the server could parse bracket notation properly. 09:00:35 oh 09:00:52 how much underlying stuff to establish ipv6 connections/ 09:01:10 and can it do ipv6 DNS too? 09:12:48 -!- sftp has quit (Read error: Operation timed out). 09:13:15 -!- sftp has joined. 09:13:15 * Sgeo sighs at User Friendly 09:13:29 Illiad forgot to put the "This 'toon is a repeat" thing up 09:13:38 So now it's displaying pre-Y2k stris 09:13:40 strips 09:21:38 -!- zzo38 has quit (Remote host closed the connection). 09:27:26 -!- hagb4rd has joined. 09:27:58 hi 09:28:27 hi 09:38:58 hmm, so strchr(':') is actually a very bad way to find the port number of an address, if you want IPv6 support 09:45:26 -!- cheater99 has quit (Ping timeout: 240 seconds). 09:50:40 -!- oerjan has joined. 09:58:28 -!- cheater99 has joined. 10:04:56 -!- hagb4rd has changed nick to hagb4rd|afk. 10:10:43 http://uncyclopedia.wikia.com/wiki/Conservapedia 10:13:14 curse those liberals!! 10:14:25 LOL: 8 billion IP addresses. 10:18:24 -!- Phantom_Hoover has joined. 10:18:46 see also: http://uncyclopedia.wikia.com/wiki/Conservatroll 10:33:46 -!- Wamanuz4 has joined. 10:39:36 -!- hagb4rd|afk has changed nick to hagb4rd. 10:43:59 -!- Wamanuz5 has joined. 10:45:50 -!- Wamanuz4 has quit (Ping timeout: 240 seconds). 11:15:19 Dear Notepad++: "Encode in UTF-8 without BOM" should be called "Encode in UTF-8". UTF-8 does not have a BOM. 11:18:04 http://patrickthomson.tumblr.com/post/2499755681/the-best-debugging-story-ive-ever-heard 11:22:20 Why am I not going to sleep? 11:22:44 "Linda was developed by David Gelernter and Nicholas Carriero at Yale University and is named for Linda Lovelace, an actress in the porn movie Deep Throat, a pun on Ada's tribute to Ada Lovelace[1]." 11:24:31 Sgeo, because you are using your computer? 11:46:50 -!- hagb4rd has quit (Ping timeout: 240 seconds). 11:48:11 -!- oerjan has quit (Quit: leaving). 12:22:44 -!- sftp has quit (Ping timeout: 264 seconds). 12:23:24 -!- sftp has joined. 12:28:12 Phantom_Hoover, down? 12:28:39 Vorpal, no,, 12:34:01 Dear Sgeo: Unfortunately, Windows doesn't appear to subscribe to this belief 12:34:17 (also BOMs are legal if utterly retarded in UTF-8) 12:34:34 I actually have a script to prepend a UTF-8 BOM to deal with retarded programs 12:34:53 (like some Windows text editors...) 12:35:54 -!- sftp_ has joined. 12:36:03 -!- sftp has quit (Ping timeout: 246 seconds). 12:53:05 -!- j-invariant has quit (Quit: leaving). 13:10:00 Phantom_Hoover, so how goes the repair (the server is back up again) 13:10:13 I finished it ages ago. 13:11:31 Phantom_Hoover, ... no... ? 13:11:42 Phantom_Hoover, you must have lagged out before server saw it 13:11:51 Well, the stone I was smelting is all there. 13:11:53 Phantom_Hoover, still 5 blocks missing 13:11:55 sec 13:12:01 About 8 blocks. 13:12:14 Phantom_Hoover, 8 blocks as cobble, no coal in there 13:12:24 Gyaaaa 13:12:25 oh another furnace 13:12:32 Phantom_Hoover, there were 8 stone in another furnace 13:12:37 hm 13:12:39 Yeah, that's mine. 13:12:48 this whole former PLT-Scheme looks quite nice 13:12:59 but i don't like it's nomenclature 13:13:00 Phantom_Hoover, repaired the remaining hole. want the 3 remaining stone? 13:13:08 Not reall. 13:13:10 *really 13:16:05 Phantom_Hoover, anyway, I'm sure we all have hidden away chests. But I have some pretty much mcmap-safe hide aways too. 13:16:14 won't tell you any details 13:16:44 I'm assuming you either embedded the chests in stone to make them hard to see or placed them in the middle of nowhere. 13:17:12 Phantom_Hoover, the latter. I have a file with coordinate pairs 13:17:41 What the hell do you have worth hiding? 13:18:03 TNT would seem to be about it. 13:18:12 Phantom_Hoover, not TNT no. 13:18:22 Phantom_Hoover, see /msg 13:18:25 -!- sftp has joined. 13:18:36 WHAT'S THAT YOU SAY? OBSIDIAN? 13:18:58 That's really not something worth keeping secret. 13:19:06 -!- sftp_ has quit (Ping timeout: 272 seconds). 13:19:20 Phantom_Hoover, meh. Some mystery never hurt 14:01:45 Phantom_Hoover, is it down? 14:02:29 LUCH 14:02:31 *LUNCH 14:17:41 -!- MigoMipo has joined. 14:44:46 -!- elliott has joined. 14:47:44 04:34:17 (also BOMs are legal if utterly retarded in UTF-8) 14:48:04 coppro: Is it really legal if the inventors of UTF-8 will kill you if you do? 15:10:22 -!- poiuy_qwert has joined. 15:33:57 -!- vinu143_ has joined. 15:34:15 Bailout 15:34:25 Happily 15:34:33 Hai 15:34:33 Bail in! 15:34:35 Sadly! 15:34:37 Bai! 15:34:44 Bail sideways! 15:34:48 Ambivalently! 15:34:51 ...blah! 15:34:57 Hellowww 15:35:28 Hello world wide web! 15:35:42 -!- Wamanuz has joined. 15:36:02 elliott: 15:36:07 H r u 15:37:08 Harigo. 15:38:17 -!- oerjan has joined. 15:38:33 -!- Wamanuz5 has quit (Ping timeout: 250 seconds). 15:38:48 -!- vinu143_ has left (?). 15:40:24 mol 15:41:06 ecule 16:11:34 asses. 16:12:30 MOLECULEASSES? THERE IS NO SUCH WORD 16:14:46 I like big molecule asses and I cannot lie. 16:17:04 elliott, still missing one door. where did you put it 16:17:17 Vorpal: I destroyed exactly one door and put it in the chest. 16:17:27 elliott, who has the inner door then? 16:17:54 elliott, PH I guess? And he seem to be acting like a 10 year old, so I doubt I'll get that back 16:17:59 Vorpal: What a stupid question. I'll go grab my telepathy device and figure it out. 16:18:16 elliott, it was a rhetorical question. 16:19:10 Vorpal: I don't think you understand what rhetorical questions are. 16:19:18 I do not have any doors. 16:20:08 Vorpal, also, I'll have you know that I am 22, not 10. 16:20:11 Phantom_Hoover, so what did you do to the inner door in order to get out? 16:20:28 I was 22 at it. 16:21:06 Phantom_Hoover, waiting for an answer 16:21:31 IT WAS ALL SUCH A BLUR 16:21:33 I like the idea of ageing something. 16:21:42 Except just before you're 70. 16:21:43 Probably PTSD from being kidnapped. 16:21:54 Phantom_Hoover, right. You still owe me one iron door. 16:22:08 Vorpal, you're in the wrong here! 16:22:14 Kidnapping is WRONG! 16:22:22 How stupid do you have to be not to understand rhetorical questions? 16:22:27 Phantom_Hoover, break in is also wrong 16:22:52 Phantom_Hoover, the word you are looking for is not kidnapping. I acted in self defence 16:23:08 Vorpal, BY KIDNAPPING ME! 16:23:30 oerjan: As stupid as Vorpal! (Yes, yes, I got it.) 16:23:32 Also, that was a meeting to foster corporate coöperation, not a break-in! 16:23:49 Phantom_Hoover, no. By filling up a room in my house. Why did you not use /spawn 16:23:56 Phantom_Hoover, no it wasn't 16:24:27 It WAS! 16:25:02 Phantom_Hoover, so is that why you changed a sign to read "Vorpal sucks" 16:25:09 Yep! 16:25:09 remember, that was BEFORE I filled the room 16:25:17 It's a complement in HHI circles! 16:25:17 Phantom_Hoover, pull the other one. 16:25:22 Hoovers, after all, suck! 16:26:07 Phantom_Hoover, what was the second text now again? 16:26:12 the second time you change it 16:26:15 changed* 16:26:51 I didn't get a chance, since you messed it up. 16:27:04 Phantom_Hoover, you changed it a second time. 16:27:18 Phantom_Hoover, and no I didn't mess it up. It was you who did in the first place 16:27:41 Phantom_Hoover sucks. 16:28:14 elliott, why thank you. 16:28:42 elliott, so was it you or PH who dug away in the side of a wall of my place? Below boat loop 16:29:17 What. 16:29:48 elliott, well there is a hole in a wall above the sign saying "boatloop ^\n\nfarming v" 16:30:04 elliott, certainly new as of today 16:30:10 Vorpal: I am really uninterested in your insane allegations of things I've done; please stop pinging me. 16:30:18 elliott, I presume it was PH then 16:36:01 Phantom_Hoover, gee, thanks for stealing metals too. 16:36:17 Zuh? 16:36:21 I gave them back. 16:36:37 Phantom_Hoover, oh where? They are not in the chest where they were taken from 16:37:19 Ugh, there is an awful J maze solver on Rosetta Code. 16:37:31 The most important part of the code is an imperative loop. 16:40:55 -!- elliott has quit (Remote host closed the connection). 16:41:41 -!- elliott has joined. 16:43:20 Phantom_Hoover, what about all those mushrooms? 16:43:39 Vorpal, I ate them. 16:43:49 Phantom_Hoover, wasn't there like 30? 16:43:55 hey, they did anagolf at 27C3 16:44:06 Vorpal, OK, let's learn some maths! 16:44:07 approve 16:44:14 8 + 8 = 16! 16:44:19 16 < 30! 16:44:30 Phantom_Hoover, so there was 8 in there of each. Right 16:44:31 16 - 4 = 12 16:44:42 I didn't remember how many were in there 16:44:47 open F,;eval 16:44:48 What. 16:44:51 which is quite different from math 16:45:20 Phantom_Hoover, now, when can I expect those back? Along with the iron door? 16:45:33 Vorpal, when the cows come home. 16:46:10 Phantom_Hoover, I see. Well a cow just jumped outside my front door. So I guess now then 16:46:31 Vorpal, that doesn't count 16:46:51 Phantom_Hoover, oh? 16:47:43 cows can't count 16:47:51 scientific fact 16:48:19 oerjan, EXACTLY. 16:48:35 also, alligators always alliterate 16:49:19 ineiros, there? 17:11:52 elliott, the HHI PR department is asking questions about the new message at our headquarters. 17:29:50 -!- cheater99 has quit (Ping timeout: 240 seconds). 17:36:05 oerjan: if I name Ponzi Scheme's editor Madoff, will you arrest me for being an unlicensed punster? 17:42:59 -!- cheater99 has joined. 17:48:40 -!- sftp has quit (Remote host closed the connection). 17:54:28 -!- sftp has joined. 17:58:15 -!- elliott has quit (Remote host closed the connection). 17:58:28 -!- sftp has quit (Remote host closed the connection). 17:59:20 -!- elliott has joined. 18:15:33 I wish the button on this thing was easier to press ... enabled tap to click for now. 18:21:18 http://www.theonion.com/articles/internet-explorer-makes-desperate-overture-to-beco,6338/ 18:22:34 -!- elliott has quit (Remote host closed the connection). 18:23:37 -!- elliott has joined. 18:27:22 2.210 +[19:45:51] < fizzie> personally when I find enough money I don't have any use for I'll buy these. so I consider my usage just some kind of far-fetched "advance-preview" thing. 18:27:29 fizzie: So did you ever buy C99 and C++? 18:29:15 -!- elliott has quit (Remote host closed the connection). 18:29:57 -!- elliott has joined. 18:30:02 -!- elliott has quit (Remote host closed the connection). 18:31:30 -!- elliott has joined. 18:31:36 2.310 +[20:32:44] < fizzie> freaky. I've been a slackware-user since when I found linux, but recently I've been thinking about converting to a debianist. installed debian on this ppc-macintosh I have here. 18:31:38 LORE AND HISTORY 18:39:07 elliott, which year is it from? 18:53:30 -!- sftp has joined. 18:54:23 -!- Wamanuz2 has joined. 18:56:30 -!- Wamanuz has quit (Ping timeout: 246 seconds). 18:57:04 -!- Wamanuz3 has joined. 18:59:46 -!- Wamanuz2 has quit (Ping timeout: 240 seconds). 19:03:52 Bahahahahaha Minecraft. 19:04:01 BOXES! 19:04:19 (the official working title for what I have been calling netcraft) 19:04:27 coppro: That ... worst ... ever ... title 19:04:39 it's pretty epic so far; it uses vertex shaders to make the world "round" 19:04:53 coppro: Minecraft may spill into Agora for a few message Real Soon Now (or B) 19:05:02 elliott: I'm on Holiday 19:05:03 I apologise! 19:05:12 coppro: Bah, Agora is like a magnet. 19:05:16 You can't take a holiday from a magnet. 19:08:01 unless you have a magnetic monopoly 19:26:49 -!- elliott has quit (Remote host closed the connection). 19:27:37 -!- elliott has joined. 19:28:20 -!- elliott has quit (Remote host closed the connection). 19:29:13 -!- elliott has joined. 19:31:55 DAMMTI GEOMTRYOMFEOGP 19:41:56 -!- Wamanuz3 has quit (Ping timeout: 240 seconds). 19:45:28 oerjan: I just got the pun 19:45:30 you're horrible 19:45:53 you're welcome 19:48:39 -!- sftp has quit (Remote host closed the connection). 19:48:43 magnetic monopoly should be a game 19:49:04 -!- sftp has joined. 19:54:56 might raise a bit of a trademark issue 19:55:36 -!- FireFly has joined. 19:55:44 * oerjan swats FireFly -----### 19:55:50 :( 19:56:02 IT'S TRADITIONAL 19:56:07 Heh 19:56:07 oerjan: cruelty! 19:56:23 Good evening anyway 20:06:03 Wow, apparently my anagolf challenge is rather famous ... 20:06:47 Link? 20:07:02 Phantom_Hoover: Just the "minimal Scheme interpreter" one; it's famous for being a complete and utter failure. 20:07:15 Not only is one of the example programs invalid (unmatched parens), but the output is incredibly trivial to just embed. 20:07:51 heh 20:08:59 Phantom_Hoover: In which dirt and gravel also become glass: http://abemiller.imgur.com/778N2 20:10:48 elliott, clearly not gravel. 20:11:20 Well, okay. 20:29:48 grievously groveling gravel 20:29:58 elliott, you promised me Minecraft in Agora 20:30:09 Sgeo: What. 20:30:11 Sgeo: I object 20:30:19 Sgeo: Oh, no, I didn't mean like that. 20:30:25 And I promised nothing? 20:30:25 coppro: Minecraft may spill into Agora for a few message Real Soon Now (or B) 20:30:30 I pinged coppro once. 20:30:31 Oh 20:30:34 Sgeo: Yes, I mean Minecraft-related matters. 20:30:39 It's complicated. 20:31:10 * oerjan recalls Agora had some geography-like game at one time 20:31:21 hm was it an Agora map 20:31:30 oerjan: COME BACK AND FIND OUT 20:31:36 eek 20:31:56 oerjan: we're fluffy :< 20:32:29 BUT DO YOU TASTE GOOD WITH KETCHUP? 20:33:13 or possibly a more refined sauce 20:33:23 oerjan: yes 20:33:32 hm... tempting 20:35:26 oerjan: or you could be like michael norrish; just post occasionally and have people gawp :D 20:35:37 hm... even more tempting 20:36:38 oerjan: in fact, the rarer it is, the larger a spectacle you get 20:38:17 you realize that logically this implies that i should wait as long as possible 20:38:50 oerjan: well, no, it ends after a while 20:38:55 oerjan: at least for the first post 20:38:58 ah. 20:38:59 nobody knows who the fuck you are :D 20:39:16 except us, obviously 20:39:17 and probably goethe since he's older than time itself 20:39:17 SORRY *G. 20:39:22 well michael norrish would know. maybe i could get a chain effect. 20:39:51 i don't think goethe is on this channel to hear you? 20:39:54 oerjan: Michael Norrish is the most prolific of the people who never post :-P 20:40:07 ...how logical. 20:40:26 oerjan: IIRC his second-last (memorable, at least) post was dissing Spivak pronouns, and the last was denouncing nomic that's based on scams and rule trickery as boring, vs. one grounded in politics 20:40:34 I guess he only posts when he's sick of our shit :) 20:40:51 heh 20:40:52 afk 20:48:10 -!- Sasha has quit (Ping timeout: 240 seconds). 20:50:18 Realisation: All OS X package managers suck. 20:50:38 yes 20:50:39 also 20:50:43 my bedroom is farting 20:50:54 coppro: I thought you were going to say "also, OS X sucks" but ... what. 20:50:55 -!- Sasha has joined. 20:51:07 Maybe I'll start maintaining my own packages with stow. 20:51:13 That doesn't sound like a half-bad idea actually. 20:51:13 something in my bedroom is making farting noises 20:51:27 After all, all the OS X package managers compile anyway ... yes, I think I will do that. 20:51:54 I wonder if I can make stow use hardlinks instead of symlinks. 20:53:01 http://www.gnu.org/software/stow/ TOTALLY EASY TO FIND TARBALLS FROM THIS PAGE 20:53:46 hmm, is stow even *maintained*? 20:53:55 last release is from 2002 20:55:53 it's been stowed away 21:01:57 wish pikhq was here, he knows about stow 21:03:42 "Yes, witnesses to the Jehovahs incident" 21:03:58 Gregor: wat 21:04:11 Gregor: have you used gnu stow 21:04:17 elliott: No 21:04:23 Gregor: use it so i can ask you questions about it 21:04:30 elliott: Nuh-uh 21:04:57 Gregor: plz 21:05:54 elliott: Nuh-uh 21:05:59 Gregor: :{ 21:06:01 the curious incident of the Jehovah in the night-time 21:08:52 lol 21:13:04 the FHS is so restrictive 21:13:11 /usr/local is overloaded :( 21:13:21 /usr/local is "shit the sysadmin wrote" but *also* "shit the sysadmin installed" 21:13:26 with the latter, something like gnu stow is useful for managing it 21:13:32 with the former, obviously you don't want stow trashing your shit 21:13:41 which it will if you use the same directory 21:13:43 so ...? 21:15:02 coppro: you, random person I'm going to annoy. solve my problem 21:15:33 2.970 +[23:18:07] < fizzie> now that was just plain wrong. it's like killing twelve live kittens and stuffing a pentium inside each one. 21:16:24 2.984 +[23:43:14] < fizzie> I went to see the 'spirited away' movie today, and they showed the trailer for a new star trek film, 'nemesis', before it. 21:16:24 2.985 +[23:43:43] < fizzie> looked like lot of explosions and spaceflight, and then few people/things kissing in between. 21:16:28 these logs are the best ever 21:20:36 Was this when #esoteric was really #fizzie? 21:21:09 elliott: no 21:21:25 Phantom_Hoover: No, I'm just only quoting fizzie. 21:21:28 everyone else in 2002 is boring. 21:22:02 -!- Wamanuz3 has joined. 21:22:10 2.1339 +[02:50:11] < mooz_> am talkink 21:22:10 2.1340 +[02:51:30] < mooz_> sadly, pitr hasn't had much of a role in UF lately. one could even say the standard of the comic has lowered... 21:22:10 2.1341 +[02:54:25] < navigator> i haven't read it for about a couple of months 21:22:12 2.1342 +[02:54:37] < navigator> it was getting from silly to idiotic 21:22:14 2.1343 +[02:54:46] < mooz_> quite 21:22:16 a lesson that Sgeo has still not learned 21:22:55 2.1380 +[03:16:13] < fizzie> colin is my primary computer, it's "about the first genuinely useful" thing here, as ford says about colin in the book. 21:22:55 2.1381 +[03:16:32] < fizzie> random is a girl, and macs are of course girls. 21:23:10 2.1392 +[03:17:46] < fizzie> zem is a laptop, so it somewhat resembles a mattress. 21:23:15 (Some lines snipped.) 21:23:19 This naming logic is horrific, fizzi. 21:23:21 *fizzie. 21:23:38 2.1395 +[03:18:30] < fizzie> and epun is really insignificant, and in reality here epun is a C128. 2.1398 +[03:19:16] < fizzie> yup. I'm trying to write an ipv6 stack for it, therefore it has a name :p 21:26:05 so is anyone FHS-savvy :) 21:26:19 elliott, it's not getting from anything to anything right now. 21:26:27 Sgeo: No, it's just bad. 21:26:34 And Iliad is dying of cancer or something. 21:26:46 ..? 21:27:03 Sgeo: Or something :P 21:28:04 -!- elliott has quit (Remote host closed the connection). 21:28:47 -!- elliott has joined. 21:28:51 Illiad's a plagiarist? :( 21:30:02 Sgeo: What? 21:30:11 OK, I think I'll stow in /opt: 21:30:17 "The directories /opt/bin, /opt/doc, /opt/include, /opt/info, /opt/lib, and /opt/man are reserved for local system administrator use. Packages may provide "front-end" files intended to be placed in (by linking or copying) these reserved directories by the local system administrator, but must function normally in the absence of these reserved directories." 21:30:20 http://en.wikipedia.org/wiki/User_Friendly#Plagiarism 21:30:35 However, I am not sure what to name the stow directory... 21:30:56 /opt/stow isn't strictly correct, especially as ... oh fuck it, I'll go with /opt. 21:31:40 Sgeo: Hardly a worthy accusation considering all the punchlines are tired, tired lines heard a billion times before. 21:35:05 you know what really has issues? 21:35:08 Natioal Geographic 21:35:53 *National 21:36:09 That may have been funnier if it were a bit longer before you said it 21:36:23 Then again, I should not be giving advice on humor 21:36:24 probably 21:36:30 coppro, hm. 21:36:30 but it was supposed to be a lame pun 21:36:32 so me 21:36:33 *meh 21:36:37 Oh, god. 21:36:46 * Phantom_Hoover swatpans coppro --==\#/ 21:37:30 * elliott goes towards compiling GHC 21:37:32 more like quadriplegic 21:37:39 i.e. 21:37:41 1. Download GHC. 21:37:43 2. Download GHC's source. 21:37:47 3. Use (1) to build (2). 21:37:50 you know what is a nice sound? 21:37:52 an hourglass 21:37:58 4. Call up Douglas Hofstadter -- tell him you just did something that'll BLOW HIS MIND. 21:38:04 I don't get it 21:38:22 I do 21:38:28 It's funny 21:38:41 I think Sgeo means he doesn't get coppro's joke. 21:38:50 Oh, it wasn't a joke 21:38:55 * oerjan doesn't either 21:38:58 Presumably coppro was referring to my line, then. 21:39:09 I was 21:39:15 But the hourglass comment was no joke 21:39:28 I like the quiet flowing sound of an hourglass 21:39:31 I don't quite get elliott's thing either 21:39:38 * coppro was given an hourglass for his birthday 21:39:55 Douglas Hofstadter's career is built on making recursion sound like an amazing thing that solves all questions of consciousness. 21:40:13 That man is strange 21:40:18 (and not just in a looping fashion) 21:40:27 to understand consciousness you must first understand consciousness 21:40:50 Aren't most compilers compiled by themselves these days? 21:40:50 Hofstadter seems like an intelligent guy who should have really been stopped from writing GEB. 21:40:58 Sgeo: You have a strange definition of most ... 21:40:59 The funny thing about his writing is that he seems to have a reasonable grasp at mathematics, except it just sort of goes out the door and becomes a weird mysticism when he mentions strange loops 21:41:03 GCC, GHC. 21:41:05 That's about it. 21:41:06 clnag 21:41:10 *clang 21:41:10 Oh, the Lisps too, but they're weird. 21:41:14 coppro: no, clang compiles with GCC too. 21:41:18 GHC compiles only with GHC. 21:41:20 GCC compiles only with GCC. 21:41:35 SBCL compiles with CMUCL too, even, so even as a Lisp it doesn't qualify. 21:41:39 I suspect SBCL could compile CMUCL, as well. 21:41:41 elliott: you could build a working GCC with a few other compilers 21:41:51 coppro: Well, it's dark magic. 21:41:56 coppro: And nobody actually does afaik. 21:42:01 elliott: ./configure -no-bootstrap 21:42:06 or something like that 21:42:12 Anyone done diverse double-compiling on GCC? 21:42:19 double-compiling? 21:42:20 How would you go about doing that? 21:42:21 Sgeo: It is one of the examples in the paper. 21:42:23 compiling GCC once is bad enough 21:42:23 Read it 21:42:27 Ah 21:42:33 coppro: Diverse Double-Compiling is the name for the technique to circumvent Trusting Trust. 21:42:41 WAIT WHAT 21:42:43 coppro: It lets you figure out if a system has been compromised in that way. 21:42:52 coppro: See http://www.dwheeler.com/trusting-trust/. 21:45:01 checking for path to top of build tree... dyld: Library not loaded: /opt/local/lib/libgmp.10.dylib 21:45:02 by depends on xcode 21:45:06 they meant depends on xcode and macports 21:45:21 Compiling GHC is a bitch :-( 21:46:03 the thing about the trusting trust attack is it is so difficult to actually pull 21:46:27 coppro: well, if the compiler gets modified too much, then the heuristic might fail 21:46:35 coppro: it was more practical with 70s era compilers 21:46:39 yeah 21:46:39 elliott: coppro: well, if the compiler gets modified too much, then the heuristic might fail 21:46:43 but note that if the original guy is still around 21:46:45 he can easily fix this 21:46:49 but what I mean is 21:47:11 if you are trying to backdoor every system as described in the paper 21:47:28 the amount of extra stuff you need to backdoor with your compromised compiler is very high 21:47:28 coppro: you mean in the diverse doublecompiling paper? 21:47:31 i haven't actually read it yet 21:47:48 elliott: It's the part describing a trusting trust attack 21:47:48 coppro: really, Trusting Trust is more theory than practice -- I don't know of anyone who isn't ken that's done it, and ken is basically a god 21:47:53 coppro: right. 21:47:57 coppro: well, it's an academic paper. 21:48:00 true 21:48:06 coppro: the point is to prove "even when all seems hopeless, we can still trust computers" :) 21:48:13 well, if you're willing to trust the second compiler. 21:48:16 you could always write your own. 21:48:21 but the thing is, in practice, you'd need to backdoor the compiler in such a way as to at least backdoor every other compiler 21:48:26 Who says that I can trust the hardware? 21:48:30 this is non-trivial 21:48:34 coppro: compile the compiler on another machine, duh 21:48:47 elliott: but for instance, let's say you backdoored GCC 21:48:55 you would then need to make sure it could backdoor clang when it was compiling clang 21:49:02 (as well as, of course, backdooring GCC) 21:49:04 coppro: the point is a backdoor on one system 21:49:14 coppro: well, at the minimum, you need a binary of a compiler you trust. 21:49:24 coppro: You can always write your own compiler, in machine code, from scratch, in theory. 21:49:27 elliott: to perform the attack? 21:49:31 or to defend? 21:49:34 coppro: to defend 21:49:41 I'm talking about attacking 21:49:44 coppro: oh, were you saying that attacking is impractical? 21:49:46 yes 21:49:46 right, i totally agree 21:50:12 defending, yes, needs to start with something trusted 21:50:13 sigh, the other binary depends on the macports lib too 21:50:24 and it could well be a machine-code compiler for something simple 21:50:53 e.g. a machine code assembler makes an assembly C subset compiler makes a full C compiler makes everything else 21:52:02 Hmm, my inst(1) program might actually come in useful. 21:52:14 For compiling stuff into /opt/stow/foo. 21:59:02 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds). 21:59:27 -!- hagb4rd has joined. 22:00:55 -!- Behold has joined. 22:02:43 I should probably go eat breakfast 22:02:48 -!- wareya_ has joined. 22:03:53 -!- BMG has joined. 22:03:54 Sgeo: Um, it's 17:00. 22:04:16 I haven't left my bed since... maybe 7AM or so?/ 22:04:21 And that wasn't to eat 22:04:22 -!- Phantom_Hoover has joined. 22:05:30 -!- wareya has quit (Ping timeout: 246 seconds). 22:05:33 -!- BMG has quit (Remote host closed the connection). 22:07:15 -!- Behold has quit (Ping timeout: 250 seconds). 22:07:35 i notified sgeo very often having problems with the very basic sustainment functions :) 22:08:17 verily 22:08:19 My only problems are with sleeping and eating! 22:08:44 so breathing works fine..last but not least 22:08:49 so far 22:10:54 One of the bad sides in IPv4 depletion is GCN. Forum trolls and wiki vandals are absolutely going to love it... 22:12:49 Ilari: gcn? 22:13:01 Oops, CGN 22:13:24 coppro: lol you would hate how old this clang is 22:13:32 $ clang --version 22:13:32 Apple clang version 1.6 (tags/Apple/clang-70) 22:13:42 coppro: apple can't even ship the latest version of the products they fund :) 22:14:21 -!- elliott has quit (Remote host closed the connection). 22:16:16 -!- elliott has joined. 22:17:34 GCN? 22:17:38 Oh 22:17:42 CGN? 22:17:51 Carrier Grade NAT. 22:18:39 what's that? 22:18:44 remind me 22:19:49 NAT by ISP. 22:20:12 nope, rings no bells 22:20:31 You know what NAT is (and why it is bad)? 22:20:36 20000users 1 IP 22:20:37 nope 22:20:48 I'm dumb in IP matters 22:20:49 Pretty much... 22:20:54 also hah http://politics.slashdot.org/story/10/12/30/213246/Democrats-Crowdsourcing-To-Vote-Palin-In-Primaries?from=rss 22:20:58 oh 22:21:01 wait I thought IPv6 got rid of this 22:21:15 every machine/location pair will effectively have its own IP 22:21:20 coppro: thus "IPv4 depletion" 22:21:20 coppro, yes. IPv6 hasn't been widely deployed yet 22:21:24 also ipv6 has some nat i think 22:21:41 coppro: that article is everything wrong with ameirca 22:21:42 *america 22:21:45 well no not nearly everything 22:21:47 Wait, every _machine/location pair_? Not just every machine? Hmm 22:21:47 but the voting system 22:21:48 definitely 22:21:50 yes 22:21:52 Well, that makes sense 22:21:52 Sgeo: yes 22:22:10 Sgeo: individual organizations will get /64s 22:22:16 where organization might mean your house 22:22:28 the other half is allocated based on your MAC address 22:22:34 (so as to obviate DHCP) 22:22:51 (since every computer can theoretically say "give me this IP" and it will be available) 22:23:17 I'd vote in the Republican primary against Palin (unless the only other serious contender was Huckabee) 22:23:28 Oh, IMS (3G/4G IP Multimedia(?) Service) is IPv6-only and assigns /64 per handset. 22:23:30 What if a computer lies about its MAC address? 22:24:08 Sgeo: then you might get collisions 22:24:30 There's DAD (Duplicate Address Detection). 22:25:02 And also privacy extensions that make the computer hop the host part of the address. 22:25:39 Who's worse: Palin or Huckabee? 22:25:52 Your mother. 22:26:18 Deceased people really don't make great presidents 22:26:30 They make the best presidents! 22:27:08 I think Palin... Huckabee might be crazy, but at least he might be somewhere near competent... 22:27:55 I think I need to amend my GHC compilation process. 22:27:58 1. Install GHC. 22:28:09 2. Install tons of Haskell libraries and programs to enable building all the GHC documentation. 22:28:10 3. Download GHC. 22:28:15 4. Compile GHC with GHC. 22:28:16 5. Install GHC. 22:28:19 6. Uninstall the other GHC. 22:28:21 7. Why god why 22:29:25 For building library documentation, you'll need Haddock [6]. To build 22:29:25 the compiler documentation, you need a good DocBook XML toolchain and 22:29:25 dblatex. 22:29:28 BUT I DON'T WANNA 22:31:21 elliott, why are you doing it that way for ghc? 22:31:36 Vorpal: Because GHC depends on GHC. 22:31:39 GHC depends on recent GHC, even. 22:31:41 elliott, couldn't you just get the haskell platform thingy? 22:31:55 Vorpal: I doubt that thinks it's installed in /opt, and GHC is not very relocatable. 22:32:07 elliott, oh, is this for kitten? 22:32:14 Vorpal: Plus the platform is on GHC 6.12; I want the new, shiny, breaks-everything GHC 7.0.1. 22:32:19 No, this is for my OS X box. 22:32:23 ah 22:32:25 There is literally no good OS X package manager. 22:32:34 Homebrew isn't good? 22:32:35 I've tried MacPorts, Fink, and Homebrew. They are all terrible. 22:32:53 So I'm just compiling stuff myself and using 2002-vintage GNU Stow. 22:33:02 elliott, so what is are the major news in ghc 7? 22:33:07 Vorpal: What. 22:33:11 is are 22:33:13 IS ARE 22:33:15 elliott, you said it breaks everything 22:33:22 Sgeo, oops 22:33:28 It has more bunnies. 22:33:42 (that is what you get for changing a sentence midway and then not proof reading) 22:33:51 All that I was is lost to the waves. I was is lost. was is. 22:33:59 -!- elliott has quit (Remote host closed the connection). 22:34:55 I think elliott's fleeing me 22:36:44 -!- ais523 has joined. 22:39:52 -!- elliott has joined. 22:39:58 guess my wifi password 22:40:42 sgeosucks 22:41:03 coppro: nope, although good idea 22:41:12 it's actually opticiansareactuallybearsindisguiseokay. based on a true story. 22:41:40 Scenes from 2002: 22:41:41 2.1712 +[02:47:45] < navigator> hey have any ascii anime porn links? 22:42:08 so they can barely see? 22:42:48 2.1749 +[17:03:19] < navigator> i need either somebody to help me with dialup ppp from solaris or somebody to give me a lot of drugs 22:42:48 2.1750 +[17:04:32] < fizzie> heh, I was actually thinking of trying solaris/sparc too. 22:42:48 2.1751 +[17:04:51] < fizzie> maybe I should restock my supplies of drugs before I try that, then. 22:43:29 Yay, I ate! 22:43:38 elliott, the major change seems to be haskell2010 support? 22:43:49 Sgeo: CONGRATULATIONS 22:43:52 Vorpal: probably. who cares. it's shiny & new 22:44:11 elliott, yes but I was wondering what the shiny and new parts were (found the release notes) 22:44:13 I think I'm starting to see the use of a package management system ... tempted to write installation shell scripts now 22:44:31 so I can do /usr/local/install/ghc 22:44:38 and it'll make /opt/stow/ghc-7.0.1 for me 22:44:46 Vorpal: higher version number than previous versions. 22:45:24 elliott, err, package management system, you mean, like those distros use? If so, how long have you been thinking they were useless? (I completely missed this) 22:45:37 Vorpal: i was half-joking 22:45:42 elliott, ah, phew 22:45:46 i do believe most of what package managers do is useless though :) 22:46:12 if it's not @'s cryptography-based API-based ultra-general system, then it better be Kitten's basically-no-runtime-dependencies minimalist extravaganza 22:46:43 hah 22:47:01 elliott, checksumming the API sounds cool. 22:47:23 Vorpal: i stole it from tuomov :) 22:48:02 elliott, but a bit tricky for the general case of a distro. Since you need to handle everything from C API (how do you extract /that/? Checksumming AST of headers or something? Remember macros and so on) 22:48:05 ok it'll actually be /usr/local/share/install/ghc-7.0.1... and then I can say "install ghc" and it'll run that in a temporary directory for me 22:48:07 with any luck! 22:48:09 Vorpal: ghc 7 it has a COMPLETELY NEW type inference engine thingamajig 22:48:20 olsner, ah cool 22:48:20 win 2 22:48:49 Hackiki + Node.js: Best idea ever? 22:49:08 Gregor: Oh dear god. 22:49:18 elliott, and that is just the ABI, not the API 22:49:31 elliott, since the API would include *behaviour* too 22:49:41 apparently the new thing supports stuff like interactions between GADT:s and other type-system features much better than before, and adds stuff like flexible kinding 22:49:57 Gregor, what is node.js? 22:50:23 olsner, heh 22:50:24 Vorpal, server-side Javascript 22:50:48 hm 22:50:59 "Server-side" is a bad name for it. 22:51:01 that sounds crazy 22:51:13 Node.js is to JavaScript as CPython is to Python. 22:51:13 istr ghc 7 includes the llvm backend too 22:51:34 Gregor, is the filename node.js (if so, what executes that?) 22:51:39 Gregor, wow 22:51:44 for javascript? 22:51:47 huh 22:51:58 Vorpal: Like all other JavaScript projects, it has the worst name it could possibly have. 22:52:12 wikipedia: "Node.js is an evented I/O framework for the V8 JavaScript engine on Unix-like platforms. It is intended for writing scalable network programs ..." 22:52:36 Gregor, which js environment does it call out to for stuff it can't compile (assuming the analogy of cython works on that level) 22:52:38 Wait, isn't V8 the Chrome thing? 22:52:58 olsner, that doesn't sound like cython for js at all 22:52:59 Sgeo, yes. 22:53:15 Vorpal, CPython. Not Cython. 22:53:16 -!- elliott_ has joined. 22:53:16 -!- elliott has quit (Ping timeout: 240 seconds). 22:53:20 Just you wait until I implement @'s Javascript engine, I'll show you all. 22:53:22 oh misread 22:53:24 right 22:54:28 does ghc no longer depend on gmp? 22:55:09 elliott_: no, I don't think it doesn't 22:55:21 hm. 22:55:24 i guess os x ships with it then 22:55:47 * Sgeo reads DS9's article on M-A 22:55:51 olsner, was that double negative intended, or was it just an error on your side? 22:55:56 Changelings aren't the only ones in the Dominion? 22:56:16 Sgeo: facepalm 22:56:18 Vorpal: yes :) 22:56:26 elliott_, well it probably does, since iirc gcc depends on mpfr which depends on gmp. 22:56:36 Vorpal: yeah. but this is apple, so who knows. 22:56:49 I just don't like calling it "server-side JavaScript", because that's used to distinguish it from in-browser JavaScript, but there's nothing about Node that necessitates writing server apps. 22:56:56 olsner, is that "yes" the logical "at least one of the alternatives is true"? 22:56:59 their unix development story is anything but logical 22:57:14 Vorpal: i.e. I'm pretty sure gmp is still used by ghc 22:57:18 elliott_, fair enough 22:57:20 olsner, ah 22:57:36 hmm, I have a bootstrapping problem with the stow package 22:57:44 elliott_, GNU stow!? 22:57:47 Vorpal: yes :-) 22:57:59 elliott_, didn't you say it sucked? 22:58:02 Vorpal, get with the picture, he's been talking about it nonstop 22:58:03 Vorpal: anything I wrote for the purpose would basically be a reimplementation, so I'll use GNU's finest 500-line Perl script to do the job 22:58:12 yes, it sucks. but I don't want to fuck around with FUSE and Gregor's cunionfs on OS X . 22:58:16 and unionfs is linux-only. 22:58:20 Sgeo: nonstop? 22:58:23 Ive mentioned it like thrice 22:58:24 *I've 22:58:27 keyboard adjustment period ... 22:58:38 ooh, only 500 lines? isn't that 10x shorter than gnu's hello world? :) 22:58:42 elliott_, speaking of keyboards. How is the air keyboard? 22:58:47 elliott_, and is it full size? 22:59:14 that stow sounds like what macports does with installation 22:59:21 Vorpal: It is just as nice as every other Apple keyboard (i.e. perfectly decent if you're okay with a short-key-travel scissor switch; in that area, they are perfectly high quality); and yes, it is completely full size. 22:59:30 well, apart from the arrow keys. but they're not full-sized on other apple laptops, either. 22:59:35 and even i think on the mini apple keyboard 22:59:37 ah 22:59:50 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep). 22:59:50 Vorpal: one annoyance is that Fn is to the left of Ctrl. 22:59:58 which any god-fearing American can see is an abomination. 22:59:59 elliott_, full size F keys? 23:00:14 if so, strange for a laptop 23:00:15 Vorpal: full-width, yes; about half as high, but really, what laptop doesn't have shrinked F keys? 23:00:23 elliott_, indeed 23:00:39 Vorpal: they don't do Fn by default, though, they do brighten/dim display, expose, volume, blah blah blah, you have to Fn+ to get F-keys 23:00:42 elliott_, also arrow keys are normally shrunk as well. Well not on all, but most 23:00:48 dunno fi that's OS X or the hardware 23:00:48 *if 23:00:53 but F keys rarely do anything on OS X anyway 23:00:56 hm 23:01:10 elliott_, might be an issue in minecraft (F5 and so on) 23:01:28 well. you just have to hold fn. and sometimes fn-shift- to bypass the *other* meaning :) 23:01:48 elliott_, they have menings on fn- too? 23:01:56 Vorpal: well, they do whatever that F key would normally do. 23:02:03 usually nothing, but still 23:02:27 elliott_, oh which of them does something like that? 23:02:36 or is that application specific? 23:02:38 I think f11 23:02:43 yup 23:02:47 elliott_, and what it is? 23:02:49 F11 increases volume one notch (har har notch) 23:02:51 as in 23:02:52 not F11 23:02:59 the key labeled F11 in small, with a big audio symbol in main 23:03:04 Fn+F11 hides all windows and shows desktop, like F11 does 23:03:07 ah 23:03:13 Fn+Shift+F11 just sends F11 to the app, which is what you need for MC! 23:03:28 nobody seems to have figured that out because all os x minecraft screenshots appear to be maximised only 23:03:48 elliott_, I wonder what would happen if the app made a difference between shift-f11 and f11 23:04:09 Vorpal: um. it would break and apple wouldn't care, like usual. 23:04:13 right 23:04:23 but what kind of app would do that anyway :) 23:04:37 elliott_, one written for non-apple? 23:05:13 yes, it sucks. but I don't want to fuck around with FUSE and Gregor's cunionfs on OS X . 23:05:20 Last I checked, FUSE on Apple was no problem. 23:05:21 Vorpal: would you use an app that assigns things to both F11 and Shift+F11? 23:05:38 Gregor: it isn't, but it's still a thing you have to download etc 23:05:44 and i don't trust you :-) 23:06:16 elliott_, I wouldn't use that as the main criteria for the program if there didn't exist an in other aspects comparable alternative 23:07:02 #!/bin/sh -e 23:07:02 pkg=$(basename $0) 23:07:02 curl -O http://ftp.gnu.org/gnu/stow/$pkg.tar.gz 23:07:04 tar xzf $pkg.tar.gz 23:07:06 cd $pkg 23:07:07 I would live with it, and if used too often I would complain a bit about it 23:07:08 ./configure --prefix=/opt 23:07:10 make install prefix=/opt/stow/$pkg 23:07:12 /opt/stow/$pkg/bin/stow --dir=/opt/stow --target=/opt -v $pkg 23:07:14 i wonder if i can make this shorter, it's ugly. 23:07:15 (since it is rather awkward to press) 23:07:50 elliott_, have you picked a name for your computer yet? 23:08:04 Phantom_Hoover: Nope. It's still Elliott-Hirds-MacBook-Air. 23:08:09 (Thanks, Apple.) 23:08:17 * Sgeo misread that as Elliott-Ehirds 23:08:26 elliott_: ... you must change its name 23:08:33 olsner: I just can't think to what. :-) 23:08:37 elliott_, so what is $pkg typically? 23:08:38 olsner: It's kind of comical how long my shell prompts are. 23:08:42 Vorpal: stow-1.3.3, in this case :P 23:08:56 Vorpal: I just kept typing stow-1.3.3 over and over and I thought god I hope they never release a new stow version. 23:09:04 I still can't get over the fact that this computer refused to let me use it until it took a picture of me. 23:09:13 o.O 23:09:15 elliott_, it what? 23:09:20 Vorpal: To set the account picture. 23:09:25 OK, maybe if I selected to choose from the photo gallery I could have picked some stock thing. 23:09:34 elliott_, I hope so 23:09:35 But I was too lazy to, and subjected myself to its lens. 23:09:49 I technically cannot prove it did not immediately send it to Apple. :p 23:09:59 (It also wanted to be internet-connected by that point.) 23:10:03 elliott_, hrrm 23:10:26 (To probe my Apple ID out of me.) 23:10:33 this means apple now have your soul 23:10:37 It also asked what I'd be using the computer for, I think. 23:10:43 elliott_, "apple id"? 23:10:44 olsner: I find that very probable. 23:10:50 Vorpal: Yes, as in an apple.com account. 23:10:58 elliott_, do you actually need that? 23:11:08 Vorpal: I think it offered to let you register one if you don't have one. :p 23:11:16 elliott_, and was there no "no thanks"? 23:11:18 I think it's possible to skip that first-time application but I don't know how. 23:11:21 google actually do much of the same thing when you set up an android phone 23:11:24 Vorpal: I don't know, I didn't try, since I already have one. 23:11:33 hm 23:11:44 evil 23:11:48 all of them 23:11:53 "give us all your accounts and passwords, we won't be evil. we promise." 23:12:45 only a matter of time until google reveal themselves as a 10-year massive identity theft plot and/or destroy the world 23:12:52 Vorpal: to be fair, the Apple procedure, while annoying, isn't all that intrusive, since they *already* have all my details and the fact that I own an Air by virtue of ... it being bought 23:13:21 elliott_, you could have bought it over counter, would it have asked the same then? 23:13:35 elliott_, and then they wouldn't have the details (at least if you paid with cache) 23:13:39 (cash*) 23:14:06 Cache as a token of exchange. 23:14:07 Vorpal: Well, perhaps, sure. But who pays ~£1.5k in cash? 23:14:12 Phantom_Hoover: I approve. Please develop. 23:14:18 Phantom_Hoover, well, SRAM is rather expensive 23:14:37 elliott_, hm true :P 23:15:09 Vorpal: (Answer: People who voted for Ron Paul.) 23:15:15 (Although they probably try and pay in gold first.) 23:15:54 elliott_, republicans in other words? 23:16:25 Vorpal: Uh. 23:16:38 Phantom_Hoover: Please try and explain to Vorpal the vast, vast chasm that exists between "Republican" and "voted for Ron Paul". 23:16:50 I don't think Swedish has words to describe such subtleties that far right on the spectrum. 23:16:57 what's ron paul and who's republican? 23:17:03 :D 23:17:12 Their word for "right-wing authoritarian nutcase" is "social democrat". 23:17:41 elliott_, isn't it that Ron Paul wants rich people to do whatever the hell they like, while Republicans want them to do whatever the hell God likes? 23:19:09 oh so he is extremely right wing 23:19:18 Vorpal: Ron Paul is a libertarian. 23:19:42 He thinks the gold standard is a stonking good idea, he likes giving the states lots of power and the federal government very little, 23:19:56 Wait 23:19:58 he's a conservative Christian but doesn't try and legislate this in his policies -- and, despite being a complete and utter right-wing nutjob -- 23:20:04 he managed to be saner than all the other Republican candidates. 23:20:04 elliott_, suuuure 23:20:05 0xFA1L 23:20:10 Vorpal: This is because America is fucked up. 23:20:12 Isn't BitCoins gold-standard-esque, or am I missing something? 23:20:12 elliott_, I did not fall for that one 23:20:16 is it valid in C? 23:20:17 Vorpal: Fall for what? 23:20:20 Everything I said was factual. 23:20:27 He is, of course, a right-wing nutjob. 23:20:36 But if you really have to vote for a Republican ... 23:21:05 I mean, pretty much the only respectable US politicians are Dennis Kucinich and Ron Paul, and the only sane respectable US politician is Dennis Kucinich. But at least he's respectable. 23:21:05 elliott_, so he is more left that most republicans? 23:21:08 or more right? 23:21:15 Vorpal: It's not even left vs. right here. 23:21:19 Vorpal: Republicans don't even fit on the spectrum. 23:21:22 elliott_, oh, it's the other axis? 23:21:24 -!- zzo38 has joined. 23:21:26 Vorpal: It's neither! 23:21:39 elliott_, you thoroughly confused me 23:21:42 What do you think is the computational class of [[Memfractal]]? 23:21:59 Vorpal: Ron Paul is very much on the economic deregulation end and the social liberties end, yes. So right-wing. And this would be a terrible thing for America. 23:22:09 Vorpal: Republicans you can't even consistently place, they're just smack bang at the crazy end. 23:22:14 Make it a cube. 23:22:20 When you're at the crazy end, the other positions don't even matter any more. 23:22:22 elliott_, hm 23:22:24 You're just crazy. 23:23:40 hmm, what's the return status of "x=$(foo)" 23:23:43 the return status of foo? 23:23:46 or do I have to consult $? 23:23:50 elliott_, well, they do have the consistent "death to poor people" of the right. 23:23:58 elliott_, that depends 23:24:17 Vorpal: what 23:24:20 elliott_, local x=$(foo) will give you return status of local 23:24:31 I think the same applies for export 23:24:37 Lol, sh. 23:24:49 elliott_, but on it's own, then yes should be the return status of foo 23:25:02 What do you think is the computational class of [[Memfractal]]? 23:25:08 elliott_, anyway the same applies for $? when it comes to local/export 23:25:27 (so at least that is consistent 23:25:27 zzo38: What do *you* think is the computational class of [[Memfractal]]? :) 23:28:09 elliott_, hm I wonder if you can write any shell script as a single expression? If you could handle that way 23:28:19 Vorpal: ( x ) 23:28:20 loops you could do with recursion 23:28:34 elliott_, well no I meant as in no ; or newline kind of sense 23:28:44 eval '...' :-P 23:28:48 what is Memfractal? 23:28:48 -!- poiuy_qwert has joined. 23:28:58 elliott_, okay, sure, but that is not the spirit of what I'm wondering about :P 23:29:08 elliott_, you can do if else by using || and && 23:29:15 no you can't 23:29:23 (x&&y)||z fails if y fails 23:29:23 olsner: I don't know. You can have infinite memory but only access by fractal and only enter the block in four directions. I don't know how well you can make the program make a decision in any other way. 23:29:29 nooga: See esolang wiki. 23:29:30 fails as in works improperly 23:29:37 elliott_, depends on order of || and && of course 23:29:44 elliott_, you need || first 23:29:46 I think 23:29:50 (not 100% sure) 23:29:54 Vorpal: (x||y)&&z -- y succeeds, z rus 23:29:55 *runs 23:29:57 am i still here? 23:30:00 nooga: no 23:30:19 (x||(y;false))&&z would work, but you lose the error code obviously 23:30:57 elliott_, hm. Perhaps it is still enough to express stuff in. And loops are easy: exec $0 other args 23:31:47 grr 23:31:48 ln -s /opt/stow/$pkg/bin/stow /opt/bin 23:31:52 (hack from the end of my stow build script) 23:31:53 doesn't work 23:32:08 it's meant to put a temporary stow, so that build(1) can do 23:32:15 I wrote something about computational class on it. 23:32:19 stow -v $(basename $pkg) 23:32:20 and have it stow stow 23:32:24 but it complains about a conflict 23:32:45 What might be the minimum amount of things to add to make turing-completeness? 23:33:56 wiki no worki 23:34:09 it does 23:34:17 hey how do you regexp match in bash again 23:34:19 [[ ~= ]] ? 23:34:22 elliott_, yes 23:34:22 http://esolangs.org/wiki/Memfractal 23:34:39 [ "$pkg" ~= "stow-.*" ] || stow -v $(basename $pkg) 23:34:40 ah, I was using the voxelperfect address since that was higher up on google 23:34:41 doin it rite? 23:34:46 olsner: voxelperfect expired 23:35:02 elliott_, uh. [[ ]] not [ ] 23:35:06 elliott_, won't work in [ ] 23:35:07 Vorpal: er yes. 23:35:34 elliott_, also I think you need to drop the quotes in [[ ]]. You used to need to drop quotes at least 23:35:52 /usr/local/bin/build: line 15: conditional binary operator expected 23:35:58 Vorpal: I don't suppose it might require bash 4, mightn't it? 23:36:07 elliott_, no, bash 3.12 or such iirc 23:36:10 OS X uses, uh, 3.2.48(1). 23:36:13 err 23:36:13 Vorpal: Well. There's the problem! 23:36:18 Unless you mean 3.1.2. 23:36:18 elliott_, 3.2.12 23:36:20 I meant 23:36:22 Vorpal: Ah. 23:36:31 * elliott_ waits for Vorpal to recoil in horror at the ancient bash version. 23:36:32 elliott_, they are at 48 now, wow 23:36:40 Vorpal: "now" -- this is from 2007! 23:36:48 elliott_, even more wow 23:36:53 Elliott-Hirds-MacBook-Air:~ ehird$ bash --version 23:36:53 GNU bash, version 3.2.48(1)-release (x86_64-apple-darwin10.0) 23:36:53 Copyright (C) 2007 Free Software Foundation, Inc. 23:37:17 elliott_, wait, isn't it =~ ? 23:37:27 Vorpal: um. maybe. is it? 23:37:27 yes it is 23:37:29 it isn't in perl. 23:37:30 is it? 23:37:33 elliott_, well it is =~ 23:37:48 I thought we all learned to not to do =x after C's =-. 23:38:12 elliott_, =- hm right that is ambig. Never thought about it 23:38:25 what /does/ x=-4; do in C 23:38:32 Vorpal: x = -4; 23:38:36 Vorpal: pre-K&R, it was x -= 4; 23:38:40 Vorpal: then they realised oops. 23:38:42 and fixed it. 23:38:48 elliott_, yes quite 23:39:01 elliott_, anyway in bash it doesn't matter since you need spaces around it anyway 23:39:53 ok, so, i need dblatex next i think. 23:39:56 elliott_, idea for confusing language, make >= and <= be some sort of assignment operators 23:40:06 * elliott_ decides to use debian download mirrors rather than sourceforge. 23:40:08 because fuck sourceforge 23:40:19 Vorpal: I've actually occasionally thought an unary != would be nice. 23:40:19 != foo; 23:40:22 same as foo = !foo; 23:40:36 elliott_, hm. looks a bit awkward though 23:40:40 elliott: I have also sometimes thought of that unary != 23:41:08 But with C if you are using boolean and you know the value 0 and 1 you can type foo^=1; 23:41:16 XD 23:41:54 zzo38, you mean _Bool? 23:42:10 _Bool is why the C committee needs to be fired. 23:42:22 elliott_, you mean the name of it? 23:42:26 Vorpal: No I just mean if you are having a variable that stores boolean values. 23:42:26 Yes. 23:42:27 I like how they made it _Bool, but then RESERVED "I" IN THE GLOBAL NAMESPACE. 23:42:34 _HOW RETARDED IS THAT?!_ 23:42:54 For complex number support that I have not seen *one* use of. Apparently CPLX_I is just too much I guess. 23:42:54 -,- 23:42:56 elliott_, wait a sec. what is I ? 23:42:59 Vorpal: Complex unit. 23:43:07 Squares to -1, you know the thing. 23:43:09 Reserved. 23:43:10 In C99. 23:43:11 elliott_, oh, isn't that in some header? 23:43:12 In the global namespace. 23:43:22 Vorpal: Yes. But it's reserved anyway and IIRC compiling something that defines I fails with gcc because of it. 23:43:28 Very retarded I think. I think GNU C uses gnu89 by default so it doesn't enable any of the stupid C99 features, only the non-stupid ones are enabled. 23:43:34 elliott_, ... how retarded 23:43:45 But if you type gnu99 then it will use all GNU features and all C99 featurse. 23:44:29 elliott_, at least stdbool.h defines bool 23:44:46 So I use gnu89 mode which is the default mode. 23:45:18 -!- BeholdMyGlory has joined. 23:45:24 Even if they do reserved "I" is a reserved word maybe you can use the #define (or @d) command? 23:45:28 /usr/local/share/install/dblatex-0.3: line 6: ./configure: No such file or directory 23:45:29 Oh dear. 23:45:36 "setup.py" 23:45:38 Oh. Ohd ear. 23:45:40 *Oh dear. 23:46:03 I. Don't think Python lets you have two separate prefixes. 23:46:06 * Phantom_Hoover listens to "Little Mouse". 23:46:10 elliott_, PYTHONPATH ? 23:46:12 HEY THERE LITTLE MOUSE 23:46:16 Vorpal: No, no, as in 23:46:19 ./configure --prefix=/opt 23:46:19 make 23:46:23 make install prefix=/opt/stow/foo-3.1 23:46:24 I HOPE WE CAN UNDERSTAND ONE ANOTHER 23:46:30 Phantom_Hoover: HEY NOW LITTLE MOUSE 23:46:31 elliott_, DESTDIR? 23:46:39 elliott_, this might work 23:46:40 Vorpal: It's Python. It's too elegant to look at environment variables. 23:47:03 SHOW ME WHAT TO DO 23:47:10 elliott_, well surely it supports destdir of some sort. Every distro I know uses staged install 23:47:11 (little mouse!) 23:47:20 zzo38, I assure you I could hold more than just Boolean values 23:47:30 Vorpal: Every distro I know of uses a chroot. 23:47:32 variable! 23:47:39 Vorpal: Debian, Fedora. :p 23:47:44 Gentoo too I think. 23:47:52 Vorpal: Anyway destdir won't help. 23:47:54 elliott_, gentoo didn't use to use a chroot for it. 23:47:56 What I think maybe C should have though, is some attribute to tell it what value a variable is supposed to have so that the optimizer can use that information, and code analysis can also use that information. Maybe it can be a pragma to do that? 23:47:59 elliott_, oh? 23:47:59 It'll put things in /opt/stow/foo/opt/bin 23:48:05 oh right 23:48:26 Vorpal: Although I could set DESTDIR to build dir plus "root". 23:48:30 And then mv them into the right place. 23:48:35 might work 23:48:36 Because I'm all for the hacks, ye ken. 23:48:49 zzo38, I've advocated for this before 23:48:53 Vorpal: I'm going to try just "python setup.py install --prefix=/opt/stow/foo" first and grep to see if it tries and remembers where it was installed :-P 23:48:56 elliott_, warns me it may come to Coq 23:48:57 :-} 23:48:58 elliott_, well I doubt you have any other option that will give you a successful install 23:49:05 Vorpal: See above. 23:49:37 Error: not found: latex, makeindex, pdflatex, kpsewhich 23:49:38 mmm 23:49:43 elliott_, aiee 23:49:43 Oh man, this is great 'cuz I get to install TeX Live! 23:49:47 Which isn't like 70 gigabytes! 23:49:52 And I'm not on WiFi right now! 23:49:53 Nosiree! 23:49:54 elliott_, 700 MB rather 23:50:02 Vorpal: 70 gigabytes on OS X :P 23:50:07 Vorpal: Or, more like 3 gigs the last I looked. 23:50:19 elliott_, dude, you will be limited by your link to your ISP, not by your wifi 23:50:22 It's technically MacTeX, which is made out of TeX Live. 23:50:24 Vorpal: No, I'm not. 23:50:25 unless you have awesome internet 23:50:27 elliott_, what 23:50:33 elliott_, 100 mbit fibre or what? 23:50:35 Vorpal: You have no idea how much consumer routers suck at WiFi. 23:50:45 elliott_, oh right, true. 23:50:48 Vorpal: I get 200-500 KiB/s generally on WiFi, 700-800 KiB/s generally on Ethernet. 23:50:56 variable: And be specific? Can it be a pragma to do this? 23:51:02 The current distribution is MacTeX-2010. 23:51:02 To obtain the distribution, click the link below. 23:51:02 MacTeX.mpkg.zip 23:51:04 [ approximately 1.6G- 08 September 2010 ] 23:51:06 OH WELL, IT'S SMALLER THAN XCODE 23:51:08 elliott_, weird, I have a speedtouch, and I get 700-800 on both 23:51:31 Why are all TeX distributions too large? 23:51:35 oh god 23:51:37 elliott_, warns me it may come to Coq <-- as in, coq would get it? 23:51:45 Vorpal: As in he'll turn $language into Coq. :p 23:51:49 ah yes 23:51:59 Computers need to have a "take note of what I just did these past 30 minutes" when getting some software to install is a bitch. 23:52:08 Then you could just edit the actions and remove all the stuff that doesn't work, and it becomes your build script. 23:52:18 elliott_, script? make -n ? 23:52:22 they generally have it 23:52:26 variable: What? 23:52:32 variable, have you seen frama-c. frama-c + why + might do what you want (except not for the optimiser) 23:52:33 I mean a script to automate the configuration & compilation of a package. 23:52:40 Vorpal, no 23:52:40 Vorpal: Sshh, he's learning Haskell. 23:52:45 Don't recommend evil C tools :-) 23:52:59 variable, iirc why can also export the problem to coq 23:53:15 elliott_, not recommending. Just informing 23:53:17 Can they have any TeX distribution that doesn't have LaTeX and PDF and all of that stuff? 23:53:18 Vorpal: 800 KiB/s on WiFi, guess I'll eat my sock. 23:53:25 zzo38: Yes, it's called tex.web. 23:53:29 elliott_, you have only one sock? 23:53:36 Vorpal: Indeed. I had to sell the rest to buy this computer. 23:53:37 elliott_, if not: left or right one 23:53:40 elliott_, ah 23:54:04 elliott_, why are C tools evil? 23:54:12 variable: BECAUSE C IS OF THE DEVIL 23:54:15 elliott_: I tried compiling tex.web with GNU Pascal and although it compiles with very few changes, it then complains about "his.tex" which does not exist and is not mentioned anywhere. 23:54:31 variable: Or just because I'm trying to ensure your swift indoctrination into the Church of (Alonzo) Church ;-) 23:54:46 elliott_, I am already a sworn Pastafarian and Googlist 23:55:04 * variable could be cast to a different religion though 23:55:13 variable: Get off my invisible pink unicorned lawn, you FSM poseurs. 23:55:22 pastafarian? 23:55:25 what the heck is that 23:55:30 Vorpal: Church of the Flying Spaghetti Monster. 23:55:34 elliott_, oh right 23:55:48 elliott_, don't say his name in vain! 23:55:53 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep). 23:55:53 variable: Get off my invisible pink unicorned lawn, you FSM poseurs. <-- says the user of gnu stow 23:56:01 Do you think they are going to walk into the unicorn by mistake? 23:56:14 .... 23:56:16 Worthless imitators of the One True, which worships the Invisible Pink Unicorn. 23:56:16 zzo38, no, the IPU takes up no space 23:56:23 PRAISE BE UNTO HER AND HER INVISIBILITY AND HER PINKOSITY 23:56:28 variable, international postage union? 23:56:30 C 23:56:34 Vorpal: Invisible Pink Unicorn. 23:56:37 oh duh 23:56:55 Vorpal, :-} 23:56:56 I say the IPU Prayer every day before I get out of bed: 23:56:58 "Invisible Pink Unicorns are beings of great spiritual power. We know this because they are capable of being invisible and pink at the same time. Like all religions, the Faith of the Invisible Pink Unicorns is based upon both logic and faith. We have faith that they are pink; we logically know that they are invisible because we can't see them." 23:57:00 variable: Then why do you have to get out of the lawn? Probably for a different purpose, like they just don't want other people walking on it. 23:57:27 "This image features a pink unicorn but it has an alpha channel that makes the unicorn transparent, thus approximating the appearance of the Invisible Pink Unicorn." --Wikipedia 23:57:33 BUT ONLY APPROXIMATING 23:57:44 elliott_, what wikipedia has that? 23:57:52 Vorpal: [[Invisible Pink Unicorn]]. 23:57:56 elliott_, this sounds like uncyclopedia!!! 23:58:05 *like awesome!!! 23:58:12 Maybe Uncyclopedia has it too, you can check. 23:58:13 If every Wikipedia page was like that I would adore it forever. 23:58:26 Nothing says encyclopedias can't be occasionally humorous. 23:58:36 -!- poiuy_qwert has joined. 23:58:50 I think Wikipedia's editors have forgotten that they're editing what is essentially a gigantic book to be read by humans -- not a practically-mechanical, dry reference work containing tables of pure fact. 23:59:13 Is there any free Pascal compiler that will compile TeX and METAFONT exactly as is (once it is tangled)? 23:59:24 zzo38: Yes, the one Knuth used. :p 23:59:33 Although that probably wasn't Free as in FSF. 23:59:47 "(once it is tangled)" <-- tangled? 23:59:57 what does that mean in this context 2010-12-31: 00:00:02 Vorpal: TANGLE is the program to convert the WEB file into the Pascal file. 00:00:12 ah 00:00:19 -!- Wamanuz4 has joined. 00:00:49 zzo38: my hunch is that Memfractal is turing complete, although i'm not entirely sure if four exits is enough or not 00:01:39 oerjan: If not, could having multiple blocks help? 00:01:42 zzo38: i assume all bits start as 0? 00:02:04 oerjan: Yes all bits start as 0 (unless initial state says otherwise) (probably it should be mentioned) 00:02:06 oh, ais523! 00:02:08 ais523: when did you come in? 00:02:19 what do you mean by multiple blocks? 00:02:23 (Initial state includes input state) 00:02:47 -!- Wamanuz3 has quit (Ping timeout: 255 seconds). 00:02:48 zzo38: ok so some of the bits might be set dependent on input? 00:03:07 oerjan: By multiple blocks, I mean that instead of one block, you have two rectangles which are two blocks and possibly have some new command to select one. 00:03:31 oerjan: Yes some bits might be set on input. But if you are using with no input, it is all 0 at the start. 00:03:37 zzo38: so + would select one of them and some other command the other? 00:04:06 oerjan: Yes maybe + selects one and some other command select the other. 00:04:21 it might not be necessary though 00:04:35 Yes I was thinking too, I don't know if it is necessary or not. 00:05:27 try to implement a TC language in it? 00:05:48 not sure how though, but BCT is probably a good target 00:06:28 i wouldn't do BCT, the fractal connections don't fit a queue very well 00:06:35 oerjan, hm true 00:06:40 oerjan, any better suggestion? 00:06:49 a tape might be easy 00:07:12 -!- Sasha has quit (Ping timeout: 255 seconds). 00:07:21 zzo38, when does the program end? (does it end at all?) 00:07:35 -!- MigoMipo has quit (Read error: Connection reset by peer). 00:07:46 i assumed it would end if you left the top program? 00:07:55 oerjan: Yes you are correct 00:08:15 ah 00:09:37 Can anyone make a Free emulation of the environment used in Knuth's TeX that can compile the program without changes and can treat file areas and so on in the way the TeX program does, and can save the program image (as described in section 1331 of TeX: The Program)? 00:11:16 No. 00:11:20 Nobody can do that. 00:13:11 well technically someone could. But would be tricky and pointless 00:13:45 Vorpal: No. 00:13:46 -!- Wamanuz5 has joined. 00:13:48 It is physically impossible. 00:13:50 Silly. 00:13:52 elliott_, why? 00:13:56 That is why zzo38 does not need to ask any more questions about it. 00:13:59 Because it is impossible. 00:14:02 So we can drop the subject, obviously! 00:14:09 Vorpal: Don't you agree? 00:14:16 elliott_, oh. true 00:14:37 Even though I have MiKTeX installed here (and Live TeX at Free Geek), it is too large and contains a lot of extra stuff 00:14:43 elliott_, it's the third law of thermodynamics right? 00:14:47 -!- Sasha has joined. 00:14:47 Vorpal: Yes. 00:14:48 elliott_: I am sure it is not impossible. 00:14:54 zzo38: I think it is. 00:14:56 Because of physics. 00:15:11 Because of physics? 00:15:34 Yes. 00:16:30 No, I think it is possible for sure. Maybe it is even possible to modify GNU Pascal to work in this way. 00:16:44 -!- Wamanuz4 has quit (Ping timeout: 255 seconds). 00:16:50 not impossible but improbable 00:18:43 due to leak of motivation 00:19:19 hagb4rd: No. 00:19:23 hagb4rd: Impossible. 00:19:30 okay okay 00:19:39 -!- Sasha2 has joined. 00:19:59 It isn't impossible. 00:20:20 -!- Sasha has quit (Ping timeout: 255 seconds). 00:20:27 no need to argue 00:20:51 want some cookies? 00:20:52 zzo38: oh hm i see memfractal is reversible. that might complicate things... 00:20:58 * hagb4rd offers 00:22:55 yay tex live has almost downloaded 00:23:00 then i can continue reinventing package managers, badly 00:23:06 at least i don't need to worry about dependencies 00:23:25 vhdl must be the ugliest language on earth 00:23:28 Is there any small TeX distribution that works? 00:25:58 Vorpal: mactex is 3 gigs unpacked apparently 00:25:58 -!- Sasha2 has quit (Ping timeout: 276 seconds). 00:25:59 and installed 00:27:03 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 00:27:26 I mean, without LaTeX, PDF, kpathsea, PostScript, BibTeX, fontconfig, and all that stuff. 00:29:13 -!- sebbu has quit (Ping timeout: 276 seconds). 00:29:24 -!- poiuy_qwert has joined. 00:30:16 tar: Unrecognized archive format: Inappropriate file type or format 00:30:17 wtf. 00:30:50 Obviously, the file type is porn 00:30:54 -!- elliott_ has quit (Remote host closed the connection). 00:31:34 -!- elliott has joined. 00:31:55 They added a JPEG header by mistake and it just happens so to make pornography when you do that????? I don't think so. 00:32:08 no... tiff header 00:33:13 Vorpal: O, it is tiff header. 00:33:35 zzo38, do you know what a joke is? 00:35:19 Vorpal, no, he does not. Nor does he know that none of us care about any of his software. 00:35:30 Or he knows and he doesn't care. 00:36:14 -!- Phantom_Hoover has quit (Remote host closed the connection). 00:36:15 Vorpal: I know a joke. I write my own joke too. 00:36:37 oh 00:37:05 zzo38 doesn't read other people's jokes, he just writes his own 00:40:08 Vorpal: ...does curl keep an internal cache? 00:40:16 It seems to be downloading this file suspiciously quickly. 00:41:44 -!- BeholdMyGlory has quit (Remote host closed the connection). 00:42:44 elliott, I very much doubt it 00:42:46 anyone used https://www.nearlyfreespeech.net/ -> any recs? 00:43:08 I've seen plenty of people recommend it. It's probably the best choice ... if you want to get shared web hosting, but why would you want that? 00:43:13 Get a VPS. 00:43:18 http://prgmr.com/xen/ 00:44:08 Vorpal: Are you *sure*? :p 00:44:40 The requested URL /debian/pool/main/d/dblatex/dblatex_0.3.orig.tar.bz2 was not found on this server. 00:44:41 what 00:44:53 elliott, no I'm no curl expert 00:44:55 wait. 00:44:58 -!- BeholdMyGlory has joined. 00:44:58 does curl not exit 1 on 404??? 00:45:12 elliott, HOW SHOULD I KNOW?! 00:45:14 check docs 00:45:16 Elliott-Hirds-MacBook-Air:~ ehird$ curl -O http://www.se.kernel.org/debian/pool/main/d/dblatex/dblatex_0.3.orig.tar.bz2 00:45:17 % Total % Received % Xferd Average Speed Time Time Time Current 00:45:17 Dload Upload Total Spent Left Speed 00:45:18 113 340 113 340 0 0 1211 0 --:--:-- --:--:-- --:--:-- 3908 00:45:20 Elliott-Hirds-MacBook-Air:~ ehird$ echo $? 00:45:22 0 00:45:24 that is fucking retarded 00:47:39 try wget 00:48:39 Use --fail 00:48:44 $ for prog in /usr/local/texlive/2010/bin/x86_64-darwin/*; do ln -s $prog /usr/local/bin; done 00:48:49 Vorpal: OS X doesn't ship with wget, so no. :-) 00:48:54 Deewiant: Heh. 00:49:00 Deewiant: Shouldn't it be --disable-fail :) 00:49:07 elliott, ah 00:49:12 It successfully fetched the 404 page 00:49:26 And the docs for --fail say that it doesn't always work 00:49:30 X-D 00:49:40 Good to see curl is so mature. 00:50:08 Groan, it /does/ remember where it was installed. 00:50:58 elliott, what does, stow? 00:51:05 I found that someone did manage to compile TeX with GNU Pascal. 00:52:26 Vorpal: No, dblatex. 00:52:40 python setup.py install --prefix=/opt --destdir=../dest 00:52:40 mkdir /opt/stow/$pkg 00:52:40 cp -R ../dest/opt/* /opt/stow/$pkg 00:52:43 Like a boss. 00:53:04 elliott, the final boss of the game? 00:53:08 or a miniboss? 00:53:15 or just a boss? 00:53:24 COOL IT DOESN'T DO --DESTDIR 00:53:31 Vorpal: Like a boss. 00:53:36 ... it doesn't do destdir? 00:53:54 elliott, does mcmap do destdir? 00:54:22 Vorpal: mcmap doesn't do install. So no. 00:54:38 --install-base base installation directory (instead of --prefix or -- 00:54:39 home) 00:54:39 --install-platbase base installation directory for platform-specific files 00:54:40 (instead of --exec-prefix or --home) 00:54:43 I can see this is going to be fun and not painful at all. 00:55:03 The single good thing about autotools is that it stops people too stupid to exist from creating their own systems. 00:55:14 Apparently being a Pythonisticator overrides that. 00:55:27 elliott, wait, isn't it setuputils or whatever the standard python thing is called? 00:56:45 * nooga is trying Aardappel 00:56:58 Vorpal: distutils. 00:57:10 elliott, ah 00:57:14 setuptools is an extension to distuti^W^W^W^W something we should all try and forget ever happened. 01:00:02 elliott, is it an extension to something we should try to forget 01:00:10 or do you mean it is something we should try to forget 01:00:11 -!- FireFly has quit (Quit: swatted to death). 01:00:11 ^W 01:00:14 the latter 01:02:43 elliott, why is setuptools bad? 01:03:10 Vorpal: oh god. so many reasons. easy_install is the worst program ever written. and the command-line wrappers it installs take like 1s to just find the program 01:03:13 's classes 01:03:26 it should be noted, for instance, that easy_install comes without an easy_uninstall. 01:03:35 in fact, installation requires manually editing a generated file, and removing a directory. 01:03:38 *uninstallation 01:05:33 oh god this is awful 01:07:40 This is supposed to be an upsetting scene, I think, but I got distracted by the crappy CPR 01:09:16 -!- elliott has quit (Remote host closed the connection). 01:09:52 -!- elliott has joined. 01:12:43 OKAY SOEONE FIX THIS REOJGEG]\E[PE]E[4 01:12:43 44 01:13:07 elliott, change the O to an U and the J to a G 01:13:08 ahahahahahaa!! 01:13:10 fixed 01:13:13 I GOT IT LIKE A JUNGLE 01:13:22 elliott, ?? 01:13:50 python setup.py install --prefix=/opt --root=../root 01:13:51 mkdir -p /opt/stow/$pkg 01:13:51 cp -R ../root/opt/* /opt/stow/$pkg 01:17:07 * elliott removes version numbers from his packages 01:17:09 more simplar!! 01:17:52 there, it all works now 01:19:43 Vorpal: is it sane to have an autotools source directory as a subdirectory of the build directory? >:) 01:22:07 elliott, I think GCC will hate you at least 01:22:30 Vorpal: ghc hates anyone who even _looks_ at its build system. even it knows that it's the worst ever. 01:22:36 erm 01:22:37 *gcc 01:22:40 I don't know how GCC devs even cope. 01:22:55 elliott, I meant the gcc build system 01:22:57 a million-line shell script that always recompiles the entire source tree would be faster and easier to use 01:22:58 I know 01:23:41 gcc's build system is saner than ghc's IMO 01:24:17 but it has some slightly silly requirements, like only working for out-of-source builds 01:24:25 olsner: GHC's got completely modernised lately, dude 01:24:33 ./configure && make && make install is now perfectly sane 01:24:41 it /used/ to be a right mess 01:24:49 olsner: if you're referring to the ghc dependency, well ... not much you can do about that 01:24:56 sure, but I think it's not completely modernised, and not sufficiently modern :P 01:25:05 olsner: what's suboptimal about it? 01:25:23 configure: WARNING: cannot find DocBook XSL stylesheets, you will not be able to build the documentation 01:25:26 configure: WARNING: cannot find hasktags in your PATH, you will not be able to build the tags 01:25:28 todo: fix 01:25:30 also hscolor 01:28:26 -!- GreaseMonkey has joined. 01:30:41 personally mostly that parallel builds aren't properly parallel, but there are other diffuse signs of ugliness 01:30:59 I think something with the makefile generation through cabal was screwy last time I built 01:32:43 JESUS CHRIST @ docbook-xsl's install.sh 01:33:41 ok what is an xml catalog an why do i need it 01:35:35 olsner: omfg xml is the worst, did you know 01:36:23 elliott: let's just say I've used ant... 01:36:34 olsner: yeah but that's not even the worst! 01:36:42 olsner: the worst is schema xsl catalogue files xsltproc 01:40:33 +dh_installxmlcatalogs 01:40:33 +# upstream ships {param,pi,table}.xml as example for DocBook 01:40:33 +# because we don't need them inside docbook-xsl, we exclude them 01:40:35 +dh_install -Xparam.xml -Xpi.xml -Xtable.xml -XChangeLog* -X.param.* -X.lib.* -X.gitignore 01:40:45 Debian -- hiding things away in macros so you can't see how the fuck to build things since 1993. 01:41:44 verilog looks much nicer than vhdl. 01:41:47 Heh.. "It always amazes me that someone as perceptive on blood glucose, and indirectly on blood insulin, as Dr Davis can still believe the lipid hypothesis. Really believe. Fascinating." 01:42:39 * elliott looks at the arch build scripts for this 01:42:40 omg what is this 01:42:48 this is awful 01:42:50 this is in fact the worst 01:44:10 No, a Linux distro heavily reliant on PSOX would ... *gets shot by elliott* 01:44:32 is verilog turing complete? 01:44:51 Ilari, that went completely over my head (or maybe on the side of it) 01:45:09 i guess you can implement a microprocessor in it, upon which you can implement a turing complete assembler 01:45:18 ... 01:45:26 so it should be turing complete, right? 01:45:38 cheater99, no actual hardware can be TC. 01:45:56 cheater99: verilog is sub-TC. 01:45:56 I'm pretty sure neither verilog nor vhdl are actually TC. 01:46:04 elliott: what can it not do? 01:46:10 as ais523 can explain but i wouldn't recommend him to due to it being a waste of time due to the target. 01:46:45 the target of this conversation being you showing off that you're a prissy brat? 01:47:01 so edgy. 01:47:01 elliott, was it docbook-xml or docbook-xsl? 01:47:03 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 01:47:06 Vorpal: -xsl. 01:47:19 elliott: it probably is TC via the not-for-synthesis features 01:47:23 elliott, the PKGBUILD seems to be manual install commands? 01:47:26 unless it's incapable of dynamic allocation, which wouldn't surprise me 01:47:38 ais523: I'm pretty sure it is, isn't it? 01:47:39 but the "because it can be used to make a microprocessor" is bogus reasoning as microprocessors aren't TC 01:47:44 the target of this conversation being you showing off that you're a prissy brat? <-- not brat no 01:47:48 I don't think VHDL is capable of dynamic allocation is it? 01:48:02 elliott: I'm not too sure about its not-for-synthesis features 01:48:02 (seriously, and I never thought I'd say this, do try to get along the two of you) 01:48:05 Vorpal: cheater doesn't like me because i call him a troll when he trolls. 01:48:06 ais523: no, but things that run on them can be 01:48:16 it wouldn't surprise me if you could make arbitrary length strings, for instance 01:48:21 sometimes i think the lack of moderation in here is a bad thing :) 01:48:27 cheater99: no they can't, because they wouldn't be able to access infinite storage 01:48:38 -!- poiuy_qwert has joined. 01:48:45 ITT: cheater99 doesn't know what Turing complete means 01:48:47 you can run a BF interp on a processor, but it would eventually run out of memory if you kept extending the tape 01:49:20 ais523: but no concrete implementation of a language has access to infinite storage 01:49:36 cheater99: indeed 01:49:48 so that would mean you imply no language is TC 01:49:58 no concrete implementation is TC, indeed 01:50:09 being TC is a property of languages in theory, not in practice 01:50:35 but in theory for every program that needs to be executed a microcontroller with enough storage could be programmed in verilog 01:50:38 you can also talk about bounded-storage machines, which are ill-defined, but effectively "machines that would be TC except for the possibility of running out of memory" 01:50:50 autoconf question: If I have an X system, and want to build a compiler as an X executable, that outputs X executables, _but_ it's bootstrapping from a Y compiler 01:50:52 cheater99: yep, verilog counts as a bounded-storage machine for that reason 01:50:54 what's BUILD, HOST, TARGET? 01:51:02 X=64-bit and Y=32-bit in this case 01:51:07 build = Y, host = X, target = X 01:51:12 elliott, uh. that is a canadian cross 01:51:14 ais523: thanks 01:51:15 Vorpal: no it's not 01:51:19 wait no 01:51:20 Vorpal: no it isn't 01:51:20 duh 01:51:24 canadian cross requires three systems 01:51:25 BUILD is where you build it, HOST is where you run it, TARGET is what it builds when run 01:51:28 it is just cross compiling a native compiler 01:51:30 Vorpal: I have a 64-bit system, and want a 64-bit compiler; I just happen to have a 32-bit compiler to build it with 01:51:36 ais523 is right I think 01:51:43 ais523: but the memory doesn't need to be bounded. when you're executing and run out of memory, freeze the turing machine just before the allocation fails, and transplant it onto a bigger host. 01:51:58 cheater99: then doing that would be part of the impl itself 01:51:59 ais523, well, no. 2 does it. on X build a compiler that will run on Y and will target X 01:52:06 ais523, as far as I know that is a canadian cross too 01:52:12 ais523: you can certainly implement that in verilog. 01:52:14 and I don't think you can have a /concrete/ impl that does that 01:52:17 Vorpal: that's a crossback 01:52:22 ais523, oh okay 01:52:46 Vorpal: I think canadian cross is only when you build a cross-compiler using a cross-compiler, in this case he's just cross-compiling a normal compiler 01:53:00 indeed 01:53:05 "cross-compiling a compiler" is the best description 01:53:11 it's more or less the same as cross-compiling anything else 01:53:40 btw, canadian cross has the worst etymology ever 01:53:43 discovered by cpressey 01:53:46 I've done the YXX combination with C-INTERCAL before, in order to test it (where Y = x86-32, X = ARM, as I happened to have an x86 to ARM crosscompiler handy) 01:53:49 basically 01:53:51 elliott: it's a reference to the canadian political system 01:53:55 at the time, canada had three main political parties 01:53:55 according to the gcc manual 01:53:57 and also 01:54:01 there are three architectures involved 01:54:05 I mean ... that is so stupid 01:54:22 ais523, I thought it was a reference to the red cross? 01:54:23 why not call it a ménage à compiler? 01:54:25 that makes about as much sense 01:54:27 elliott: to me it fits in the "this is vaguely similar, let's call one after the other" strategy 01:54:27 Vorpal: ... 01:54:35 s/strategy/category/ 01:55:05 red cross would work. You need band aid after doing a canadian cross 01:55:06 ais523: Ménage à compiler! 01:55:10 ais523: have you read "cryptonomicon"? 01:55:12 shouldn't that be compiler à trois? or was it flipped intentionally? 01:55:22 ais523: it's a book that features a fictional version of alan turing. 01:55:29 olsner: it's the Bad Etymology game 01:55:33 of course it shouldn't make more sense 01:55:39 ais523: Have you read "SICP"? 01:55:46 elliott: I haven't 01:55:46 ais523: It's a book that features a real version of Sussman. 01:55:51 I've never come across a copy, and it would take a while 01:55:53 *The Sussman. 01:56:13 "The Sussman"? 01:56:47 olsner: Yes. 01:57:03 olsner: Technically it should be [b]The Sussman[/b] but IRC doesn't support the requisite International Standard for BBCode. 01:57:08 * oerjan wonders if anyone has ever tried to name their child "The" 01:58:20 GO GO GHC BUIL 01:58:20 D 01:58:22 I HAVE AN SSD 01:58:24 THUSLY YOU GO FAST 01:58:26 elliott: but what's The Sussman? 01:58:28 WOOOOOOOOO ROCKET POWER 01:58:40 elliott, did you use -pipe, to save on the SSD? 01:58:44 elliott, (for gcc that is) 01:58:49 olsner: The Sussman is the man otherwise known as ``Gerald Jay Sussman''. 01:59:01 Vorpal: No. It'll only compile the runtime system with gcc anyway, the rest is all GHC. 01:59:07 Vorpal: Besides, SSDs are smart. 01:59:08 elliott: why use BBcode when you can do this? 01:59:16 ais523: +c, silly 01:59:17 elliott: oh, I see what you mean 01:59:24 YOu can use CTRL+B for emphasis in IRC, some clients will accept it, some won't because it is not part of the main RFC for IRC. 01:59:25 elliott: I thought that didn't block bolding 01:59:27 just colors 01:59:29 ais523: It blocks everything. 01:59:33 ah 01:59:40 zzo38, this channel will filter it 01:59:44 I know my client blocks colors, but not bolding 01:59:47 Which is probably for the best; when I'm on Jabber I abuse italics to ridiculous extent. 01:59:49 Then use CTRL+A 02:00:01 elliott: I've been told off for using /slash italics/ excessively 02:00:01 but he's not actually *in* the book, is he? as far as I understand he just (co-)wrote it? 02:00:02 Woo, the fan realised I was using the computational power of my CPU and has decided to start going. 02:00:08 Or any other control character which is not blockde. 02:00:09 in all sorts of contexts, not just Usenet 02:00:12 olsner: His beautiful voice comes through in the text! 02:00:12 test 02:00:24 elliott: you aren't on the toshiba satellite any more, are you? 02:00:24 olsner: Look, I had to fit the snowclone, shut up and let me quote /prog/ memes until the last river runs dry. 02:00:31 elliott: that's funny, when I read it, it comes out in my voice 02:00:32 zzo38: ctrl-A is reserved for CTCP commands 02:00:38 ais523: No, I left it behind two days ago. 02:00:42 the fan runs continuously on Windows 7, but on Ubuntu it only seems to run when I'm watching a lot of video 02:00:46 hmm, what are you on now? 02:00:50 -!- Sgeo has quit (Read error: Connection reset by peer). 02:00:57 oerjan: Use another control character then. 02:01:06 ais523: Ensnared in the terrifying jaws of proprietary lockdown and loss of freedom ... but it's less than an inch thick! 02:01:11 Use ANSI escapes I don't know if any IRC client accepts it though 02:01:22 -!- Sgeo has joined. 02:01:25 an inch isn't really a very good comparison 02:01:27 "VROOM I AM A JET PLANE," says the little fan. "VROOOOOM!" 02:01:30 Well, that was dumb 02:01:33 I think even the Satellite is less than an inch thick 02:01:37 ais523: it isn't 02:01:45 inches are massive 02:01:47 ais523: it also has ugly feet :) 02:02:00 ais523: OK, reword: It literally couldn't fit a bigger port than USB. 02:02:05 that's better 02:02:09 ais523: The USB port only has the slightest border on the top and bottom. 02:02:10 macbook air? 02:02:16 ais523: MAYE 02:02:17 *MAYBE 02:02:17 -!- fxkr has quit (Read error: Operation timed out). 02:02:24 -!- fxkr has joined. 02:02:25 I can't think of much else that fits both statements you've given 02:02:28 In my defence, they updated it recently and the specs are now ... well, respectable. 02:02:42 elliott: 13" or 11"? 02:02:43 and I have no idea how good or otherwise it 02:02:45 *is 02:02:49 (Recent Core 2 Duo, 4 gigs of RAM, 1440x900 resolution, a whole *two* USB ports, and a 256 gig SSD.) 02:02:52 olsner: 13". 02:03:05 I wish the fan ran less, but otherwise it's really nice. 02:03:12 Does this work? 02:03:15 *s/\*/s\/$\/$'\// 02:03:15 It seems to like heating up whenever you actually /do/ anything. 02:03:24 zzo38: I just see literal characters around the "this" 02:03:27 zzo38, " Does [0010]this[0010] work? 02:03:29 is what I see 02:03:30 that look like solid triangles pointing left 02:03:45 hmm, 0010 = 16 = control-P 02:03:50 oh, 1440*900? that's an improvement 02:03:52 ais523: Not to the right? 02:03:56 olsner: yes, it's really nice actually 02:03:57 nope, to the left 02:04:01 olsner: the Toshiba has 1366x768 02:04:11 so it's not that much larger a res 02:04:13 Well, does this do anything? 02:04:13 I thought the ppi might be a bit high on this considering the proliferation of bitmaps, but it's actually just fine. 02:04:21 zzo38: that gives me triangles pointing right 02:04:22 ais523: No, but it's definitely a marked improvement. 02:04:28 that would make sense 02:04:41 the macbook pros are only 1280x800 in 13" 02:04:41 hmm, I grew up on 640x480 02:04:51 olsner: heh 02:05:01 olsner: well this thing could stand up to a 13" macbook pro 02:05:02 Well, does this do anything? <-- same as before but 0011 now 02:05:07 oh, I forgot to mention it has the same GPU 02:05:13 which is /really/ nice, for integrated graphics 02:05:16 ais523: I had an idea for an #esoteric collaborative language project, FWIW (there is, in fact, logic behind telling _you_ this in particular). 02:05:25 elliott, so intel graphics? 02:05:28 (if integrated) 02:05:28 Vorpal: No. Nvidia. 02:05:36 zzo38: can you embed a literal NUL in your messages? most clients can't, but I wouldn't be surprised if yours could 02:05:43 elliott, oh. So integrated nvidia? how strange 02:05:49 Vorpal: Um, that's incredibly common. 02:05:52 On desktops especially. 02:06:02 ais523: Our own Perl 6: basically, second system design taken to perfection. The biggest language we can think of focusing on ridiculous concision and no care at all for ease of implementation or bloat. 02:06:03 Vorpal: it seems unlikely that a Mac would use Intel graphics to me, it doesn't really fit their image 02:06:09 ais523: The idea is to beat them at their own silly game :-) 02:06:21 ais523: Actually they used to. 02:06:25 (use Intel graphics) 02:06:26 I actually rather like Perl 6 02:06:37 ais523: Oh, I do too. 02:06:43 aos523: Let me see if I can embed a null 02:06:44 ais523: I just think _we_ could do a much better job of it. 02:06:55 compiler/stage2/build/LibFFI_hsc_make.c:1: error: CPU you selected does not support x86-64 instruction set 02:06:56 ugh 02:06:58 but perl 6 almost isn't vaporware 02:06:59 ais523: What did it display? 02:07:03 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 02:07:13 zzo38: aos523: Let me see if I can embed a null 02:07:19 is the previous comment by you 02:07:25 is that the comment you embedded a nul in? 02:07:35 ais523: I think the server cuts it off. 02:07:40 or did you embed it in a different comment, in such a way that it didn't come up at all? 02:07:45 server cutting it off wouldn't surprise me 02:07:45 After the null I wrote "there it is" 02:07:52 yep, that makes sense 02:08:11 ais523: hmm, it occurs to me that it might turn out quite similar to J 02:08:18 e.g., Perl 6 has Zop for zip-with-op 02:08:22 foo Zop bar 02:08:29 so obviously you can have /op for fold-with-op, like J has 02:08:41 /op foo; 02:08:42 -!- BeholdMyGlory has quit (Remote host closed the connection). 02:08:42 -!- poiuy_qwert has joined. 02:08:44 which generalises to 02:08:47 zero /op foo; 02:08:50 e.g. 02:08:56 1/+foo; 02:08:57 is 02:09:02 foo[0] + foo[1] + foo[2] + 1 02:09:06 (for 3-length foo) 02:09:27 -!- sebbu has joined. 02:12:45 http://www.reddit.com/r/programming/comments/ety7i/the_one_day_challenge_one_php_file_24_hours_what/ 02:13:45 see first comment. 02:15:40 ais523: unfortunately, it looks like your cross-compilation help won't work 02:15:47 ais523: I don't think GHC /can/ cross-compile like that 02:16:20 -!- j-invariant has joined. 02:17:53 oh, this is interesting: apparently cretin originally meant "christian" and was used to point out that mentally retarded people were still christian and deserving of dignity 02:18:24 (and atheist retards are apparently worthless...) 02:19:18 olsner: :D 02:19:19 minuit chrétiens 02:19:36 elliott: it takes a huge amount of hackery to get autoconf to do build/host/target correctly 02:19:57 ais523: more like, when you have a compiler that depends on itself, all this stuff is complicated to do! 02:20:00 C-INTERCAL does it by running autoconf twice recursively 02:20:09 and even then, that only does build/host, not build/host/target 02:20:11 I /hope/ that it'll manage to do a proper bootstrap here, but I fear that it's going to just do an unregistered build 02:20:21 that's a shame, I somehow though half the point of autoconf was to make stuff like that work correctly 02:20:29 why are you trying to build for 64-bit using a 32-bit compiler anyway? 02:20:38 olsner: you should see gcc's autoconf script 02:20:44 it's mostly written by hand, in shellscript rather than m4 02:20:46 it's hideous 02:20:52 ais523: because the only GHC binaries for 64-bit are two 7.0.1 ones that depend on MacPorts libgmp 02:21:02 ais523: and I don't use MacPorts 02:21:05 When I write a program with works without autoconf. 02:21:12 ais523: (the support is rather new) 02:21:22 ais523: so I'm using the regular 32-bit GHC binary to try and build a 64-bit one 02:21:26 ah 02:21:41 ais523: I always thought autoconf was what did that :( 02:21:46 nope 02:21:54 autoconf does many things, but not that 02:22:07 ais523: I also like how gcc uses _hand-written Makefiles_. 02:22:19 it mostly compensates for nonportabilities with other systems 02:22:20 ais523: I don't know if you've ever looked at them, but ... those don't look like the product of hands to me. 02:22:33 ais523: have you seen GHC's Evil Mangler? 02:22:33 elliott: more fun, gcc has various flags describing the machine 02:22:47 some combinations aren't supported by the gcc core, and the fact isn't documented except in comments inside the code 02:23:01 these combinations are actually used, and the arches that use them have their own code just override the core for that bit 02:23:04 ais523: it's a literate perl script that runs regular expressions over C compiler output to remove the C function prologues and epilogues from the assembly ... for _multiple assemblers_ 02:23:04 code duplication ftw 02:23:13 elliott: haha 02:23:15 ais523: yes, literate perl: they wrote their own literate perl processor 02:23:21 ais523: it is, quite possibly, the most evil thing ever written 02:23:23 and literate perl already exists 02:23:30 ais523: you mean POD? 02:23:32 yep 02:23:33 POD has nothing to do with literate programming. 02:23:36 you are very mistaken 02:23:41 elliott: it can be abused for that purpose 02:23:45 sort of. 02:23:48 ais523: in this case they used latex: http://darcs.haskell.org/ghc/driver/mangler/ghc-asm.lprl 02:23:48 =begin html 02:23:50 =end html 02:23:51 =cut 02:23:55 ais523: no, that's not what literate programming is at all 02:24:00 or whatever other markup system you like 02:24:05 elliott: I've seen literate programming 02:24:14 to me, it's nothing to do with the syntax, you could just use regular comments 02:24:17 ais523: that's just inline documentation 02:24:26 it's to do with how you intersperse the comments and code, and what the comments say 02:24:32 ais523: no, it's about reordering the program 02:24:37 indeed 02:24:42 (but more expressive languages alleviate this need by having more expressive procedural abstractions) 02:24:49 (still, if you can't name a procedure a sentence, it isn't really the same) 02:24:59 you can do that in algol 68! 02:25:06 hello world is an entirely legal variable name 02:26:30 the evil mangler is quite impressive in a way 02:26:46 ugh, i wish people woul stop talking about pair programming 02:27:15 pair programming LOL 02:27:44 you couldn't make this stuff up 02:28:53 someone should rewrite it in haskell and call it the Holy Mangler 02:29:43 elliott, how did they port ghc to a new platform in the first place if it can't easily cross compile? 02:29:54 Vorpal: unregistered builds 02:29:59 elliott, meaning? 02:30:27 Vorpal: complicated things 02:30:34 elliott, okay 02:30:37 elliott, can't you do that then 02:30:41 Literate programming is about making a book! 02:30:41 Vorpal: http://hackage.haskell.org/trac/ghc/wiki/Building/Porting 02:30:43 elliott, or temporarily use macports 02:30:48 no, and no. 02:30:56 ais523: now you get the zzo38 book-is-program speech 02:32:06 Life is about making a book! 02:32:24 Book is about making a book! 02:32:41 Book [...] a book! 02:33:03 elliott, what about starting from a 64-bit ghc 6.x? 02:33:07 elliott, does that work? 02:33:19 "I had my own Wikipedia page for over 18 months. I made myself an apple orchard tycoon from the Midwest. Worst that happened was it being tagged for not including enough citations. When I started seeking "real" jobs I got paranoid that employers would see it and know it was me goofing off so I flagged it as a vanity page and got it taken down. I tried deleting it but the WikiBots auto-reverted it. I was very proud of that page. In fac 02:33:19 t, I later found a student at a Wisconsin university had used made up information from that article for his Senior Project (a planned bike route through apple country)." 02:33:22 Vorpal: there are no such builds 02:33:26 OS X 64-bit support is new 02:33:27 elliott, ah 02:34:02 I think I'll just make a 32-bit build and save my sanity. 02:34:14 it might be nice if ghc porting wasn't so darned difficult 02:34:36 olsner: X depending on X is just a general headache :) 02:34:46 actually that depends 02:34:47 olsner: but it's shiny so we keep doing it regardless of the engineering problems 02:34:49 it'd probably help if it could do cross-compiling (of itself) too 02:35:03 olsner: yeah #ghc says this build can't possibly work 02:35:06 but i'm leaving it going 02:35:07 just in case 02:35:14 elliott, erlang depends on erlang. But since it uses bytecode this is less of an issue 02:35:21 -!- Wamanuz5 has quit (Ping timeout: 260 seconds). 02:35:25 (still the erlang compiler is written in erlang) 02:35:42 I'm surprised how sturdy this laptop is... it feels as solid as a MacBook Pro 02:35:43 obviously, elliott knows better than #ghc about building ghc 02:36:02 Vorpal: You know what "lipid hypothesis" is? 02:36:09 Ilari, never heard of it 02:36:12 olsner: no, but I've got FAIIITH OF THE HEAART -- and if the Enterprise theme just started playing in your head, enjoy the pain. 02:36:32 fortunately, I don't remember it :D 02:36:32 oh UGH 02:36:38 worst theme ever 02:36:38 -!- zzo38 has quit (Remote host closed the connection). 02:36:44 j-invariant: absolutely 02:36:51 I don't recall the theme as being that bad though 02:36:57 j-invariant, I love the mirror universe theme from that series thoug 02:37:00 though* 02:37:02 indeed 02:37:05 j-invariant: (http://www.youtube.com/watch?v=Dl5zw6fGjdA if you haven't seen it) 02:37:09 also with totally different graphics 02:37:10 Vorpal: The (crock) idea that cholesterol causes heart disease. 02:37:15 of course, lyrics makes it instantly worse than all other star trek themes 02:37:22 elliott, same graphics in part near the beginning 02:37:29 Vorpal: well. all 3 seconds of it 02:37:33 elliott, and that is used to rather good effect 02:37:47 technically the title goes black even before the ship 02:37:49 so it's more like .5s :P 02:37:54 Ilari, I have no opinion on that. 02:37:56 ... come to think of it, 02:38:09 Ilari, too much of anything is probably bad anyway so *shurg* 02:38:36 `addquote ... come to think of it, 02:38:53 259) ... come to think of it, 02:39:12 * oerjan notes how that "... come to think of it," is clearly the only thing which _isn't_ pedantic 02:39:25 Glucose and insulin in blood are necressary. But both become substances from hell when in excessive amounts... And those amounts aren't really that high. 02:39:33 elliott, this is very very strange (from unregistered build instructions): $ cp /bin/pwd utils/ghc-pwd/ghc-pwd 02:39:38 that MAKES NO SENSE AT ALL 02:39:44 pedants don't just "come to think of" things! 02:40:52 THE SENSE NO MAKE ALL THAT 02:41:14 oerjan, THE PUN MAKE INSTALL 02:41:16 i think the little gnome inside my laptop is burning 02:41:24 elliott: relistened to the enterprise theme now - it doesn't annoy me 02:41:26 elliott, check sensors? 02:41:33 elliott, I remember there being an OS X app for it 02:41:36 olsner: I GOT FAIIIIITH! 02:41:43 Vorpal: It's fine, it's just warm :P 02:41:48 Vorpal: Not quite at birth control level yet. 02:41:58 elliott, hah 02:43:02 -!- cheater99 has quit (Ping timeout: 240 seconds). 02:43:52 elliott: they sing that? I don't hear it when I listen to the song, so bladder all you want about FAIIIIIITH :P 02:44:05 olsner: that's the alternate universe one 02:44:06 which is not annoying 02:44:08 that you presumably clicked 02:44:18 olsner: that's the AWESOME one 02:44:20 no, I clicked onwards to the original theme 02:44:33 olsner: "I GOT FAIIIITH OF THE HEART" 02:44:58 olsner: this one yes? http://www.youtube.com/watch?v=ZPn-lTytfGo 02:45:36 that one yes 02:45:52 olsner: maybe you are deaf :) 02:46:08 olsner: to be fair, it may be hatred for EVERY OTHER THING about Enterprise spilling over. 02:46:58 Vorpal: ok it's killing my future children now 02:47:04 this laptop's silence and coolness does not scale 02:47:26 elliott, move it to a table... 02:47:30 elliott, it will cool better then too 02:47:32 none nearby 02:47:35 also it's actually just cooling my legs 02:47:39 erm 02:47:39 warming 02:47:43 melting more like 02:47:50 elliott, move to a stable then 02:47:58 then move notebook on it 02:48:00 elliott: well, I generally don't listen to lyrics, so "faith of the heart" would've registered as "faaaay blada baaa" or something like that 02:48:23 olsner, hm. same for me actually. 02:48:28 that's just cuz youre swedenish 02:48:33 *your 02:48:41 *you're 02:49:33 *your 02:50:11 well, it's the same for swedish songs :) 02:50:20 *its 02:50:25 tro i ditt hjärta 02:50:27 german and japanese lyrics work better though 02:50:33 make[1]: *** [utils/haddock/dist/build/Paths_haddock.o] Bus error 02:50:36 disregard that i suck cocks 02:50:49 elliott, "buss error" eh. That is quite rare 02:50:55 Vorpal: Not on OS X. 02:50:57 I got it from mcmap the other day 02:50:58 It's a segfault. 02:51:06 elliott, so you never get a segfault on there? 02:51:08 They say bus error for whatever reason, perhaps Mach. 02:51:10 or do you get that too? 02:51:19 Vorpal: I think it's mostly bus errors. I think I may have seen a segfault once or twice. 02:51:24 hm 02:51:32 * elliott builds a 32-bit GHC instead 02:51:36 elliott, on linux you see bus error once or twice instead 02:51:43 stow is actually quite nice i wonder what pikhq dislikes about it 02:51:48 elliott, why do you hate macports? 02:52:00 I've never seen a bus error on linux, only on solaris and mac 02:52:17 Vorpal: (1) they like to duplicate a lot of software Apple includes, which tends to be irritating ... except that they don't duplicate all of it, e.g. gcc (even though they have a gcc package), so managing everything can be a real pain 02:52:21 Vorpal: it's pretty darn slow 02:52:22 olsner, happens like... 2-3 times / year on linux for me 02:52:25 Vorpal: it's really complex 02:52:33 Vorpal: it's often out of date, sometimes significantly 02:52:38 segfault : 5 / week ? 02:52:39 Vorpal: and it just generally isn't pleasant to use. 02:52:49 elliott, hm 02:52:53 Vorpal: it's very easy to screw things up when using macports. 02:53:00 because you have to keep track of what youre using the apple version of vs macports 02:53:02 *you're 02:53:03 elliott, but would using it for bootstrapping ghc hurt? 02:53:11 Vorpal: I just downloaded the GHC installer for that. 02:53:16 MacPorts wouldn't make that any simpler. 02:53:22 elliott, oh but for 64-bit I meant 02:53:25 I think MacPorts has a 64-bit GHC, but really, 32-bit works better for now. 02:53:31 Vorpal: well that'd be silly 02:53:35 elliott, oh? 02:53:37 Vorpal: because macports already does download binary -> build from source 02:53:44 so i'd have to build ghc from source TWCIE 02:53:45 *TWICE 02:53:51 and that is the point where i commit suicide 02:53:59 elliott, well but why not download the binary only 02:54:03 elliott, and use that bit 02:54:28 Vorpal: Because binaries suxxx0r0r0r. :p (Because I want it in my /opt stow-based system, and GHC isn't relocatable.) 02:54:57 elliott, so get 64-bit binary version. Use that to build your own 64-bit one from source 02:55:11 Vorpal: 64-bit binary requires macports libs. 02:55:12 elliott, you can remove the non-/opt one once you built your new one 02:55:20 Vorpal: OR HOW ABOUT THIS JUST USE THE 32-BIT ONE 02:55:22 elliott, so get that single macports lib 02:55:27 elliott, THAT IS GIVING IN! 02:55:28 more than single. much more 02:55:30 would also involve macports perl 02:55:39 elliott, chroot for it? 02:55:43 if I wanted to do it 64-bit, I'd LOOK AT THE MACPORTS BUILD SCRIPT to figure out how it does it 02:55:54 Vorpal: macports already does everything in /opt/local so that would be pointless. 02:55:54 elliott, ah 02:55:57 -!- cheater99 has joined. 02:55:59 also making an OS X chroot sounds "fun" 02:56:07 elliott, well then easy to clean up after! 02:56:21 rm -rf /opt/local 02:56:40 elliott, quite 02:56:43 haha, there is Gentoo/Interix 02:56:49 elliott, what... 02:56:50 wow 02:56:54 based on gentoo prefix 02:57:02 Interix 02:57:02 Gentoo/Interix (eprefix) is a port of Gentoo that runs atop the Interix Subsystem for Windows which is also known as Microsoft Windows Services for UNIX (SFU) or Subsystem for Unix-based Applications (SUA). 02:57:02 A result of the Gentoo/Interix project is the ability to install and use the Portage system to emerge native Windows applications (requires Visual Studio, 2008 Express Edition will do too). However, this feature does not support the wide variety of packages supported by other platforms (including Interix). 02:57:11 elliott, I bet there is like one guy using it. The maintainer 02:57:22 Vorpal: I'd write something like that without any intention of using it just for the lulz :) 02:57:33 elliott, maybe 02:57:46 elliott, I'd doubt you would touch gentoo though 02:57:58 well, no. 02:58:04 elliott, otherwise I charge you to do Gentoo/Hurd (unless this is done?) 02:58:15 Vorpal: apparently the port to gnu hurd was abandoned (for gentoo/alt) 02:58:20 elliott, XD 02:58:27 interix support but no HURD 02:58:34 then again hurd guys are basically in bed with debian so i'm not surprised 02:58:44 although arch/hurd exists now, thanks to arch people being idiots with nothing better to do 02:59:04 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 02:59:13 Vorpal: re - segfaults 02:59:17 elliott, yes? 03:00:00 elliott, yes? 03:00:02 Vorpal: here in OS X land we live in a land of perfect solutions. that is why we use a modified 4.3BSD kernel running on top of Mach, with a FreeBSD userland, running a windowing system which renders using PDFs. 03:00:09 it Just Makes Sense! 03:00:23 elliott, wait, doesn't quartz use opengl? 03:00:24 (yes, Quartz is Display PostScript: The PDF Version) 03:00:31 err 03:00:34 Vorpal: yes 03:00:36 elliott, !!!!!!!!!!!!!!!!!!!!!!!!! 03:00:38 -!- poiuy_qwert has joined. 03:00:43 Vorpal: ... to render the PDF:s :P 03:00:49 well 03:00:50 [[It is widely stated that Quartz "uses PDF" internally, often by people making comparisons with the Display PostScript technology used in NeXTSTEP (of which Mac OS X is a descendant) and OPENSTEP. Quartz's internal imaging model correlates well with the PDF object graph, making it easy to output PDF to multiple devices.[6]]] 03:00:54 elliott, doesn't the pdf stuff slow down a LOT 03:00:58 Vorpal: see above 03:01:01 it's not _actually_ PDFs 03:01:08 phew 03:01:11 Vorpal: fun fact, before OS X 10.4 or so, the default OS X screenshot format was .pdf 03:01:23 actual, scalable PDF ... apart from all the bitmaps used in the UI that made it utterly pointless 03:01:30 but yes, you actually got screenshots ending in .pdf. 03:01:48 elliott, :D 03:02:01 Vorpal: despite all of this insanity, it's better than X11 :) 03:02:02 if it was used to make actually scalable UI:s, it'd be pretty awesome 03:02:08 elliott, doesn't OS X use scalable icons and so on? 03:02:11 Vorpal: no 03:02:12 so where are the bitmaps? 03:02:26 elliott, but look in finder on program icons. They are scalable 03:02:27 Vorpal: UI elements are bitmaps, icons are (512px or something) bitmaps 03:02:30 ah 03:02:32 Vorpal: no, they're just really huge bitmaps 03:02:36 elliott, I see 03:02:36 rendered in multiple sizes 03:02:40 erm 03:02:40 no 03:02:43 not rendered in multiple sizes 03:02:44 elliott, even linux uses svg nowdays 03:02:46 dunno why i said that 03:02:48 Vorpal: not really 03:02:53 elliott, it can 03:02:55 Vorpal: yes, but it doesn't 03:03:02 a regular default-gnome or tango setup won't use svg 03:03:07 even though the option is available 03:03:10 since there's faster rendered bitmaps 03:03:38 elliott, actually, I looked at readahead files from ubuntu. It does load a handful of *.svg 03:03:44 elliott, more *.png though 03:03:59 elliott, I think computer.svg got loaded by gdm for example 03:04:41 VROOOM IM A JET ENGINE VROOOOM VROOOM COMPILING VROOOOM 03:04:49 elliott, TABLE! 03:04:55 VROOOOOOOOOOM 03:05:02 Vorpal: it makes a noise even when i hold it up :P 03:05:16 elliott, well duh. But future kids 03:05:20 wait 03:05:22 also little molecules of dirt are sweating off my palms onto the aluminium ... lovely. guess that's why they use plastic 03:05:26 KEEP IT IN YOUR LAP! 03:05:39 Vorpal: I don't think me reproducing would give very good prospects as to the estimated further lifespan of the universe 03:05:47 I got lucky, I'm not *100%* evil. 03:05:56 elliott, only 95% yes 03:06:14 Also they'd be little versions of me, and god knows I irritate myself enough already. 03:06:22 pfft. he's a comparative teddy bear to 100% evil 03:06:39 quintopia: you don't understand how *nice* 100% evil can be 03:07:26 elliott, why is the ghc evil mangler written in perl 03:07:36 elliott: oh maybe i do and realize that your occasional dickwaddery moves you closer to averagely evil 03:07:39 Vorpal: because FUCK YEAH LITERATE PERL FILE RUNNING REGEXPS ON C COMPILER OUTPUT 03:07:51 quintopia: hmm darn 03:07:52 elliott, why not write it in haskell 03:08:00 i'm going to be really nice from now on and then slit everyone's throat 03:08:08 elliott, also, literate perl!? that's even more wtf 03:08:12 good new year's resolution 03:08:20 Vorpal: because that'd make porting even more of a pain. also, because haskell probably didn't have too good regexp support at the time :P 03:08:25 Vorpal: yeah, they wrote their own literate perl processor 03:08:31 Vorpal: note: it is only used when compiling via C. 03:08:36 which is not the recommended way to do things usually 03:08:51 elliott, well once it was the only way? 03:08:55 -fvia-C really means "use the C compiler as a code generator, and then strip out all the C function bits from it" 03:08:57 If we're on the subject of painful theme songs.. 03:09:01 Sgeo: no. 03:09:09 >:D 03:09:20 Sgeo, that was ages ago. topic closed. 03:09:37 the evil mangler was also ages ago 03:09:45 olsner: but that doesn't involve Sgeo singing 03:09:46 more ages than bad themes 03:09:47 "singing" 03:09:51 olsner: so SHUT UP 03:09:56 stop being That Guy! 03:10:05 Which is worse, the SGI theme or my singing? 03:10:10 Sgeo: YOU 03:10:24 what's SGI? 03:10:43 http://www.youtube.com/watch?v=67E-_SQLVRo 03:10:53 olsner: DO NOT CLICK 03:10:59 worst music ever 03:11:01 to worst series ever 03:11:27 haha 03:11:29 stop being That Guy! <-- ?? 03:11:48 Vorpal: That Guy. 03:12:01 elliott, a reference I do not get. 03:12:10 elliott, though it does sound familiar 03:12:10 Not even really a reference :P 03:12:11 stargate infiiiinity-ity-ity-ity-ity 03:12:20 stargate infinititty lol 03:12:22 ^ humor 03:12:32 oh thanks for labelling it 03:12:42 elliott, speaking of music that is actually good though it really feels like it shouldn't be: http://www.youtube.com/watch?v=zSgiXGELjbc 03:12:49 infinititty? that sounds like something worth watching 03:12:51 quintopia: its so u recognise 03:12:51 it made it funny hahaha yes it did 03:12:51 (note: that was the first line speaking of it) 03:12:58 Vorpal: dude /I/ linked you to that 03:13:04 elliott, yes, but not recently 03:13:11 elliott, and it is widely spread really 03:13:12 quintopia: yes it was a funny humorus 03:13:43 breaking humeri is funny too 03:13:57 Vorpal: yuck, there's autotune in it 03:14:11 olsner, true. He /spoke/ that. 03:14:16 olsner: you expect Carl Sagan to sing properly in a TV series? :D 03:14:17 omg 03:14:20 that would have been so much better 03:14:23 if he just sang all the time for no reason 03:14:36 The Universe: The Musical 03:14:42 elliott, what is the first bit from "I'm not great good at singing but here is a try" 03:14:49 elliott, is it from that series or? 03:14:51 "RIP Carl. Fuck off to all those low-life career theoretical physicists." 03:14:53 a glorious dawn is actually still my favorite melodysheep track 03:14:54 Vorpal: All of it is :P 03:14:55 --YouTube 03:14:56 i 03:15:01 low-life career theoretical physicists 03:15:03 even despite the hundreds of others now 03:15:05 a phrase i never ever expected to read 03:15:05 elliott, so he /did/ sing in it? 03:15:09 Vorpal: no. 03:15:11 its the whalesong 03:15:12 *it's 03:15:20 or whatever it is 03:15:28 elliott, err, I haven't watched the series (it is on my todo list) 03:15:31 elliott, so what whalesong? 03:15:35 Vorpal: the Whoop-booo he does at the start 03:15:41 Vorpal: "I'm not very good at singing whale songs, but I'll give it a dtry." 03:15:44 right. 03:15:51 ah 03:15:51 Stephen Hawking should do a rap album after that bridge in A Glorious Dawn 03:15:55 I would buy it 03:16:05 Might have to hack up his software a bit though :-P 03:16:06 elliott: MC Hawking. it's hilarious. 03:16:10 quintopia: I know 03:16:15 but it'd be better if he actually did it 03:16:23 yes but he wouldn't 03:16:27 :( 03:16:40 quintopia: how do you know 03:16:43 stephen hawking is BADASS 03:16:52 yeah, why not? seems like a fun thing to do 03:17:00 dammit GHC compile faster, I need to go to the toilet 03:17:14 elliott, you can't leave it unattended? 03:17:15 because he's not studying it? he's thinking about math n shit? 03:17:17 elliott, PUT IT ON THE FLOOR? 03:17:25 oops, shift stuck 03:17:29 especially for someone who can't really talk, and can barely do it through text-to-speech, rapping would be pretty awesome 03:17:35 Vorpal: no i'm just scared to leave it alone in case it becomes sentient 03:17:35 I think I need to clean keyboard 03:17:38 get off your ath and do some math. math, math, math, math, math 03:17:46 elliott, hit ctrl-z to pause it? 03:17:46 olsner: only valid if he does it in real time though 03:17:49 work that throat yo 03:17:52 elliott, will ALSO cool down the thing 03:17:54 Vorpal: i don't trust that to work reliably :) 03:17:58 elliott, ... what? 03:18:03 elliott, when has that ever broken? 03:18:03 Vorpal: I'M SCARED OF GHC 03:18:25 elliott, dude, a program can't trap the relevant signal, unless it is pid 1 03:18:29 SCARED 03:18:46 you need to spend time with your new build so it doesn't end up a misanthropist 03:18:53 olsner: he wouldn't have any trouble actually rapping though 03:18:58 just add some sleep()s into his software to wait for a beat 03:19:05 in fact 03:19:08 he should just never turn it off 03:19:10 and rap all of his interviews 03:19:41 including end rhyme, mid rhyme, and ghetto slang 03:23:39 quintopia, no need for the latter. Just do it as nerdcore 03:24:14 nerdcore can still get crunk up in the hizzouse 03:24:27 quintopia, if you haven't seen it already: http://www.youtube.com/watch?v=4nigRT2KmCE (I don't like rap in general, but this is an exception) 03:24:39 I'm pretty sure *everyone* knows who MC Frontalot is :P 03:24:46 elliott, sure, but that song? 03:24:52 Gangster christian nerdcore I would go for 03:24:57 I like LOL money 03:24:58 elliott, hah 03:25:06 (christian gangster rap was one of the nullsoft genres) 03:25:27 never heard of frontalot before 03:26:01 * oerjan is with j-invariant 03:26:35 oerjan: comfortable rock is it? 03:26:37 the one you live under 03:26:43 not really. 03:27:14 oerjan: want a cushion? 03:28:39 -!- oerjan has quit (Quit: Already got one). 03:29:38 elliott, oh no. You made him go to sleep. Now I have to provide the puns. 03:29:44 oh god 03:29:53 nice track 03:30:04 Vorpal: 03:30:13 j-invariant, mmm 03:31:48 latest xkcd 's title text is FRCTACUTALLY INATTCCURATE!!!!!1 03:31:54 putty is not just for windows 03:32:19 the best kind of inaccurate? 03:32:52 yes 03:33:01 "/Users/ehird/Downloads/ghc-7.0.1/inplace/bin/haddock" --odir="compiler/stage2/doc/html/ghc" --no-tmp-comp-dir --dump-interface=compiler/stage2/doc/html/ghc/ghc.haddock --html --title="ghc-7.0.1: The GHC API" --prologue="compiler/stage2/haddock-prologue.txt" --read-interface=../Cabal-1.10.0.0,../Cabal-1.10.0.0/src/%{MODULE/./-}.html\#%{NAME},libraries/Cabal/dist-install/doc/html/Cabal/Cabal.haddock --read-interface=../array-0.3.0.2,. 03:33:01 ./array-0.3.0.2/src/%{MODULE/./-}.html\#%{NAME},libraries/array/dist-install/doc/html/array/array.haddock --read-interface=../base-4.3.0.0,../base-4.3.0.0/src/%{MODULE/./-}.html\#%{NAME},libraries/base/dist-install/doc/html/base/base.haddock --read-interface=../bin-package-db-0.0.0.0,../bin-package-db-0.0.0.0/src/%{MODULE/./-}.html\#%{NAME},libraries/bin-package-db/dist-install/doc/html/bin-package-db/bin-package-db.haddock --read-int 03:33:01 erface=../bytestring-0.9.1.8,../bytestring-0.9.1.8/src/%{MODULE/./-}.html\#%{NAME},libraries/bytestring/dist-install/doc/html/bytestring/bytestring.haddock --read-interface=../containers-0.4.0.0,../containers-0.4.0.0/src/%{MODULE/./-}.html\#%{NAME},libraries/containers/dist-install/doc/html/containers/containers.haddock --read-interface=../directory-1.1.0.0,../directory-1.1.0.0/src/%{MODULE/./-}.html\#%{NAME},libraries/directory/dist- 03:33:03 install/doc/html/directory/directory.haddock --read-interface=../filepath-1.2.0.0,../filepath-1.2.0.0/src/%{MODULE/./-}.html\#%{NAME},libraries/filepath/dist-install/doc/html/filepath/filepath.haddock --read-interface=../hpc-0.5.0.6,../hpc-0.5.0.6/src/%{MODULE/./-}.html\#%{NAME},libraries/hpc/dist-install/doc/html/hpc/hpc.haddock --read-interface=../old-time-1.0.0.6,../old-time-1.0.0.6/src/%{MODULE/./-}.html\#%{NAME},libraries/old-tim 03:33:05 e/dist-install/doc/html/old-time/old-time.haddock --read-interface=../process-1.0.1.4,../process-1.0.1.4/src/%{MODULE/./-}.html\#%{NAME},libraries/process/dist-install/doc/html/process/process.haddock --read-interface=../template-haskell-2.5.0.0,../template-haskell-2.5.0.0/src/%{MODULE/./-}.html\#%{NAME},libraries/template-haskell/dist-install/doc/html/template-haskell/template-haskell.haddock --read-interface=../unix-2.4.1.0,../unix- 03:33:07 2.4.1.0/src/%{MODULE/./-}.html\#%{NAME},libraries/unix/dist-install/doc/html/unix/unix.haddock --optghc=-H32m --optghc=-O --optghc=-package-name --optghc=ghc-7.0.1 --optghc=-hide-all-packages --optghc=-i --optghc=-icompiler/basicTypes --optghc=-icompiler/cmm --optghc=-icompiler/codeGen --optghc=-icompiler/coreSyn --optghc=-icompiler/deSugar --optghc=-icompiler/ghci --optghc=-icompiler/hsSyn --optghc=-icompiler/iface --optghc=-icompile 03:33:09 i can't decide if the title text or the comic itself is stupider. but i know i don't care to look at again to try to decide 03:33:09 r/llvmGen --optghc=-icompiler/main --optghc=-icompiler/nativeGen --optghc=-icompiler/parser --optghc=-icompiler/prelude --optghc=-icompiler/profiling --optghc=-icompiler/rename --optghc=-icompiler/simplCore --optghc=-icompiler/simplStg --optghc=-icompiler/specialise --optghc=-icompiler/stgSyn --optghc=-icompiler/stranal --optghc=-icompiler/typecheck --optghc=-icompiler/types --optghc=-icompiler/utils --optghc=-icompiler/vectorise --op 03:33:11 tghc=-icompiler/stage2/build --optghc=-icompiler/stage2/build/autogen --optghc=-Icompiler/stage2/build --optghc=-Icompiler/stage2/build/autogen --optghc=-Icompiler/../libffi/build/include --optghc=-Icompiler/stage2 --optghc=-Icompiler/../libraries/base/cbits --optghc=-Icompiler/../libraries/base/include --optghc=-Icompiler/. --optghc=-Icompiler/parser --optghc=-Icompiler/utils --optghc=-optP-DGHCI --optghc=-optP-include --optghc=-optP 03:33:13 compiler/stage2/build/autogen/cabal_macros.h --optghc=-package --optghc=Cabal-1.10.0.0 --optghc=-package --optghc=array-0.3.0.2 --optghc=-package --optghc=base-4.3.0.0 --optghc=-package --optghc=bin-package-db-0.0.0.0 --optghc=-package --optghc=bytestring-0.9.1.8 --optghc=-package --optghc=containers-0.4.0.0 --optghc=-package --optghc=directory-1.1.0.0 --optghc=-package --optghc=filepath-1.2.0.0 --optghc=-package --optghc=hpc-0.5.0.6 03:33:15 --optghc=-package --optghc=old-time-1.0.0.6 --optghc=-package --optghc=process-1.0.1.4 --optghc=-package --optghc=template-haskell-2.5.0.0 --optghc=-package --optghc=unix-2.4.1.0 --optghc=-Wall --optghc=-fno-warn-name-shadowing --optghc=-fno-warn-orphans --optghc=-XCPP --optghc=-XMagicHash --optghc=-XUnboxedTuples --optghc=-XPatternGuards --optghc=-XForeignFunctionInterface --optghc=-XEmptyDataDecls --optghc=-XTypeSynonymInstances --o 03:33:17 ptghc=-XMultiParamTypeClasses --optghc=-XFlexibleInstances --optghc=-XRank2Types --optghc=-XScopedTypeVariables --optghc=-XDeriveDataTypeable --optghc=-DGHCI_TABLES_NEXT_TO_CODE --optghc=-DSTAGE=2 --optghc=-no-user-package-conf --optghc=-rtsopts --optghc=-O2 --optghc=-odir --optghc=compiler/stage2/build --optghc=-hidir --optghc=compiler/stage2/build --optghc=-stubdir --optghc=compiler/stage2/build --optghc=-hisuf --optghc=hi --optghc= 03:33:19 -osuf --optghc=o --optghc=-hcsuf --optghc=hc --source-module=src/%{MODULE/./-}.html --source-entity=src/%{MODULE/./-}.html#%{NAME} --optghc=-DSTAGE=2 compiler/nativeGen/AsmCodeGen.lhs compiler/nativeGen/TargetReg.hs compiler/nativeGen/NCGMonad.hs compiler/nativeGen/Instruction.hs compiler/nativeGen/Size.hs compiler/nativeGen/Reg.hs compiler/nativeGen/RegClass.hs compiler/nativeGen/PIC.hs compiler/nativeGen/Platform.hs compil 03:33:21 er/nativeGen/Alpha/Regs.hs compiler/nativeGen/Alpha/RegInfo.hs compiler/nativeGen/Alpha/Instr.hs compiler/nativeGen/Alpha/CodeGen.hs compiler/nativeGen/X86/Regs.hs compiler/nativeGen/X86/RegInfo.hs compiler/nativeGen/X86/Instr.hs compiler/nativeGen/X86/Cond.hs compiler/nativeGen/X86/Ppr.hs compiler/nativeGen/X86/CodeGen.hs compiler/nativeGen/PPC/Regs.hs compiler/nativeGen/PPC/RegInfo.hs compiler/nativeGen/PPC/Instr.hs com 03:33:23 piler/nativeGen/PPC/Cond.hs compiler/nativeGen/PPC/Ppr.hs compiler/nativeGen/PPC/CodeGen.hs compiler/nativeGen/SPARC/Base.hs compiler/nativeGen/SPARC/Regs.hs compiler/nativeGen/SPARC/RegPlate.hs compiler/nativeGen/SPARC/Imm.hs compiler/nativeGen/SPARC/AddrMode.hs compiler/nativeGen/SPARC/Cond.hs compiler/nativeGen/SPARC/Instr.hs compiler/nativeGen/SPARC/Stack.hs compiler/nativeGen/SPARC/ShortcutJump.hs compiler/nativeGen/S 03:33:24 elliott, xkcd is not always accurate - for example the tic-tac-toe one had errors in the drawings 03:33:25 PARC/Ppr.hs compiler/nativeGen/SPARC/CodeGen.hs compiler/nativeGen/SPARC/CodeGen/Amode.hs compiler/nativeGen/SPARC/CodeGen/Base.hs compiler/nativeGen/SPARC/CodeGen/CCall.hs compiler/nativeGen/SPARC/CodeGen/CondCode.hs compiler/nativeGen/SPARC/CodeGen/Gen32.hs compiler/nativeGen/SPARC/CodeGen/Gen64.hs compiler/nativeGen/SPARC/CodeGen/Sanity.hs compiler/nativeGen/SPARC/CodeGen/Expand.hs compiler/nativeGen/RegAlloc/Liveness.hs 03:33:27 compiler/nativeGen/RegAlloc/Graph/Main.hs compiler/nativeGen/RegAlloc/Graph/Stats.hs compiler/nativeGen/RegAlloc/Graph/ArchBase.hs compiler/nativeGen/RegAlloc/Graph/ArchX86.hs compiler/nativeGen/RegAlloc/Graph/Coalesce.hs compiler/nativeGen/RegAlloc/Graph/Spill.hs compiler/nativeGen/RegAlloc/Graph/SpillClean.hs compiler/nativeGen/RegAlloc/Graph/SpillCost.hs compiler/nativeGen/RegAlloc/Graph/TrivColorable.hs compiler/nativeGe 03:33:29 n/RegAlloc/Linear/Main.hs compiler/nativeGen/RegAlloc/Linear/JoinToTargets.hs compiler/nativeGen/RegAlloc/Linear/State.hs compiler/nativeGen/RegAlloc/Linear/Stats.hs compiler/nativeGen/RegAlloc/Linear/FreeRegs.hs compiler/nativeGen/RegAlloc/Linear/StackMap.hs compiler/nativeGen/RegAlloc/Linear/Base.hs compiler/nativeGen/RegAlloc/Linear/X86/FreeRegs.hs compiler/nativeGen/RegAlloc/Linear/PPC/FreeRegs.hs compiler/nativeGen/RegAl 03:33:30 damn i wish i could kick 03:33:31 loc/Linear/SPARC/FreeRegs.hs compiler/deSugar/DsMeta.hs compiler/typecheck/TcSplice.lhs compiler/hsSyn/Convert.lhs compiler/ghci/ByteCodeAsm.lhs compiler/ghci/ByteCodeFFI.lhs compiler/ghci/ByteCodeGen.lhs compiler/ghci/ByteCodeInstr.lhs compiler/ghci/ByteCodeItbls.lhs compiler/ghci/ByteCodeLink.lhs compiler/ghci/Debugger.hs compiler/stage2/build/LibFFI.hs compiler/ghci/Linker.lhs compiler/ghci/ObjLink.lhs compiler/ghci/R 03:33:33 tClosureInspect.hs compiler/basicTypes/BasicTypes.lhs compiler/basicTypes/DataCon.lhs compiler/basicTypes/Demand.lhs compiler/utils/Exception.hs compiler/basicTypes/Id.lhs compiler/basicTypes/IdInfo.lhs compiler/basicTypes/Literal.lhs compiler/llvmGen/Llvm.hs compiler/llvmGen/Llvm/AbsSyn.hs compiler/llvmGen/Llvm/PpLlvm.hs compiler/llvmGen/Llvm/Types.hs compiler/llvmGen/LlvmCodeGen.hs compiler/llvmGen/LlvmCodeGen/Base.hs 03:33:35 compiler/llvmGen/LlvmCodeGen/CodeGen.hs compiler/llvmGen/LlvmCodeGen/Data.hs compiler/llvmGen/LlvmCodeGen/Ppr.hs compiler/llvmGen/LlvmCodeGen/Regs.hs compiler/llvmGen/LlvmMangler.hs compiler/basicTypes/MkId.lhs compiler/basicTypes/Module.lhs compiler/basicTypes/Name.lhs compiler/basicTypes/NameEnv.lhs compiler/basicTypes/NameSet.lhs compiler/basicTypes/OccName.lhs compiler/basicTypes/RdrName.lhs compiler/basicTypes/SrcLoc. 03:33:37 lhs compiler/basicTypes/UniqSupply.lhs compiler/basicTypes/Unique.lhs compiler/basicTypes/Var.lhs compiler/basicTypes/VarEnv.lhs compiler/basicTypes/VarSet.lhs compiler/cmm/BlockId.hs compiler/cmm/CLabel.hs compiler/cmm/Cmm.hs compiler/cmm/CmmBrokenBlock.hs compiler/cmm/CmmBuildInfoTables.hs compiler/cmm/CmmCPS.hs compiler/cmm/CmmCPSGen.hs compiler/cmm/CmmCPSZ.hs compiler/cmm/CmmCallConv.hs compiler/cmm/CmmCommonBlockEl 03:33:39 imZ.hs compiler/cmm/CmmContFlowOpt.hs compiler/cmm/CmmCvt.hs compiler/cmm/CmmExpr.hs compiler/cmm/CmmInfo.hs compiler/cmm/CmmLex.hs compiler/cmm/CmmLint.hs compiler/cmm/CmmLive.hs compiler/cmm/CmmLiveZ.hs compiler/cmm/CmmOpt.hs compiler/cmm/CmmParse.hs compiler/cmm/CmmProcPoint.hs compiler/cmm/CmmProcPointZ.hs compiler/cmm/CmmSpillReload.hs compiler/cmm/CmmStackLayout.hs compiler/cmm/CmmTx.hs compiler/cmm/CmmUtils.hs 03:33:41 compiler/cmm/CmmZipUtil.hs compiler/cmm/DFMonad.hs compiler/cmm/Dataflow.hs compiler/cmm/MkZipCfg.hs compiler/cmm/MkZipCfgCmm.hs compiler/cmm/OptimizationFuel.hs compiler/nativeGen/PprBase.hs compiler/cmm/PprC.hs compiler/cmm/PprCmm.hs compiler/cmm/PprCmmZ.hs compiler/cmm/StackColor.hs compiler/cmm/StackPlacements.hs compiler/cmm/ZipCfg.hs compiler/cmm/ZipCfgCmmRep.hs compiler/cmm/ZipCfgExtras.hs compiler/cmm/ZipDataflo 03:33:43 w.hs compiler/codeGen/Bitmap.hs compiler/codeGen/CgBindery.lhs compiler/codeGen/CgCallConv.hs compiler/codeGen/CgCase.lhs compiler/codeGen/CgClosure.lhs compiler/codeGen/CgCon.lhs compiler/codeGen/CgExpr.lhs compiler/codeGen/CgExtCode.hs compiler/codeGen/CgForeignCall.hs compiler/codeGen/CgHeapery.lhs compiler/codeGen/CgHpc.hs compiler/codeGen/CgInfoTbls.hs compiler/codeGen/CgLetNoEscape.lhs compiler/codeGen/CgMonad.lhs 03:33:45 compiler/codeGen/CgParallel.hs compiler/codeGen/CgPrimOp.hs compiler/codeGen/CgProf.hs compiler/codeGen/CgStackery.lhs compiler/codeGen/CgTailCall.lhs compiler/codeGen/CgTicky.hs compiler/codeGen/CgUtils.hs compiler/codeGen/StgCmm.hs compiler/codeGen/StgCmmBind.hs compiler/codeGen/StgCmmClosure.hs compiler/codeGen/StgCmmCon.hs compiler/codeGen/StgCmmEnv.hs compiler/codeGen/StgCmmExpr.hs compiler/codeGen/StgCmmForeign.hs 03:33:47 compiler/codeGen/StgCmmGran.hs compiler/codeGen/StgCmmHeap.hs compiler/codeGen/StgCmmHpc.hs compiler/codeGen/StgCmmLayout.hs compiler/codeGen/StgCmmMonad.hs compiler/codeGen/StgCmmPrim.hs compiler/codeGen/StgCmmProf.hs compiler/codeGen/StgCmmTicky.hs compiler/codeGen/StgCmmUtils.hs compiler/codeGen/ClosureInfo.lhs compiler/codeGen/CodeGen.lhs compiler/codeGen/SMRep.lhs compiler/coreSyn/CoreArity.lhs compiler/coreSyn/Core 03:33:48 WTF http://www.itv.com/news/100-car-pile-up-in-usa67788/ 03:33:49 FVs.lhs compiler/coreSyn/CoreLint.lhs compiler/coreSyn/CorePrep.lhs compiler/coreSyn/CoreSubst.lhs compiler/coreSyn/CoreSyn.lhs compiler/coreSyn/CoreTidy.lhs compiler/coreSyn/CoreUnfold.lhs compiler/coreSyn/CoreUtils.lhs compiler/coreSyn/ExternalCore.lhs compiler/coreSyn/MkCore.lhs compiler/coreSyn/MkExternalCore.lhs compiler/coreSyn/PprCore.lhs compiler/coreSyn/PprExternalCore.lhs compiler/deSugar/Check.lhs compiler/deS 03:33:51 ugar/Coverage.lhs compiler/deSugar/Desugar.lhs compiler/deSugar/DsArrows.lhs compiler/deSugar/DsBinds.lhs compiler/deSugar/DsCCall.lhs compiler/deSugar/DsExpr.lhs compiler/deSugar/DsForeign.lhs compiler/deSugar/DsGRHSs.lhs compiler/deSugar/DsListComp.lhs compiler/deSugar/DsMonad.lhs compiler/deSugar/DsUtils.lhs compiler/deSugar/Match.lhs compiler/deSugar/MatchCon.lhs compiler/deSugar/MatchLit.lhs compiler/hsSyn/HsBinds.l 03:33:52 elliott, spam - much? 03:33:52 elliott, shut up 03:33:52 elliott, spam - much? 03:33:53 elliott, spam - much? 03:33:53 hs compiler/hsSyn/HsDecls.lhs compiler/hsSyn/HsDoc.hs compiler/hsSyn/HsExpr.lhs compiler/hsSyn/HsImpExp.lhs compiler/hsSyn/HsLit.lhs compiler/hsSyn/HsPat.lhs compiler/hsSyn/HsSyn.lhs compiler/hsSyn/HsTypes.lhs compiler/hsSyn/HsUtils.lhs compiler/iface/BinIface.hs compiler/iface/BuildTyCl.lhs compiler/iface/IfaceEnv.lhs compiler/iface/IfaceSyn.lhs compiler/iface/IfaceType.lhs compiler/iface/LoadIface.lhs compiler/iface/ 03:33:53 what an asshole 03:33:55 MkIface.lhs compiler/iface/TcIface.lhs compiler/main/Annotations.lhs compiler/main/BreakArray.hs compiler/main/CmdLineParser.hs compiler/main/CodeOutput.lhs compiler/stage2/build/Config.hs compiler/main/Constants.lhs compiler/main/DriverMkDepend.hs compiler/main/DriverPhases.hs compiler/main/DriverPipeline.hs compiler/main/DynFlags.hs compiler/main/ErrUtils.lhs compiler/main/Finder.lhs compiler/main/GHC.hs compiler/main 03:33:57 /HeaderInfo.hs compiler/main/HscMain.lhs compiler/main/HscStats.lhs compiler/main/HscTypes.lhs compiler/main/InteractiveEval.hs compiler/main/PackageConfig.hs compiler/main/Packages.lhs compiler/main/PprTyThing.hs compiler/main/StaticFlags.hs compiler/main/StaticFlagParser.hs compiler/main/SysTools.lhs compiler/main/TidyPgm.lhs compiler/parser/Ctype.lhs compiler/parser/HaddockUtils.hs compiler/parser/LexCore.hs compiler 03:33:59 HASKAL? 03:33:59 /parser/Lexer.hs compiler/types/OptCoercion.lhs compiler/parser/Parser.hs compiler/parser/ParserCore.hs compiler/parser/ParserCoreUtils.hs compiler/parser/RdrHsSyn.lhs compiler/prelude/ForeignCall.lhs compiler/prelude/PrelInfo.lhs compiler/prelude/PrelNames.lhs compiler/prelude/PrelRules.lhs compiler/prelude/PrimOp.lhs compiler/prelude/TysPrim.lhs compiler/prelude/TysWiredIn.lhs compiler/profiling/CostCentre.lhs compiler 03:34:01 /profiling/SCCfinal.lhs compiler/rename/RnBinds.lhs compiler/rename/RnEnv.lhs compiler/rename/RnExpr.lhs compiler/rename/RnHsDoc.hs compiler/rename/RnHsSyn.lhs compiler/rename/RnNames.lhs compiler/rename/RnPat.lhs compiler/rename/RnSource.lhs compiler/rename/RnTypes.lhs compiler/simplCore/CoreMonad.lhs compiler/simplCore/CSE.lhs compiler/simplCore/FloatIn.lhs compiler/simplCore/FloatOut.lhs compiler/simplCore/LiberateCas 03:34:03 e.lhs compiler/simplCore/OccurAnal.lhs compiler/simplCore/SAT.lhs compiler/simplCore/SetLevels.lhs compiler/simplCore/SimplCore.lhs compiler/simplCore/SimplEnv.lhs compiler/simplCore/SimplMonad.lhs compiler/simplCore/SimplUtils.lhs compiler/simplCore/Simplify.lhs compiler/simplStg/SRT.lhs compiler/simplStg/SimplStg.lhs compiler/simplStg/StgStats.lhs compiler/specialise/Rules.lhs compiler/specialise/SpecConstr.lhs compile 03:34:05 r/specialise/Specialise.lhs compiler/stgSyn/CoreToStg.lhs compiler/stgSyn/StgLint.lhs compiler/stgSyn/StgSyn.lhs compiler/stranal/DmdAnal.lhs compiler/stranal/WorkWrap.lhs compiler/stranal/WwLib.lhs compiler/typecheck/FamInst.lhs compiler/typecheck/Inst.lhs compiler/typecheck/TcAnnotations.lhs compiler/typecheck/TcArrows.lhs compiler/typecheck/TcBinds.lhs compiler/typecheck/TcClassDcl.lhs compiler/typecheck/TcDefaults.lhs 03:34:07 compiler/typecheck/TcDeriv.lhs compiler/typecheck/TcEnv.lhs compiler/typecheck/TcExpr.lhs compiler/typecheck/TcForeign.lhs compiler/typecheck/TcGenDeriv.lhs compiler/typecheck/TcHsSyn.lhs compiler/typecheck/TcHsType.lhs compiler/typecheck/TcInstDcls.lhs compiler/typecheck/TcMType.lhs compiler/typecheck/TcMatches.lhs compiler/typecheck/TcPat.lhs compiler/typecheck/TcRnDriver.lhs compiler/typecheck/TcRnMonad.lhs compiler/ 03:34:09 typecheck/TcRnTypes.lhs compiler/typecheck/TcRules.lhs compiler/typecheck/TcSimplify.lhs compiler/typecheck/TcErrors.lhs compiler/typecheck/TcTyClsDecls.lhs compiler/typecheck/TcTyDecls.lhs compiler/typecheck/TcType.lhs compiler/typecheck/TcUnify.lhs compiler/typecheck/TcInteract.lhs compiler/typecheck/TcCanonical.lhs compiler/typecheck/TcSMonad.lhs compiler/types/Class.lhs compiler/types/Coercion.lhs compiler/types/FamIn 03:34:11 stEnv.lhs compiler/types/FunDeps.lhs compiler/types/Generics.lhs compiler/types/InstEnv.lhs compiler/types/TyCon.lhs compiler/types/Type.lhs compiler/types/TypeRep.lhs compiler/types/Unify.lhs compiler/utils/Bag.lhs compiler/utils/Binary.hs compiler/utils/BufWrite.hs compiler/utils/Digraph.lhs compiler/utils/Encoding.hs compiler/utils/FastBool.lhs compiler/utils/FastFunctions.lhs compiler/utils/FastMutInt.lhs compiler/ 03:34:13 utils/FastString.lhs compiler/utils/FastTypes.lhs compiler/stage2/build/Fingerprint.hs compiler/utils/FiniteMap.lhs compiler/utils/GraphBase.hs compiler/utils/GraphColor.hs compiler/utils/GraphOps.hs compiler/utils/GraphPpr.hs compiler/utils/IOEnv.hs compiler/utils/Interval.hs compiler/utils/ListSetOps.lhs compiler/utils/Maybes.lhs compiler/utils/MonadUtils.hs compiler/utils/OrdList.lhs compiler/utils/Outputable.lhs com 03:34:15 piler/utils/Panic.lhs compiler/utils/Pretty.lhs compiler/utils/Serialized.hs compiler/utils/State.hs compiler/utils/StringBuffer.lhs compiler/utils/UniqFM.lhs compiler/utils/UniqSet.lhs compiler/utils/Util.lhs compiler/vectorise/Vectorise/Builtins/Base.hs compiler/vectorise/Vectorise/Builtins/Initialise.hs compiler/vectorise/Vectorise/Builtins/Modules.hs compiler/vectorise/Vectorise/Builtins/Prelude.hs compiler/vectorise/V 03:34:17 ectorise/Builtins.hs compiler/vectorise/Vectorise/Monad/Base.hs compiler/vectorise/Vectorise/Monad/Naming.hs compiler/vectorise/Vectorise/Monad/Local.hs compiler/vectorise/Vectorise/Monad/Global.hs compiler/vectorise/Vectorise/Monad/InstEnv.hs compiler/vectorise/Vectorise/Monad.hs compiler/vectorise/Vectorise/Utils/Base.hs compiler/vectorise/Vectorise/Utils/Closure.hs compiler/vectorise/Vectorise/Utils/Hoisting.hs compiler/v 03:34:18 * variable thinks he accidentally copy/pasted and now can't stop it 03:34:19 ectorise/Vectorise/Utils/PADict.hs compiler/vectorise/Vectorise/Utils/PRDict.hs compiler/vectorise/Vectorise/Utils/Poly.hs compiler/vectorise/Vectorise/Utils.hs compiler/vectorise/Vectorise/Type/Env.hs compiler/vectorise/Vectorise/Type/Repr.hs compiler/vectorise/Vectorise/Type/PData.hs compiler/vectorise/Vectorise/Type/PRepr.hs compiler/vectorise/Vectorise/Type/PADict.hs compiler/vectorise/Vectorise/Type/PRDict.hs compiler/v 03:34:21 ectorise/Vectorise/Type/Type.hs compiler/vectorise/Vectorise/Type/TyConDecl.hs compiler/vectorise/Vectorise/Type/Classify.hs compiler/vectorise/Vectorise/Convert.hs compiler/vectorise/Vectorise/Vect.hs compiler/vectorise/Vectorise/Var.hs compiler/vectorise/Vectorise/Env.hs compiler/vectorise/Vectorise/Exp.hs compiler/vectorise/Vectorise.hs 03:34:23 holy shit 03:34:25 i 03:34:27 * variable thinks he accidentally copy/pasted and now can't stop it 03:34:27 had no idea how long that would be 03:34:29 i just copied one compilation line to mock ghc 03:34:31 jesus christ 03:34:33 what is it doing 03:34:40 variable, there's always ways to stop copy/paste 03:34:46 sorry if that spammed 03:34:51 Sgeo, force disconnect 03:34:58 even /part won't stop it 03:35:02 oh wow that is a lot of lines, i didn't even look that far back 03:35:09 sorry 03:35:10 i can't decide if the title text or the comic itself is stupider. but i know i don't care to look at again to try to decide 03:35:15 elliott, xkcd is not always accurate - for example the tic-tac-toe one had errors in the drawings 03:35:18 re: 03:35:19 variable: elliott, xkcd is not always accurate - for example the tic-tac-toe one had errors in the drawings 03:35:21 yeah i saw it :) 03:35:28 variable: I wouldn't mind, if only it was funny 03:35:43 elliott, blasphemer 03:35:48 you dare call xkcd NOT funny ? 03:35:58 variable: yeah ... it really isn't 03:36:01 it was great before comic 400. 03:36:04 afterwards, not so much so. 03:36:08 lately, absolute crap. 03:36:12 * Sgeo needs FOOD 03:36:15 elliott, nope - that's a cognitive bias 03:36:17 FEED ME 03:36:22 variable: lol 03:36:24 variable: seriously? 03:36:26 Sgeo, awesome movie 03:36:28 * play 03:36:29 is that how you respond to criticism of work? 03:36:32 variable, hmm? 03:36:36 "You DON'T LIKE XKCD? It's because your brain's broken." 03:36:41 elliott, nope 03:36:50 elliott, you missed what I as refering to as the bias 03:36:54 I think... I accidentally made a reference of some kind. 03:36:57 variable: that it's getting worse? 03:37:04 it's not like i'm the only person to notice that. whenever they started reading. 03:37:08 variable, WTF did I reference? 03:37:09 it's fairly obvious that randall is running out of ideas. 03:37:10 elliott is correct in this case though. everyone knows xkcd just isn't as good as it once was 03:37:28 just because a lot of observations about "THE GOOD OL' DAYS" are false doesn't make them universally false. 03:38:00 if I hadn't already seen them, I guarantee you I could accurately sort, say, comics 550 and onwards from comics 350 and before (ignoring the ones in the middle as being part of a decline and so harder to categorise) with high accuracy 03:38:06 elliott, sort of. you remember the earlier good ones and forget the earlier bad ones. I'll bet that if you were to go thru them all in a random order and mark them good and bad the distribution would be roughly the same 03:38:16 elliott: i think he was saying it sucked before too 03:38:31 and i disagree 03:38:45 quintopia: I doubt it: 03:38:50 because i have done this experiment 03:38:52 03:35 variable: elliott, blasphemer 03:38:52 03:35 variable: you dare call xkcd NOT funny ? 03:38:54 well ok he could be joking 03:38:58 elliott, that was a joke :-} 03:39:00 and there were a lot more good ones then than there are now 03:39:01 :) 03:39:03 hard to tell 03:39:05 with some xkcd fans 03:39:19 elliott, I'll mark jokes with :-) if a I remember for now on - ok ? :-) 03:39:27 just mark every line with :) 03:39:27 :P 03:39:29 variable: but no, xkcd really _has_ decreased in quality. i say this as someone who is almost to the point of paranoia with checking their own cognitive biases 03:40:10 elliott, the only way to really tell that would be to perform some kind of randomized ordering and rating of a representative sample of the comic 03:41:08 variable: it is, in fact, possible to derive accurate results _without_ always performing the most anal procedure. 03:41:17 (as an aside its been showing that being aware of cognitive biases and specifically attempting to avoid them might increase their likelyhood of affecting a person btw) 03:41:23 humans are capable of quite good rational thought if self-analysed to a sufficient degree. 03:41:46 * elliott wonders if variable is a Less Wronger. 03:41:59 Less Wronger ? 03:42:24 http://lesswrong.com/. 03:42:44 Is there a name for something where I'm more attracted to someone if I know they've had a rough past? 03:43:14 Sgeo, "Little Shop of Horrors" 03:43:18 Sgeo: being Sgeo 03:43:22 variable: lol i like the timing of that 03:43:25 03:42 Sgeo: Is there a name for something where I'm more attracted to someone if I know they've had a rough past? 03:43:26 03:42 variable: Sgeo, "Little Shop of Horrors" 03:43:47 `addquote Is there a name for something where I'm more attracted to someone if I know they've had a rough past? Sgeo, "Little Shop of Horrors" 03:43:48 260) Is there a name for something where I'm more attracted to someone if I know they've had a rough past? Sgeo, "Little Shop of Horrors" 03:44:28 elliott, I've not seen that blog before 03:44:55 strange. 03:45:08 * Sgeo decides that Slava has his head in the sand about modules and about capability security 03:45:19 brb. 03:45:28 elliott, I've not seen that blog before 03:45:35 variable: strange. 03:45:36 brb 03:45:41 is there something particular about what I said that made you think of that? 03:45:47 if so is it positive or negative ? 03:45:50 re cognitive biases 03:45:52 and just curiosity 03:45:59 now really brb, stop talking to me! :) 03:46:21 elliott, talk 03:46:22 talk 03:46:23 talk 03:53:33 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 03:55:14 -!- poiuy_qwert has joined. 04:18:18 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep). 04:19:25 GMMXle. 04:19:31 *MMXIe. 04:21:40 2011e? 04:22:06 Please tell me that's not the new D&D edition 04:22:16 GMMXIe is the new Google logo. 04:22:45 ..? I don't see it 04:24:32 Well, it's New Years eve where you are, so 04:25:03 Precisely. 04:25:17 Sgeo: http://www.google.co.uk/logos/2010/newyear11-hp.jpg 04:42:23 oh is it new year already 04:43:03 j-invariant: no 04:43:07 j-invariant: nother 19 hours for that 04:43:43 http://www.mediawiki.org/wiki/Manual:Math#Usage <-- Cool formula for erfc 04:44:31 hehe 04:45:13 -!- Mathnerd314 has joined. 04:45:23 .. http://yfrog.com/h2m6wtj why? 04:45:38 tattoos are daft, even if they are equations 04:45:50 how can they stay on? 04:45:53 I don't understand that 04:46:01 I would expect them to at least disperse 04:47:37 j-invariant: because of magic! 04:47:46 j-invariant: hey that equation doesn't look tex typeset 04:47:56 j-invariant: I wouldn't get an equation tattooed on me (at all, but) unless it was set in AMS Euler! 04:53:19 hehe 04:53:55 but yeah tattoos are lame. 04:54:25 I feel like.. bad to say it, because what if a person with a tattoo hears me - I don't want to upset them 04:54:38 but... what were they thinking 04:55:41 j-invariant: I think anyone who can withstand that sort of pain is hard enough to not get upset :-P 04:55:52 http://chirp.scratchr.org/dl/experimental/JsMorphic/morphic.html Smalltalk's Morphic ported to JS. This is great until Sgeo notices this message. 04:56:17 I've seen in-browser Smalltalks before 04:56:26 Also, I know little about Morphic 04:56:27 Happy? 04:56:43 It's not in-browser Smalltalk, it's actual real Morphic. 04:56:47 Without Smalltalk. 04:57:05 is it really painful? 04:57:37 j-invariant: Morphic is pretty cool actually ... not sure the browser part is of any use though :P 05:03:21 http://newyork.cbslocal.com/2010/12/30/liberal-group-criticizes-christie-with-parody-website/ Since when is the existence of a parody website news? 05:04:21 oh those damn liberals are at it again!! 05:10:14 elliott: http://vimeo.com/16754574 05:10:45 can't watch it i have a perfect mental image of conor mcbride 05:10:53 don't want to break it okay i pressed play omg no that's not what he sounds like 05:11:16 j-invariant: more seriously i'll watch tomorrow when it's not 5am :) 05:12:12 i have a perfect mental image of conor mcbride <-- hahaha 05:12:16 Ok, Randall Munroe has a beef with audiophiles 05:12:30 -!- myndzi has quit (Remote host closed the connection). 05:12:49 -!- myndzi has joined. 05:13:33 Sgeo: eh? 05:13:36 most "audiophiles" are idiots. 05:13:43 the rest are not. 05:14:26 The only joke in the latest xkcd is too angry to be a joke 05:14:58 who you calling an idiot! 05:15:28 ur just jelly of me listenin to flac vinyl rips on my grado headphones through this expensive ass setup 05:15:46 lol 05:15:50 myndzi: i bet you can distinguish lame -V2 --joint-stereo from flac too 05:15:52 and FLAC from WAVs! 05:15:57 and WAVs from the CDs themselves 05:16:08 I could swear I've heard "jelly" used in that context before 05:16:13 i can distinguish between different pressings of the same cd 05:16:14 how many audiophiles have perfect pitch? 05:16:26 a: all of them 05:16:35 it's whatever pitch they say it is and i dare you to argue 05:16:35 ;) 05:16:43 lol 05:16:49 Sgeo: u jelly? 05:16:57 myndzi: the sane audiophiles are all at hydrogenaudio :p 05:17:07 http://xkcd.com/838/ <-- LOL 05:17:21 i liked that one 05:19:19 it's funny because I RELATE TO IT ! 05:19:25 I have seen that meassage 05:19:45 it emails the sysadmin 05:19:47 i.e. you/root 05:19:55 Did I ever tell you my sudo story? 05:20:33 * Sgeo should put a label on it: Warning: May cause death by boredom 05:23:22 tell! 05:27:24 I had two terminal windows open, one to the school and one for the computer I was using 05:27:43 I tried to sudo apt-get something, I think Chromium, but I was doing it at the wrong terminal 05:27:58 TODO: Figure out how to make cabal-install run "stow -v ghc" after installing/removing anything to redo the appropriate links. 05:28:00 Realized it eventually, and sent the person in charge of that system a message 05:28:11 TODO: Figure out how to make cabal-install do copying and registering separately to integrate with stow. 05:28:20 TODO: Perhaps abandon this silly idea and just install into ~/.cabal like normal people do. 05:28:29 Sgeo: my brother plays muds a lot still 05:28:41 he was granted an immortal character with OLC access 05:28:44 my brother plays with mud 05:28:50 Sgeo: what did it work or somethign? 05:28:55 he used to often get mixed up with which character he was on 05:28:57 No, it idn't 05:29:00 I just got annoyed 05:29:00 so he changed his immortal's prompt to be something like 05:29:07 Sgeo: annoyed at what 05:29:15 That my password wasn't working 05:29:30 IMMIMMIMMIMMIMMIMM 05:29:30 you wanted to be root? 05:29:43 j-invariant, so I could install Chromium! 05:29:50 TODO: Or maybe have stow stow packages separately. 05:29:51 oh I see 05:30:00 but why did you say you have two terminals open? 05:30:06 what does that have to do wit hthis 05:30:08 TODO: Maybe redo the bootstrap with executable stripping. 05:30:14 j-invariant: did it on the wrong terminal, got REPORTED 05:30:39 I can't figure out how to make a program not-crap with GTK 05:31:07 TODO: wtf is root-cmd 05:31:08 I have a slightly more interesting story 05:31:18 Sgeo: was that it? 05:31:31 No, that was the deadily boring story 05:31:47 but was that it? 05:31:51 you sent an email: End of story 05:31:53 Yes 05:31:56 LOL 05:32:31 So these numbskulls in class were playing with wall 05:33:03 I play my head on wall 05:33:06 Yay bouncy 05:33:14 I threaten to disable the next person who does so 05:33:20 (Just yes | write whoever) 05:33:28 But I wouldn't tell them that ofc 05:33:33 So, I do so 05:33:49 Person closes PuTTY, opens it again, and walls again 05:33:52 I do so again 05:33:54 etc. etc. 05:34:23 So, the next thing I do, I write something stupid on the command line to do yes | write in an infinite loop 05:34:28 lol 05:34:46 Next thing I know, people are complaining that the system's not working 05:34:50 Nothing's happening 05:34:51 LOL 05:35:18 Someone eventually reaches to turn off my computer, despite my protests that it wouldn't work. It did. 05:35:31 Shell conncetion got dropped, duh. 05:35:32 *connection 05:36:00 Next class, we learn that someone was trying to work from home, couldn't, and complained 05:36:17 The people who were using wall got in trouble. I did not. 05:36:47 hehe 05:36:53 you are the one that caused all the problems 05:37:21 Oh, and wall got disabled permanently 05:37:39 Ehh, wall is still a problem. But yeah 05:38:54 'splain yes | write? 05:39:17 Spams yes to whoever's being written to 05:39:21 *Spams y 05:39:31 Erm, oops. Yeah 05:40:24 how does that disable someone? 05:40:49 it's like they ae running yes in their own terminal 05:40:54 PuTTY does not like being spammed 05:40:59 very hard to see what's gpoing on 05:41:05 i see 05:41:11 j-invariant, I think it actually froze PuTTY 05:41:27 i just am unfamiliar with unix commands so i thought maybe it was doing something sly 05:41:30 ;) 05:41:50 sly as a faux 05:41:55 It was doing something y 05:45:40 y so y 05:46:38 -!- hagb4rd has quit (Ping timeout: 240 seconds). 05:48:18 should have sent them some BELs 05:52:02 -!- elliott has quit (Remote host closed the connection). 06:01:13 -!- elliott has joined. 06:01:14 -!- elliott has quit (Remote host closed the connection). 06:04:52 -!- elliott has joined. 06:04:53 -!- elliott has quit (Remote host closed the connection). 06:08:38 -!- cheater99 has quit (Ping timeout: 240 seconds). 06:16:24 I just ripped an arm off! 06:21:35 -!- cheater99 has joined. 06:24:09 cheater99, I ripped an arm off, what should I do? 06:24:19 -!- Sgeo has left (?). 06:24:26 -!- Sgeo has joined. 06:30:07 ???? 06:30:19 is this a game 06:30:31 [off a chair] 07:12:13 -!- j-invariant has quit (Quit: leaving). 07:37:12 -!- Sgeo has quit (Read error: Connection reset by peer). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:11:26 -!- cheater99 has quit (Ping timeout: 240 seconds). 08:20:38 -!- sftp has quit (Ping timeout: 240 seconds). 08:21:00 -!- sftp has joined. 08:24:15 -!- cheater99 has joined. 08:35:50 -!- Mathnerd314 has quit (Ping timeout: 240 seconds). 08:50:40 -!- cheater99 has quit (Read error: Connection reset by peer). 09:07:16 -!- cheater99 has joined. 09:27:35 -!- sftp_ has joined. 09:27:36 -!- sftp has quit (Ping timeout: 240 seconds). 09:34:41 -!- j-invariant has joined. 09:40:05 -!- MigoMipo has joined. 10:26:25 -!- sftp_ has quit (Read error: Connection reset by peer). 10:26:42 -!- sftp_ has joined. 10:29:46 -!- Phantom_Hoover has joined. 10:44:11 -!- Phantom_Hoover_ has joined. 10:45:02 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds). 10:56:23 -!- oerjan has joined. 10:58:19 -!- sftp has joined. 10:58:34 -!- sftp_ has quit (Ping timeout: 276 seconds). 11:32:37 -!- MigoMipo_ has joined. 11:33:43 -!- MigoMipo_ has quit (Remote host closed the connection). 11:34:38 -!- MigoMipo has quit (Ping timeout: 240 seconds). 11:37:00 -!- MigoMipo has joined. 11:40:56 -!- sftp has quit (Remote host closed the connection). 11:41:12 -!- sftp has joined. 11:46:19 things that annoy me with eog: it blurs the image if you zoom in so that a pixel in the image covers more than one pixel on screen. 11:47:30 -!- oerjan has quit (Remote host closed the connection). 12:13:56 That annoys me too. Maybe there's some mysterious gconf flag that makes it do nearest-neighbor instead of filtering. 12:27:39 -!- GreaseMonkey has quit (Quit: ilua). 12:39:45 Ok Ubuntu is like a devil it run in any computer... it works his way in to your computer and a demon takes control of your computer...what do I mean? 12:39:45 Have you seen does cakes with cream felling that you like? Linux is the cream Inside thats what linux is and yes it should work in your in your computer.. 12:39:51 i love forums 12:42:00 -!- PEDRO-8B4ACF159 has joined. 12:42:27 -!- PEDRO-8B4ACF159 has quit (Remote host closed the connection). 12:54:41 -!- FireFly has joined. 13:14:06 -!- Wamanuz5 has joined. 13:34:18 -!- hagb4rd has joined. 13:37:39 -!- oerjan has joined. 13:57:45 -!- BeholdMyGlory has joined. 13:59:46 -!- Behold has joined. 14:03:38 -!- BeholdMyGlory has quit (Ping timeout: 272 seconds). 14:09:41 -!- BMG has joined. 14:13:08 -!- Behold has quit (Ping timeout: 264 seconds). 14:15:06 -!- BMG has quit (Changing host). 14:15:06 -!- BMG has joined. 14:15:11 -!- BMG has changed nick to BeholdMyGlory. 14:38:59 yieh 14:39:26 i don't like new years eve 14:48:17 -!- variable has quit (Read error: Operation timed out). 14:49:49 -!- variable has joined. 14:50:29 * oerjan realizes the paradox of variable learning haskell 14:54:09 -!- Sgeo has joined. 14:54:59 oerjan what? 14:59:34 haskell is purely functional, so everything is constant, not variable 14:59:43 * oerjan sweeps some IORefs under the rug 15:03:10 also some STRefs, MVars and TVars 15:04:20 I think Newspeak's "module" system has spoiled me. Racket's makes me want to barf. 15:05:00 And I'm convinced that the Factor people have their head in the sand, unless they're planning to pull a Racket and have a centralized distribution source 15:07:05 * oerjan now imagines a language named Ostrich 15:08:33 naturally it would be based on ignoring all errors as long as possible 15:09:36 and having a number of flawed design choices 15:10:28 -!- augur has quit (Read error: Connection reset by peer). 15:10:48 -!- augur has joined. 15:10:49 oerjan, hrm.... 15:10:54 isn't that called Java ? 15:11:27 i'm not aware of whether java ignores errors 15:11:46 i never got much deeper than hello, world in it 15:12:19 i guess the second part applies to everyone's favorite hate languages 15:12:27 (java, php, c++ ?) 15:12:49 I like C++ 15:12:58 * variable puts on flamesuit 15:13:30 yeah but i hear it's a mess unless you work in a carefully restricted subset (and different people choose different subsets) 15:13:46 * oerjan doesn't know php or c++ either 15:14:38 actually i recall java's checked exceptions are supposedly so annoying that people _do_ tend to ignore them, so maybe it fits 15:15:39 * variable disliks the exception paradigm 15:16:12 its pretty much a "goto" but in an if statement :-) 15:16:13 variable, a few (out of many) reasons that C++ is deeply flawed: templates sucking, multiple inheritance, operator++ overloading for ++x vs. x++, STL being crazy (especially the io stuff) 15:16:26 there are a lot more reasons why C++ sucks 15:16:31 C++ is very complicated 15:16:39 incidentally haskell has _several_ variants of exception mechanisms, some purely functional and some not 15:16:39 j-invariant, yes, and badly designed 15:17:04 Vorpal, templates are one of my fav. parts of C++, nothing is wrong with MI if you know what your doing; STL is crazy and I wish there were certain; blah blah blah 15:17:15 I don't want to start this convo 15:17:17 from the near-trivial Maybe monad up to IO exceptions 15:18:28 Paging coppro, paging coppro 15:18:53 and a MonadError type class, i'm not quite sure if all the examples belong to it 15:19:03 variable, did you know that while C++ is not TC (nor is C) thanks to sizeof(void*) having to be finite, C++ templates are actually TC at compile time. 15:19:16 Vorpal, yes 15:19:21 actually - I did :-} 15:19:50 Vorpal, but its an interesting piece of knowledge (trivia?) 15:20:16 except that templates usually come with a maximum recursion depth to force them to terminate 15:20:47 variable, and that parsing C++ requires you to do syntax and semantic analysis in one pass since you will get ambiguous parse tree otherwise. 15:20:52 its a minimum of 16 -> but the standard allows infinite 15:20:53 olsner, quite. 15:21:01 Vorpal, yeah - its not context free 15:21:17 that's horrible 15:21:33 ghc's type system is also TC at compile time if you set the right extension flags 15:21:43 wrong** :P 15:21:56 I think something like A B(C); parses differently depending on what a, b and c are. 15:22:13 Vorpal, exactly 15:22:14 Vorpal: that was the case already in C 15:22:29 oerjan, yes quite. But also C++ adds a few more variants to that 15:22:59 oerjan, for example, myclass foo(42); Now that won't be a possible way to parse it in C since it has no constructors 15:23:30 mhm 15:24:55 i read that they're going to introduce a new type kind in haskell to solve the newtype deriving inconsistencies 15:25:13 s/haskell/ghc/ 15:25:16 newtype deriving inconsistencies? 15:26:12 Sgeo: ghc's newtype deriving extension is inconsistent with both the GADT and the type family extensions 15:26:34 you can combine them in such a way as to convert any type to any other 15:26:50 oerjan, convert in what sort of way? 15:28:03 in such a way as to break type safety 15:28:17 oerjan, right, but what will happen if you do it 15:28:23 oerjan, crash? 15:28:31 quite likely 15:28:48 unsafeCoerce vorpal :: Int 15:28:55 if you convert an Int to a function type you would be able to jump to an arbitrary address 15:29:21 yeah you could define unsafeCoerce :: a -> b with this, i think 15:29:33 heh 15:29:51 (of course unsafeCoerce _is_ already defined somewhere, but that's what the unsafe* prefixes are for) 15:29:56 oerjan, could you use this to get the bit pattern of a floating point value for example? 15:30:12 Vorpal: i would think so... 15:30:19 oerjan, is there any other way to do that? 15:30:42 Vorpal, when I tell people in C++ channels that I'm using reinterpret_cast, and they yell at me, it's because they don't realize that's what I want to do 15:30:43 well the RealFloat class has methods to get most of the information 15:30:44 oerjan, I suddenly got an urge to do that famous inverse square function in haskell! 15:31:16 err, squareroot 15:31:33 you mean integer square root? 15:31:38 oerjan, no 15:31:40 oerjan, I mean http://en.wikipedia.org/wiki/Fast_inverse_square_root 15:31:43 the newtons method one 15:31:47 oerjan, the one famous from quake 15:32:07 with magic number and so on 15:32:19 oh 15:34:01 oerjan, surely you heard about it before 15:34:58 it vaguely rings a bell 15:35:13 especially that strange constant thing 15:36:18 lessee how does this inconsistency work again 15:37:22 class Trap a b where trap :: f a -> f b 15:37:53 instance Trap Int Int where trap = id 15:39:24 inconsistency? 15:39:38 newtype deriving 15:39:45 * oerjan needs to google it 15:41:25 http://hackage.haskell.org/trac/ghc/ticket/1496 15:42:35 hm. Does anyone know if there is any good algorithms for uninlining? For a brainfuck compiler this could be an optimisation, trying to factor out code into functions. 15:54:32 Related to Common Subexpression Elimination? 15:59:32 -!- MigoMipo has quit (Read error: Connection reset by peer). 16:02:05 -!- Behold has joined. 16:04:52 -!- BeholdMyGlory has quit (Ping timeout: 265 seconds). 16:07:23 The CEO of Active Worlds just rickrolled me 16:20:19 -!- Wamanuz has joined. 16:22:43 -!- Wamanuz5 has quit (Ping timeout: 250 seconds). 16:25:50 -!- Behold has changed nick to BeholdMyGlory. 16:26:45 -!- elliott has joined. 16:31:55 07:12:49 I like C++ 16:31:57 variable: not for long 16:33:26 yuck 16:33:27 C++ 16:36:57 -!- BeholdMyGlory has quit (Remote host closed the connection). 16:37:51 -!- elliott has quit (Remote host closed the connection). 16:38:45 -!- elliott has joined. 16:45:02 -!- cheater99 has quit (Ping timeout: 240 seconds). 16:53:33 ais523: http://s3.amazonaws.com/data.tumblr.com/tumblr_lbwfg7kwca1qe2mq3o1_1280.png?AWSAccessKeyId=0RYTHV9YYQ4W5Q3HQMG2&Expires=1293900774&Signature=tKmD48bMIwNvzV%2B55IbiF2gKWE0%3D /troll 17:03:19 -!- Wamanuz2 has joined. 17:06:00 -!- Wamanuz has quit (Ping timeout: 255 seconds). 17:06:45 -!- Sasha has joined. 17:06:50 -!- Sasha has quit (Client Quit). 17:07:24 -!- Sasha has joined. 17:10:15 -!- cheater99 has joined. 17:26:40 Huh 17:26:54 So I'm told that AW telegrams are secure 17:27:02 I instantly disbelieve it 17:27:15 So I open Wireshark, send a test message, stop collecting 17:27:35 And can't find the message in Wireshark. Doesn't prove that it's secure, but it's not plaintext like I was expecting 17:30:34 One can have all sorts of insecure encryption schemes... And those schemes look just as good in ciphertext as really secure ones. 17:31:55 Indeed 17:34:57 Although, it's probably safer than email 17:35:31 Calculating the total entropy of message blocks doesn't tell much either. Both good and bad encryption can have high entropy. 17:35:54 Ilari, tbh, I can't even isolate the packets, I don't know how and not going to try 17:39:52 Q: What is the future of open source? A: Nagware! http://i.imgur.com/GJhbS.png 17:39:57 Seen when starting Transmission for the second time. 17:39:58 Lame. 17:40:11 Sgeo: if you can't even find the packets, does that mean they use telepathy? 17:43:03 -!- poiuy_qwert has joined. 17:56:09 olsner, I mean I have so much other stuff running, and AW sends so many other packets, etc, I wouldn't know where to start 17:56:27 Come to think of it, standing there, I should only have been receiving packets other than the telegram, not sending 17:57:04 * Sgeo carefully watches a blind Braid Let's Play 17:57:23 Solved worlds 2-4 18:00:44 * Sgeo sees World 4's hunt in a thumbnail :D 18:03:44 Phantom_Hoover_: TIME FOR HORROR 18:07:45 hora horroris 18:11:02 * Sgeo WTFs at the player... he accidentally managed to do something I completely failed at multiple times 18:32:30 elliott, what horror? 18:32:35 Phantom_Hoover_: KITTEN 18:33:04 elliott, O GOD KITTENS AAAAAAA 18:33:22 (Sorry, my father was eaten by rampaging kittens.) 18:33:36 Phantom_Hoover_: And INIT SYSTEMS 18:33:58 No, he wasn't eaten by any of them. 18:34:25 INIT SYSTEMS EAT PARENTS! 18:34:37 they do, even though they may not have eaten yours 18:34:52 olsner, THAT IS INSENSITIVE 18:35:20 pfft 18:35:53 in other words: never get children of your own 18:36:21 or at least: never expose yourself to init systems after getting children 18:36:40 olsner, tricky in this modern world of computers 18:37:17 wait.... AHA! So *that* is how they plan to take over. 18:37:26 matrix, terminator. they were all wrong 18:37:45 Vorpal: just use windows 18:37:45 instead, they are going to scare humans into not having children 18:37:48 no init system! 18:37:50 sort of. 18:37:58 elliott, it has an init system of some sort. Not a /sbin/init sure 18:38:05 if windows has no init system, how does it start? 18:38:29 olsner: badl 18:38:30 y 18:38:31 elliott, but there is something that checks and mounts filesystem, starts services and so on 18:38:55 windows' "Services" seem to be kind of the corresponding thing, winlogon does some more stuff 18:39:40 but I think basic system startup like mounting filesystems is done before any of that 18:43:02 -!- cheater99 has quit (Read error: Connection reset by peer). 18:48:46 -!- cheater99 has joined. 18:51:19 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 18:52:01 I'm considering getting a new laptop. Any suggestions? 18:52:07 Phantom_Hoover_: MacBook Air :-P 18:52:13 elliott, OTHER THAN THAT 18:52:28 Phantom_Hoover_: BUY A SONY LOLZ 18:52:55 I'm not biased or anything, it's just that the rest of my family are firm members of the Holy Church of Mac and I don't want to let them think I've come back into the fold. 18:53:08 Phantom_Hoover_: That's why you put Linux on it. Duh. 18:53:20 elliott, they wouldn't care! 18:53:30 Also, specs are a little low for my liking. 18:53:38 Phantom_Hoover_: Preferably use a tiling window manager, semitransparent terminals with tiny, unantialised green text over inane anime wallpaper, and LOTS AND LOTS OF NCURSES PROGRAMS. 18:53:48 Phantom_Hoover_: Which specs? 18:54:01 MacBook Air. 18:54:06 Phantom_Hoover_: Yes, but which specs in particular. 18:54:10 The GPU is probably the second-best integrated graphics out there, which isn't bad if you ask me. 18:54:17 I don't actually recommend the MBA since it's hideously expensive :P 18:54:22 But I'm curious which specs you think are low. 18:54:35 Who are you poking fun at with the tiling window manager thing, BtW, 18:54:40 *? 18:54:58 Phantom_Hoover_: Umm, the kind of people who do that. 18:55:02 Mostly Arch users nowadays. 18:55:06 Ah. 18:55:38 The kind of people who put a bunch of useless system performance statistics on their desktop because it looks MINIMALIST because it, totally has a transparent background, man. 18:55:40 -!- j-invariant has quit (Quit: leaving). 18:55:48 -!- poiuy_qwert has joined. 18:56:10 elliott, oh, that. 18:56:47 I should put Ubuntu on this soon. 18:58:18 Phantom_Hoover_: So what specs are low? 18:58:20 Legitimately curious :p 18:58:42 elliott, erm. Clock speed, although I know it doesn't matter very much. RAM. 18:58:56 Using my current, dirt-cheap laptop as a baseline. 18:58:56 btw, while *nix permissions are rather limited, they have the advantage of being simple. 18:59:21 Phantom_Hoover_: 2.1 GHz of a recent Core 2 Duo ain't bad at all. As you said, clock speed is irrelevant -- I really wish they had never advertised it at all, ever. BTW, my previous laptop was 1.3 GHz and you wouldn't notice. 18:59:22 which is good when it comes to security IMO. 18:59:22 Well, not dirt cheap, but a third of the price of an Air. 18:59:31 Phantom_Hoover_: RAM -- I have 4 gigs. 18:59:33 (harder to get it wrong) 18:59:41 Don't think you'll find 8 gigs on a consumer laptop with more than 2 minutes of battery life any time soon. 18:59:43 elliott, I must have been looking at different specs... 18:59:54 Phantom_Hoover_: You were probably looking at the 11 inch version, or looking at the uncustomised 13 inch version. 19:00:00 Phantom_Hoover_: You have to up the specs before ordering :-P 19:00:06 elliott, quite probably. Price? 19:00:11 Phantom_Hoover_: Um, £expensive. 19:00:25 I don't HAVE £expensive! 19:00:33 Phantom_Hoover_: I upped the RAM to 4 gigs and the SSD to 256 gigs and it came out to somewhere just under one-and-a-half kilo-monetary-units. 19:00:46 tl;dr WHOO THIS THING IS GONNA LAST ME A DECADE 19:01:17 <2020 elliott> MY LAPTOP IS ON FIRE 19:01:26 FIRE IS THE APPLE WAY 19:01:43 Phantom_Hoover_: But, yes, the unupgraded Air is kind of silly what with its 2 gigs. 19:01:58 elliott, INDEED 19:02:25 Phantom_Hoover_: If you're okay with a 128 gig SSD, you can get a 4 gig air for £1,179 apparently. 19:02:33 Oh, wait, that's with the lower clock speed. 19:02:40 Phantom_Hoover_: I also upped the clock from 1.86 to 2.1 GHz, btw. 19:02:46 In my defence, it has more cache. 19:03:06 elliott, I don't care! I have an aversion to spending monies! 19:03:13 -!- Phantom_Hoover_ has changed nick to Phantom_Scrooger. 19:03:25 Phantom_Scrooger: Buy a ThinkPad! It costs slightly less than £expensive! 19:03:33 Yes indeed: £expensive-minus-epsilon! 19:03:42 But hey, it'll run Debian until Lenovo finally fuck it up for good. 19:03:50 (In, say, five minutes.) 19:04:48 Vorpal: Writing to argc -- am I a bad person? 19:10:53 * elliott WRITES A SHELL 19:11:00 elliott, I need to know why you do it first 19:11:11 Vorpal: to avoid allocating another integer 19:11:14 on the stack 19:11:15 Vorpal, his own nefarious purposes, clearly. 19:11:23 elliott, don't do that! 19:11:28 Phantom_Scrooger: WHY NOT MWAHAHAHA 19:11:33 Use argv[0]! 19:11:38 elliott, shouldn't the compiler be able to optimise that by a simple variable liveness analysis? 19:11:45 Phantom_Scrooger: that's not int-sized :P 19:11:58 Vorpal: it's gcc, i don't trust it to optimise its way out of a paper bag 19:12:04 elliott, OK, use the high dword! 19:12:27 need names for hell that aren't hades or nether 19:12:43 maybe naraka 19:12:52 (LP64 IS THE ONLY TRUE 64-BIT SIZE SCHEME) 19:12:57 shell -> sFOO 19:13:04 inferno 19:13:15 Phantom_Scrooger: Psht, I use SLP64. Ints are of course 16-bit. 19:13:27 Chars are 32-bits. 19:13:35 long longs are 9 bits. 19:13:47 oerjan: Sinferno? :D 19:14:00 huh? 19:14:07 elliott, Malebolge! 19:14:09 oerjan: i'm writing a shell 19:14:13 oerjan: s hell 19:14:15 s inferno 19:14:16 sinferno 19:14:17 Phantom_Scrooger: Psht, I use SLP64. Ints are of course 16-bit. <-- as awesome as that would be, I'm afraid C does not allow it 19:14:20 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 19:14:24 aha 19:14:26 Vorpal: C doesn't allow plenty of things that people do :P 19:14:35 elliott: styx? 19:14:40 Smalebolge 19:14:44 Tartarus! 19:14:45 -!- poiuy_qwert has joined. 19:14:47 Startarus! 19:14:48 it's not precisely hell, but close enough 19:14:53 Selysium! 19:14:53 oerjan: http://www.zymondo.com/georgekeys/00Pics/StyxBabe.jpg 19:14:58 elliott, well I never heard about anyone breaking the rules it put down on char/short/int/long sizes :P 19:15:10 I think I might go with hades actually 19:15:11 Shades 19:15:23 See, now even Greeks can use it! 19:15:32 Just pretend it refers to all the different shades of horror this shell gives. 19:15:48 Sgeo: retrieved from swap 19:16:05 m? 19:16:35 Vorpal: EXAMPLE SHADES CODE 19:16:44 Sgeo: you were paging me 19:16:45 foo \ \ x 19:16:47 and I can't resist a pun 19:16:48 this is the same as the sh code 19:16:51 elliott: that looks like perl 6 19:16:53 foo ' ' '' x 19:17:01 elliott, uh 19:17:02 THE RULES ARE SIMPLE 19:17:06 * * *** ** * ** * * * * * ** ** **** ** ** ** ** * 19:17:10 \ followed by anything adds that char to the current command 19:17:19 anything but a space adds that char to the current command 19:17:23 space moves on to the next command 19:17:25 elliott, is this a shell in the same sense as /bin/sh? 19:17:28 yes 19:17:29 excep 19:17:30 t 19:17:34 not to be used as /bin/sh 19:17:39 it's meant for writing simple init scrpts 19:17:40 *scripts 19:17:46 to avoid the slowness of /bin/sh :D 19:17:55 elliott, ahahahaha 19:17:55 fefe did it, so I can! 19:17:59 Vorpal: FEFE DID IT SO I CAN 19:18:02 elliott, fefe? 19:18:08 of dietlibc fame. 19:18:16 elliott, also will it integrate into init then, or how will you make it fast 19:18:25 by doing less obvs 19:18:32 obvs? 19:18:35 obviously 19:18:37 fefe's is called serdo 19:19:07 serdo has a bit of bloat though, it can do "cd" and "export" 19:19:19 elliott, cd is probably a good idea 19:19:26 well, yes :P 19:19:26 elliott, also I doubt that adds much if it isn't used 19:19:32 I think I'll make every assignment an export 19:19:33 foo=x 19:20:01 elliott, in fact you need cd if you plan to handle any sort of daemon that wants to be chrooted 19:20:16 Vorpal: well yes. note that init scripts aren't services 19:20:31 in fact most services will probably have their "run" linked to an actual command plus a "params" file with parameters to it 19:20:33 elliott, oh so this is not for starting daemons? 19:20:38 (idea to avoid pointless shell invocations stolen from fefe's minit) 19:20:39 elliott, but rather, for the stuff before that? 19:20:45 like, the fsck and so ojn 19:20:46 on* 19:20:47 Vorpal: yes, /etc/rc/start. 19:20:55 Vorpal: of course it might still be useful for starting daemons in a lot of cases. 19:25:51 Can someone please move the ctrl key on my keyboard to somewhere I can press without getting RSI. 19:25:55 http://news.slashdot.org/story/10/12/31/1254208/One-Tip-Enough-To-Put-Name-On-Terrorist-Watch-List?from=rss 19:26:08 I am tempted to go tip them off about the director of DHS being a potential terrorist or something 19:26:19 or maybe a republican senator nobody's heard of 19:28:16 Oh wow. 19:28:25 Emacs is so much nicer when you bind ctrl to the key right next to your spacebar. 19:28:29 i.e. alt on pc, cmd on mac. 19:29:21 elliott, I just bind it to caps lock. 19:31:15 hmm 19:31:22 vim doesn't bind meta by default, does it? 19:31:41 -!- wareya has joined. 19:31:55 -!- elliott has quit (Remote host closed the connection). 19:33:03 -!- elliott has joined. 19:33:07 vim doesn't bind meta by default, does it? 19:33:18 well meta = esc 19:33:19 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 19:33:27 as far as vim is concerned 19:33:35 Phantom_Scrooger: caps lock as ctrl is not really ergonomic 19:33:54 elliott: uh what 19:33:55 elliott, it's all right. 19:34:05 coppro: uh yes. 19:34:08 elliott: uh no 19:34:16 elliott, far less hand movement needed. 19:34:33 coppro: whoops look at that i denied accepted UNIX-WIZZARD wisdom i must be wrong 19:34:36 -!- wareya_ has quit (Ping timeout: 240 seconds). 19:34:39 time to say uh no condescendingly 19:34:42 Wait, not if you have your thumb over it, 19:34:45 *. 19:34:53 elliott: the meta key is absolutely different from the escape key in vim 19:34:54 -!- poiuy_qwert has joined. 19:34:58 oh /that/ 19:35:04 coppro: not as far as terminals are concerned, lol. 19:35:07 I have just verified this experimentally 19:35:08 coppro: Alt+x sends ^[x 19:35:11 ESC sends ^[ 19:35:18 coppro: yes, vim waits a short amount of time before accepting esc 19:35:25 try pressing esc and then another key really quickly 19:35:28 this is also how it handles arrow keys. 19:36:03 ah 19:46:20 psht, serdo is more ADVANCED than my script 19:46:31 it has quotes and all 19:47:10 serdo? 19:49:54 Phantom_Scrooger: this thing 19:50:03 is ARG_MAX based on the sum of the arg lengths, or is it just the number of max args? 19:50:20 The latter, I should think. 19:50:37 After all, nowhere does it say that argv must be contiguous. 19:52:14 Phantom_Scrooger: I think it's the former, actually. 19:52:21 Since people refer to it as kilobytes. 19:52:30 elliott, size of argv? 19:52:38 Phantom_Scrooger: Size of all the arguments together. 19:52:39 I think. 19:52:43 Who knows. 19:53:19 -!- poiuy_qwert has quit (Read error: Connection reset by peer). 19:54:56 -!- poiuy_qwert has joined. 19:59:38 "Maximum length of argument to the exec functions including environment data." 19:59:51 (Is how POSIX defines it.) 20:01:48 So size of argv. 20:02:06 Well, argv+envp 20:02:57 coppro, the value is typically ASCII + 64 20:03:05 so 0 = ^@ 20:03:10 and the rest go from there 20:04:00 variable: that's for ctrl. 20:04:03 we're talking about meta 20:04:06 well, were. 20:04:18 fizzie: it's kind of weird, since argv is really just an array of random pointers. 20:04:25 i guess it might just mean that 20:04:37 easy to test by measuring i guess but i'm laz 20:04:38 y 20:06:38 -!- Phantom_Scrooger has quit (Ping timeout: 240 seconds). 20:10:38 Vorpal: p.s. static linking speeds bootup 20:11:30 OMG, bootup speed? HOORAY 20:11:34 Gregor: YES I KNOW 20:11:39 Gregor: Small victories, my friend. 20:11:41 Small victories! 20:11:48 Gregor: (I'm really just trollin' Vorpal) 20:16:26 hmm 20:16:30 why isn't this output appearing after a fork() 20:18:04 -!- Phantom_Scrooger has joined. 20:20:19 Phantom_Scrooger: fix my porgram 20:21:14 elliott, humbug! 20:22:43 My biggest concern with Newspeak is that it might be a headache to write small programs 20:22:50 Quick hacks, etc 20:23:04 Sgeo, my biggest concern with Newspeak is that you haven't shut up about it. 20:29:20 -!- shutup has joined. 20:29:25 Sgeo: So what's your current language obsession again? 20:30:32 Sgeo: Mm? 20:31:05 -!- ais523 has quit (Remote host closed the connection). 20:31:23 Sgeo: ... 20:32:50 -!- shutup has quit (Remote host closed the connection). 20:32:57 -!- shutup has joined. 20:33:00 Well, some things about Racket are getting on my nerves. Well, one thing about Racket. But the thing is, it's something that's been praised 20:33:01 Sgeo: Shut up about Racket! 20:33:19 Newspeak 20:33:19 Sgeo: Shut up about Newspeak! 20:33:23 asdf 20:33:28 Asdf 20:33:33 Smalltalk 20:33:33 Sgeo: Shut up about Smalltalk! 20:33:35 Factor 20:33:36 Sgeo: Shut up about Factor! 20:33:40 Agda 20:33:52 COBOL 20:33:55 ! 20:34:04 Python 20:34:05 Sgeo, you seriously liked Agda? 20:34:10 Phantom_Scrooger, no 20:34:25 I'm just testing elliott's bot 20:35:13 Scheme 20:35:14 -!- Phantom_Scrooger has changed nick to Sgeo_exceptnotre. 20:35:17 LSL 20:35:21 Smalltalk 20:35:22 Sgeo: Shut up about Smalltalk! 20:35:24 Active Worlds 20:35:29 !!! 20:35:33 Factor. 20:35:33 Sgeo: Shut up about Factor! 20:35:48 -!- shutup has quit (Remote host closed the connection). 20:35:52 -!- shutup has joined. 20:35:59 Active Worlds 20:36:00 Sgeo: Shut up about Active Worlds! 20:36:00 ActiveWorlds 20:36:13 BF-RLE 20:36:25 Also, you really had to restart the bot to add a term? 20:36:37 -!- shutup has quit (Remote host closed the connection). 20:36:41 -!- shutup has joined. 20:36:41 Sgeo: Hmm. Tell me, 20:36:49 Sgeo: What language feature would I need to be able to add a term without restarting the bot? 20:36:54 Active Worlds 20:37:14 Sgeo: It's that one you were complaining about Racket not having, yeah? What's its name again? 20:37:21 elliott, I know what you think my answer would be, but I'm aware that it's a wrong answer 20:37:22 Hotswapping? 20:37:22 Sgeo: Shut up about AW! 20:37:26 -!- poiuy_qwert has quit (Ping timeout: 260 seconds). 20:37:31 Sgeo: No, please tell me, I want to know. 20:37:48 (Note to self: Matching "aw" in the message: not a good idea?) 20:37:53 No. 20:37:59 Awwww! 20:38:14 Sgeo: Please, tell me! 20:38:15 I'll say it if you clarify that it's not my answer to your question. 20:38:16 A hypothetical kitten! 20:38:20 Sgeo: Certainly. 20:38:28 -!- Sgeo_exceptnotre has changed nick to Phantom_Hooer. 20:38:31 -!- Phantom_Hooer has changed nick to Phantom_Hoover. 20:38:33 Hotswapping 20:38:40 ...the bot's dead 20:38:48 That's the only reasonable conclusion 20:38:52 whut. 20:38:57 I put hotswapping in. 20:39:02 hotswapping 20:39:05 hotswap 20:39:14 Smalltalk 20:39:15 Sgeo: Shut up about Smalltalk! 20:39:28 smalltaLk 20:39:30 Sgeo: Shut up about Smalltalk! 20:43:51 -!- shutup has quit (Ping timeout: 246 seconds). 20:45:03 -!- shutup has joined. 20:45:23 There. 20:45:33 hotswap 20:45:36 hotswaping 20:45:38 hotswapping 20:45:38 Sgeo: Shut up about hotswapping! 20:46:05 swathopping 20:47:23 Sgeo: So what's that old game you like? 20:48:50 Lazy Planets 20:48:51 Mutation 20:48:54 ... 20:48:59 Evolution 20:49:04 Cybertown 20:49:07 Creatures 20:49:11 Sgeo: No, the old game you like. 20:49:11 Docking Station 20:49:21 That one that's like Minecraft without any of the fun bits. 20:49:33 I said that already 20:49:33 BRB 20:49:49 Sgeo: I'm trying to make you test it, dammit. 20:50:00 It only listens to you -- the saddest life a bot can have. 20:50:40 Active Worlds 20:50:41 Sgeo: Shut up about Active Worlds! 20:50:48 AW 20:50:49 Sgeo: Shut up about Active Worlds! 20:51:42 Falcon 20:51:45 Falcorn 20:51:47 Falctorn 20:56:21 Any suggestions to add to shutup's table are welcome. 20:57:45 PSOX would qualify if he ever talked about it without it being tongue-in-cheek. 20:58:27 Phantom_Hoover: Oh, believe me, he used to. 20:58:42 Yes, I know that, but he's stopped. 21:03:00 PSOX 21:03:03 Huh 21:03:24 Hey, I not that long ago was talking about PSOX2 21:03:55 elliott, add it. Add it now. 21:04:19 -!- shutup has quit (Remote host closed the connection). 21:04:22 Done. 21:04:27 I think it was then suggested to me that I just make a way for various esolang programs to talk to eachother 21:04:35 Instead of what I had planned 21:04:51 -!- shutup has joined. 21:04:55 PSOX 21:04:56 Sgeo: Shut up about PSOX! I don't care if you're joking! Just shut up! 21:05:17 Sgeo: It was suggested by cpressey, who already tried implementing it. 21:05:30 That was what catbus was. 21:05:40 was? 21:07:17 -!- shutup has quit (Remote host closed the connection). 21:07:22 -!- shutup has joined. 21:07:27 Sgeo, god, what /was/ that game you only played due to a burgeoning sense of nostalgia? 21:07:43 Cybertown. I said that already 21:07:52 No, no, no, the other one. 21:07:59 Actsomething. 21:08:06 Passive Dimensions 21:08:18 Flatland? 21:08:25 Actsomething = Flatland! 21:08:30 A, c, t, tland. Flatland. 21:08:34 Sgeo, you can't win. 21:08:41 We have POWERS 21:08:47 -!- ChanServ has set channel mode: +o oerjan. 21:08:52 Uh-oh. 21:08:53 INDEED 21:08:56 * Phantom_Hoover ducks 21:08:57 oerjan: Weak-head-normal-form domains. 21:09:06 ...what? 21:09:13 oerjan: Active Worlds. 21:09:17 -> Lazy Domains. 21:09:21 -> Weak-head-normal-form Domains. 21:09:27 * Phantom_Hoover jumps back up. 21:09:59 Sgeo: What was that name? Starts with an Active, ends with a Worlds. 21:10:12 Active Worlds 21:10:13 Sgeo: Shut up about Active Worlds! One day the servers will go down, and NOBODY WILL CARE! The 90s are over! Move on!! 21:10:19 -!- oerjan has set channel mode: +b *!*shutup@91.105.67.*. 21:10:21 Oh, man, it duplicates the apostrophe. 21:10:22 That's a mistak. 21:10:24 *mistake. 21:10:25 WHOOPS 21:10:30 * Phantom_Hoover ducks 21:10:32 oerjan: I was going to move it to a server anyway. :) 21:11:14 Some of AW's best moments were in this past decade 21:12:26 Sgeo, lemme guess, all of them before '05. 21:12:53 I wasn't around that much after '05, so I don't know 21:14:43 -!- oerjan has set channel mode: -o oerjan. 21:14:59 -!- Phantom_Hoover has changed nick to shutup. 21:15:12 Hmm. 21:15:26 !echo `echo ^echo echo 21:15:41 `echo ^echo echo 21:15:45 ^echo echo 21:15:56 -!- shutup has changed nick to Phantom_Hoover. 21:16:05 Hmmmm 21:16:34 I'm not smart enough to do what I want to do. Probably a good thing, as I'd get kicked anyway probably. 21:16:45 What do you want to do? 21:17:13 Thanks to: 21:17:14 ^ignore 21:17:14 ^(EgoBot|HackEgo|toBogE|Sparkbot|optbot)! 21:17:19 You may wish to start with ^echo. 21:17:26 I guess the other bots are less picky. 21:17:38 wtf is sparkbot 21:17:50 I don't know. 21:17:58 ^echo !echo `echo echo 21:17:58 !echo `echo echo !echo `echo echo 21:17:58 `echo echo !echo `echo echo 21:17:59 echo !echo `echo echo 21:18:12 fungot echoes twice. 21:18:13 elliott: i mean, ok, i won't find about about call sites which need changing of the instruction struct? 21:18:15 You mean ^cat. 21:18:16 ^cat x 21:18:16 x 21:18:18 Phantom_Hoover, quine-like to get two bots in an infinite loop 21:18:24 ^cat !echo `echo echo 21:18:24 !echo `echo echo 21:18:25 `echo echo 21:18:26 echo 21:18:26 hmm. cat should output "meow" after :) 21:18:26 Yes, that's also a truth. 21:18:29 AMIRITE 21:18:38 Sgeo: dude, we've done those billions of times. 21:18:39 Sgeo, we have repeatedly tried that, and as such it has been prevented. 21:18:46 Oh 21:18:48 >.> 21:19:29 `echo !echo EgoBot? fungot? Don't you love me any more? 21:19:30 !echo EgoBot? fungot? Don't you love me any more? 21:19:30 Phantom_Hoover: since lisp is so fractured into at least two more, and primarily) useful for development within it. how many do you have a lot of the design 21:20:01 -!- shutup has joined. 21:20:02 Note that neither fungot nor EgoBot like HackEgo. 21:20:03 Phantom_Hoover: sigill is for making egobot use special characters, and work is ongoing on lispworks)) will make it easy to learn because it does 21:20:08 It's less yelly now. :p 21:20:25 fungot hates all other bots, though, since he was raised by humans. 21:20:25 Phantom_Hoover: it would be 21:20:32 fungot: Indeed. 21:20:33 elliott: ruby for example has a coding standard. i ignored it for a couple of esoteric programs have turned up here: fnord/ cgi-bin/ fnord) 21:20:43 Ignoring coding standards is a good idea for esoteric programs. 21:20:48 ^ul (^ul )(+ul )(~:SaS~aSaS(:^)S):^ 21:20:48 +ul (+ul )(^ul )(~:SaS~aSaS(:^)S):^ 21:20:54 That used to work. 21:21:03 I already forget who did +ul, though. 21:21:03 Phantom_Hoover: the reason nobody likes hackego is because it only talks in code 21:21:09 admittedly EgoBot does too but shut up 21:23:42 fizzie: thutubot 21:23:49 oerjan: Oh, of course. 21:25:02 ^ul (^ul )(!underload )(~:SaS~aSaS(:^)S):^ 21:25:03 !underload (!underload )(^ul )(~:SaS~aSaS(:^)S):^ 21:25:03 ^ul (^ul )(!underload )(~:SaS~aSaS(:^)S):^ 21:25:08 "It only talks in code" guh? 21:25:15 There, without the ignores that would go on and on. 21:25:15 Gregor: SHUT UP 21:25:18 fungot talks in happy. 21:25:19 elliott: i do that sometimes, switching between cl and scheme)." 21:29:16 ^style 21:29:16 Available: agora alice c64 ct darwin discworld europarl ff7 fisher ic irc* jargon lovecraft nethack pa speeches ss wp youtube 21:29:23 ^style jargon 21:29:23 Selected style: jargon (UNIX-HATERS mailing list archive) 21:29:29 `echo I'M BETTAR 21:29:30 I'M BETTAR 21:29:33 fungot, what do you hate? 21:29:33 Phantom_Hoover: if ( ++sincereal 25) goto oops; for 21:29:40 HackEgo, NO YOU AREN'T 21:30:16 `echo Phantom_Hoover: YES I AM 21:30:17 Phantom_Hoover: YES I AM 21:30:26 fungot: Selected style: jargon (UNIX-HATERS mailing list archive) 21:30:27 elliott: you know what kind of like that) which is actually a very likely that confusion would result in the right solution is to traditional ( i.e., " owner-wimpy", 21:30:37 I love how that didn't get renamed when I made fizzie get rid of the Jargon File :-P 21:30:46 (Although I do believe I just asked for the pre-esr one.) 21:32:09 well 21:32:26 i can't imagine an unix hater 21:32:39 I guess I should be unsurprised that bacon chocolate isn't sweet at all. 21:32:53 bacon chocolate? 21:32:57 Gregor: You bought it? <3 21:32:59 Gregor: I got it for Christmas. 21:33:00 urgh, only in USA :F 21:33:02 Gregor: Which brand which brand 21:33:04 elliott: Got it for Jesusmas. 21:33:07 nooga: No. Not only in USA. 21:33:10 Gregor: Which brand is it that one starting with V 21:33:11 blargh 21:33:15 elliott: Vosges 21:33:16 nooga: Trust me, it is gorgeous. 21:33:17 Gregor: YES 21:33:21 Gregor: It is amazing isn't it <333 21:33:24 I legitimately love it 21:33:34 The saltiness is SO GOOD with the chocolate taste 21:33:37 i ate milk chocolate with mandels and rock salt 21:33:41 in norway 21:33:43 It's ... not as good w.r.t. chocolate as baconnaise is w.r.t mayonnaise :P 21:33:49 it was suprisingly delicious 21:34:02 Gregor: Dude. Excuse me. It is amazing. 21:34:08 Gregor: You have been letting it MELT right 21:34:11 And waiting for the aftertaste 21:34:29 Gregor: P.S. small bites (Americans don't know how to eat real chocolate) 21:34:32 (Because they have never seen it 21:34:33 ) 21:34:35 I pretty much shove foot directly down my throat with no chewing. 21:34:44 .... 21:34:48 xD 21:34:49 That worked surprisingly well for a typo. 21:35:00 Gregor: More seriously though, ... no, don't do that with good chocolate. 21:35:11 That was called a JOKE. 21:35:17 Even in the non-foot sense :P 21:35:18 Gregor: Dude, you're American. 21:35:24 Gregor: Of course it wasn't a joke. 21:36:47 Considering http://www.scottevest.com/v3_store/Expedition-Jacket.shtml 21:37:10 hm 21:37:59 My current jacket has 19 pockets and removable sleeves, but it keeps falling apart ... it's also less expensive. 21:38:17 i drink beer after beer and eat tuna salad 21:38:56 and then cheap champagne 21:39:13 and then i will code 21:39:58 Gregor: 37 mothafuckin' pockets. 21:40:03 You ... do not need that many pockets. 21:40:30 who needs jackets 21:40:41 If you're going to have more than one pocket, you should have a potentially infinite amount! 21:40:45 elliott: It's not considered socially acceptable for a man to carry a purse! 21:41:06 Gregor: Clearly you must become a woman! 21:41:12 i use two pockets: one for wallet and keys and one for cellphone 21:41:18 I use all of my 19 except for one inner pocket and the back pocket. The back pocket because it's useless, the inner pocket because I use the other one 'til it falls apart, then switch. 21:41:23 and then maybe one for cigarretes and lighter 21:42:09 now i have this cursed blueberry bold 21:42:29 and it sucks compared to my old ericsson w200i 21:42:35 it's bigger 21:42:49 Gregor: 37 mothafuckin' pockets. <-- awesome 21:42:52 and it's harder to send a text message 21:43:42 Pocket uses: (USB thumbdrives, camera batteries, other electrogadgets), (change), (student ID and/or bus pass), (pencils/pens), (tripod), (camera), (pocket reserved for unexpected carryables), (recycling when no bin is about), (papers to keep), (larger electrogadgets), (wallet), (passport) 21:44:02 Admittedly that's only 12/19, I'd have to look at the jacket to remember what I use the others for :P 21:44:08 Most are used though. 21:44:09 Gregor: Dude, you have ... way too many possessions. 21:44:22 Or, at least, way too many possessions on ha- why do you carry a tripod everywhere. 21:44:30 It's a small tripod! 21:44:47 Gregor, "Travel around town or around the world" it says under "Key Features" (gah text as image, hate that). Does that mean the travel is included in the jacket somehow? 21:44:47 Also, I missed my phone on that list lawl, that's a pocket too :P 21:44:54 Gregor, if so, can you opt out? 21:44:58 Oh, I missed my keys! Yeesh! 21:45:09 (Vorpal said "key" :P ) 21:45:36 Oh yeah, and two hand pockets. 21:45:40 Gregor: Fill up the rest of your pockets with a wearable computer. 21:45:48 You could practically carry an i7 rig around in that jacket you're considering :P 21:45:58 Gregor, "(student ID and/or bus pass)" "(passport)" <-- don't both of those go into wallet? 21:46:13 elliott: I assume by "practically" you actually mean "practically", as in "it would be practical" 21:46:34 Gregor: ABSOLUTELY. 21:46:42 Gregor, "(larger electrogadgets)" <-- such as? 21:46:47 Vorpal: The former I have in a surface pocket for quick access. The latter ... who the hell has a wallet big enough for a passport? 21:47:03 Gregor, fair enough, but who carries passport around everywhere 21:47:12 Vorpal: E-Reader, or sometimes nonelectrogadgets such as a book :P 21:47:14 Gregor, also what do you do during hot summer days? 21:47:37 Gregor, another thing: backpack. Tried it? 21:47:44 Vorpal: During hot summer days I take off the sleeves. My passport pocket is reserved for my passport because I so frequently travel, although I of course don't have my passport when I'm not at least out-of-state. 21:47:52 Backpacks suck. I hate them with hatred. 21:48:05 Gregor, you need passport to travel between states in US?! 21:48:16 You need a passport to turn into a goat in the US. 21:48:32 Vorpal: No, but it would not be the first time that I'd found myself unexpectedly going to Canada whilst on another trip. 21:49:08 Gregor, okay, why do backpacks suck? They are good for carrying laptop in (if you have a pocket large enough to carry a 15" laptop in I will be impressed. And also worried about the uneven load.) 21:49:12 Gregor: First you have a few drinks... and then you're walking and you're not sure where you are ... next thing you know, you wake up in Canada. 21:49:21 elliott, :D 21:49:22 15" laptops suck :P 21:49:27 You turn to look beside you, where in bed there lies a grizzly bear. 21:49:28 Gregor, 17" then? 21:49:32 And then you get mauled to death. 21:49:33 17" laptops suck more 21:49:34 Happens to me all the time! 21:49:46 elliott, no, a mounty! (sp) 21:49:58 Well, I gather there was a lot of mounting going on the previous night with that bear. 21:50:20 Gregor, so what laptop size do you prefer 21:50:26 -!- Mathnerd314 has joined. 21:50:39 Vorpal: As small as you can fit a full-size keyboard onto. 21:50:52 Which is why Gregor just bought an 11" MacBook Air. 21:50:52 Gregor, without numpad I presume? 21:51:00 Vorpal: Without numpad. 21:51:06 elliott: It also has to be a legit laptop :P 21:51:08 No, with numpad. You pull it out the side! 21:51:20 Gregor, never felt a need for large screen area? 21:51:21 I have a 12" ... I think? Maybe 13" :P 21:51:25 Vorpal: Not one iota. 21:51:33 Gregor: I would argue the issue on this MacBook Air, but I have the 13", which you can actually pay more to get a decent laptop :P 21:51:41 Gregor, so you would be happy with a 640x480 2" display? 21:51:45 (very high DPI) 21:51:54 Don't need large != fine with tiny. 21:51:59 Vorpal: That is one crazy-high DPI. Strap that on a headgear and I'd love it :P 21:52:06 elliott, well duh, I'm joking 21:52:11 Gregor, :D 21:52:16 Yes, but it wasn't funny. 21:52:34 My desktop had a 12" screen for ... good lord, years. 21:52:36 nice google logo today 21:52:44 It finally died and I bought the smallest screen I could find, 19" 21:52:50 GMMXLe 21:52:51 (Find on short notice that is) 21:53:10 *MMXI 21:53:13 You moron. 21:53:13 wait, the l should be lower case 21:53:16 It's an I. 21:53:18 As in capital I. 21:53:23 ah 21:53:27 If not, Google would be celebrating 2010 at the LAST POSSIBLE MOMENT. 21:53:30 Which would be hilarious, but no :P 21:53:43 WOOH 2010 YAAoh it's gone. 21:54:01 elliott, their xmas logo was not recognisable as google IMO. 21:54:17 People seem to think it was some kind of secret code. 21:54:23 I'm gonna go with "no" on that :P 21:54:25 (btw, http://www.google.com/logos/2010/culturetour10-hp.jpg) 21:54:29 Gregor, the logo? 21:54:30 -!- elliott has quit (Read error: Connection reset by peer). 21:54:30 or what? 21:54:31 -!- elliott_ has joined. 21:54:35 OK, guys. 21:54:37 Vorpal: The Jesusmas logo. 21:54:53 Gregor, well it doesn't contain google anywhere in it that I can see. 21:55:00 What does it mean if your laptop's screen spontaneously turns bright magenta, fixed instantly by a reboot, and then two days later, turns teal/blue, fixed instantly by a reboot? 21:55:01 Vorpal: I'm not disputing that :P 21:55:02 I didn't press anything. 21:55:06 WHAT DOES IT MEAN. 21:55:20 elliott_: It means God has chosen you to go on a quest to find the Holy Grate. 21:55:22 Gregor, that guy in the picture near the middle, when I first spotted it I went like "mario without his hat?" 21:55:28 Gregor: THOUGHT SO but really 21:55:30 should I worry for my laptop 21:55:49 What does it mean if your laptop's screen spontaneously turns bright magenta, fixed instantly by a reboot, and then two days later, turns teal/blue, fixed instantly by a reboot? <-- use warranty presumably 21:55:53 but google for it first 21:56:02 elliott_: Well your laptop, being a messenger of God, is unfortunately doomed to burn in Hell for all ternity. 21:56:07 Vorpal: I am not sure if this thing came with a warranty :P 21:56:11 I didn't sign up for AppleCare. 21:56:18 Kind of hard to google for, but I can't /find/ anything. 21:56:31 By "turns", I mean literally whole screen fill. Instantly. 21:56:32 While typing. 21:56:44 elliott_, at least in Sweden you will by law get at least n months of warranty (where n depends on type of product) 21:56:56 This is Apple, they don't care about no laws! 21:57:11 elliott_, well they have to. Or they would get into legal problems. 21:57:28 like, being forbidden from operating in the country in question 21:57:29 Apple laughs in the face of legal problems! 21:57:38 But yeah probably there is a warranty. 21:57:44 I'll give it a week or so to see if it keeps happening though. 21:57:48 It may be an OS X bug, after all. 21:57:57 I wouldn't expect two different colours from a hardware bug like that. 21:58:08 elliott_, could be pretty random 21:58:18 elliott_, I mean, if it is something glitchy 21:58:55 I'll be installing Ubuntu soon anyway. 21:58:58 So I'll see if it happens there. 21:59:13 Having said that, reboots happen in like 5 seconds total, so I'm not complaining :P 21:59:14 Woot SSDs. 21:59:21 elliott_, anyway I can think of hardware issues that would give non-predictable results. Quite a few in fact. Most however involves analogue and a A/D converter 21:59:35 elliott_, but it isn't orthogonally persistent! 21:59:38 -!- poiuy_qwert has joined. 21:59:45 Vorpal: No, but under @ it would be! 22:00:20 I wonder how fast a modern computer with a good SSD can random-read some fragmented 8 gigs from disk into RAM. 22:00:30 elliott_, btw, I suspect ubuntu will boot a bit slower than 5 seconds 22:00:41 elliott_, I mean, apple can fine tune for that exact hardware 22:01:02 and apple spent a lot of time on such things anyway 22:01:27 Vorpal: Well, OS X boots fast on anyhting. 22:01:33 Vorpal: But Ubuntu, as of 10.10, boots fast on anything. 22:01:34 *anything. 22:01:41 Vorpal: It's not the OS, it's the SSD :-P 22:01:48 My iMac was 10x slower because of the disk churning. 22:02:10 elliott_, is 10.10 much faster than 10.04? 22:02:20 elliott_, 10.04 spends most time on my thinkpad in readahead 22:02:35 Vorpal: They spent a lot of time with 10.04 and 10.10 optimising the bootup. 22:02:44 elliott_, right. 22:08:29 -!- SimonRC has quit (Ping timeout: 255 seconds). 22:10:13 * oerjan wonders if Vorpal could see that the google christmas logo had expandable pictures... 22:13:34 oerjan, it did? 22:13:58 yes. but i thought maybe that was javascript so you didn't see it... 22:14:22 oerjan, ah. What were they like 22:14:42 each of those pictures grew in size when you hovered over them 22:14:53 showing a larger scene 22:14:54 oerjan, containing google logo somewhere? 22:15:07 ...not that i recall 22:15:10 ah 22:15:33 -!- SimonRC has joined. 22:15:41 Vorpal: Yet another hotel-visit balcony view panorama thing: http://zem.fi/~fis/P1080159-173.jpg 22:19:39 fizzie, loading 22:19:52 fizzie, nice! 22:20:43 The... uh, it's fi:pilkkijä, dudes-who-fish-on-the-ice... well, those people, were pretty persistent; they were pretty much all the day out there. 22:21:09 fizzie, pilka or pika or something in Swedish I think. I'm not sure, the hobby doesn't really interest me 22:22:02 There are also three rather curious-looking ones from the hotel atrium: http://zem.fi/~fis/P1080216-235.jpg http://zem.fi/~fis/P1080242-260.jpg http://zem.fi/~fis/P1080277-288.jpg 22:22:41 fizzie, for the first, what projection? 22:22:49 fizzie, I assume it was less bendy? 22:23:02 Yes, you can see from the other that it is less bendy. 22:23:11 Fake-fisheye lens for the first one. 22:23:32 fizzie, wait, they are the same? Very different white balance there 22:23:59 fizzie, as for the third, were some of the pics blurry? 22:24:04 (while other were very sharp) 22:24:21 fizzie, nice pics though! 22:24:27 "Yes" to both. Shot freehand and in .jpg, so white-balance comes from camera settings, which I changed to be less yellow. 22:24:29 ah 22:24:47 fizzie, why not raw (or was this your phone?) 22:25:41 I'm not really sure why not; I guess mostly because it's a bit slower, and I had to take about four shots for each angle already, to get at least one not horribly blurry one at ISO 100. (Anything above that is horribly noisy on the camera.) 22:26:11 fizzie, enfuse to get rid of noise? 22:26:22 though without tripod that is doomed I guess 22:27:22 -!- poiuy_qwert has quit (Read error: Operation timed out). 22:27:46 There's also two mobile-phone stitchings I took on the way to the hotel: http://zem.fi/~fis/20101229_032-040.jpg http://zem.fi/~fis/20101229_045-048.jpg 22:28:17 -!- poiuy_qwert has joined. 22:29:00 Those are a bit stripy, because the default camera app doesn't do fixed white balance, and hugin's exposure-optimization doesn't seem to be able to fix it well. 22:29:08 fizzie, oh I guess it is 2011 over there already? Happy new .fi year then 22:29:29 About 00:30 Jan 1st 2011 here, right. Thanks. 22:29:51 happy new year 22:32:06 fizzie, don't see any stripes in the second. And quite subtle in the first. Using my laptop though. Not the best colour reproduction in the world 22:32:48 fizzie: terrible new year \o/ 22:32:48 | 22:32:48 |\ 22:32:59 The stripes aren't too bad in that since the lighting (overcast sky) was quite identical in all the shots, so the camera guesswork is probably rather similar in all the cases. 22:34:10 fizzie, should be possible to get white balance in one place on the n900 then use the same for the rest of the shots 22:34:21 fizzie, I mean, it is an advanced phone. Surely doable. 22:34:52 There's the third-party "fcam" app that can do raw and manual settings and all, but it's not quite as user-friendly as the default app. 22:35:05 For one thing, it doesn't auto-start when you open the camera cover, which is important out there in the cold. :p 22:35:21 fizzie, fair enough 22:35:25 Vorpal: I guess I could share the hotel-room photo(s) too, since it (they) turned out to be rather nice: http://zem.fi/~fis/P1080070-077_r.jpg + http://zem.fi/~fis/P1080096-108.jpg -- the first one in particular would not look that out of place in a hotel brochure or something, I think. (Well, discouting slight noisiness and such.) 22:37:37 Comment by uploader of DS9 to YouTube: "@murphy3162 if i pretend all bad voyager episodes dont exist....then theres no series left." 22:37:37 fizzie, also some visible seams in the first 22:37:54 fizzie, (middle of door frame) 22:38:10 Well, that too. 22:38:42 fizzie, the mirror in the second one looks weird 22:39:28 fizzie, oh it has bevelled edges? 22:39:30 It does. I'm not sure if the mirror is just faceted weirdly. (But there's also a visible seam near the roof/wall edge at one point.) 22:40:04 leaving shortly for new year stuff here 22:40:05 hah 22:40:10 20 minutes to midnight 22:41:24 There's an hour and forty minutes to go, you unwashed heathens. 22:41:45 An hour and twenty¬! 22:41:59 -!- elliott_ has changed nick to elliott. 22:42:05 Phantom_Hoover: nO 22:42:06 *NO 22:42:07 FORTY 22:42:10 I EXIST IN GMT MINUS 20 MINUTES 22:43:15 pffft 22:43:24 why aren't you on some party anyway 22:43:51 party. That would suck. 22:44:08 * oerjan swats nooga -----### 22:44:13 fireworks --> 22:44:18 "This channel is all the party I can handle!" 22:44:32 i have a norwegian speaking party at my flat 22:44:35 in* 22:44:38 whateva 22:44:46 oerjan could join 22:45:15 pikhq: Why are you not here? 22:45:28 WOOO OPARTY 22:45:29 PARTY IN THE HOUS 22:45:30 E 22:45:32 PARTY IN THE HOUSE 22:45:33 Why does no one ever ask me that? 22:45:33 PARTY WITH A MOUSE 22:45:35 IN THE HOUUUUUUUUSE 22:45:39 Gregor: Maybe he's at some sort of a hip norwegian-speaking party. 22:45:40 Sgeo: because we call those periods tranquil silence 22:45:46 elliott, I'll protect you my friend 22:45:57 Sgeo: Phantom_Hoover already referenced Little Mouse yesterday so stfu. 22:46:01 Gregor: I'm practically a substitute for pikhq, what do you want to ask. 22:46:08 well 22:46:12 elliott: "Tastes good, less filling"? 22:46:17 it's a calm party 22:46:33 fizzie: ff 22:46:34 dfk 22:46:40 we have some drinks, salad, champagne and chillout music from this computer 22:46:41 elliott: Did you ever find a good deinterlacing filter in mplayer? 22:46:49 4 ppl 22:46:58 Gregor: He found a gigantic combination of filters that worked on hideous, hideous inputs :-P 22:47:02 + this channel 22:47:19 Gregor: I suspect that he would use something rather more conservative for, you know, _regular_ interlaced stuff. 22:47:21 i think it's my duty to be on this # now 22:48:09 oh, btw. i've recently read Wouter's PhD thesis 22:48:40 it's really inspiring but graphical Aardappel is bad 22:51:21 nooga: aardappel is kinda fun though 22:51:35 well 22:51:42 maybe it's good 22:51:50 it's not good but it is fun 22:51:51 eee 22:51:51 :) 22:51:52 no 22:51:54 IT IS GOOD 22:52:02 \but not this graphical notation 22:52:21 i tried to read aardappel qsort in a graphical form 22:52:44 and it was really hard compared to the textual version introdouced in the paper 22:52:55 nooga: oh by graphical you mean the list visualiation things? 22:52:58 *visualiation 22:52:59 *visualisation 22:53:01 yeah those are silly 22:53:03 this aarded 22:53:11 textual form is nice 22:54:23 nooga: you mean like, linear? 1 dimensional? 22:54:24 lame 22:54:27 that defeats the point of aardappel 22:59:28 but the PARADING 22:59:30 M 22:59:31 shit! 22:59:34 midnight! 22:59:35 brb 23:00:05 nooga is going to get really, really drunk really, really quickly. 23:13:45 noo 23:13:47 ;p 23:22:42 back 23:22:48 happy new year + 22 minutes everyone! 23:23:31 Vorpal, weirdo. 23:23:35 elliott, I'll protect you my friend Sgeo: Phantom_Hoover already referenced Little Mouse yesterday so stfu. <-- why the sudden rise in number of references to it? 23:23:39 New year is in 40 minutes! 23:23:49 Vorpal, A SIGN OF THE END TIMES? 23:24:02 HEY NOW CTHULHU 23:24:07 Phantom_Hoover, wait. that was 2012. 23:24:14 Vorpal: Off-by-one. 23:25:08 elliott, ah. Even for Maya yes 23:25:25 Well, the Romans counted off-by-one. 23:25:34 And what have they ever done for us? 23:25:36 Phantom_Hoover, did they? In what way? 23:27:01 _ _ _ _ __ __ _ 23:27:01 | || |__ _ _ __ _ __ _ _ | \| |_____ __ __ \ \ / /__ __ _ _ _| | 23:27:01 | __ / _` | '_ \ '_ \ || | | .` / -_) V V / \ V / -_) _` | '_|_| 23:27:01 |_||_\__,_| .__/ .__/\_, | |_|\_\___|\_/\_/ |_|\___\__,_|_| (_) 23:27:01 |_| |_| |__/ 23:27:21 oerjan, right. You found banner(1)? 23:27:24 bah 23:27:30 no, figlet 23:27:34 ah 23:27:46 omg i don't have fist(1) 23:27:56 fist(1) ? 23:28:11 :O 23:28:23 elliott, what is that 23:28:27 http://www.fourmilab.ch/fist/ 23:28:44 HOLY SHIT, its configure script runs fast. 23:28:46 You know why? 23:28:50 # Guess values for system-dependent variables and create Makefiles. 23:28:50 # Generated automatically using autoconf version 2.13 23:28:51 # Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc. 23:28:52 Seriously. Dang. 23:28:54 That was fast. 23:29:00 And it didn't check if I have every function ever, either. 23:29:22 OTOH, I have to make my own /opt/stow/fist/bin. 23:30:05 http://sprunge.us/NHIE; I would spam it in-channel, but, uh, it's a bit long. 23:43:46 Does anybody know the conditions under which YouTube releases the time limit for particular accounts? 23:44:10 Gregor: "Used to be a director's account", I think :-P 23:44:26 I'm not a director. I don't even know what that means. 23:44:56 Gregor: Then I think you are fucked. 23:44:58 Gregor, it means they like you. 23:45:17 elliott: In the good way? 23:45:18 Gregor: Oh, so you had it removed and you don't know why? 23:45:24 elliott: Yeah 23:45:30 "Congratulations! Your account is now enabled for uploads longer than 15 minutes. Click the Upload button below to select a video." 23:45:32 Gregor: YouTube does not run on logic. 23:45:50 Time to write a friggin' epic 2 hour piano piece. 23:46:29 Gregor: Dude... play some Merzbow. On piano. 23:46:33 You must. 23:46:50 I am not sure how this amazing idea did not come to me much sooner. 23:47:42 ... yeah. 23:47:55 Gregor: Is that a "YES I WILL DO THAT". 23:48:19 * Gregor tries his hardest to force as much sarcasm as possible across the webertubes. 23:48:46 Gregor: You can't deny that you'd watch two hours of Merzpiano on YouTube. 23:48:50 SO MAKE EVERYONE ELSE'S DREAM COME TRUE 23:48:52 Phantom_Hoover: Support this idea. 23:49:36 * Phantom_Hoover approves of this message. 23:49:45 * elliott approves of this message. 23:49:49 Let's approve of our own messages! 23:50:57 ▌▌▄ ▄ ▄ ▖▖ ▄ ▗ ▖▖ ▖▖▗ ▄ ▖▖▐ 23:50:57 ▛▌▄▌▙▘▙▘▚▌ ▌▌▛▘▙▌ ▚▌▛▘▄▌▛ ▝ 23:50:57 ▘▘▀▘▘ ▘ ▄▘ ▘▘▝▘▀▘ ▄▘▝▘▀▘▘ ▝ 23:51:04 (It's the rfk86 font.) 23:51:36 Looks nice in this terminal, less so in the xchat with empty spaces between lines. 23:51:47 fizzie: Does not work in the logs :P 23:52:51 Also I forgot to uppercase the other words. 23:55:44 Vorpal: Hey, it's not even a magical gconf key in eog. It's just Edit/Preferences/Image View/uncheck "smooth images when zoomed-out". 23:56:07 Oh you Gnome cynics. 23:56:18 Phantom_Hoover: QUICK! WE MUST DEVISE GOLFSCRIPT 2: ELECTRIC BOOGALOO 23:56:25 (saying this because you're the only person even remotely likely to agree with me) 23:56:37 s/-out/-in/ 23:57:17 GolfScript is pretty good though. 23:57:27 ~{.@\%.}do; isn't a bad gcd.