00:10:53 -!- cheater00 has joined. 00:13:52 -!- cheater- has quit (Ping timeout: 255 seconds). 00:23:31 * iconmaster has done TOO MUCH on the wiki today. 00:23:40 -!- copumpkin has quit (Quit: Computer has gone to sleep.). 00:29:43 -!- FireFly has quit (Quit: swatted to death). 00:35:52 -!- Zuu has quit (Ping timeout: 260 seconds). 00:39:10 -!- GregorOpMonger has quit (Ping timeout: 264 seconds). 00:41:59 iconmaster: you might perhaps maybe consider possibly investing in a spell checker. just saying. 00:43:04 Did you forget? (Or did I forget?) 00:43:22 zzo38: what? 00:44:48 -!- Zuu has joined. 00:45:13 There are many computer programs that parse algebraic chess notation. But I don't know how many are done with typesetting systems. 00:47:23 Do you prefer descriptive notation or algebraic? 00:47:29 Or morse code chess notation? 00:47:42 How often is chess played over morse code? 00:48:11 -!- TLUL has quit (Ping timeout: 246 seconds). 00:49:45 How often is chess played by telephone? 00:50:11 How often by mail? 00:51:14 -!- pikhq_ has quit (Ping timeout: 250 seconds). 00:51:14 -!- pikhq has joined. 00:52:05 i guess (non e-) mail chess is rarer these days 00:52:20 back in the 80's it was all the rage 00:52:39 (my dad was an avid player) 00:53:31 Some people like to play chess on the order of "hours" instead of "months" 00:54:10 i recall a children's story in which they played chess over the telephone. the kicker was that at the end it turned out the sweet lady on the other side was ... on the other side. 00:54:43 that was a slow game too, only one move per call 00:54:46 Where the grass is always greener. 00:56:11 intertwined with a crime mystery 00:58:15 Gregor: he played chess on the order of "hours" too. probably very different, with mail you could do all kinds of literature lookup. mind you this was before the web and before computers became all-powerful in chess. 00:58:45 IN A TIME BEFORE COMPUTERS 00:58:49 (were major in Chess) 00:59:14 oerjan: I guess I should start writing articles on a spell-checked text editor BEFORE submitting it... That would work. 00:59:30 oerjan: And thank you for putting up with my spelling errors. 00:59:50 iconmaster: i nearly always compose longer pieces in vim even if i'm a reasonably good speller 01:00:14 for one thing it guards against those annoying timeouts 01:00:20 I should do that. 01:00:23 Of course if you have a sufficiently powerful computer, it can always win at chess (if programmed correctly). 01:00:43 Same with Go, although an even more powerful computer would be required, way more powerful. 01:01:14 No computer will ever be good at Rock-Paper-Scissors, though. 01:01:16 s/always win/always win or stalemate/ 01:01:52 zzo38: a computer can be _perfect_ at rock-paper-scissors, if it has a perfect random number generator. 01:02:22 oerjan: Then your definition of "perfect" is sorely lacking :P 01:02:29 perfect in the sense of game theory, that is 01:02:44 Gregor: Yes, possibly stalemate too. Although if they make such a computer they might figure out solving it entirely whether black or white has an advantage, and if so, how much. 01:02:52 ok maybe not perfect in taking advantage of inferior players 01:03:13 zzo38: Sure, but the generalization has to allow for stalemate, since not all games will have a distinct sidedness. 01:03:33 Gregor: Yes, I did consider that, too. 01:03:44 * oerjan recalls there was a game, hm let me look it up... 01:04:26 http://en.wikipedia.org/wiki/Hex_(board_game) 01:04:49 it's always a win for the first player, this can be proven despite no one knowing what the winning strategy _is_ 01:05:58 They tried to build computer to win at Rock-Paper-Scissors tournament, but then they realize it is impossible. There are a lot of players in the tournament and some are really good at it, so they will beat the other players, and so on. So the computer has a very small chance of possibly winning the tournament. At a single game though, with perfect random number generator, the computer expect to win 50% regardless of their opponent's plays. 01:07:14 Playing at random is called chaos play. The official strategy guide labels the difficulty of the chaos play strategy to be infinite. 01:07:36 (Not only is it infinitely difficult, but you cannot expect to win more than 50%.) 01:08:12 zzo38: aha so the computer can lose a "hill" even if doesn't really lose against any single player 01:08:34 oerjan: Yes, like that. 01:09:20 -!- augur has quit (Remote host closed the connection). 01:09:42 At a game like backgammon, a sufficiently powerful computer cannot always win, but it might be able to win a very large amount of the time (I do not know what the maximal probability of winning backgammon is with best strategy). 01:11:59 Actually, one could build a rock-paper-scissors computer that would be better than a human. 01:12:05 Humans have a tendency to choose scissors. 01:12:22 Not that it would *win*, but it would be *better*. 01:12:31 Hooray, averages. 01:13:07 pikhq: Not better against a good player. 01:13:53 But perhaps better than bad players. 01:15:30 I have also read rules of a chess variant for SCA, that uses dice. Most of the pieces do not move very far. On each turn you roll two dice and the number tells you what kind of pieces you are allowed to move. 01:16:27 The knights (which are the same as FIDE chess) are the only ones that are allowed to move more than one space (and are forced to move more than one space). 01:16:58 I want an omega chess set 01:20:08 coppro: Do you know where to buy it? 01:20:28 I have a shogi set. 01:20:58 But it isn't very good because the board is paper. The pieces are OK, though. 01:22:33 zzo38: I haven't seen an omega chess set in a brick-and-mortar store 01:22:36 not even the Sentry Box 01:22:40 http://codu.org/wiki/N-in-a-row%20game Vague musings on an unsolvable game. 01:23:24 and bgg appears to be down right now 01:25:02 -!- augur has joined. 01:25:50 -!- iconmaster has quit (Quit: ALLAGUF?). 01:27:25 * Sgeo wonders what Infinity Chess is like to play 01:28:03 there is no such thing as infinity chess 01:28:15 I have seen a chess problem that says "checkmate in infinity plus fifteen". 01:28:39 coppro, as in.. 01:29:20 Gah 01:29:37 The board looks like the infinity symbol, except one of the loops is smaller than the other 01:29:41 so omega chess isn't infinite chess? 01:30:21 The name reminded me of it 01:30:37 checkmate in omega plus fifteen would be a perfectly reasonable thing then... 01:30:38 chess variants does not have it 01:31:20 -!- cpressey has joined. 01:31:51 so i guess if i want to announce something, using the topic of this channel isn't a good option, huh 01:32:08 coppro, is there a weird boards category of chess variants? 01:32:11 cpressey: Just announce it as a normal message at first. 01:32:51 zzo38: well, i don't have anything -- yet. i was just figuring, it'll only stay up for a short time, then optbot will trample it 01:32:51 cpressey: it's unfinished, although finished to the point that you can consider it a very buggy finished product as opposed to an unfinished one 01:33:08 i will have something -- soon 01:33:16 but haven't been able to do much while at pycon 01:33:58 cpressey: What is it, though? Once you do it, just type something about it to the channel if you want opinion or whatever. 01:34:11 it's a surprise :) 01:34:35 The Wikipedia page for Chess variant has it 01:34:36 OK. 01:34:44 cpressey: we _could_ set the channel +t for a while, i guess... 01:34:54 if it's important 01:35:02 oerjan: No, I think that is not necessary; just announce it normally. 01:35:02 oerjan: what would that do? 01:35:10 cpressey: prevent topic changes 01:35:15 http://www.boardgamegeek.com/boardgame/32793/infinite-chess 01:35:17 Even announce in topic message if you want but of course someone can change it 01:35:20 -!- cpressey1 has joined. 01:35:28 That has to be it, although I remember it looking a bit different 01:35:37 -!- cpressey1 has left (?). 01:35:40 zzo38: the thing is now optbot changes the topic automatically every six hours 01:35:40 oerjan: haha 01:35:44 Sgeo: I can't connect to bgg for whatever reason 01:35:46 http://www.colebank.com/ichess/index.asp 01:35:46 I think this channel is locked to -t though 01:35:57 "Experiencing God" 01:36:03 oerjan: I think you should remove that function from optbot and have people change it manually. 01:36:03 zzo38: elliott_, I know I don't have any 01:36:07 zzo38: i'm sure there's some chanserv command to change that 01:36:20 zzo38: it's not my bot 01:36:24 Yes there is some command to change mode locks if you are the owner of this channel. 01:36:37 But otherwise it is locked to +nc-mst and you cannot change that. 01:36:46 hm must one be founder? 01:36:49 oerjan: Then who is it? 01:36:52 -!- augur has quit (Remote host closed the connection). 01:37:06 coppro, ^ 01:37:24 The "Experiencing God" thing is not what I linked to, it's just another page on the same site 01:38:15 There is a category for chess game with different shape boards http://www.chessvariants.org/index/mainquery.php?type=Game&category=Shape&startswithletter=&language=English&daysyoung=0&daysold=0&minyearinvented=&maxyearinvented=&boardrows=0&boardcols=0&boardlevels=0&boardcells=0&authorid=&inventorid=&orderby=LinkText&usethisheading=Game+with+different+shape+boards&displayauthor=on&displayinventor=on®expurl=®explinktext= 01:38:41 -!- amca has joined. 01:39:18 -!- augur has joined. 01:40:08 GodChess 01:40:42 wait, isn't there a ST:TNG episode with Q that has something like that...? probably not 01:40:54 What icons should I add in chess font? There is enough for 63 different kind of pieces, and I already have all 6 FIDE pieces, as well as: circle, vizier, firzan, inverted rook, crescent moon, amazon, knight rider. 01:40:59 there is an episode of Dr Who with eternal-type beings in a boat race though 01:41:15 *Doctor Who 01:41:22 or Gregor will yet at me 01:41:27 b/c he has nothing better to do 01:41:45 cpressey: What is GodChess? 01:43:08 zzo38: i don't know. i just randomly put together words that seemed to be coming from Sgeo's direction 01:43:48 cpressey: If there is no game like that, then invent a game like that. 01:44:02 cpressey, keep doing that, and we may have to put you into an Asylum build system. 01:44:33 -!- ChanServ has set channel mode: +t. 01:44:42 ok 01:44:47 -!- ChanServ has set channel mode: -t. 01:44:51 coming up with the name is the first step to inventing it, but i invite anyone who might be more intrigued with the concept to do so 01:45:06 i still say it was an episode of ST:TNG with Q, or should have been 01:45:21 zzo38: apparently i have enough permissions for changing mode lock 01:45:22 and of course he would have used the Enterprise as an, uh, pawn 01:45:25 cpressey: I know how to invent chess variants, but you can make some ideas about it too. 01:45:54 *yell 01:46:04 oerjan: Well, maybe you do, but I still think you shouldn't. Instead you should tell whoever programmed optbot to change the frequency of topic message changes to one week instead of six hours. 01:46:04 zzo38: seriously? that is the ugliest thing ever 01:46:05 (s/yet/yell) 01:46:09 man, i'm tired 01:46:30 zzo38: optbot does NOT approve of your suggestions. 01:46:30 cpressey: yay 01:46:39 Actually, no. Not one week. Set it to 24 hours after the last change. 01:46:54 or change only the part after the last | 01:47:01 so i can insert something 01:47:13 So, not every 24 hours, but 24 hours after the last change, but 1 minute if the log URL is missing. 01:47:56 cpressey: That is another possibility, I guess. 01:48:26 zzo38: one week would sort of remove the fun of it. maybe elliott could put some command in to let people change what optbot puts before its own part 01:48:26 oerjan: you don't happen to have an escape character for inserting controls now? 01:48:33 optbot: What do you mean is the ugliest thing ever? 01:48:33 zzo38: The question is not "do I need (s+n)?", it's "can I make GGGGGGGGGGGGC support (s+n)?". 01:48:49 oerjan: I know one week is too long, which is why I almost immediately took back that suggestion. 01:50:08 I think a certain amount of time *after the last change* is better, perhaps 24 hours is good. 01:51:13 optbot: i hate technology 01:51:13 cpressey: I like how [[Offended]] starts with cute rabbit pictures 01:51:45 all rabbit pictures are cute rabbit pictures 01:52:00 zzo38: well as of now i think optbot doesn't actually look at topic changes other than its own, it could do all sorts of things once it can do that 01:52:01 oerjan: well, many are, but there's plenty of finite ones as well 01:52:27 i guess, unless the rabbits in question are dead. they used to test pregnancy that way somehow, i ought to figure out exactly how someday 01:52:58 cpressey: myxomatosis. 01:54:19 oerjan: ok, good first step. but the wikipedia article on it says bubkis about pregnancy, human or otherwise, so i'm still wondering what the connection is 01:54:47 cpressey: it was a counterresponse to "all rabbit pictures are cute rabbit pictures" 01:55:09 oerjan: oh. then: s/dead/dead or sick/ 01:55:12 check snopes? 01:55:48 Sgeo: oh you mean like http://www.snopes.com/pregnant/rabbit.asp 01:55:51 I have invented many chess variants. 01:56:33 snopes seems to have wacked my browser. thanks snopes 01:57:57 page explains it though. 01:58:16 i have invented no chess variants 01:58:18 wait 01:58:28 start with chess, remove the bishops. 01:58:32 there you go. 01:58:36 atheist chess 01:58:37 i have invented a chess variant 01:58:49 cpressey: Yes it does that to me too. Turn off plugins, javascript, images, metarefresh, and subdocuments, and so on, and select printer friendly pages. Now it works much better. 01:59:05 cpressey: You are not the only one to have invented that variant. 01:59:24 drat. oh well 01:59:32 Actually, turn on meta refresh. 02:01:41 When I was a kid, I saw kids in the before-school YMCA try a variant: Chess without pawns 02:01:48 when a pawn reaches the other side of the board, it is removed from the board for a number of turns chosen by the player. after a wait of one turn it can return as a knight, two turns a bishop, three turns a rook, or four turns a queen 02:02:09 less likely someone else has invented that (relatively minor) variant 02:03:01 how about "pawns move like rooks" 02:04:27 or how about "bishops can self-destruct, destroying that square on the board (no other piece can ever move into or over that square)" 02:04:32 well maybe knights could move over 02:04:43 hm i recall this variant with only pawns and king... 02:05:06 i recall that as some kind of end-game thing 02:05:26 specifically, a computer program for playing it 02:05:36 unless you're thinking, like, all eight pawns 02:05:56 i think it was all eight 02:06:06 ok, then that's new to me 02:06:22 i cannot find it again, because the obvious name for it happens to be the _actual_ norwegian for tic-tac-toe 02:07:03 it may have been just in some chess book 02:07:46 (norwegian for tic-tac-toe is "bondesjakk" which directly translates to pawn chess) 02:08:58 that's... rather trumped up 02:09:38 i mean, for checkers, maybe, ok 02:09:43 but tic-tac-toe? 02:10:27 btw, what do you call a tie in tic-tac-toe, in norwegian? 02:10:38 (a tie meaning, a draw, a stalemate) 02:10:40 actually it's a bit ambiguous between three-in-a-row or five-and-row games 02:10:41 oerjan: Not farmer's chess? 02:10:52 Deewiant: um well that too 02:11:07 I'd say it's specifically that :-P 02:11:08 pawn and farmer are both "bonde" in norwegian 02:11:25 peon, peasant, prole 02:12:19 It's like Finnish "jätkänšakki"; I think it's just being derogatory about these people who play tic-tac-toe instead of chess 02:12:43 that makes some sense 02:13:23 cpressey: i don't know if there's a specific word for tie in tic-tac-toe in norwegian 02:13:41 ah. there is a specific phrase in english, is why i asked 02:13:45 "cat's game" 02:13:45 the usual word would be "uavgjort", although in chess it's "remis" 02:15:48 checkers is "dam" in norwegian, although chinese checkers is "kinasjakk" 02:16:08 That is because chinese checkers is a different game. 02:16:26 and then there's turkish draughts 02:16:44 zzo38: yes, but it's also not similar to chess, which the norwegian name would imply 02:17:02 http://www.phrases.org.uk/bulletin_board/44/messages/373.html <-- various entertaining theories on the origins of "cat's game" 02:18:59 wtf happened to the style of norwegian wikipedia 02:19:37 you're asking the wrong person 02:19:38 That's distressing 02:19:43 if you're asking me 02:19:45 but i can go look 02:19:50 heh 02:20:08 nope, can't help you. looks like wikipedia to me 02:20:19 except in norwegian (I think) 02:20:28 oh 02:20:35 it was only that one page 02:20:48 similar to what cheater00 experienced the other day 02:20:59 except shift-reload did _not_ fix it for me 02:21:00 -!- pikhq_ has joined. 02:21:09 -!- pikhq has quit (Ping timeout: 255 seconds). 02:21:13 "Janis Joplin (1943–1970) var ein amerikansk songar, låtskrivar og musikalsk arrangør." 02:21:41 http://no.wikipedia.org/wiki/Xiangqi looks horrendous to me 02:22:02 yup, no css, or similar 02:22:24 oh, i reloaded, and it appeared 02:22:24 oh so that looks bad for you too? 02:22:34 first time, it did: missing stylesheet 02:22:46 ctrl+shift+r fixed it 02:23:03 ah now it finally loaded right 02:23:20 pikhq_, you here? 02:23:31 i am _sure_ i tried crtl+shift+reload once before 02:23:33 Or anyone else somewhat capable of reading Japanese? 02:23:35 *ctrl 02:23:43 Can someone say what http://i.imgur.com/fT4Wm.png says? 02:24:03 the css is coming from a PHP script on a server called bits.wikimedia.org. probably this is new, and less reliable than a static file. i'm guessing 02:24:17 ah. 02:24:37 sorry, knee-jerk troubleshooting reaction 02:24:47 i work at a place that makes websites 02:24:47 Sgeo: That looks like Chinese 02:26:07 Sgeo: what is this 02:26:21 cpressey, an error I gt 02:26:37 I know of no special Chinese or Japanese programs on my computer. 02:26:51 Sgeo: i would be totally freaked out, then 02:27:05 do you run any sort of spyware and/or virus checker? 02:27:08 cpressey, I kind of am reaked out a bit 02:27:29 Sgeo: i would suggest trying to copy and paste that title bar into google translate... 02:27:30 Sgeo: That is definitely not Japanese. 02:27:37 I know someone who can read chinese, and I can ask him, but I won't see him until tomorrow 02:27:39 It's already closed 02:27:51 I didn't think it was possible to copy-paste from title bars 02:28:04 maybe there's something that will let you OCR chinese characters online... 02:28:07 Looks to be Chinese, either Hong Kong or Taiwan-origin. 02:28:33 Sgeo: ok maybe it isn't possible 02:29:11 maybe you can find some copyable program listing somewhere... 02:30:54 hm if you interpreted random bytes as unicode, what is the chance that the result would look chinese... 02:31:57 except i see some repeated characters in there 02:32:04 High 02:32:20 like the two ones after the dots 02:32:25 if you picked humans at random, which is the chance they would be chinese 02:32:27 Binary data in UTF-16 often looks like Chinese 02:32:29 *what 02:32:51 Is googlecodesamples.com genuine Google? 02:33:03 WOT likes it, but I see no other indication that it's safe 02:33:15 there is one character that looks non-chinese there... sort of like "s?" 02:34:36 Sgeo: try googling "googlecodesamples.com" -- if google owned it, do you think its result would look like that? 02:34:52 "LIVE! Google Code Samples 02:34:54 Server Clock: Server-Sent Events, , PHP [source]; Offline eBook Reader: Google Chrome Background App feature, AppCache, Server-Sent Events, ..." 02:35:06 seems very non-googly to me 02:35:14 NOTE EVERYONE: creat@libc.so is STILL AVAILABLE! Donate now and you could be creat@libc.so! 02:35:37 Gregor: you should totally announce that in the topic 02:35:54 It's not Google owned 02:36:04 But it looks like its code is online. Supposedly. 02:36:23 n/m 02:36:44 -!- Gregor has set topic: Donate to the Gregoran Somalian Relief Fund, and help Gregor buy libc.so! | Benefits of donation include a vanity @libc.so email address if I win (and a full refund if I don't); creat@libc.so is still available! | logs: http://tunes.org/~nef/logs/esoteric/?C=M;O=D and http://208.78.103.223/esoteric/. 02:37:48 optbot: he fell for it! 02:37:48 cpressey: iirc 02:39:40 so Gemooy has an instruction pointer and a data pointer both pointing into the same playfield. i want a language like that, with two pointers into the playfield, but neither is "instruction" or "data", instead they... share those responsibilities equally. 02:39:44 Is exit@libc.so still available? What about system? 02:39:49 -!- Sgeo_ has joined. 02:39:54 Fuck off, Sgeo_ 02:39:58 Sgeo: Both 02:40:17 Actually only malloc, free and fork are explicitly taken, everybody else who's donated has said "I'll choose later durpadurp" 02:40:21 how about cpressey@libc.so? OMG SO MISSING THE POINT 02:40:33 Sgeo: i find references on this google page: http://www.google.com/support/forum/p/apps-apis/thread?tid=215415e044109197&hl=en 02:41:16 i think it may be official 02:41:22 -!- Sgeo_ has quit (Client Quit). 02:41:31 cpressey: No, but memcpy and strcpy are available, and both have "cp" in them :P 02:42:08 or at least officially tolerated 02:42:15 Oh come on. I write a lengthy quit message, and Freenode nurfs it? 02:42:45 because everyone wants some cp 02:43:10 Sgeo: you have to be logged on for a certain time before quit messages show 02:43:23 um 02:43:33 Sgeo: do a whois googlecodesamples.com 02:43:52 it's registered by proxy 02:44:04 not an encouraging sign 02:44:32 Too late 02:44:40 At any rate, lemme just revoke access 02:44:46 The OCR thingy failed, btw 02:45:03 o 02:45:21 It's not like it asked for my password >.> 02:45:26 i'm not sure why google would tolerate another website claiming "(c)2011 Google" at the bottom of the page 02:45:30 but, i'm not them, so 02:46:39 http://www.google.no/#hl=no&safe=off&biw=1053&bih=620&q=%22googlecodesamples.com%22+site:google.com&aq=f&aqi=&aql=&oq=&fp=6f1a8d5df66b6a9c 02:47:14 not sure what to make of it 02:48:14 oerjan: hm. maybe they intended it as an example url? i notice they don't actually have it in links, just text 02:48:36 you're *supposed* to use example.com for that sort of thing though 02:49:02 cpressey: there is at least one place it's a link, in a message by a google employee in the link i pasted a bit further up 02:49:11 weeeeeird. 02:49:50 are there any other domain names that contain the name google are are known to be owned by them> 02:49:53 ? 02:50:09 googlecode.com redirects to code.google.com 02:50:28 whois on that gets back their mountain view office 02:50:43 so -- if googlecodesamples is legit, why on earth did they register it by proxy 02:53:08 i suppose someone may have squatted it after google used it in text but forgot to register it 02:53:42 Sgeo: at any rate, if you want one of those addresses, there is really only one that makes sense: sbrk@libc.so 02:54:16 oerjan: that would make sense; i almost reasoned that far but didn't quite make it 02:54:17 23.9% of APNIC pool available at the start of this month has already gone poof (9 business days). Crazy. 02:54:21 cpressey, why? 02:54:35 Because both sbrk and Sgeo start with s and are 4 letters? 02:55:02 four letter words! 02:55:14 Sgeo: because system() and exit() are for peasants! everyone calls exit()! who calls sbrk()??? only REAL PROGRAMMERS, that's who! 02:55:25 cpressey: there definitely don't seem to be any high-ranked pages _warning_ against it, though 02:56:33 or how about 'fsck@libc.so', to advertise a delicate, cultured confusion about unix. 02:57:14 What is not a correct way to reformat a file system, Alex? 02:57:35 "Created on: 6/30/2008 12:57:19 PM 02:57:37 " 02:58:45 it's not new enough to be something google hasn't discovered yet 02:58:56 yeah, maybe they just don't care 02:59:12 or, it's theirs, in some weird convoluted way 02:59:30 next theory: someone squatted it, quickly got threatened by google's lawyers, and google now owns it but still via the same registrar they originally used 02:59:32 Man, this svr4 .so file is confusing the eff out of nm, readelf and objdump :P 02:59:33 at any rate i don't think it's any kind of threat, exactly 03:00:27 sbrk is pretty great :P 03:00:35 and fsck isn't a libc symbol. 03:01:01 Gregor, unlike cpressey, is apparently not into the delicate, cultured confusion thing. So be it. 03:01:23 i curse thee, DST. i need to get to bed 03:01:28 good night 03:01:31 -!- cpressey has quit (Quit: leaving). 03:01:40 Apparently svr4 had "pcopy" 03:13:54 *Aaaah*, decaf. Because I both want coffee and want to sleep tonight. 03:16:26 I really wish I had a legit C compiler in my svr4 install :( 03:27:44 -!- wareya_ has joined. 03:30:47 -!- wareya has quit (Ping timeout: 252 seconds). 03:31:36 did quintopia finish his new bfjoust scoring? 03:32:11 Gregor: did you end up getting it? 03:32:31 variable: Like I said, it's up for auction. 03:32:39 when does the auction close? 03:32:59 April 4th. It opens March 28th :P 03:33:06 :-| 03:33:13 * variable wants a good domain names 03:33:13 * variable rants 03:33:23 * oerjan pants 03:33:28 You could still have a good email address ;) 03:33:34 heh yeah 03:34:47 * variable goes back to work on ports stuff 03:53:37 c-parse.y:1650.19-20: $$ for the midrule at $4 of `structsp_attr' has no declared type 03:53:42 huh? 03:54:45 -!- zzo38 has quit (Remote host closed the connection). 03:57:58 -!- BeholdMyGlory has quit (Remote host closed the connection). 04:03:44 -!- azaq23 has quit (Ping timeout: 246 seconds). 04:13:48 -!- Gregor has changed nick to creat. 04:13:58 I HAS BEST NICK EVER 04:14:51 * pikhq_ should change his name to longjmp. 04:15:38 -!- augur has quit (Remote host closed the connection). 04:25:32 pikhq_: Only if you buy longjmp@libc.so :P 04:39:41 pikhq_: creat I win 04:39:57 ? 04:40:02 my name is the best :-) 04:40:15 Hmmmmm, it's pretty OK, but :P 04:40:50 creat is more tongue-in-cheek :P 04:58:39 -!- augur has joined. 05:10:46 bop 05:17:56 augur: Vanity libc.so email addresses! 05:18:02 what 05:18:33 augur: I'm soliciting donations to try to win libc.so in a closed auction. As benefit for donating, I'm offering vanity @libc.so email addresses if I win :P 05:18:51 no. 05:18:56 :( 05:19:21 Ohyeah, I'm Gregor btw X-D 05:20:06 -!- creat has changed nick to Gregor. 05:20:34 Snagged creat while it was available :P 05:20:55 -!- zzo38 has joined. 05:21:06 -!- optbot has set topic: logs: http://tunes.org/~nef/logs/esoteric/?C=M;O=D and http://208.78.103.223/esoteric/ | I don't think she'll be too happy with me for letting you do this, but I'm not sure how many entries we'll be having in the first place.. 05:21:20 DAMN YOU OPTBOT 05:21:42 They should disable optbot until this problem can be corrected 05:21:42 zzo38: 0xfoo is what I prefer of the alternatives 05:22:01 As far as the author is concerned, this is a feature X_X 05:22:28 Maybe, but it still ought to be corrected. 05:22:47 It ought to change topic messages less often and only under the correct circumstances. 05:23:04 (Or else disable that function entirely is another possibility) 05:23:15 The preferable possibility. 05:23:57 Do you know who wrote that program? 05:25:48 Do you know Betza Notation for moves of pieces in chess variants? 05:27:02 elliott wrote optbot. 05:27:02 oerjan: oh snap :P 05:27:27 -!- dbc has quit (Quit: Seeeeeya). 05:29:01 I have my own. I will proceed to type the notation for the moves in FIDE (ignoring special rules such as en passan, promote, double step, castling, check). Rook is "xr1". Bishop is "1r1". Queen is "(x|1)r1". King is "(1)x1". Knight is "2x1". Pawn is "(1c|m)1+". 05:29:13 oerjan: Can you ask elliott to correct it please? 05:29:25 oerjan: Can has optbot banned? :P 05:29:25 Gregor: (assuming b /= 0) 05:29:33 you could do it yourself if he were here. 05:29:51 Uh ... no? 05:30:05 Gregor: Yes, that is an idea to temporarily ban optbot until this problem can be corrected, I guess. 05:30:05 zzo38: Interesting way to describe Caramac. 05:30:05 Gregor: that was in response to zzo38 05:30:39 Oh :P 05:30:39 zzo38: He won't. 05:30:52 -!- dbc has joined. 05:31:21 Do you like my notation for moves of pieces in chess variants? 05:31:25 i _am_ still willing to put a temporary +t on the channel, though. 05:31:29 Tried to nick to bdb 05:31:32 Someone's using it 05:33:24 oerjan: With what topic? 05:34:08 the one from just before now? 05:34:26 -!- Gregor has set topic: Welcome to #esoteric, the international hub for esoteric programming language design and deployment - #esoteric is not associated with the joke language Perl, for that language please visit www.perl.org or #perl - logs: http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 05:34:44 I don't want it to be QUITE that self-serving :P 05:35:08 er... what's the point in locking that 05:35:26 it doesn't even have the herobrine logs. 05:35:44 Then perhaps do not lock it. Ask elliott whenever they come on, to correct it. 05:35:52 i meant if someone actually had some information that needed to stay on it. 05:36:40 I don't NEED my libc.so fund to stay in the topic, it just seems stupid that it's being preempted by a fucking markov chain. 05:36:58 yes, so ask elliott to fix it. 05:36:59 I wouldn't care if a human was replacing it. 05:37:03 He won't. 05:37:06 For the purposes of this chanenl, I think nobody has information that needs to stay on it. However, I still think optbot ought to be corrected to change the message less often and not if it has been changed recently. 05:37:36 optbot should, at most, change the topic iff it doesn't link logs. 05:37:36 Gregor: agbfced 05:37:57 Gregor: oh, i am perfectly willing to ban optbot if elliott doesn't make its topic changes less annoying _after_ a warning. 05:37:57 oerjan: I agree, carrier pigeons would be more reliable, if slower on average 05:38:02 Gregor: Very good idea I think. 05:38:22 oerjan: Also it is a good idea to give a warning first. 05:38:39 And then ban it temporarily until it can be corrected, if it is still not corrected. 05:40:08 -!- Gregor has set topic: Donate to the Gregoran Somalian Relief Fund, and help Gregor buy libc.so! | Benefits of donation include a vanity @libc.so email address if I win (and a full refund if I don't); creat@libc.so is still available! | logs: http://tunes.org/~nef/logs/esoteric/?C=M;O=D and http://208.78.103.223/esoteric/. 05:40:34 i don't care about the frequency of optbot's changes, but there should be a way to keep things in the topic. 05:40:34 Gregor: Perhaps, either when it doesn't link logs or [some length of time] after it has been last changed, whichever comes first. The length of time here should be at least 24 hours, maye even 7 days if you *really* don't want it changed automatic like that! 05:40:35 oerjan: hard to render kanji in low-res, and kana would have been quite long 05:41:00 There should be no timer. Period. 05:43:33 No, I think there should be, but it should count from the last change by anyone and it should be very long (make it fourteen days if you are really concerned, or maybe even twenty-eight days). Unless the logs are not linked, in which case the topic change is activated immediately instead. This channel many topic message change, so if it has not changed in fourteen days, it is time to change it! 05:43:56 Fine, but it's never time to change it to a MARKOV CHAIN >_< 05:45:46 Gregor: Maybe. Perhaps it can select at random from a list, one choice is markov, one is quotes database, and so on. And then decide at random from that. 05:46:34 And it is important that it counts from the last change that anyone made, instead of counting the time only from its own changes. 05:46:36 well i disagree with both of you, so there. 05:46:43 -!- azaq23 has joined. 05:46:51 oerjan: What is your opinion then? 05:47:41 Gregor, but I want a C++ keyword! 05:47:59 Sgeo: Donate $100 or more and I'll give you anything @libc.so :P 05:48:36 I'm not sure optbot is actually a Markov chain. 05:48:36 pikhq_: Not that I have any clue whether gcc would understand that access via that "bar" pointer there would be 16-byte-aligned. Or what auchar[1] would mean. Maybe there would be padding. 05:48:51 It's too semantically meaningful. 05:49:02 I think it's doing random log quotes. 05:49:50 I think it's doing random log quotes. 05:49:51 Sgeo: alise, that text is blurry though. 05:50:43 optbot 05:50:43 zzo38: yeah it still says it doesn't know the magnet protocol 05:50:46 Optbot 05:50:51 .optbot. 05:50:51 zzo38: We could name it "Norton utilities", after the great Discordian Saint. 05:50:55 [optbot] 05:50:55 zzo38: maybe he meant if you've checked from DSM you can't be sane 05:51:02 OK, definitely random log quotes. 05:51:02 So yeah, EVEN WORSE than a Markov chain X_X 05:51:08 zzo38: i do not think we should make rules that are more strict than what's needed to solve what is an actual problem. i consider the actual problem here to be that optbot wipes out information from the topic. 05:51:08 oerjan: ar isn't difficult. 05:51:19 -!- zzo38 has changed nick to fungot[optbot. 05:51:21 optbot 05:51:21 fungot[optbot: I also don't use reminder text in my cards generally (even if it has no flavor text or arts) 05:51:27 -!- fungot[optbot has changed nick to zzo38. 05:51:31 ... 05:51:35 Let's not. 05:51:42 I do believe that was an actual zzo38 quote. 05:52:03 pikhq_: Yes, I think it is something I was doing with Magic: the Gathering cards. 05:54:58 -!- asiekierka has joined. 05:55:52 Although I have never connected there, someone told me that FurNet immediately disconnects you if certain words are received from you. However, I want to try connecting from a computer with a reverse DNS containing one of those words. 05:58:26 While SlashNet does not immediately disconnect you, but some commands are prohibited if they contain prohibited words, while others do different things in that case. PRIVMSG is then prohibited but not NS, and using it with QUIT causes your quit message to be suppressed but it otherwise works normally. 05:59:11 Such a thing, no doubt, suffers from clbuttic problems. 05:59:45 `quote 06:00:49 The word happens to be "start keylogger" without the space (some faulty security programs disconnect you if you receive it on IRC). There are also other words such as a command to send a file but with a too long filename, that also is one of the words that is considered prohibited. 06:01:15 Definitely clbuttic problems. 06:01:56 pikhq_: Yes, there is, a bit. 06:02:19 (I, myself, do not think the IRC server should do that. Or, at least, make it a usermode for the receiver.) 06:02:30 -!- amca has quit (Quit: bye). 06:03:06 I consider naive filtering to be a clbuttic mistake 06:03:45 it rarely even buttists in solving the problem; it's no more effective than a glbutt wall 06:03:45 -!- EgoBot has quit (Remote host closed the connection). 06:04:07 coppro: Yes I do, too. A clbuttic mistake is found in many things and doesn't work well in many cases. 06:04:21 In fact it should be avoided. 06:05:14 (Or, at least, made into a usermode for the receiver. Some forum software makes it a configuration option in the preferences of the receiver. Some even allows custom filters as well as setting which ones are sender, receiver, or both.) 06:05:43 (And I mean the individual users can define custom filters for themself. I just turned off all built-in and custom filters.) 06:06:27 But, still, if someone is able to configure their reverse DNS, try connecting to FurNet with the forbidden words in your reverse DNS to see what happens. 06:06:45 consider the english language as a canvbutt; why restrict users from using certain colors? 06:08:04 coppro: Yes I agree that you should not restrict users in this way. They can decide for themself not to use certain colors, words, phrases, sentences, or whatever. Or, decide to use anything; perhaps even non-English texts if they will include some in whatever they are typing. 06:08:38 I concur wholeheartedly 06:12:04 Other similar mistakes that are meant not to censor/filter words but other things, also sometimes do that, such as someone wanted to replace their HTML with XHTML, so they just did a global search/replace "br" to "br /" and obviously that mixed up every word with "br" in it (replacing "
" would have been better, but still not perfect). 06:12:46 Or, in one instance someone managed to remove all "t" (only lowercase) from their main webpage (both inside and outside of tags). 06:16:08 What is your opinion about my notations for describing how pieces can move in a kind of chess variant game? 06:16:29 I have not seen that variant or notation 06:16:49 coppro: Notation for FIDE pieces: Rook is "xr1". Bishop is "1r1". Queen is "(x|1)r1". King is "(1)x1". Knight is "2x1". Pawn is "(1c|m)1+". 06:17:32 I don't understand it 06:17:32 I am not describing particular variants; I am talking about a general notation that might be used for multiple kind of games. Betza notation is another such notation. 06:17:42 this is probably bad 06:18:00 as I can't, from the FIDE pieces and your notation, understand the notatoin 06:19:17 coppro: OK I can explain a bit. It can have a form [horizontal-direction][horizontal-number][move-flags][vertical-number][vertical-direction]. 06:19:49 Where "r" means rider, "x" means the horizontal and vertical can be swapped, and so on. 06:19:55 Now can you understand it a bit? 06:19:59 not really 06:21:43 For the Rook example, "xr1" is where "1" is the vertical-number, "x" means that it could be horizontal instead, "r" means it can move multiple times in that direction. So, it can move horizontal or vertical, moving one step each time and is allowed to move more than one space. 06:22:51 ah... that's pretty cumbersome, I'd say 06:22:57 If there are no flags and the result would be ambiguous if that part is omitted, use "_" as the flags. 06:23:30 for instance, the x modifier seems silly 06:23:49 I would assume symmetric moves by default 06:24:01 Yes a bit more cumbersome than Betza notation, but probably more versatile (I did not describe all things about rule, yet). 06:24:43 coppro: OK, that is a good point; still removing such modifier might cause problems in some other cases. 06:25:16 it is easier to add symmetry than to remove it... 06:40:40 -!- zzo38 has quit (Remote host closed the connection). 06:41:27 -!- Mathnerd314 has quit (Read error: Connection reset by peer). 07:19:46 -!- aloril has quit (Ping timeout: 252 seconds). 07:30:17 -!- augur has quit (Remote host closed the connection). 07:32:35 -!- aloril has joined. 07:37:25 -!- asiekierka has quit (Read error: Operation timed out). 07:49:00 -!- Phantom_Hoover has joined. 07:53:05 -!- augur has joined. 07:58:43 -!- Okhotnik has joined. 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:01:44 -!- Okhotnik has left (?). 08:08:46 -!- HackEgo has joined. 08:26:11 -!- pikhq has joined. 08:26:13 -!- pikhq_ has quit (Ping timeout: 248 seconds). 08:31:56 * cheater00 adds symmetry to oerjan's gestalt 08:36:52 AUM 08:37:39 hey wait a minute, i've been trying to _avoid_ becoming spherical... 08:38:58 that's why i made you a horned-sphere. 08:40:07 aaaaaaaa 08:40:21 how diabolic. 08:40:47 mwahahahhaha! 08:40:58 also gave you a hunch 08:41:12 horns and a hunch, very diabolic. 08:41:28 i had a hunch it would be. 08:42:08 oh, and hoofs 08:42:16 oof 08:44:56 -!- oerjan has quit (Quit: leaving). 08:46:06 -!- cheater97 has joined. 08:46:11 it's hooves, isn't it? :D 08:46:28 -!- cheater00 has quit (Ping timeout: 248 seconds). 08:58:40 The Guinness Book of Records doesn't accept records with a health and safety risk. 08:58:43 *sigh* 09:03:11 Ugh. RIPE NCC is also exhausting quite rapidly. Not as crazy rate as APNIC but still pretty fast. 09:04:32 ... 09:04:46 YouTube won't let me create another account without my postcode. 09:05:55 * Phantom_Hoover enters SW1A 2AA 09:07:30 isn't that the east end 09:07:48 oh no strand 09:08:21 yeah, would be nice to be living there, wouldn't it? 09:09:05 almost got a job next to number 10, but didn't feel like moving back to london 09:12:48 What's SW1A 2AA? Some special code? 09:12:56 10 Downing Street. 09:13:01 Oh yeah. 09:13:46 Heh, reminds me of 90210 in US zip codes. That isn't special (but seems very popular nevertheless). :-) 09:14:20 Huh, /r/truetruereddit has 543 subscribers. 09:14:34 * Phantom_Hoover sees how far the rabbit hole goes. 09:17:17 Oh, only as far as truetruetruereddit, which has 9. 09:17:18 :( 09:23:16 -!- aloril has quit (Ping timeout: 252 seconds). 09:29:23 [[Using Plato's detailed account of Atlantis as a map, searches have focused on the Mediterranean and Atlantic as the best possible sites for the city.]] 09:29:27 YOU DON'T SAY 09:35:47 -!- asiekierka has joined. 09:36:20 -!- aloril has joined. 09:55:57 -!- pikhq_ has joined. 09:56:00 -!- pikhq has quit (Read error: Operation timed out). 09:57:35 -!- MigoMipo has joined. 11:10:44 -!- Zuu has quit (Ping timeout: 260 seconds). 11:36:48 -!- FireFly has joined. 11:43:45 -!- asiekierka has quit (Ping timeout: 248 seconds). 12:14:54 -!- elliott has joined. 12:15:35 optbot! 12:15:35 -!- optbot has set topic: logs: http://tunes.org/~nef/logs/esoteric/?C=M;O=D and http://208.78.103.223/esoteric/ | And, uh, well, not the entire compiler, I guess.. 12:15:41 >_> <_< >_> <_< 12:16:29 23:12:23 oklopol, so, uh, circuscheme. 12:16:30 23:15:28 How do you have an uncountably infinite tree? 12:16:31 you don't. 12:16:35 by definition. 12:16:45 well almost 12:17:03 23:18:00 hmm, that might be one reason why people like axiom-of-choiceless systems 12:17:03 23:18:06 even though they don't seem to correspond to reality too well 12:17:05 yes they do 12:17:12 So, what was he going on about countably infinite trees for? 12:17:14 I hope you're not referring to Banach-Tarski 12:17:26 Phantom_Hoover: because that's what they are 12:17:51 23:36:58 *two people never modify a file in the exact same way*; that's not a realistic user case. <-- um what if there's a single, obvious fix to a bug? 12:17:51 elliott, hm? Banach-Tarski would be an argument that systems with choice don't correspond to reality. 12:18:06 oerjan: that's possible, but even if the exact same change was made, you can trivially merge them 12:18:13 just, sg's algorithm can't 12:18:14 A stupid argument, but an argument nonetheless. 12:18:15 Phantom_Hoover: It is NOT. 12:18:22 elliott, I know! 12:18:30 *You* *cannot* *do* *that* *to* *physical* *spheres*. 12:18:38 Which is why I'm hoping ais doesn't mean it. 12:18:56 *But* if you're going to argue of choice or ¬choice corresponds to reality, Banach-Tarski would be an argument for ¬choice. 12:19:03 (i.e. you cannot deconstruct a ball into such "pieces" IRL) 12:19:11 Phantom_Hoover: no, banach-tarski wouldn't be either way 12:19:13 because it's irrelevant 12:19:30 elliott, OK, but *if you decided to use it either way, it would be for ¬choice*. 12:19:37 and? 12:19:44 "[14:00:45] 23:15:28 How do you have an uncountably infinite tree?" by having one? 12:19:44 I can still be hoping that ais won't use such a stupid argument. 12:19:57 but true, it's impossible 12:20:10 elliott, that's my point, he couldn't be, since he's saying that ¬choice doesn't correspond to reality. 12:20:14 wait, not it's not 12:20:19 sorry, being stupid 12:20:21 So he wouldn't use Banach-Tarski to argue it even if he was an idiot. 12:20:25 oh 12:20:29 axiom of choice_less_ 12:20:34 I thought he said choice_ful_ 12:20:42 but if degrees are finite, then every connected component must be countable 12:20:47 Phantom_Hoover: unless he thinks he can duplicate spheres :D 12:20:55 -!- optbot has set topic: logs: http://tunes.org/~nef/logs/esoteric/?C=M;O=D and http://208.78.103.223/esoteric/ | What should rem-0 be in funge? Taking /0 = 0 and thus 0?. 12:21:50 elliott, YouTube requires a post code to create an account. Comment. 12:22:21 Phantom_Hoover: Uh, no? 12:22:29 Step 1. Make Google Account. Step 2. There is no 12:23:37 if a tree is uncountable, then of course there even has to be a vertex of uncountable degree, because a countable union of countable sets is countable 12:23:43 elliott, well, it did for me... 12:24:00 same for graphs in general 12:24:03 connected ones 12:31:54 oklopol, so how would you do evaluation order in circuscheme? 12:33:21 -!- cpressey has joined. 12:33:35 oh lord 12:33:38 how long does this conference laugh 12:33:42 a value is assigned to every node such that for every node, its value is the value of its operations done on the values of its children 12:33:56 * Phantom_Hoover attempts incompetently to convince the FlightGear IRC channel that XML is not a terribly good format for storing trees. 12:34:00 this is done nondeterministically 12:34:01 that is all. 12:34:05 guten morgen fraulein, sprechen sie PYTHON??!?? 12:34:06 there's a fail 12:34:18 cpressey, NOOOO 12:34:22 THEY HAVE TURNED YOU 12:34:25 cpressey: PYTÖN 12:34:38 cpressey: please tell me you translated all the keywords to german 12:34:41 as alternatives 12:37:26 Entschuldigung nein 12:42:20 ' "[14:00:45] 23:15:28 How do you have an uncountably infinite tree?"' <- have a countably infinite number of branches at each node? at a guess. 12:43:15 and yes, rem-0 should be 0, logically. 12:43:21 rem-0? 12:43:27 yes, exactly like that 12:43:28 see topic 12:43:39 erm 12:43:41 or even one node 12:43:56 cpressey: indeed 12:43:59 that was me :) 12:44:05 i gave in and implemented funge-98. 12:44:06 in haskell. 12:44:07 http://www.abc.net.au/news/events/japan-quake-2011/beforeafter.htm 12:44:11 it's even reasonably fast!!!!!1 12:44:27 Conclusion: the tsunami has turned Japan into Gears of War. 12:44:31 it's stalled on like... implementing TOYS or something else non-trivial 12:44:45 but the point is connectivity is defined by finite paths, so connected components will be countable unless you have uncountable degrees locally, somewhere 12:44:47 i guess the acid test is what mycology says about it 12:44:58 cpressey: I pretty much coded to Mycology, so yeah :P 12:45:15 All GOOD including the handful of fingerprints. Really Mycology is a metacircular specification 12:45:21 Having almost no relation to the spec :) 12:45:37 (OK, OK, so most of the unambiguous cases are obvious.) 12:45:56 "metacircular specification"? 12:46:04 are you feeling alright? 12:46:22 cpressey: It defines the language it's written in. 12:46:25 elliott, how does it have no relation to the spec? 12:46:33 oklopol: right, only one node, as long as you also have infinite paths downard 12:46:34 It's an executable, metacircular semantics, serving as the specification of Mycology Funge-98. 12:46:45 cpressey: erm, or finite ones 12:46:49 Phantom_Hoover: because when the spec is ambiguous, it makes up its own interpretation, or if the spec says you must d o something totally useless 12:46:54 it goes with the more useful interpretation 12:46:59 Ah. 12:47:20 oklopol: er - what if you have a root node, with a countably infinite number of children, but they're all leafs? that's not uncountable 12:47:20 say take V = R \cup \{z\}, and E = R \times \{z\} 12:47:41 "have a countably infinite number of branches at each node? at a guess." sorry, misread 12:47:56 it doesn't help to have COUNTABLE degrees at each node 12:48:00 oh, if you have UNcountably infinite branches at one node, then yes the tree is uncountable :) 12:48:04 you will have to have at least one node with uncountable degree 12:48:09 as i proved earlier 12:48:31 ok, i believe you :) it was just a guess 12:48:46 because for all k, the set of nodes you can reach with a path of length k or less will be countable, if all degrees are 12:49:05 and the whole graph's vertices are a union of a countable number of these countable sets 12:49:11 -!- FireFly has quit (Quit: swatted to death). 12:49:18 so the whole graph is countable. assuming it was connected. 12:49:33 -!- FireFly has joined. 12:49:43 but it seems like you could represent the reals in it... someh 12:49:47 nope 12:49:47 how 12:50:09 see there's no node at the end of your infinite paths 12:50:13 :) 12:50:44 you have an infinite path in the graph, but any node on it is still reachable in a finite amount of steps 12:50:51 but there's no last digit in pi either 12:51:02 ...and the length of pi is countable 12:51:30 you can't biject reals with the digits of pi just like you can't biject them with this graph 12:51:35 Against my better judgement, read today's xkcd. 12:51:38 ok. giving up. thanks :) 12:51:40 Read the alt-text. 12:51:50 if this confuses you, read a book on set theory, this can be a bit mind-blowing at first 12:52:07 If you didn't have a reason to punch Randall Munroe in the face already, you will now. 12:52:33 cpressey, are you confused as to countable vs. uncountable infinity? 12:52:45 cpressey: all you have to know is i gave you a proof of countability, if you don't believe it, tell me where the error is, not where your intuition disagrees 12:54:22 elliott: it wouldn't occur to me to use that phrase; possibly because funge doesn't know what GOOD means. 12:55:00 e 12:55:01 r 12:55:02 what phrase 12:55:05 elliott: also, I assume by "funge-98" you mean you implemented Une-, Be-, and Tre- 12:55:14 elliott: the phrase "metacircular etc" 12:55:26 Phantom_Hoover: no, i'm not 12:55:32 cpressey: It's a program, that when run, prints out lots of GOOD or BAD lines according to whether the interpreter is correct or not. 12:55:49 elliott: yes, i know that 12:56:00 cpressey: Occasionally it contradicts the literal word of the Funge-98 specification when it says something particularly stupid; occasionally it makes up its own interpretation when there is extreme ambiguity. 12:56:06 cpressey, FWIW, the *set* of all infinite graphs is uncountable. 12:56:06 Therefore it defines its own language. 12:56:12 It is not executable semantics for a language. 12:56:15 But it is an executable specification. 12:56:22 elliott: my point was you have to know what GOOD means to interpret its rest 12:56:25 result 12:56:39 It's a predicate Myco that takes an interpreter I and returns whether that's a valid interpreter. You run it by doing I(Myco). 12:56:54 cpressey: Well, that's no more of a problem than the fact that the C++ spec is written in English. 12:57:14 elliott: would you call the C++ spec metacircular 12:57:15 cpressey: Of course a metacircular specification is not a very useful thing without any outside pointers, because the program could mean literally anything :) 12:57:31 Phantom_Hoover: ON A VERY NON-PEDANTIC NOTE, THE CLASS OF ALL GRAPHS IS A PROPER CLASS 12:57:41 It's more of a joke than anything, but if you implement the Funge-98 spec to the letter, then you'll be able to run Mycology and get enough info to make it pass :-P 12:57:45 (Probably.) 12:58:02 the place where it literally contradicts the spec, btw, is in y 12:58:04 < cpressey> elliott: also, I assume by "funge-98" you mean you implemented Une-, Be-, and Tre- 12:58:07 ? 12:58:23 cpressey: I replied, didn't I? Maybe it's in my paste-buffer. 12:58:31 cpressey: I implemented Befunge, but plan to extend it to N-funge for any N. 12:58:36 Language::Befunge does this 12:58:40 ok 12:58:45 I also plan to implement TRDS, because I'm a madman. 12:58:58 here's the bit that Mycology contradicts... except actually the spec contradicts itself 12:59:00 you're aspiring to be the next AnMaster 12:59:01 13. 1 vector containing the least point which contains a non-space cell, relative to the origin (env) 12:59:02 1 vector containing the greatest point which contains a non-space cell, relative to the least point (env) 12:59:02 These two vectors are useful to give to the o instruction to output the entire program source as a text file. 12:59:07 *14. 1 vector (for the second) 12:59:15 [[I usually respond to someone else doing something good by figuring out a reason that they're not really as good as they seem.]] 12:59:20 now, by the literal reading of the spec, #13 and #14 should always have an ACTUAL NON-SPACE CHARACTER there 12:59:21 — Randall Munroe. 12:59:24 i.e. it's not the tightest square bounds 12:59:36 it's just the tightest x and y for which there is another coordinate that goes with it to return a non-space cell 12:59:42 but then it says "These two vectors are useful to give to the o instruction to output the entire program source as a text file." 13:00:02 erm 13:00:03 that is 13:00:12 #13 should be the smallest (x,y) that contains a non-space cell 13:00:16 not 13:00:24 the smallest (x,y) such that when paired with #14, all non-space cells are contained within 13:00:33 ...but the o line, depending on how perversely you're willing to interpret useful, means it MUST be a rectangular bound, as intended 13:00:43 and mycology takes that interpretation, which is totally lame 13:00:49 elliott: with all the interesting ideas you have, why on earth did you implement Befunge-98 13:00:52 hi, you've all stopped listening :) 13:00:53 Phantom_Hoover: yeah that's kind of an interesting thing to say 13:01:00 cpressey: It sounded like fun. 13:01:07 cpressey: I do lots of stupid things. 13:01:11 oklopol, best part is that he's not averse to doing good things himself. 13:01:19 yeah elliott is pretty stupid 13:01:31 cpressey: It's less than 4000 lines of Haskell including fingerprints, and I got to use several type system extensions, so I can definitively state that implementing Befunge-98 is trivial. 13:01:46 (A problem is non-trivial when it takes over 5,000 lines of Haskell to implement.) 13:01:57 I really hope he gets tonnes of people telling him how funding that school in Africa is nothing to be proud of. 13:02:45 does he sport that on the webpage or something? 13:03:18 cpressey: AFAICT implementing Funge-98 is actually interesting, just not in the parts that matter 13:03:28 interesting things include efficient fungespace structures 13:03:39 uninteresting things include all the instructions :) 13:03:42 how can it be both interesting and trivial? 13:04:00 cpressey: I think that's a deeper question than you intended. 13:04:05 i don't 13:04:15 i think you underestimate me 13:04:23 Fermat's Last Theorem is pretty trivial. 13:04:30 Is it not interesting? 13:04:32 Oh god I'm having another attack of "I can't realistically go to university for another year and a half and I'll have all but one of the qualifications I actually need by this summer." 13:04:39 it's trivial? 13:04:44 can you implement it in less than 5kloc of hskell? 13:04:46 oklopol: The theorem is. 13:04:52 That the only proof we have isn't is irrelevant. 13:05:01 (Well, it's relevant; it contributes to the interestingness.) 13:05:06 well i assumed you meant the implementation. i mean you didn't say *befunge* is trivial, you said implementing it is 13:05:08 elliott, weeeelll... 13:05:19 befunge being trivial, and implementing it being interesting have nothing to do with each other 13:05:25 *proof 13:05:29 The theorem *itself* isn't trivial in the sense of "has no other use in mathematics"; the proof alone demonstrates this. 13:05:38 Phantom_Hoover: It's trivial in statement. 13:05:52 Yes, OK. 13:05:52 cpressey: Anyway, I haven't _written_ a fancy fungespace structure :) 13:06:00 Just a decent enough one so far to pass Mycology. 13:06:07 oh so the actual theorem is both interesting and trivial, right 13:06:12 It still has pathological cases. 13:06:14 i thought you mean the interesting thing was the proof 13:06:17 oklopol: no 13:06:23 *meant 13:06:26 oklopol: the fact that the proof is so complicated contributes to the interestingness of the theorem though, IMO 13:06:34 surely 13:06:36 because the theorem is so trivial 13:06:49 elliott, and the method of the proof also increases the interestingness. 13:07:14 yes! now let's all pretend we understand the proof 13:07:32 After all, in its original statement it's just a rather isolated number theory thing with none of the vastness of the influence it actually has 13:07:45 And surely we all understand the *outline* of the proof? 13:07:56 Vaguely, I didn't really look too hard 13:08:09 oklopol: so which are you gonna prove the riemann hypothesis to be when you grow up, false or true 13:08:26 I thought oklopol didn't like numbers very much. 13:08:38 he's going to prove it to be trivial 13:08:46 by implementing it in Haskell? 13:08:48 awesome 13:08:54 Nah, the Riemann hypothesis isn't trivial in statement. 13:09:05 Although it's not all that complex. 13:09:31 it requires complexes, it's not trivial 13:09:40 Complexes are pretty trivial. 13:09:45 no they're not 13:09:48 reals aren't 13:10:05 Well, OK, but once you have the reals you have the complexes trivially. 13:10:54 " And surely we all understand the *outline* of the proof?" << no never heard it, what is it? 13:11:55 Phantom_Hoover: please summarize the outline of the proof for oklopol's benefit 13:12:02 here's how much i know: elliptic something 13:12:10 i'll wait until Phantom_Hoover finishes, then ask cpressey for the tl;dr 13:12:26 oklopol, if there exists a solution to the equation, that implies there exists a certain elliptic equation which cannot be modular. 13:12:35 cpressey: btw if i hadn't been implementing befunge-98 i'd have been playing minecraft, so it was probably a positive use of my time :) 13:12:42 Sorry, *cannot have a corresponding modular form 13:12:49 what what's an elliptic equation? always wondered but never checked 13:12:52 *and 13:12:54 wonder how long amazon shipping takes, like a year prolly 13:13:03 elliott: you just keep believing that 13:13:03 or like, seventy years 13:13:26 cpressey: i'm not quite sure you understand just what a waste of time minecraft is 13:13:30 oklopol, I don't know, really. They're a certain form of equation with interesting behaviour which has nothing to do with ellipses directly. 13:13:55 okay, i have this hunch it's just a third degree equation with multiple variables and some extra shit 13:13:58 but let's wp 13:14:24 And modular forms are something to do with complex analysis and group theory and maybe topology. 13:14:49 And Taniyama-Shimura says that they're equivalent in a specific way. 13:15:05 http://www.xkcd.com/865/ me like 13:15:26 what are equivalent in a specific way? 13:15:31 those fields? 13:15:50 oklopol, erm, elliptic equations and modular forms. 13:16:10 oh erm right 13:16:22 some crazy shit they got there 13:16:42 oklopol: that one was a pretty good xkcd for recently 13:16:49 ISTR they have some generator thingy which happen to correspond perfectly, and the conjecture was that that the generator thingy for elliptic equations would always correspond to a generator thingy for a modular form. 13:16:55 we had this fun little course by some famous guy about automata in number theory so now i'm all about decimal expansions temporarily 13:17:10 i love how this has gone from 13:17:10 i love generator thingies 13:17:11 i occasionally like numbers, but i suck at that stuff :( 13:17:15 we all know the thing of the thing right? 13:17:18 no, tell me 13:17:21 well it's A and B 13:17:24 what's A and B 13:17:26 uh 13:17:28 dunno 13:17:37 to uh 13:17:38 to that 13:17:43 i have difficulty keeping track of my words. 13:18:01 cpressey: generators, the best thing ever!! 13:18:09 or something 13:18:09 But anyway, you can get an elliptic equation the generator thingy of which cannot correspond to a modular form, so ¬Fermat → ¬Taniyama-Shimura. 13:18:56 So Taniyama-Shimura → Fermat, and Wiles' proof is a proof of a sufficient subproblem of Taniyama-Shimura. 13:18:58 do you have any kind of intuition for what this generator thingy is? i mean i don't see how an equation can have a generator of any kind 13:19:14 oh umm 13:19:16 sorry 13:19:23 let me read that again 13:19:36 BOMBS, FROGS, GOATS 13:19:44 THEN BOMBS AGAIN 13:20:10 Phantom_Hoover: i... newsletter, can is ign up 13:20:11 ... 13:20:12 cpressey: 13:20:13 not Phantom_Hoover 13:20:36 NO YOU ARE WRONG. CPRESSEY=PHANTOM_HOOVER 13:20:45 did wiles prove that in certain cases, the generator thingy of an elliptic equation (curve?) corresponds to one of a modular form, and that if fermat is not true, then you find an elliptic equation of this form such that you can't find a modular form for it? 13:21:06 oklopol, yeah, basically. Well. 13:21:17 wiles proved he's a wily fox 13:21:18 get it 13:21:20 wiles...y fox 13:21:29 The Fermat-to-elliptic-curve thing was proven by someone else. 13:21:31 NO YOU ARE WRONG. CPRESSEY=PHANTOM_HOOVER 13:21:33 which one's the alter-ego 13:21:34 there is a course on elliptic curves in our uni occasionally, but i think it's more about its applications in coding theory 13:21:36 oh okay 13:21:40 is ph you pretending to be an irritating kid, because that's really funny 13:21:45 * elliott waits for swatting 13:21:47 anyone know what this generator thingy is called or based in 13:21:47 or whatever the kids do these days 13:22:12 they do technology 13:22:16 wow. 13:22:20 i don't want to be technologised. 13:22:34 well i'm still wondering about the generator thingy too, are we talking about some sort of generating set w.r.t. some operation, that generates the set of solutions to an elliptic equation or what? 13:22:39 irc doesn't count of course 13:22:50 * Phantom_Hoover swatpans elliott 13:22:57 can't wait until facebook reinvents ir 13:22:58 c 13:23:01 probably they already have 13:23:02 Wait, I forgot the little --==\#/ 13:23:15 fun fact, only lamers make up their own swatting insrtument 13:23:21 mostly cuz vorpal did it first 13:23:35 I didn't, I stuck oerjan's swatting instruments together. 13:23:37 argh, now i wanna know how fermat is proved :( 13:23:48 oklopol: with ducks :) 13:24:21 the proof is in the pudding 13:24:30 "software without software: the zen of softwareless software" 13:24:33 oklopol, well, I got this from a book which was (highbrow) pop mathematics, so I'm by no means an expert. 13:24:47 HIGHBROW POP MATHEMATICS 13:24:55 can i get that on a shirt 13:24:56 cpressey: i heard people who invented computers hard-wired them to prevent the tabs vs spaces dispute. 13:25:01 cpressey: that... 13:25:09 cpressey: i can't decide whether love or hate 13:25:51 elliott, y'know, not going over the same thing fifty times because you can't depend on the audience having paid attention. 13:25:57 I'M LOOKING AT YOU BRIAN COX 13:26:22 Phantom_Hoover: he used to be a pop star, he's used to making money by repeating the same thing over and over again for three minutes 13:26:24 OH 13:26:24 SNAP 13:26:29 XD 13:26:35 I have to steal that. 13:26:47 * elliott PATENTS JOKE 13:27:52 elliott: choose life. 13:28:10 that movie had nothing to do with spotting trains 13:28:20 -!- hirnstein has joined. 13:28:20 * cpressey wants money back 13:28:24 cpressey: :D 13:28:34 i hope some old conservative trainspotters went and saw it or something 13:29:04 Wikipedia: There are still some pure 'trainspotters' (see below), but a large proportion of UK enthusiasts have wider interests than mere 'spotting'. 13:29:06 ;) ;) ;) 13:29:17 "[15:08:50] oklopol, well, I got this from a book which was (highbrow) pop mathematics, so I'm by no means an expert." <<< well of course you did, no one's crazy enough to actually read the proof; i'm just wondering if the book used a fancier term than generator thingy that i can google :) 13:29:35 i read the proof 13:29:37 by reading the header 13:29:37 cpressey: it was the hobby of the uncle of the kid who can't run away from the shop at the beginning 13:29:41 and then scrolling really fast to the bottom 13:29:43 It was L-series or something for elliptic forms. 13:29:46 or something 13:29:56 *equations 13:29:58 still took like three minutes 13:30:03 wait what is "highbrow" pop mathematics? 13:30:05 No idea what the corresponding thing is for modular form. 13:30:08 like, has some details in there 13:30:14 oklopol, yeah, basically. 13:30:17 Phantom_Hoover: god damnit stop saying the same words as i! 13:30:17 right 13:30:22 one of these http://www.ncomputing.com/products-lseries 13:30:23 Assuming your audience aren't scared by numbers. 13:31:15 only certain numbers scare me 13:31:18 3 13:31:20 3 scares me 13:31:25 3333333333333333333333333333333333 13:31:35 Omega, because Cthulhu lives there. 13:31:37 <3 3 13:31:40 3 sort of looks like a butt 13:32:02 3 IS NOT LESS THAN 3 13:32:16 mine is 13:32:24 What, they renamed the Taniyama-Shimura Conjecture to the modularity theorem? 13:32:30 Bloody mathematicians. 13:32:49 i dislike using people's names in theorems 13:33:00 gasp! DISQUS IS NOT IN THE CLOUD 13:33:03 yeah it's sort of annoying 13:33:09 oh the humanity 13:33:11 on the one hand every second theorem is euler's theorem 13:33:13 :O 13:33:19 cpressey: nooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo 13:33:23 * elliott cries 13:33:32 on the other it's the Mzxdzszszszsz theorem, try and pronounce it. 13:33:33 elliott, have you seen those stupid "to the Cloud!" Windows ads and raged at them accordingly? 13:33:46 Phantom_Hoover: i just want Windows 8 Cloud 13:33:56 that runs by downloading the code for everything from microsoft servers 13:34:00 and then uploading it to another server 13:34:01 where it executes 13:34:03 and does VNC to you 13:34:16 Euler's Taniyama-Shimura Modularity Theorem 13:34:36 can we just prefix Euler's in front of everything in mathematics? 13:34:38 save a lot of trouble 13:34:38 cpressey: almost. you need to find the kanji for the names. 13:34:46 in fact, just call all constants Euler's constant 13:34:49 and all theorems Euler's theorem 13:34:50 cpressey: and then have a german maths student pronounce it. 13:34:59 -!- Zuu has joined. 13:35:01 Euler's conjecture 13:35:23 i need to do stuff (this is a general statement) 13:35:36 cpressey: just do it. 13:36:04 cheater97: that's what that shoe company tells me, too 13:36:22 cpressey: you should visit here more often, so that such silly thoughts of "doing things" are quickly forgotten 13:36:36 very therapeutic 13:37:16 optbot! 13:37:16 -!- optbot has set topic: logs: http://tunes.org/~nef/logs/esoteric/?C=M;O=D and http://208.78.103.223/esoteric/ | asiekierka, not in funge 93. 13:37:19 optbot! 13:37:19 -!- optbot has set topic: logs: http://tunes.org/~nef/logs/esoteric/?C=M;O=D and http://208.78.103.223/esoteric/ | "Hello from my TABLET!!!". 13:37:22 i has exam tomorrow so i'm probably going to go real soon. 13:37:44 oklopol: so i actually bought the book, WHO'S DEDICATED *NOW* 13:37:55 good luck, oklopol 13:38:00 oh 13:38:01 uh 13:38:03 good luck 13:38:07 i kinda just tend to assume he'll doperfectly 13:38:10 elliott: how many buttons did you have to press? 13:38:10 *do perfectly 13:38:10 oklopol: bad luck! i hope you crash and burn. 13:38:11 like always 13:38:19 oklopol: like 25??? 13:38:22 elliott: i had a mistake in my graph theory exam 13:38:25 it was a very stressful clicky experience 13:38:34 (it's an old student custom to wish bad luck on exams otherwise you might spoil it) 13:38:35 "a bit vague" 13:38:41 oklopol: :O 13:38:47 oklopol: oh, i just saw why that tree thing isn't uncountable :) 13:38:48 give them ALL THE FUCKING DETAILS 13:38:54 prove everything from the peano axioms from scratch 13:39:02 weird, i wasn't even really thinking abotu ti 13:39:04 cpressey: oh so you read my one line proof already? 13:39:06 :P 13:39:21 jk 13:39:22 :P 13:39:32 :P 13:40:01 this touchpad would be nicer if ubuntu wasn't stupid about it 13:40:21 but um, in the ergodic theory exam i actually made this huge mistake, the theorem was not provable using my technique at all 13:40:41 oklopol: ... 13:40:51 /ignore oklopol ;; too far 13:40:52 i don't think i'll ever get over that 13:41:08 better put a sticky note on this laptop reminding me to never talk to oklopol again 13:41:09 i was like LOL SO EASY LOLOLOL 13:41:16 :| 13:41:18 i trusted you oklopol. 13:41:51 but turns out things were east because i had started my proof by essentially stating that for every three points A, B, C, B is between A and C in pretty much every possible sense 13:41:55 *easy 13:42:30 lol wtf? 13:42:44 well, it is called "B" 13:42:46 you have just degraded yourself in my eyes :D 13:42:49 what more do you need? 13:43:00 oklopol is not very clever. 13:43:05 he 13:43:08 never learned the alphabet. 13:43:11 :| 13:43:25 basically that meant i accidentally reversed a < and didn't notice because a certain theorem applied in such a nice way to the result 13:43:45 well i'm certainly not clever, i doubt i've ever claimed that 13:44:10 now i know there's a reason why there's "klop" in "oklopol" 13:44:24 erm yes :D 13:44:29 :D 13:44:35 "python" is an anagram of "hypnot", which is the first part of the name "hypnotoad", which is from an animated series which is known to refer to programming languages 13:44:51 that's all the proof i need 13:46:14 wait what 13:46:28 i wonder if i have that ergodic theory exam paper anywhere, i can't seem to recall what the problem was... 13:46:33 should prolly ask ilkka tomorrow 13:46:35 "oklopol" is an anagram of... well i'm sure i'll find something 13:46:48 i'm not know what to say. 13:46:51 i'm sure he likes me using his name here 13:46:56 i shall call him mister x from now one 13:46:57 *on 13:47:23 -!- hirnstein has left (?). 13:49:20 oklopol is a villa. 13:49:40 most everywisely 13:50:03 loop-lok 13:50:14 lok is not english 13:50:31 look-lop 13:50:49 lop look works in theory 13:50:54 oh 13:51:01 look-lop could be a verb i guess 13:51:02 -!- pikhq has joined. 13:51:06 inspect, then cut 13:51:09 yeah 13:51:17 -!- pikhq_ has quit (Ping timeout: 255 seconds). 13:51:26 looklop would make a great higher-order function 13:51:30 i'm not sure what it does though 13:52:25 what is it with pythonistas and list comprehensions? EVERY LANGUAGE HAS THOSE 13:52:29 well, approximately 13:52:45 but they just looooooooooooooooooooooooooove them 13:53:10 python's are better tho 13:53:52 or not, but still 13:53:54 i'll have to find out why someday 13:53:59 for now, adios 13:54:12 the best os there is 13:55:59 -!- asiekierka has joined. 13:56:10 -!- elliott has quit (Read error: Connection reset by peer). 13:57:25 -!- elliott has joined. 13:58:26 -!- cpressey has quit (Ping timeout: 250 seconds). 14:06:28 what is it with pythonistas and list comprehensions? EVERY LANGUAGE HAS THOSE 14:06:31 not C, or perl 14:06:33 :) 14:06:35 or ruby 14:06:43 all good languages have them 14:06:49 but pythonistaaas have never used good languages 14:08:19 Which languages are good? 14:08:30 Coq doesn't have list comprehensions! 14:09:06 Haskell 14:09:13 Uhh... Erlang has them I think X-D 14:09:23 I think cpressey's used Erlang, so yeah 14:09:36 Epigram doesn't! 14:23:59 Phantom_Hoover: You could probably define it in Epigram... dunno about the syntax though :) 14:24:04 You could do it with syntax in Agda. 14:24:22 php doesn't have list comprehensions! 14:27:36 -!- cpressey has joined. 14:28:09 oh and one more thing, INTROSPECT IS NOT A TRANSITIVE VERB 14:28:17 I CANNOT INTROSPECT YOU 14:29:23 oklopol: what it was was that i saw how to diagonlize the tree i was building from the reals 14:29:33 -!- fungot has quit (Quit: more of them things). 14:29:41 see, it took me this long to even explain that part of it 14:29:44 ? 14:30:00 how do you build a tree from the reals exactly? 14:30:26 well, i thought you could, but you can't. just like you can't build a table for them, classic diagonalization argument by whatshisname. 14:30:33 german guy 14:30:45 well who cares who did that obvious thing 14:30:49 I CANNOT INTROSPECT YOU 14:30:50 :D 14:30:58 make a language based on objects introspecting other objects 14:30:59 elliott: AAAAIIIIRRRRGGGGGHHHHHhhh 14:31:01 >______> 14:31:11 elliott: IT ALREADY IS 14:31:13 like, they cause the object to introspect itself and return what it sees 14:31:16 i think it was gdel's idea 14:31:17 but the object itself can't use it 14:31:34 (opposite of a public method, it's a ... something method?) 14:31:46 private-and-only-usable-by-others 14:32:02 cpressey: no, objects can call their own private methods :P 14:32:07 and er 14:32:13 other objects can't call the private method 14:32:17 so in fact it's the opposite of private 14:32:19 you saw how to diagonalize the tree you were building from the reals? can you elaborate, you take a tree with nodes tagged with reals and then what? 14:32:37 public-but-only-discoverable-through-"introspection"-by-others 14:32:50 cpressey: I'm saying that the introspect method ITSELF would be this :P 14:33:00 You would, of course, access all methods by finding a private method using the introspect method. 14:33:09 cpressey: To call one of your OWN methods, you get another object to do it. 14:33:28 or do you use their decimal expansions or something? 14:33:29 You do this by introspecting the other object (causing it to introspect itself), getting the appropriate method that ends up calling you, and passing yourself to it. 14:34:58 cpressey: come on, this is genius. 14:35:00 oklopol: no, i took my original tree (countable # of children at each node, countably deep.) and... assigned decimal expansions to each path (every child is another digit in a countably long number). and... some flash of "you could read that tree and diagonalize to derive a path that isn't in it". 14:35:10 two types of method 14:35:19 only_other_objects_can_access, and private (which you use for public) 14:35:22 basically realizing it's not really different from the table from ... that guy 14:35:32 yeah the crazy guy 14:35:36 erm oh 14:35:47 gdel, i thought you mean that 14:35:49 :D 14:35:54 guy who doesn't believe in reals 14:36:03 gdel was crazy too, ofc, but not mathematically 14:36:05 ceiling burger? 14:36:10 (zeilberger) 14:36:13 no 14:36:27 starts with a k? i should look this up 14:36:38 kantor 14:36:45 or, cantor 14:36:47 if you prefer. 14:36:52 oh right 14:36:53 was he much crazy? 14:37:02 cpressey, he was a bit crazy. 14:37:03 cantor 14:37:16 ISTR he ended up in a mental institution. 14:37:20 gdel came up with similar ideas with the integers 14:37:48 "guy who doesn't believe in the reals" made me think of someone else 14:38:00 kronecker 14:38:04 i had to look that one up though 14:38:11 no, not kronecker 14:38:11 yeah finitists 14:38:13 john something 14:38:14 zeilberger is cooler though 14:38:17 he doesn't believe in the integers :> 14:38:23 or even the naturals. 14:38:26 i don't believe in the integers 14:38:29 well, i mean 14:38:33 only the prime ones 14:38:38 your graph thing is similar to something a crazy guy said once 14:38:43 cpressey: that's an infinite set, it doesn't exist 14:39:15 Why doesn't he? 14:39:25 elliott: much like aristotle, i have access to an infinitely powerful computer, so it exists for me 14:39:26 Phantom_Hoover: because they're infinite 14:39:37 cpressey: you do? can I have an account? 14:40:00 Yeah, and why doesn't he believe in infinite sets? 14:40:00 elliott: sure thing. to start, just speak into the parrot 14:40:18 Phantom_Hoover: because he's an ultrafinitist/strong constructivist 14:40:26 elliott: make sure to close your eyes when the zebras run past 14:40:28 the rest if trivial 14:40:32 is 14:40:45 cpressey: this is an interesting look into how prolonged exposure to Python damages the mind. 14:41:06 elliott: SNOW CRASH OMG U HAVE TO READ SNOW CRASH HAVE YOU READ SNOW CRASH??? 14:41:28 this, list comprehensions, and introspecting other things. 14:41:44 cpressey, how long does PyCon last? 14:41:48 oh, and a lot of dick-waving general nerdiness of course 14:42:04 ooh, I was even _planning_ to read snow crash sometime 14:42:08 Phantom_Hoover: well, the "Con" part of it ends today. there is a "sprint" part that i'm not attending that continues the rest of this week 14:42:12 "The book presents the Sumerian language as the firmware programming language for the brainstem, which is supposedly functioning as the BIOS for the human brain." 14:42:14 but no longer! 14:42:35 "[No-Intro] Nintendo - Super Nintendo Entertainment System (20100805) [Various/1990]" FUCKYES 14:42:42 Sumerians and their NLP 14:43:01 coisse them ratfaces 14:43:50 wish i knew what merging is. 14:44:02 elliott: i'm really surprised that you don't have access to an infinitely powerful computer already, given how frequently you spell the letter E backwards, and A upside-down 14:44:16 zzo38 has taken over cpressey's mind! 14:44:24 or possibly, everyone else's. 14:44:25 also it was john gabriel http://scienceblogs.com/goodmath/2010/02/_so_remember_back_in.php 14:44:28 it takes some skill to misspell a letter 14:44:35 they're "discussing" that tree thing 14:44:42 very fruitful a conversation 14:44:51 oklopol: is that sarcastic? 14:44:58 it's taking time to load for me 14:44:59 oh most definitely 14:45:51 rather, not loading at all. oh well. i know the usual "hi i'm an internet kook, here's why cantor was wrong" pattern 14:46:48 there was one rather spectacular display i saw, some usenet group, on google groups -- i'm sure it wasn't the only one 14:46:55 dude was apparently famous 14:46:59 (on usenet) 14:48:14 well that's him prolly 14:48:27 he's famous for being an incredibly retard 14:48:30 *incredible 14:48:53 oh 14:48:54 knol 14:48:56 you could have just said 14:49:03 i've probably even read it before 14:49:08 but knol is basically crackpot heaven 14:49:12 i didn't remeber, obviously 14:49:21 you can write anything you want, it looks like an encyclopedia, and nobody can edit it!!!!!!! 14:49:29 that sounds familiar 14:49:35 australian? 14:49:39 it's Google's shitty shitsite 14:49:40 or new zealander? 14:49:41 cpressey: err, the person? 14:49:46 i dunno 14:49:46 yeah, vague memories 14:49:48 ok 14:50:49 as long as he gets in long arguments about why cantor and/or godel were wrong because you can prove them wrong by programming in lambda calculus and also peano=penis... it doesn't really matter how many of him there are 14:51:25 peano=penis? has anyone called him Penis please say yes 14:51:26 penis arithmetic 14:52:08 another vague memory that the peano numbers are due to peano having a name that is really "penis" in disguise 14:52:32 trying to find this "knol" fellow; google insists that "knol" is a unit of knowledge 14:52:38 oh my god. now i want a radical feminist argument that the reals are countable 14:52:45 based on mathematics being a patriarchy 14:52:50 trying to find this "knol" fellow; google insists that "knol" is a unit of knowledge 14:52:53 that _is_ what it is 14:52:56 it's google's site 14:52:57 he's famous for being an incredibly retard ← the Good Math guy? 14:53:00 hope of crackpots 14:53:09 Phantom_Hoover: *MarkCC, and he's awesome 14:53:27 Phantom_Hoover: no, the guy he talks to behind that link 14:53:29 Yeah, I was thinking that he didn't seem to be a retard from what I'd read. 14:53:31 the good math guy is okay 14:53:48 But yeah, bloody page won't load. 14:54:02 scienceblogs seems to be completely down for me 14:54:02 hmm, weird 14:54:03 too 14:54:27 Oh good, Google have a cache. 14:55:17 sigh. googling for (peano penis lambda calculus) gets you #esoteric channel logs on the first page. :) 14:57:07 getting closer -- found an eric naggum thread on comp.lang.lisp -- still not nuts enough, though 14:57:38 1. I do not think all the real numbers can be represented in any radix system. 14:57:38 2. I think the reason that Cantor was unable to 14:57:38 show the real numbers are countable is due to the fact that real numbers are not well-defined. 14:57:38 For example, every rational number can be logically defined in terms of pairs of natural numbers (natural numbers are themselves special ratios that were derived from the concept of ratio, but this is another story). One can't do this with real numbers unless one assumes the same can be represented using radix systems. 14:57:38 3. I DO NOT believe the real numbers are *countable* - surprised? Why? Because these are not *well-defined*. However, if one uses Cantor's reasoning (which is completely beserk), one can show logically as I have, that the real numbers are indeed countable. 14:57:38 I can just see you trying to swallow this one with your limited intellectual faculties. 14:58:57 possibly he's just being silly, but you shouldn't joke about math :\ 14:59:13 math is where no one has to disagree and everyone happy 14:59:13 not without a *really* colourful wig on 14:59:18 math <3 15:02:16 http://www.flickr.com/photos/mochimedia/5318304839/ aaaand that pretty much sums up my disgust. 15:06:33 -!- pikhq_ has joined. 15:06:51 -!- pikhq has quit (Ping timeout: 248 seconds). 15:08:23 http://wn.com/Befunge 15:08:24 why? 15:08:33 i mean, why video? 15:08:45 oh you are sitll talking 15:08:48 hello!!!!!!!!!! 15:08:58 also.. 15:09:03 befunge for garrysmod video what why 15:09:04 why even exist 15:09:08 getting closer -- found an eric naggum thread on comp.lang.lisp -- still not nuts enough, though 15:09:10 also, why nixie tubes??? 15:09:13 erik, you damned merican >:D 15:09:14 i mean, on that page? 15:09:40 well 15:09:48 that video though at least shows what a befunge ide _should_ look like :) 15:10:27 i'm trying to find an implementation in java 15:11:33 Deewiant's page doesn't list any 15:11:50 google gives me lots of spam results "download free Befunge98 java" 15:12:27 there's YaBI93, but that's 93 15:12:30 -!- BeholdMyGlory has joined. 15:15:12 Jesus, this John Gabriel guy really is an idiot. 15:15:38 yeah he even makes elliott look smart 15:15:52 totally 15:19:32 as Gabriels go, I prefer Peter 15:21:01 screw this ima gonna build the ultimate save the world open source python package and upload it to pypi and everyone will send me patches and love and they'll offer me a job at google with guido and it will be the best ever package for totally doing that yeahh 15:21:02 -!- fungot has joined. 15:21:46 and it'll use rabbitmq somehow 15:21:49 yeahhhhh 15:22:07 cpressey: i 15:22:40 elliott: i approve. that is the only appropriate response. 15:23:19 cpressey, "i'm sorry. i'm so sorry." was in fact what he was going to say. 15:23:26 no 15:23:28 i was going to say "i" 15:23:45 to be pronounced as "I—" 15:25:50 Phantom_Hoover: i have reconsidered. i will also consider that response to be appropriate 15:26:12 cpressey, in that vein, 15:26:20 * Phantom_Hoover powers up the Device. 15:26:27 dear god no 15:26:36 -!- iconmaster has joined. 15:26:38 cpressey: What about "*tears well up* ... *silence* I'll tell the Internet." 15:26:38 * cpressey ducks and covers 15:28:33 http://www.focus.com/briefs/software-development/12-coding-languages/ 15:28:43 ok, so. 15:28:55 as much as i don't like this crowd, at least they're not THAT. 15:29:58 dude does not seem to understand something fundamental about why half the languages on that list were created 15:31:29 CPRESSEY MUST NOT BE REMEMBERED AS A PYTHONISTA 15:31:37 * Phantom_Hoover points the Device at PyCon. 15:32:48 Erm, wait, where is PyCon. 15:32:55 Atlantis 15:33:01 -!- cpressey has quit (Quit: Lost terminal). 15:33:06 Georgia‽ 15:33:13 * Phantom_Hoover turns the power to full. 15:36:56 -!- copumpkin has joined. 15:37:33 quintopia, you'll probably want to stock up on stuff. Quickly. 15:38:40 * Phantom_Hoover reads that article cpressey linked. 15:40:02 Dear god. 15:40:11 * Phantom_Hoover re-aims the Device. 15:40:58 Just aim the Device at everything. 15:41:01 Much more efficient. 15:41:20 "who, for programmers, sure knew how to throw around the personal attacks and backbiting" 15:41:24 programmers aren't known to be dicks? 15:41:29 what is this alternate universe I'm living in 15:41:45 seriously though, is this how new professions are formed? WHY IS OUR ENTIRE FIELD FILLED WITH CHILDREN 15:41:54 (apart from the good children, you know) 15:42:04 (like me) 15:42:04 (not like ph) 15:42:24 HAHAHAHAAHAHA I love how the befunge example loses all its spacing 15:42:34 "Befunge remained virtually impossible to compile until very recently" 15:42:43 elliott, I don't think you understand how the re-stabilised abelianiser works on the zygomorphic manifold. 15:43:06 Aiming the Device works the other way around to everything else. 15:43:07 õ_O 15:43:12 Do they know of jitfunge? :p 15:44:20 Unlike some of the other languages on our list, VMRL had some wide audience appeal and the potential for a lot more. At its height in 1997, VMRL was occasionally used in personal home pages and on some 3D chat sites such as "CyberTown." 15:44:27 aoijsvkdnlghrtw-m049geisfdjiovxjknm please let sgeo not see this 15:44:34 "Yes, I know that Haskell is a relatively popular language compared to the other flops on this list. That said, Haskell has always had the feel of an also-ran language, despite its small but strong (and vocal) fans." 15:44:36 oh god 15:44:36 this is going to be painful 15:44:55 HASEK 15:44:59 HASKELL IS NOT DEAD YOU MORON 15:45:01 gbnjHG|F';louri5ye4oaw0da] 15:45:05 'f,gmhjkfwodlpax,jcrdepkjhfgjdxlzkjdfhgcszl,mskjhr4nemdcfyk,iol.,y 15:45:11 ... 15:45:14 Phantom_Hoover: it calls delphi dead 15:45:22 apparently vb6 killed it 15:45:22 Is it? 15:45:27 I read that. 15:45:48 -!- cpressey has joined. 15:45:51 hey cpressey 15:45:52 you missed 15:45:52 all 15:45:53 the fun 15:45:53 blub blub 15:45:56 i read the atricle 15:46:06 cpressey, good news, you're not going to get Deviced today. 15:46:07 i moved my hands wildly around my keyboard in lieu of replying MULTIPLE TIMES 15:46:08 which article 15:46:14 cpressey: the one you linked to 15:46:15 sorry 15:46:16 "list" 15:46:20 I discharged it on the peoplw who wrote that list. 15:46:20 oh yeah 15:46:22 *people 15:46:25 yay 15:46:27 see, i said 15:46:41 perspective, it's all about keeping it in perspective 15:46:51 cpressey: READ THE LOGS lest i have to repeat all my hilarious comments. ok they're not hilarious 15:46:53 at all 15:46:56 ok 15:46:57 will 15:46:58 i just say things anyway 15:46:58 do 15:47:02 but but 15:47:08 cpressey: i like how the befunge example lost all spacing 15:47:16 i would like to live in a world where befunge programs are shared via html renderings 15:47:23 and piecing together the control flow is the receiver's problem 15:47:40 cpressey, how do you know about the Device's projective calibration of tensor rings? 15:47:45 YOU KNOW TOO MUCH 15:49:16 oh yes, that logread was quite enjoyable 15:50:30 goddammit i meant to type "atricle" 15:50:43 i seriously typo'd an intentional re-typo 15:50:51 fingers, bloody fingers 15:51:10 :)) 15:51:13 atricle atricle atricle 15:51:29 cpressey: *fnigers 15:57:12 If only PyFunge were implemented in ruby or something 15:57:42 And if only there was a RubyFunge and it was implemented in ... uh.... 15:57:45 let's say Clean 15:58:07 seriously, as it stands, this is way too predictable 15:59:23 ok I have to figure out a way to pack up all my shit^H^H^Hwag 15:59:36 MongoDB mug. bitchen 15:59:41 I'll treasure this 15:59:50 oh, a roomerang 16:00:03 how whimsical 16:00:28 and... something you punch out and clip together, from Disney. 16:00:48 and a bunch of junk mail, basically 16:01:07 and... laptop 16:01:09 so, um 16:01:12 later :) 16:01:17 -!- cpressey has quit (Quit: leaving). 16:07:00 Wait, DMM explained the Banach-Tarski paradox? 16:09:54 hello.c++:36:5: error: inconsistent deduction for ‘auto’: ‘std::vector >’ and then ‘__gnu_cxx::__normal_iterator*, std::vector > >’ 16:09:54 hello.c++:36:5: error: inconsistent deduction for ‘auto’: ‘std::vector >’ and then ‘__gnu_cxx::__normal_iterator*, std::vector > >’ 16:09:55 this is fun 16:10:13 ...is hello.c++ hello world? 16:10:25 well ostensibly. it's grown to calculating factorials. this is to iterate through a list. 16:10:51 Ah. 16:10:58 WAITWAITWAIT I think I can use statement expressions 16:11:08 Because all good hello world programs should calculate factorials! 16:11:24 Yes! 16:11:58 #define each(elem, container) each_(elem, container, __COUNTER__) 16:12:00 #define each_(elem, container, i_) each__(elem, container, i_) 16:12:00 #define each__(elem, container, i) \ 16:12:00 for (auto each__container__ ## i = (container), \ 16:12:00 each__iter__ ## i = (each__container__ ## i).begin(), \ 16:12:00 each__end__ ## i = (each__container__ ## i).end(); \ 16:12:01 (each__iter__ ## i) != (each__end__## i); \ 16:12:02 ++(each__iter__ ## i)) \ 16:12:04 for (auto each__fake__ ## i = true, & elem = *(each__iter__ ## i); \ 16:12:08 (each__fake__ ## i); \ 16:12:15 (each__fake__ ## i) = false) 16:12:15 That's my current code 16:12:15 But C++0x doesn't like you using "auto" to declare two things of a different type, as it turns out 16:12:16 Oh god you've been allowed near CPP again. 16:12:27 *cpp 16:12:29 And C++! 16:12:37 Commonly called cpp in restricted areas such as file extensions and domain names! 16:12:39 cpp abuse in cpp! 16:13:35 i bet boost has something like this 16:14:17 love how i can't load the full log for today due to slow internet on my logbot 16:14:34 I bet coppro knows how to do this :P 16:17:35 * Phantom_Hoover reeads the last xkcdexplained post. 16:17:36 Heh. 16:21:42 elliott wanted to hide something from me 16:21:50 :O 16:22:53 Sgeo, WHAT KIND OF THING 16:23:18 It's either something I already know about VRML, or some claim that Haskell is dead 16:24:16 HOW DID HE PLAN TO HIDE THIS 16:25:28 -!- copumpkin has quit (Ping timeout: 252 seconds). 16:26:09 -!- copumpkin has joined. 16:28:44 By saying "please let sgeo not see this" 16:30:08 Presumably because it mentioned one of your obsessions. 16:30:24 IN OTHER NEWS, j_random_idiot has spoken again. 16:31:17 -!- ais523 has joined. 16:33:32 -!- asiekierka has quit (Ping timeout: 252 seconds). 16:34:32 Phantom_Hoover: 16:34:36 for (declare_variable declare__variable__1(args); declare__variable__1.fake;) for (auto each__container__0 = declare__variable__1.value; declare__variable__1.fake; declare__variable__1.fake = false) for (declare_variable declare__variable__2(each__container__0.begin()); declare__variable__2.fake;) for (auto each__iter__0 = declare__variable__2.value; declare__variable__2.fake; declare__variable__2.fake = false) for (declare_variab 16:34:36 le declare__variable__3(each__container__0.end()); declare__variable__3.fake;) for (auto each__end__0 = declare__variable__3.value; declare__variable__3.fake; declare__variable__3.fake = false) for (; each__iter__0 != each__end__0; ++each__iter__i) for (declare_variable declare__variable__4(*each__iter__i); declare__variable__4.fake;) for (auto& arg = declare__variable__4.value; declare__variable__4.fake; declare__variable__4.fake = 16:34:38 false) 16:34:40 also ais523 16:35:15 O_o 16:35:25 coppro: HI THERE 16:35:26 what the crap 16:35:42 coppro: This will totally make more sense when it works, trust me :P 16:36:02 declare_variable looks worryingly C++ish, to me 16:36:05 In the meantime, 16:36:07 #define DECLARE__(type_, name_, value_, i_) \ 16:36:07 for (declare_variable declare__variable__##i_(value_); \ 16:36:08 declare__variable__##i_.fake;) \ 16:36:10 in fact, the whole thing there looks like C++ 16:36:10 for (type_ name_ = declare__variable__##i_.value; \ 16:36:12 declare__variable__##i_.fake; \ 16:36:14 declare__variable__##i_.fake = false) 16:36:16 may help elaborate on what 90% of that is doing 16:36:18 ais523: It is! 16:36:20 I'm writing the Best C++ Program Ever. 16:36:21 thus, I will refrain from trying to understand it for the sake of the rest of my sanity 16:36:34 This is me implementing a C++0x feature that GCC doesn't have right now :P 16:36:36 the reason there isn't an IOC++CC is that it'd be too easy 16:36:39 (Well, almost-implementing it) 16:36:53 elliott: you're not implementing it :P 16:36:59 Close enough 16:37:02 coppro: Basically DECLARE() lets you do a let block :P 16:37:12 With a for loop that only runs for one iteration. 16:37:14 Well, two. But. 16:37:45 hello.c++:50:5: error: invalid use of ‘auto’ 16:37:54 All the 23498723489234 errors are from that same line and column :P 16:38:16 hello.c++:50:5: error: request for member ‘fake’ in ‘declare__variable__4’, which is of non-class type ‘int’ 16:38:17 Um ... 16:38:23 for (declare_variable declare__variable__##i_(value_); \ 16:38:26 Doesn't look like it from here, bro. 16:38:42 Unless I'm using templates wrong :P 16:39:00 ais523: C++ is my favourite esolang 16:39:10 heh 16:39:45 oh, last Thursday I actually saw Valgrind tell off one of my students (it was running on a CUDA program, which is basically C with some extra constructs) 16:40:06 "More than 10000000 errors detected. Future errors will not be reported. Go fix your program!" or something like that 16:41:25 lol 16:41:50 luckily, it didn't try to print all of the ten million previous errors 16:41:53 or we'd have been there for ages 16:42:04 ais523, how... 16:42:15 :D 16:42:30 the question is, how did they keep it running while producing all these errors 16:43:03 hmm 16:43:03 cleverly mismanaging memory not to crash? 16:43:10 structs can be templated right? :) 16:43:11 for a bit of context, as far as I can tell the program was an attempt to write a complicated program in one go without even intermediate compiles 16:43:15 followed by fixing all the compile errors 16:43:23 elliott: yes, structs are classes that default to public 16:43:26 indeed 16:43:28 just checking 16:43:52 and getting really basic things wrong, like mixing up pointers to CPU and GPU memory (which point into entirely different memory spaces) 16:45:09 10000000 is easy to get in a big program 16:45:29 *a big, really broken 16:45:30 Just have a bunch of loops with off-by-one accesses 16:45:34 reminds me of a story from uni, they had an intern there to write a new system for doing computer exams (get assignment from server, submit solutions, get graded, kind of thing) 16:45:47 It doesn't even manifest as broken, necessarily 16:45:56 he coded for half a year or something, in Ada (because that's what he knew) never compiled anything once 16:46:09 Deewiant: Ehh... maybe if you had one really long loop :P 16:46:17 olsner: and it worked the first time? 16:46:17 then sent it to his supervisor and said "here you go, it's done now" 16:46:20 it's Ada, after all! 16:46:32 no, no single part of it worked, obviously 16:46:41 :O 16:46:46 But that's not what the Ada people told me! 16:46:54 olsner, but the overall edifice? 16:47:00 elliott: Five reads and five writes a million times isn't "really long" :-P 16:47:00 well, Ada works if you get it to compile 16:47:12 BORROMEAN PROGRAM 16:47:26 olsner: Yeah right. 16:47:37 I find the class ofbugs Ada tackles to be shallow and solved at the wrong level. 16:47:54 The solution to mixing up loop indices is to make them unnecessary in 99% of cases (by adding foreach), not by giving them types :P 16:48:12 people use to say the same things about Ada and Haskell, "hard as hell to make anything compile but when it does it works" 16:48:45 Haskell does a better job of it than Agda IMO :P 16:48:47 ... 16:48:48 Than Ada. 16:48:52 Though not perfect. 16:49:02 yes, haskell does it way better 16:49:29 If GHC turned its warnings about incomplete pattern matches into errors, it'd do a much better job. 16:49:35 ais523: wait; the compiler doesn't separately type CPU and GPU memory? 16:49:36 As it stands, it does a better job if you use -Wall and religiously fix those mistakes. 16:49:39 Are phantom types regularly used? 16:49:43 (-Werror might be a bit much, GHC likes to warn a lot in my experience.) 16:49:51 coppro: Ha ha ha 16:49:56 I think Ada is roughly equivalent to C++ in type safety, but Ada makes the unsafe stuff look worse by making it slightly more explicit and giving it scarier names 16:50:38 Haskell has unsafe stuff too... 16:50:40 elliott, how good a job does Agda do :P 16:50:58 Phantom_Hoover: I cannot possibly answer ;P 16:50:59 *:P 16:52:12 Sgeo: so? pretty much everything has unsafe stuff... 16:52:15 struct declare_variable { 16:52:15 A value; 16:52:15 bool fake; 16:52:15 declare_variable(A value) 16:52:15 : value(value), fake(true) 16:52:16 {} 16:52:18 }; 16:52:20 Hmm 16:52:25 I wonder if that constructor might be wrong :P 16:52:51 olsner: Oh, and if Haskell removed error and undefined. 16:53:00 (Using exceptions everywhere instead -- ugly, but.) 16:53:18 (Yes, you still have halting for _|_, but that's a lesser problem than e.g. each div requiring an if :P) 16:53:35 hmm, aren't error and undefined already exceptions? 16:53:47 but iirc you can only catch exceptions in IO 16:54:20 pikhq_: Does bsnes no longer support .sfc or something? X_X 16:54:26 It refuses to show them in this directory list. 16:54:33 olsner: Well, yeah... 16:54:39 olsner: But they're not USEFUL exceptions :P 16:54:46 i.e. ones you can catch individually 16:55:02 olsner: Oh, and as hateful as it would be, something like Java's throws declarations in the type. 16:55:36 With those three changes (force all pattern-matching to be complete, remove error and undefined, add "throws" declarations to function types) Haskell would do a way, way better job than Ada. 16:56:40 was that supposed to be Ada or Agda? :P 16:56:46 Ada :P 16:58:20 ais523: wait; the compiler doesn't separately type CPU and GPU memory? <--- it's designed to be similar to C, you'd expect it to? 16:58:30 it's basically just C with a few extra keywords and templates 16:59:04 templates? 16:59:13 yep, C++-style 16:59:18 so not C :) 16:59:29 well, it doesn't steal most other C++ features 16:59:31 just that one 16:59:44 so you use a c++ compiler with all the non-template stuff taken out? 16:59:46 sounds awkward :-P 16:59:49 no, it uses "nvcc" 16:59:59 which I think expands to "NVidia C Compiler" 17:00:07 but I'm not entirely sure what, if anything, it's based on 17:00:19 ais523: so it actually has C++ templates? 17:00:49 I doubt it's all the same features, because C++ is insane 17:01:03 but it does the basic stuff, with the same syntax as C++ 17:01:03 ais523: if it has templates in particular, I'd expect it to type them differently, yes 17:01:23 pointers aren't templates 17:01:26 I think the templates might only take things like integers as parameters, not class names, due to not having classes and structs not really being the same 17:01:36 what 17:01:40 -!- pikhq has joined. 17:02:18 elliott: yes, but you could use templates to overload on GPU/CPU pointers 17:02:18 -!- pikhq_ has quit (Ping timeout: 260 seconds). 17:02:44 coppro: yes, but (1) that sounds gross and (2) those wouldn't look like normal pointers 17:02:46 cpu pointer: int *foo; 17:02:51 gpu pointer: oh_god_the_pain foo; 17:03:05 and you wouldn't be able to index one of them 17:03:12 due to C not having operator overloading 17:03:18 "int gpu *" would make sense, or "gpu int *" 17:03:23 I'm not sure which would be appropriate 17:03:37 what would make proper sense is using a language with real types and so avoiding C backwards compat entirely :) 17:04:35 really, all this is far too high a level, they should be using Checkout 17:04:43 except there aren't any impls of it yet 17:05:14 http://xkcd.com/863/ ;; this is actually a good comic 17:05:30 no punchline, but amusing and pretty well-paced 17:05:34 ais523: clearly 17:05:45 ais523: of course functional languages are uniquely suited to GPUs >:) 17:05:52 ais523: (functional languages that compile to Checkout, of course) 17:06:15 Sgeo: I use phantom types occasionally 17:06:29 well, Haskell parallelizes better than, say, Python 17:06:33 But they're not really strictly phantom types 17:06:36 elliott: yes, I would hope that gpu pointers would just be a keyword 17:06:49 ais523: the point is that GPUs are essentially 349857349857394579834579835789347598347598347598347598347593475934857349573985-threaded CPUs :) 17:07:00 with CPUs, automatic parallelisation is infeasible 17:07:04 because there's too few threads to prioritise well 17:07:17 they typically only actually run 256 threads at a time 17:07:22 yes, but that's still a ton 17:07:24 most of the interesting work is in switching between them quickly 17:07:41 e.g. each thread has its own set of registers, to avoid having to save them anywhere when context switching 17:07:47 so a context switch can be done in a single clock cycle 17:08:10 C++ is insane 17:08:28 ais523: how fast is spawning a thread on a GPU, incidentally? 17:08:56 they're spawned statically, you need to work out how many you want in advance then they all spawn at once 17:09:01 see parloop/4 17:09:28 but if you have no threads, creating up to around a million threads can be done in a few microseconds 17:09:42 right 17:09:44 although ofc that number can't run simultaneously, and will be somewhat sequentialised 17:10:06 hmm, are GPUs good at anything OTHER than embarrassingly parallel problems? :) 17:10:10 no 17:10:16 right 17:10:17 well, it doesn't have to be embarassingly parallel 17:10:24 being moderately parallel is enough to have gains 17:10:34 hmm, can you even DO shared memory on a gpu? 17:10:34 but it still needs to parallelize somewhat 17:10:44 yep, but it's slow and messy 17:10:54 that's what checkout/2 between 3 and 5 does 17:10:54 being moderately parallel is enough to have gains 17:11:13 um I just mean embarrassingly as in what was i going to say ... 17:11:23 as in no communication between tasks 17:11:35 ah, "embarassingly parallel" is a technical term, as in doubling every element in an array 17:11:38 i.e. each thread completely independent of the others 17:11:39 ais523: yep 17:11:50 tasks like adding every element in an array together aren't embarassingly parallel, yet GPUs are still quite good at them 17:12:00 right 17:12:08 (divide the array into N segments, sum sequentially, sum the results?) 17:12:11 sum sequentially as in 17:12:13 sum each segment in a thread 17:12:17 where the thread does it sequentially 17:12:20 no, it's much more complex than that 17:12:27 aww 17:12:37 especially when you take thread blocks into account 17:12:49 which are groups of threads that are capable of cooperating closely, and have fast shared memory between them 17:12:54 (those are the /3s of Checkout) 17:12:55 in fact, I think every embarrassingly parallel problem takes the form of a pmap 17:13:05 i.e. map that does every application in a thread 17:13:26 yep, those sort of problems actually miss much of the point of GPUs 17:13:30 because block memory is so massively important 17:13:37 which are groups of threads that are capable of cooperating closely, and have fast shared memory between them 17:13:39 let me guess 17:13:46 GPUs are bad at subtracting an entire array? 17:13:50 i.e. this relies on commutativity :) 17:14:02 what does subtracting an entire array even mean? 17:14:10 ais523: umm, what does adding an entire array mean? 17:14:11 summing it 17:14:18 subtracting an entire array = fold (-) something array 17:14:30 or negating every element than summing 17:14:38 (that just negates the zero) 17:14:44 the point is that that is pretty much a commutative operation 17:14:50 hmm, well, depends on your fold I guess 17:14:54 ais523: not really 17:14:59 the result on [a,b,c,d] != the result on [a,c,b,d] 17:15:15 ais523: so you couldn't do even a small chunk in parallel using fast shared memory 17:15:15 but a-b-c-d = a-c-b-d 17:15:19 because you'd have to synchronise them 17:15:28 ais523: err, a-(b-(c-d)) 17:15:34 != (a-(c-(b-d))) 17:15:45 oh, that's a + -b + c + -d + e + -f + g + -h, etc 17:15:50 err, right 17:16:01 which still commutes pretty nicely, as you have information about which index into the original array an element is 17:16:28 YES but I mean if you took the summing algorithm 17:16:32 and replaced the + sign with a - 17:16:34 I bet it'd break 17:16:49 because I bet it depends on all threads in a thread group being able to add to the shared counter without worrying about synchronisation 17:17:01 I suppose it's obvious that the votes for Reddit comments would decrease the further down the tree you went, but it interests me for some reason. 17:17:04 it actually works in pairs 17:17:18 so you do ((a+b) + (c+d)) + ((e+f) + (g+h)), etc 17:17:32 doing that within a block by first using all threads, then half the threads, then a quarter of the threads, etc. 17:17:52 ah 17:17:55 how do you know when something is commutative though? 17:17:59 and down to the warp level (that's a /2), you can do conditionals on threads and actually save time 17:18:08 coppro: ais523 is describing a sum algorithm, not a general fold 17:18:15 replacing all that with ((a-b) + (c-d)) + ((e-f) + (g-h)) is obviously trivial 17:18:24 ofc, general folds don't parallelize 17:18:33 obviously a Ridiculously High Level GPU Language would have a fold that's parameterised on the function type 17:18:48 e.g., if you want to fold \a.\b.(md5sum(a) + md5sum(b)) 17:18:50 with a rule that for every function you've proved/assumed (as axiom) commutative 17:18:52 it uses the fancy sum algo 17:18:52 :) 17:19:37 the algo's much fancier than that, though, to use memory properly 17:19:41 ais523: so did Erlang inspire Checkout? :-P 17:19:44 no 17:19:50 ais523: but the /N after a function name! 17:19:56 what is checkout? 17:20:01 it was inspired pretty much entirely by a) CUDA, b) actual GPU architecture 17:20:08 http://esolangs.org/wiki/Checkout 17:20:11 oh, I noticed that was the same syntax as Prolog, but it's a different meaning 17:20:15 I think I just liked the way it looked 17:20:24 and I wouldn't be surprised at all if Erlang stole the syntax from Prolog 17:20:30 because it stole most of its syntax from Prolog 17:20:42 for no obvious reason, given that the two languages are quite different in most other respects 17:20:44 oh right 17:20:46 erlang stole it from prolog 17:20:50 erlang's relationship to prolog is so weir 17:20:51 d 17:20:52 *weird 17:20:54 ... 17:20:56 and I wouldn't be surprised at all if Erlang stole the syntax from Prolog 17:20:57 because it stole most of its syntax from Prolog 17:20:57 for no obvious reason, given that the two languages are quite different in most other respects 17:20:58 I did not read these lines 17:21:01 I wrote my lines before reading them 17:21:05 heh 17:21:19 keeping up this elliott alter ego is more trouble than it's worth for me, ais523 17:21:20 -!- elliott has left (?). 17:21:29 -!- elliott has joined. 17:21:31 to clarify 17:21:33 I am ais523's alter ego 17:21:34 -!- elliott has left (?). 17:21:38 no he isn't 17:21:54 I don't think you can say CUDA C has templates; I mean, it has that <<>> notation to do the threads, but it's really quite far from templates. (At least as far as the C-like CUDA 1.x is concerned; I don't really know much about the 2.x "pretty much runs C++ on the GPU" CUDA.) 17:22:33 fizzie: no, it has the template<> notation as well 17:22:35 -!- Behold has joined. 17:22:41 which is separate from the <<<>>> notation for running things on a GPU 17:22:54 even in 1.2, IIRC 17:23:34 I'm not sure if it still has the > > vs. >> parsing nonsense 17:25:01 Ah, it's in Appendix D, "C++ language constructs for device code". Well-hidden. But according to this it does operator overloading too. 17:25:04 -!- elliott has joined. 17:25:14 Has nobody got the memo to stop using <> for parens in C? 17:25:54 apparently not 17:25:59 -!- BeholdMyGlory has quit (Ping timeout: 248 seconds). 17:26:05 at least <<< >>> is distinctive and obviously different from a regular function call 17:26:07 hello.c++:50:5: error: invalid use of ‘auto’ 17:26:08 oh joy 17:26:17 Oh god songs of praise is on 17:26:19 aaaaaaa 17:26:25 brain.... melting.... 17:26:45 flashbacks... overwhelming.... 17:26:46 litbgeordi: { auto(69); } 17:26:46 geordierror: invalid use of 'auto' 17:26:47 thanks google 17:27:04 coppro: plz stop talking so much in #c++-f so i can grep things more easily in logs found by google 17:27:04 The only templates it does is function templates, though, so you couldn't do a template-driven fake-pointer. 17:27:10 (I use an O(n) grep. Totally.) 17:27:19 must... remote... 17:27:20 fizzie: 17:27:31 struct coppro { void *ptr; } 17:27:34 oh wait 17:27:36 it wouldn't even be 17:27:36 right 17:27:37 ignore me 17:27:51 (coppro is my new metasyntactic variable when talking about anything vaguely related to C++) 17:28:22 You could define new operators for a struct coppro, though, so maybe with the preprocessor you could manually construct fake-pointers like that. 17:28:34 (To point at different data types, I mean.) 17:28:55 aha 17:28:58 _nesting_ DECLARE doesn't work 17:29:14 oh wait no 17:29:15 wtf 17:29:24 win 8 17:29:32 oh, it's using auto that doesn't work 17:29:33 coppro: lose 8 17:29:41 wrong 17:30:53 coppro: not wrong 17:31:27 MY TUBES ARE CLOGGED 17:31:31 aha 17:31:40 coppro: is "auto" not a valid template argument, O C++0x Oracle? 17:31:43 i.e. foo 17:31:56 you are correct 17:32:15 coppro: that's laaaaaaaaaaaaaaaaaaaame 17:32:39 how the hell would that even work 17:32:47 coppro: it'd infer the right argument!! 17:32:49 using magic 17:32:50 oh LOL 17:32:56 "auto declare__variable__0(4)" 17:32:59 that's not going to work :) 17:33:02 have to explicitly construct... 17:33:45 oh wtf 17:33:52 coppro: you can't even say "foo(X)" :( 17:34:16 maybe I'll use __typeof__. 17:36:12 Yeah well, I bet coppro couldn't write this macro himself anyway. HMPH 17:37:10 Wow, it works with __typeof__. 17:37:43 "Well, almost." 17:39:10 hello.c++:51:22: error: expected primary-expression before ‘<<’ token 17:39:10 o_O 17:39:12 *o_O 17:39:32 I guess __typeof__ is resulting in something starting with a <> somehow 17:41:08 OH no that's from the loop body. 17:42:18 IT WORKS 17:42:55 coppro: olsner: anyone who has ever coded C++ ever: ais523: http://sprunge.us/fhXB 17:43:00 YOUR LANGUAGE IS AT MY KNEES 17:43:26 I should probably make a WITH_COUNTER :P 17:46:16 -!- asiekierka has joined. 17:50:23 -!- azaq23 has quit (Quit: Leaving.). 17:50:39 ais523: do you know if there is any way to get cpp to omit the contents of included files in its output? 17:50:43 also: 17:50:48 SEE ALSO 17:50:48 gpl(7), gfdl(7), fsf-funding(7), gcc(1), as(1), ld(1), and the Info entries for cpp, gcc, and binutils. 17:50:48 --man cpp(1) 17:50:56 the bottom of gcc(1), too :P 17:52:34 elliott: you mean, just expanding macros and ignoring the declarations 17:52:45 you could try using -imacros on the command line rather than #include in the file itself 17:52:49 ais523: no, just whenever it sees #include, 17:52:56 in the included files? 17:52:57 it loads all the macro definitions from the file 17:53:00 but does not spit it out in the output 17:53:10 so I can do "cpp foo.c" without everything in my scrollback being eaten 17:53:15 because of 345893475349873897593759834597349834573497535 lines of system headers 17:53:59 ais523: imacros is perfect 17:54:03 but I'd prefer it apply to all includes 17:54:06 I don't want to have to write them all out 17:54:18 yep, there doesn't seem to be an option to do it automatically, unfortunately 17:54:59 using -P too would help reduce the length, it omits the generated #line directives 17:55:19 wow, apparently modifying specs files makes gcc developers refuse to provide support 17:55:24 presumably even if you just add -static... 17:55:40 I think it's because the way gcc uses them is insane 17:56:03 it's because they're not a "public interface", apparently 17:56:09 which makes them... fairly pointless 17:58:16 ais523: wow, I've actually run into the "NO RECURSION" cpp thing while legitimately trying to tidy up my code 17:58:21 #define WITH_COUNTER(f_, ...) WITH_COUNTER_(f_, __COUNTER__, ## __VA_ARGS__) 17:58:21 #define WITH_COUNTER_(f_, counter_, ...) WITH_COUNTER__(f_, counter_, ## __VA_ARGS__) 17:58:21 #define WITH_COUNTER__(f_, counter_, ...) f_(counter_, ## __VA_ARGS__) 17:58:22 used like 17:58:26 #define DECLARE(...) WITH_COUNTER(DECLARE_, ## __VA_ARGS__) 17:58:26 #define DECLARE_(i_, name_, value_) ... 17:58:31 in any WITH_COUNTER'd function 17:58:36 you can't call any other function that uses WITH_COUNTER 17:58:41 because that's using WITH_COUNTER more than once 17:58:43 ridiculous 18:01:55 -!- pikhq_ has joined. 18:02:00 -!- pikhq has quit (Read error: Operation timed out). 18:07:18 Is there an easy way to get ANSI.SYS to start working in Windows? I need dem escape codes. 18:07:40 This probably isn't the best place to ask this... 18:07:51 no, the best advice I can give if you need the full range is "use DOSBox" 18:07:59 the Windows terminal does do some of them, though, like color 18:08:52 OK, color _might_ be good enough if I just clear the screen instead of repositionnig the cursor... 18:09:02 ouch 18:09:09 use a vt100 emulator :P 18:09:29 Yeah, I'm making console Lua programs. 18:09:41 Implementing ALAGUF 18:10:29 -!- augur has quit (Remote host closed the connection). 18:11:18 I wanted where the IP was to be color-inverted; also displaying ALAGUF output is *a lot* easier with curos repositioning 18:11:26 But I can do without 18:12:28 There's a thing to putty to use it as a terminal for cygwin; but, well, cygwin... 18:14:55 (And of course if you bother with cygwin you could just use its xterm.) 18:16:02 I'm trying to make it system-independant, but Windows is dumb in not supporting ANSI. 18:16:12 I should get a new OS. 18:17:22 iconmaster: vt100s are just ANSI emulators for the most part... 18:17:38 vt100 terminal emulators, that is. 18:19:01 nobody uses the Windows terminal for anything, pretty much 18:19:08 including Windows programmers 18:19:18 who either use a GUI, or a better terminal emulator 18:20:44 -!- optbot has set topic: logs: http://tunes.org/~nef/logs/esoteric/?C=M;O=D and http://208.78.103.223/esoteric/ | actually saunalahti means a lahti containing a sauna. 18:20:45 elliott: Re your earlier thing, you can do something like this to get whatever's in test.c, preprocessed, after the last #include in it: gcc -E test.c | grep -A 10000 '# '`gcc -E test.c | grep -E '# [0-9]+ "test.c"' | cut -d ' ' -f 2 | tail -n 1`' "test.c"' 18:21:03 fizzie: Heh, nice. 18:21:12 I wonder: Does PowerShell terminal support ANSI? I have that installed... 18:21:16 fizzie: Doesn't work if you use -P, but you can process those afterwords, I suppose. 18:21:17 Leme check 18:21:19 iconmaster: It just uses cmd.exe... 18:21:26 Oh... 18:21:36 cmd.exe is the emulator, COMMAND.COM the command interpreter (though I think the latter has a different name nowadays) 18:21:50 I hesitate to call cmd.exe a terminal and draw the line at calling COMMAND.COM a shell 18:23:20 If Powershell dosn't have ANSI, that how does *it* use colors in its error messages? Direct BIOS calls, most like. 18:23:52 -!- BeholdMyGlory has joined. 18:24:03 iconmaster: Uh, Windows' terminal does colours. 18:24:10 And the BIOS can't do anything to cmd.exe. 18:24:27 You can do anything in a console window using the console API; that's what you're "supposed" to use in a console app. 18:24:29 The bug is in your code, I suspect. 18:24:33 fizzie: Hmm. 18:24:37 Oh... 18:24:40 Are you sure colours don't work by default? 18:24:43 Well, for some values of "supposed". 18:24:45 No, can't be. Cygwin's bash.exe works. 18:24:50 elliott: actually, for added confusion, cmd.exe is also a shell that's different from command.com 18:24:51 In both a vt100 and the Windows terminal. 18:24:59 as in, similar but different syntax 18:25:00 And I very much doubt that it has Windows code to do that :) 18:25:03 ais523: joy 18:25:06 Colors might work, I don't know about that. It was more of a general comment, if you need complicated things. 18:27:18 -!- Behold has quit (Ping timeout: 276 seconds). 18:27:30 NetHack works in the Windows terminal 18:27:39 as a result of a crazy amount of specialcasing, IIRC 18:27:44 it can restrict itself to just the subset that works 18:27:48 hardly anything else does, though 18:28:01 If you directly WriteConsole in a console window, it doesn't support any escape codes at all, but I guess there might well be something somewhere in-between so that "regular" console output can use some control codes. 18:28:52 I think bsnes hates me. 18:30:07 -!- Behold has joined. 18:30:12 -!- Behold has quit (Changing host). 18:30:12 -!- Behold has joined. 18:30:32 -!- BeholdMyGlory has quit (Read error: Operation timed out). 18:30:40 hmm, it might actually be a bug in bsnes 18:32:18 yep, I believe so 18:32:32 the file browser window is being created with no title, and thus the filter isn't working 18:33:02 ais523: Yes, the win/tty/wintty.c defined(WIN32CON) snippets seem very nice. There's one in tty_askname() that does backsp(); (void) putchar(' '); backsp(); after receiving a \b or \177 with the comment "\b is visible on NT". 18:33:16 I like how that makes no sense at all. 18:33:35 ais523: In any case it seems to use the proper Win32 console API with the functions from sys/winnt/nttty.c. 18:33:48 (To move the cursor and such.) 18:33:57 fizzie: well, it works even over telnet 18:33:59 where you can't use the API 18:34:03 which is what really impresses me 18:36:36 ais523: The Windows "telnet" console app parses ANSI. It even does four different terminal types (vt100, vt52, ansi, vtnt). 18:36:50 ah, I didn't know that 18:36:58 also, vt52? 18:37:05 seriously? 18:40:14 -!- FlyingTortilla has joined. 18:41:01 For all those people who have to telnet to pre-1978 systems that don't know about this newfangled VT100 family. 18:41:13 -!- iconmaster has quit (Quit: installing a z80 emulator.... My FAV ML!). 18:43:31 oh dear, my compile of bsnes is either ridiculously buggy, or v076 is 18:43:44 also, iconmaster has to quit to do things with his computer. clearly. 18:43:59 -!- augur has joined. 18:44:47 Clearly yet another offshoot of ML. 18:45:03 Yes. Z80 is a dialect of ML. 18:45:04 well, ML and z80 machine language are both pretty clean languages 18:45:22 Perhaps the dialect of ML used by the Venezuelan Air Force. 18:46:53 Wow, bsnes doesn't even load a word at a time from memory. 18:47:02 It literally reads words byte-by-byte. 18:47:08 Presumably because you can override individual bytes of RAM, 18:47:10 *RAM. 18:47:16 (with a coprocessor) 18:47:19 (I guess?) 18:47:36 Heh, the VTNT terminal doesn't use escape codes either: instead, all output is sent wrappend inside VTNT_CHAR_INFO structures, that specifies stuff like the coordinates of a rectangle where the output goes; and followed by an array of 32-bit VTNT_SINGLE_CHAR values that have a 16-bit character code and 16 bits of attributes. 18:47:43 I wonder if anyone really uses that thing anywhere. 18:47:45 -!- iconmaster has joined. 18:48:09 fizzie: and are they just fwrite()ten versions of internal Windows structures? 18:48:12 VTNT : VTNT - VT[5] community mailing list 18:48:13 18 Oct 1999 ... A low-noise mailing list focusing on using the Video Toaster NT. 18:48:13 groups.yahoo.com/groups/VTNT/ - Cached 18:48:13 ► 18:48:13 VTNT Terminal 18:48:13 VTNT Terminal. VTNT terminal emulation is an extension to the Telnet Terminal Type Option standard (RFC 884), which is part of the Telnet protocol family of ... 18:48:16 msdn.microsoft.com/en-us/library/ms819760.aspx - Cached - Similar 18:48:18 Clearly NetHack runs on a toaster. 18:48:20 A Video Toaster, but a toaster. 18:48:38 ais523: "fwrite()ten" o_o 18:48:42 does "low-noise" there actually mean "low-traffic"? 18:48:48 elliott: it's not obvious where to put the parens 18:48:55 "fwritte()n"? 18:49:03 ais523: I don't recognize them, but of course they might well be. They're not exactly the console API structures, I think. 18:49:03 ais523: fwrite()d 18:49:54 elliott: ouch, that's not how you take the past tense of "write" at all 18:50:09 ais523: That's okay, because you're not taken the past tense of write. 18:50:12 You're taking 18:50:16 You're taking the past tense of fwrite(). 18:50:26 ais523: I call multiple computer mouses "mouses" when I remember to, too. 18:50:28 Not the same word. 18:51:51 elliott: .sfc is the only extension it does support. 18:51:59 pikhq_: Yep. The code is buggy or my gcc is ludicrously buggy. 18:52:13 Also, fuck DST so much. 18:52:16 There's a "vtnt" terminfo entry in this here database, but it's just "ms-vt100-color|vtnt|windows 2000 ansi (sic)" and I don't think it does what telnet does in "vtnt" mode. 18:52:20 pikhq_: The Load Cartridge window was created without a title. 18:52:27 pikhq_: The function that adds the filename extension to the list, 18:52:30 o.O 18:52:32 also set the title of the (terrible, BTW) file chooser. 18:52:45 I checked what called that; it was another internal file-chooser function. 18:52:47 It used a switch statement. 18:52:55 The case that added .sfc and set the title... 18:53:02 ...was on the value it was called with directly in the menu code. 18:53:10 tl;dr: Evidently switch() compiles incorrectly. 18:53:36 pikhq_: Anyway, I then made it show every file just for testing; upon picking the ROM, bsnes emulated 41 FPS' worth of a black screen. 18:53:40 Something Is Horribly Wrong. 18:53:56 Also, I found a seeded version of that torrent, NO THANKS TO YOU. :p 18:54:39 pikhq_: Maybe I should use gcc 4.4 instead of 4.5, but I don't think 4.4 has dem lambadas. 18:56:51 Nah, bsnes wants 4.5. 18:57:50 I strongly suspect you got an invalid ROM? 18:58:14 you do realise you aren't supposed to be discussing this on Freenode, right? 18:58:47 ais523: Who said it was a torrent of commercial games? 18:58:52 I have not said any such thing. 18:58:58 indeed 18:59:23 pikhq_: It was absolutely not the complete No-Info set circa 2010. 18:59:25 but non-commercial SNES games are nearly always distributed as a set of patches 18:59:37 ais523: ... No, just non-commercial mods. 18:59:51 pikhq_: It was by BitTorrent, so all the contents were verified. 18:59:53 people write non-commercial SNES games from scratch? 18:59:57 Yes. 18:59:58 pikhq_: Besides, like I said, the file chooser thing was fucked up. 19:00:03 Not *many*, but yes. 19:00:04 But the code was perfectly OK. 19:00:12 It's more demos than anything else, TBH. 19:00:14 So in conclusion, WTF GCC. 19:01:18 Maybe it's Ubuntu's default gcc flags. 19:01:43 Something -Bsymbolic-functions-related, perhaps. 19:02:06 http://byuusan.kuro-hitsuji.net.nyud.net/blargg_near_cd_quality2.7z Well, here's a simple audio demo you could try that I know for a fact works in BSNES. 19:02:16 And only BSNES and a real SNES. :) 19:03:27 (has lower sound quality on SNES9x, *is pain and agony* on ZSNES) 19:03:35 pikhq_: Do you have an .sfc file matching the pattern "C* T* (U*)" whose hash is de5822f4f2f7a55acb8926d4c0eaa63d5d989312? 19:04:18 Which hashing scheme? 19:04:27 md5? 19:04:27 pikhq_: Oh, sorry. SHA-1. 19:04:30 -!- ais523 has left (?). 19:04:45 I think I drove ais away. :p 19:04:56 Yes, yes I do. 19:04:56 That .7z contains an smc, anyway, which I don't believe bsnes supports. 19:05:07 pikhq_: Then my gcc is definitely the issue. 19:05:13 And gcc massively miscompiling is definitely esoteric. 19:05:22 Blame Ubuntu. 19:05:40 I don't know *what* they did to be worthy of blame, but they're an easy target. 19:06:05 pikhq_: Weeeeeeeeeell. 19:06:08 https://wiki.kubuntu.org/CompilerFlags 19:06:22 Do any of -fstack-protector, -Wl,-z,relro or -Bsymbolic-functions break bsnes? :P 19:07:20 Well, I *do* know that bsnes relies on fucking with the stack. 19:07:32 pikhq_: Indeed; it uses -fomit-frame-pointer, which scares me. 19:07:59 Oh wait, symbolic functions aren't even used I think. 19:08:04 -fomit-frame-pointer *only* screws up debugging on some architectures. 19:08:14 That is literally the only downside. 19:08:32 pikhq_: Then what's your better guess of why this is totally broken? 19:08:45 Anyways. BSNES's simple multithreading library works by swapping the stack. 19:08:53 I'm willing to bet that GCC is fucking with that. 19:09:10 pikhq_: Mm, but the Makefile specifically selects gcc-4.5 for Linux. 19:09:24 I *suppose* a Debian or Ubuntu patch could break it, but... 19:09:28 pikhq_: Also, wait, what? 19:09:33 pikhq_: This is a *UI* bug, for one! 19:09:34 Namely, one of -fstack-protector of -D_FORTIFY_SOURCE=2 19:09:37 Before it even emulates ANYTHING! 19:09:40 And fortify source is just about warnings. 19:09:41 elliott: Oh. 19:09:58 -D_FORTIFY_SOURCE adds runtime checks. 19:10:03 pikhq_: Like I said, somehow the filter isn't getting added despite the call being totally cromulent. 19:10:05 Oh, indeed. 19:10:27 pikhq_: Observe: 19:10:44 void FileBrowser::fileOpen(FileBrowser::Mode requestedMode, function requestedCallback) { 19:10:44 [...] 19:10:45 switch(mode = requestedMode) { 19:10:45 case Mode::Cartridge: { 19:10:45 setTitle("Load Cartridge"); 19:10:45 filters.append(".sfc"); 19:10:46 break; 19:10:48 } 19:10:50 The call is: 19:11:03 systemLoadCartridge.onTick = []() { 19:11:03 fileBrowser.fileOpen(FileBrowser::Mode::Cartridge, [](string filename) { 19:11:04 cartridge.loadNormal(filename); 19:11:04 }); 19:11:06 }; 19:11:08 Yet no title is being set, and no filter is being added. 19:11:31 I can think of *exactly one* way this could possibly happen, and that doesn't explain the emulation not working. 19:11:42 That one way is: 19:11:49 if(mode == requestedMode && folder == config.path.current) { 19:11:49 setVisible(); 19:11:49 contentsBox.setFocused(); 19:11:49 return; 19:11:49 } 19:12:03 enum class Mode : unsigned { Cartridge, Satellaview, SufamiTurbo, GameBoy, Filter, Shader } mode; 19:12:16 Wait, what... 19:12:30 byuu, you fucked up mode initialisation,. 19:12:31 I think. 19:12:57 pikhq_: tl;dr value initialises to 0, 0 is Cartridge. 19:13:03 It thinks it's already in Cartridge, fails to initialise. 19:13:13 This doesn't explain the emulation bug, but does make me think that byuu might fail at them programmings. 19:15:04 -!- pingveno has quit (Read error: Operation timed out). 19:17:19 This class is terrible, I blame byuu. 19:17:26 -!- pingveno has joined. 19:20:13 pikhq_: I conclude that this compile is awesomely fucked. 19:26:30 Gregor: Last day of optbot was 09.01.03. 19:26:31 elliott: from hehkua, which is glow i think 19:26:38 elliott: To answer your comparison to EgoBot: ARE YOU FUCKING KIDDING ME? EgoBot was set up to make sure the topic mentioned that this was a channel on esoteric programming and that it had the logs, it was NOT set up to make the topic be random fucking bullshit no matter what somebody puts there. 19:26:45 Oh wait, "really" 08.11.15 or so. 19:26:47 Gregor: It was a joke. 19:26:49 Note the ":P". 19:27:26 So, basically, over three months. Also, you care about the topic way too much. 19:27:34 Eh, make optbot togglable. 19:27:35 pikhq_: below 0: if the subtraction causes a borrow 19:27:47 pikhq_: Nah, I like it. 19:27:58 I don't care so much what the topic is, I would just much rather we allow it to be human rather than some random bullshit. 19:28:04 If we really *want* a specific topic, we should be able to keep it. 19:28:12 And I'm going to assume that the many people who talked to optbot didn't outright hate it either :P 19:28:13 elliott: oh right 19:28:16 Otherwise, well, actually saunalahti means a lahti containing a sauna 19:28:22 People like to set the topic. And it's fine to see the topic change. It's NOT fine to see some topic you put up change for NO FUCKING REASON. 19:28:25 pikhq_: I'll turn optbot off if the topic becomes like... vital information to donate money to save someone's life? 19:28:26 elliott: Nowadays, that's computer related stuff ;) 19:29:03 Gregor: Uhh, people put up plenty of topics when optbot was around, the fact is that the topic rate turnover then was more than once per six hours and it generally is now too, so optbot doesn't really hide the topic any more than anything else. 19:29:04 elliott: j-invariant: why? 19:30:10 I swear it seemed like more than three months, mind you... 19:30:17 The channel was very active then though. 19:30:22 elliott: Except that, to repeat myself again, optbot's topics are RANDOM. It's fine for the topic turnover to be high when PEOPLE are setting the topic. It would even be fine if it was a friendly AI (lols). Instead what we have is human topics being replaced by random lines from the log? WHY? 19:30:22 Gregor: is that like /usr/local? 19:30:31 optbot: NO YOU FUCKING ASSHAT IT ISN'T :P 19:30:32 Gregor: :D 19:30:42 Gregor: Because optbot is entertaining and says entertaining things. 19:30:42 elliott: apart from that? 19:30:48 This has been proved by three-month experiment. 19:31:01 It is the same reason fungot has a lot of quotes in the QDB, because these things are funny. 19:31:02 elliott: because objects are " reference types" in java. :d), i really like some features of vim, however, is that 19:31:17 SAYING things can be funny, but the topic is not PRIVMSG. 19:32:08 Gregor: Actually optbot has produced many entertaining topics before and will do so in the future. 19:32:08 elliott: 19:32:12 Again, 3-month experiment. :p 19:32:56 Oh, plus, when people complained about EgoBot's topic changing, I TURNED THAT FEATURE OFF. 19:32:56 elliott, the point is that it overrides whatever has gone before. 19:33:07 Gregor: HOW MANY TIMES TO I HAVE TO POINT OUT THAT IT WAS A JOKE BEFORE YOU STOP YELLING ABOUT IT 19:33:21 Phantom_Hoover: plz 2 be reading the things i say before replying kthx 19:34:05 pikhq_: Which bsnes are you using? I'm pretty sure this version is buggy. 19:34:46 elliott: I had been using 0.73, for lack of GCC 4.5. 19:34:57 pikhq_: Isn't that super old? 19:35:01 (it's not in Debian Testing yet, and I don't feel like building it myself) 19:35:10 Uh, a couple months old. 19:35:18 It's in testing now. 19:35:28 Oh, GCC 4.5, not BSNES 0.73. 19:35:37 Orly? 19:35:37 I mean bsnes, yeah. 19:35:41 pikhq_: http://packages.qa.debian.org/g/gcc-4.5.html 19:35:42 pikhq_: Orly. 19:35:45 -!- cheater00 has joined. 19:35:45 http://i.imgur.com/CAlZJ.jpg 19:35:47 pikhq_: You're probably on squeeze, which is stable. 19:35:48 Sure enough. 19:35:51 LUDICROUSLY UNSAFE 19:35:52 As opposed to wheezy, which is testing. 19:35:59 They aren't even wearing gloves! 19:36:00 I'm on wheezy. 19:36:06 For *foil*! 19:36:09 Wheezy, cough, splutter. 19:36:16 * pikhq_ installs gcc-4.5 19:36:31 pikhq_: Do try bsnes v076 and tell me if it works :P 19:36:35 -!- cheater97 has quit (Ping timeout: 248 seconds). 19:36:53 pikhq_: Also, do this to memory/memory.cpp line 48: 19:36:54 destaddr = mirror(base + offset++, length); 19:36:54 haha, sometimes I love chess 19:36:54 //offset = (offset + 1) % length; 19:36:59 Bug acknowledged/fixed by byuu. 19:36:59 I earned a resignation in 10 moves 19:36:59 Why is kjournald 75% of my file I/O ... 19:37:10 Ah, right, that bug. 19:37:21 Shouldn't it be sort of limited by the amount of legit disk I/O that's done? 19:41:56 elliott: The *fuck*, man. 19:42:04 pikhq_: HAHA TOLD YOU 19:42:07 *Oh, I see*. 19:42:14 pikhq_: Yes, it's initialised to Cartridge. 19:42:20 pikhq_: But even fixing the file selection bug, EMULATION DOESN'T WORK. 19:42:23 At least of C* T* (U*). 19:42:26 It's going really slow due to defaulting to the accuracy profile. 19:42:32 What, _really_ slow? 19:42:36 I have a pretty fast machine. 19:42:45 Do I have to wait like 30 seconds for it to start? 19:42:49 Yes, the accuracy profile is insane. 19:42:50 pikhq_: BTW, did the file selector work for you?! 19:42:58 Yes, it did. 19:43:13 pikhq_: o_O 19:43:17 * pikhq_ tries the compatibility profile 19:43:20 pikhq_: Anyway, I get 41-43 FPS. 19:43:24 When starting C* T* (U*). 19:43:24 Yup. 19:43:31 pikhq_: Not that it ever _starts_. 19:43:34 But if I get FPS like that... 19:43:42 Surely it should be starting the actual game quickly? 19:45:11 pikhq_: ASKING QUESTIONS HERE :P 19:46:16 Uh. 19:46:18 Beats me. 19:46:20 -!- sebbu2 has joined. 19:46:26 But try profile=compatibility? 19:46:49 I will. But I strongly suspect a broken compiler or something if the file selector is broken. 19:47:28 pikhq_: Kay. 19:47:35 Testing now. 19:47:40 -!- Gregor has set topic: My computer is possessed by the Ancient Spirit of ALGOL | Blessd be his name | logs: http://tunes.org/~nef/logs/esoteric/?C=M;O=D and http://208.78.103.223/esoteric/. 19:47:48 What. 19:49:48 -!- sebbu has quit (Ping timeout: 276 seconds). 19:50:24 pikhq_: Same blank screen with compatibility. 19:50:26 But higher FPS. 19:50:32 So it's emulating, just not... blitting the emulation to my screen. 19:50:37 BYUU, YOUR UI IS SO BROKEN. 19:50:51 pikhq_: Can I have a binary with profile=accuracy? :-P 19:50:56 I'm on x86-64 Ubuntu, so it should work on my machine too. 19:50:59 Hit "advanced options" and try a different video driver? 19:51:03 Did that already. 19:51:04 Didn't help. 19:51:07 And the file selector bug is still there. 19:51:17 I conclude that my compiler or something is fucked, so your binary would be appreciated :P 19:51:21 At least until I debug further. 19:51:39 fizzie: Do you have RAM restrictions per bot or just for the whole thing 19:52:48 elliott: Got a simple way of getting it to you? 19:52:59 pikhq_: Is email acceptable? 19:53:09 Sure. 19:53:10 Deewiant: "Uh oh". 19:53:17 pikhq_: penguinofthegods@gmail.com :) 19:53:27 If Yet Another Person asks me wtf is with my email, I will kill them. 19:54:16 Oh, hrm. 19:54:29 ? 19:54:32 I'm not getting past the very first bit in Super Mario Kart. 19:54:33 Deewiant: Per bot; the two competitors are run as completely different processes. 19:54:47 pikhq_: I'll try 'nother ROM myself. 19:54:48 Deewiant: (The time limit is based on ulimit'ing CPU time to one hour.) 19:54:55 fizzie: Ah, so the 256 megs is for just the bot? 19:54:59 pikhq_: Most people seem fine with this release, so clearly our compilers are SO FUCKED UP, SO FUCKED UP. 19:55:09 Works just fine with Chrono Trigger. 19:55:09 Deewiant: Is this the FANCY TOURNAMENT? 19:55:32 Deewiant: Well, there's a small stub to accept situations from stdin and write moves to stdout, but that's not going to use very much memory. 19:55:51 elliott: Depends on what's fancy and what's not 19:56:20 pikhq_: SMW does the same black screen thing, so yeah. 19:56:28 Your binary is more working than mine :P 19:56:34 pikhq_: gcc --version? 19:56:45 gcc (Debian 4.4.5-13) 4.4.5 19:56:57 Super Mario World *also* works just fine. 19:57:13 I'd bet SMK is a DSP issue. 19:57:26 gcc (Ubuntu/Linaro 4.4.4-14ubuntu5) 4.4.5 19:57:28 Hmm. 19:57:33 pikhq_: I wouldn't mind your binary still, then. :p 19:57:38 I'll compile my own 4.5 later. 19:57:40 And test that. 19:57:40 En route. 19:59:10 Deewiant: http://p.zem.fi/ts0k.java -- this plus whatever code you write is run under "java -Xmx256M", to be most exact. 20:00:12 AIARCH 20:00:44 The name is inherited, not mine. 20:00:53 I did put my own domain there for the prefix, though. 20:01:43 pikhq_: Your binary works. 20:02:02 pikhq_: Clearly I need a better compiler. 20:02:14 pikhq_: (Meanwhile, wtf wtf wtf @ that miscompilation) 20:02:37 pikhq_: Actually what I *suspect* it is is that bsnes is depending on undefined behaviour and -O3 is messing it up. 20:02:45 Like the initialisation of the file opener mode... 20:05:04 And a-yup, I was having an issue with loading the DSP. Mario Kart works fine now. 20:06:07 pikhq_: What kinda issue? 20:06:10 -!- FlyingTortilla has left (?). 20:09:59 I had set up an XML file for loading it. The format of the memory-mapping XML changed. 20:10:24 pikhq_: Ah. (Why does the emulator come with cheats but not memory-mappers?) 20:10:48 It guesses them on cartridge load. 20:10:58 Because the actual memory layout for almost everything isn't known yet. 20:11:05 Ah. 20:11:10 "But What About the BS-X Satellaview? 20:11:10 The truth of the matter is that most of these games are irreparably lost forever already. And those that remain are stored on extremely volatile flash memory. Not only does this mean the memory will fail an order of magnitude sooner than mask ROMs, it also means it is possible to tamper with. I will not be attempting the impossible here." 20:11:21 I wonder if all the games actually still exist on flash. 20:11:39 That would be quite a fun project, to track them all down and rip their contents. 20:11:51 Some of them were only playable for a limited time, making it so that people would have deleted them. 20:12:00 But maybe not ALL people. 20:12:09 Maybe somebody lost interest in a shot while. 20:12:12 *short 20:12:21 You seriously need either a time machine or a break-in to get at it, as far as we know. 20:13:20 http://www.satellablog.blogspot.com/ This seems to have... videos, at least. 20:14:53 -!- sebbu2 has changed nick to sebbu. 20:16:49 pikhq_: I still can't believe that bsnes is even vaguely playable now that I know it loads RAM byte-by-byte :P 20:16:57 At least the SNES is 16-bit, so it's only two reads. 20:18:24 pikhq_: Ohwait what's your g++-4.5 --version? 20:18:35 Just realised I gave you my normal gcc version X-D 20:18:36 g++-4.5 (Debian 4.5.2-4) 4.5.2 20:18:41 Mine's 20:18:43 g++-4.5 (Ubuntu/Linaro 4.5.1-7ubuntu2) 4.5.1 20:18:52 So MAYBE 0.0.1 VERSIONS FIXED SOMETHING 20:19:10 And, yeah, bsnes does a lot of stuff very inefficiently. 20:19:52 It's hardware documentation that happens to be playable. :P 20:20:38 pikhq_: HARDWARE DOCUMENTATION THAT RELIES ON THE STACK NO LESS 20:21:23 It uses the stack-swapping thing because it makes things very, very readable. 20:21:54 Well, aside from libco itself. 20:22:08 fizzie: Are recent previous years' bot rankings available? (I'm wondering how much better than the given quintuplet people's creations have tended to be) 20:24:26 Deewiant: The old results page is at http://www.cs.hut.fi/Studies/T-93.4400/2010/results/ 20:24:46 Cheers 20:25:10 Deewiant: And the 2009 at http://www.cs.hut.fi/Studies/T-93.4400/2009/results/ -- that year the top three out of the given examples (which are the top 5 from 2008) were unbeateded. 20:25:31 It uses the stack-swapping thing because it makes things very, very readable. 20:25:33 Stack-swapping? 20:26:02 That's how it implements coöperative multithreading, yes. 20:26:15 sounds... readable 20:26:40 and this umlaut thing you keep doing is very annoying 20:26:55 olsner: The SNES is a combination of an insane number of CPUs, each with a different clock. 20:27:44 Is there any other way to handle that, with clock-tick-accurate emulation, *without* wanting to kill someone? 20:28:48 probably not :) 20:29:13 Pretty sure the alternative is a truly insane state machine. 20:29:42 Containing all the possible CPUs that could be loaded. 20:29:58 (some SNES cartridges had another CPU that hooked into the system bus. No, really!) 20:30:12 right! on-cartridge cpus... that makes it a lot more evil 20:31:36 Oh, I thought you meant libco didn't use it for that reason. 20:31:42 I thought you meant it stack-swapped for some entirely different reason. 20:31:43 and this umlaut thing you keep doing is very annoying 20:31:50 It's called a diaeresis and PH is the one who does it all the time :P 20:32:22 I don't care who does it the most, I blame all of you! 20:32:42 Technically, it's called... 20:33:02 olsner: It's actually a trema. 20:33:16 i.e., a trema is a diæresis that marks a hiatus. 20:33:20 I am not making this up. 20:33:27 Trema is a genus of about 15 species of evergreen trees closely related to the hackberries (Celtis) 20:33:34 Oh wait. 20:33:41 An umlaut is also a trema. 20:33:47 So it's a hiatus trema diæresis! 20:34:12 elliott: BTW, if you have ROMs in .smc, use snespurify (in the bsnes source). 20:34:15 We Finns keep döing it all the time too, but it's umlauts when we do it. 20:34:57 pikhq_: So I need to run snespurify on byuu's thing you linked me? WELL THAT MAKES SENSE 20:35:13 elliott: Not Byuu's. 20:35:15 Tḧërë's älsö ẗḧë mëẗäl ümläüẗ. 20:35:20 fizzie: Hmm, are ä and ö not part of your balphabet? 20:35:25 what I object to is the use of non-umlaut tremata 20:35:31 They are, yes. 20:35:38 pikhq_: http://byuusan.kuro-hitsuji.net.nyud.net/blargg_near_cd_quality2.7z Well, here's a simple audio demo you could try that I know for a fact works in BSNES. 20:35:46 Unless there's ANOTHER person called byuu out there who does SNES stuff. 20:35:46 It is rather hard to avoid not hearing how it sounds wrong when you see "coöperative" when the "hardwired" meaning is a different sound. 20:35:46 elliott: Blame Blargg. 20:35:52 Oh :P 20:35:55 Was wondering what that meant! 20:36:07 fizzie: Are they actually pronounced umlauty? 20:36:13 Or are they just separate members of the balphahet? 20:36:20 metal tremata are worse than diaereses since they don't even have a meaning 20:36:56 olsner: Diæreſes are more correct þan þou. 20:37:34 olsner: They're not tremata. 20:37:38 They're diæreses. 20:37:45 The symbol is the diæresis. 20:38:05 "The trema is usually used to denote one of two distinct phonological phenomena: diaeresis (pronounced /daɪˈɛrɨsɨs/ dy-ERR-ə-səs), in which the trema is used to show that a vowel letter is not part of a digraph or diphthong; and umlaut (pronounced /ˈʊmlaʊt/ OOM-lowt), in which the trema illustrates a sound shift." 20:38:09 The 'pedia disagrees. 20:38:10 "A trema [...] is a diacritic consisting of two dots ( ¨ ) placed over a letter" 20:38:13 A tremeta is when a diæresis is used to denote either a hiatus, or a sound shift. 20:38:25 -!- asiekierka has quit (Ping timeout: 248 seconds). 20:38:39 and "Diaeresis (prosody), pronunciation of vowels in a diphthong separately, or the division made in a line of poetry when the end of a foot coincides with the end of a word" from the disamb. page 20:38:41 olsner: Arguably, a trema is a diæresis when it is used to denote a hiatus, and an umlaut when it is used to denote a sound shift. 20:38:56 But metal umlauts are neither a hiatus nor a sound shift, so I think calling the mark a trema there is wrong. 20:39:07 olsner: Yes, the article recently got deleted. 20:39:10 Since Varsity has told us that fascination with Jellybabies is a "fetish", 20:39:10 and we want to keep Nomicam a clean family game: 20:39:10 The speaker shall once and once only go through the rules, changing every 20:39:10 mention of the word "jelly baby" - in whatever grammatical form - into the 20:39:10 word "sheep" - in the corresponding grammatical form. 20:39:10 (diæresis, that is.) 20:39:11 I think. 20:39:13 It all got reorganised. 20:40:38 elliott@elliott-MacBookAir:~/Downloads/gcc-4.5.2$ ./configure --with-languages=c,c++ --enable-lto --enable-libssp 20:40:39 Woo. 20:40:56 unless you're in fact arguing the wikipedia is wrong, I think it clearly says that a trema is the diacritic regardless of what meaning you invent for it 20:41:21 http://wordnetweb.princeton.edu/perl/webwn?s=trema 20:41:23 Well, that settles it. 20:41:42 S: (n) umlaut, dieresis, diaeresis (a diacritical mark (two dots) placed over a vowel in German to indicate a change in sound) 20:41:42 --WordNet 20:41:52 So at least WordNet disagrees, sort of, kinda. :p 20:42:17 what? I only get S: (n) Trema, genus Trema (an evergreen tree of the family Ulmaceae that grows in tropical America and Africa and Asia) 20:43:35 olsner: It's called a ``joke''. 20:43:38 You may have heard of this. 20:44:21 diaeresis appears to be a synonym of trema though 20:44:41 Clearly a diæresis is a type of rtee. 20:44:43 *tree. 20:45:57 -!- pikhq has joined. 20:45:59 elliott: Re the earlier discussion fork, a → ä is /ɑ/ → /æ/ IPA-wise, and o → ö is /o̞/ → /ø̞/, so it is "umlauty" in the sense of "sound shift"; I think that more or less matches German usage, too. 20:46:00 -!- pikhq_ has quit (Ping timeout: 240 seconds). 20:46:17 fizzie: Nair fuff. 20:49:45 ../.././gcc/config/i386/i386.c: In function ‘ix86_handle_fndecl_attribute’: 20:49:45 ../.././gcc/config/i386/i386.c:26127: warning: unknown conversion type character ‘E’ in format 20:49:45 ../.././gcc/config/i386/i386.c:26127: warning: too many arguments for format 20:49:45 ../.././gcc/config/i386/i386.c:26135: warning: unknown conversion type character ‘E’ in format 20:49:45 ../.././gcc/config/i386/i386.c:26135: warning: too many arguments for format 20:49:46 "Uh." 20:50:15 nice, nonstandard formats 20:52:41 /usr/include/gnu/stubs.h:7:27: fatal error: gnu/stubs-32.h: No such file or directory 20:52:42 olsner: "E" is not a nonstandard type, though; at least in C99. 20:52:45 Uhhhhhhhhh? 20:52:54 Does gcc build a 32-bit thing by default? 20:53:00 "# multilibs." 20:53:04 Yeah, no, no multilibs please gcc. 20:53:48 Oh well, /me installs multilib gcc :P 20:54:22 *facepalm*. 20:54:42 Michelle Bachmann would like to let you know that E PLVRIBVS VNVM is unAmerican. 20:55:02 Your mom is un-American. 20:55:10 (Can we please stop saying "unA"? Really really ugly.) 20:55:21 E PLVRIBVS VNVMerican 20:55:27 unÄmerican. Better? 20:55:28 :P 20:55:57 unaemerican 20:56:07 *æ 20:56:47 un American, with U+200A HAIR SPACE ("thinner than a thing space; in traditional typography, the thinnest space available") there. (Again an awesome character name.) 20:57:06 THAT'S NOT EVEN A SPACE 20:57:11 That's a slight kerning failure! :P 20:57:23 With a monospaced font, it's also quite a failure. 21:00:50 gcc sure does take a while to compile. 21:01:04 ("A few seconds" would count as "not a while".) 21:09:40 ʌnəmɛɹɪkən 21:21:33 oiwajrh 21:26:35 I should work on installing emacs 21:26:43 Well, I have Emacs installed, kind of 21:29:20 -!- copumpkin has quit (Ping timeout: 260 seconds). 21:30:01 -!- copumpkin has joined. 21:30:08 -!- copumpkin has quit (Changing host). 21:30:08 -!- copumpkin has joined. 21:35:50 -!- pikhq has quit (Ping timeout: 240 seconds). 21:36:03 -!- pikhq has joined. 21:42:54 -!- iconmaster has quit (Quit: "Help! I've been g:lined from my mIRC!!" Bersirc 2.2: less n00bs [ http://www.bersirc.org/ - Open Source IRC ]). 21:45:27 That gcc, it never stops compiling. 21:49:46 Makes me want to get an Oberon VM and order it to recompile itself. 22:00:11 "Have I ever designed a standard library? I'd like to lie and say "no", but the answer is "yes": I designed JavaScript's standard library (Clause 15 of ECMA-262, Edition 1, plus or minus) along with the "DOM Level 0" (onload and onclick and document, window, forms, etc. -- a great deal of this is only now standardized by HTML5). 22:00:11 I did this in about 30 days in May and June 1995 (10 days in May for the core language), and spent the rest of the year debugging and repenting. I was under orders to make JS look like Java, so some of the standard library is cloned from the JDK1.0 -- in particular, Ken Smith of Netscape did a pretty straight port of java.util.Date, Y2K bugs and all, to JS." 22:00:19 http://lambda-the-ultimate.org/node/4009#comment-60781 22:05:30 -!- wareya_ has quit (Read error: Connection reset by peer). 22:06:34 -!- wareya has joined. 22:19:20 -!- zzo38 has joined. 22:19:38 There is bad UTF-8 in the TOPIC message. 22:20:13 it might not be utf-8 at all 22:20:57 Also, I read article of ] programming language, it says programs that the brackets are matched is invalid. I have a different idea, which is to make something such that a thing is not said explicitly, but instead is implied by the other rules of the language (such as its commands) that cause programs with all matched brackets to do nothing. 22:21:24 olsner: It is not UTF-8. But I think in here we mostly are using UTF-8, so it should be corrected unless you are deliberately trying to make it wrong. 22:22:11 it works fine for me, so I don't think it should be changed :) 22:22:57 olsner: Is your client not in UTF-8 mode? Sometimes Japanese things are typed in here using UTF-8. 22:23:32 :t mod 22:23:33 forall a. (Integral a) => a -> a -> a 22:23:40 it neatly auto-detects whether stuff seems to be latin1 or utf-8 22:24:43 PuTTY does not do such things, though. Also, there might sometimes be something that causes the detection wrong. 22:25:18 I think if I used PuTTY I'd have to have putty and my locale set to utf-8 to allow the client to output whatever it auto-detected to 22:25:27 or ssh in general, for that matter 22:36:45 -!- copumpkin has quit (Ping timeout: 248 seconds). 22:37:12 -!- copumpkin has joined. 22:44:43 -!- BeholdMyGlory has joined. 22:47:42 -!- Behold has quit (Ping timeout: 252 seconds). 23:03:25 TeX will skip tokens category 10 character 32 when reading undelimited arguments. So, I made a macro \makefunny that makes spaces funny so that the macro can read spaces. 23:05:24 -!- cheater00 has quit (Ping timeout: 255 seconds). 23:21:40 -!- MigoMipo has quit (Read error: Connection reset by peer). 23:22:21 -!- oklopol has quit (Ping timeout: 250 seconds). 23:26:12 -!- oklopol has joined. 23:28:27 * Phantom_Hoover → sleep 23:28:37 -!- Phantom_Hoover has quit (Remote host closed the connection). 23:34:41 --- google.com ping statistics --- 23:34:41 42 packets transmitted, 19 received, 54% packet loss, time 41134ms 23:34:41 rtt min/avg/max/mdev = 42.567/43.240/44.072/0.433 ms 23:34:41 aaaargh 23:39:22 Nice. 23:44:13 I have been on #LaTeX channel. I realized that a lot of people have a lot of problems with LaTeX which could be avoided by using Plain TeX instead. 23:45:25 At the cost of much more pain. 23:46:31 -!- pikhq_ has joined. 23:46:56 -!- pikhq has quit (Ping timeout: 260 seconds). 23:46:59 elliott: Perhaps the first time. The first time I had a few problems too, but the second time I knew much better and now I can make Plain TeX documents very easily without much pain/trouble/whatever. 23:55:52 I have tried using LaTeX once. It is so weak and difficult that I am not sure why someone would use it, except, perhaps, people who like Microsoft Word. 23:56:16 lol 23:56:28 OK, some of us like LaTeX and hate Microsoft Word, and simply want to work in a high-level document language rather than a low-level typesetting language. 23:56:31 So please stop telling us how bad it is. 23:56:34 you're funny sometimes 23:56:47 elliott: Whatever, work with what you like. 23:56:50 zzo38 is to elliott what eliott is to the rest of us 23:57:09 coppro: don't be silly, i don't justify my criticisms 23:57:16 also, who is eliott :trollface: