00:00:05 Unless you're fluentish you might not notice the syllable boundaries that well 00:00:18 And claiming Chinese people speak Chinese is a bit like claiming European people speak Latin. 00:00:23 Yes, just if a receptionist recognize different language, that can possibly work too. 00:00:24 yeah, but i can lump (each chinese language) apart from japanese at least 00:00:26 And e.g. "desu" isn't typically pronounced with a noticeable "u" :-P 00:00:26 so meh. 00:00:29 True, true. 00:00:32 Deewiant: but it's spelled with it 00:00:42 i know the u is generally silent :) 00:00:48 Deewiant: Is if you're a girl. 00:00:50 :) 00:00:53 myndzi: Sure, but we were talking about hearing comprehension, no? 00:00:53 haha 00:00:57 yeah, but if you're a girl 00:01:01 pikhq: In anime :-P 00:01:02 you give yoruself away with all the nyans 00:01:05 ;) 00:01:16 To be exact, a teenage girl 00:01:24 heh heh 00:01:52 Deewiant: Well, yeah... It does have a particularly, I dunno, *ditzy* feel to it. 00:02:11 Somewhat like saying "Like, yeah, totally" 00:02:58 i'm not a fan of this kind of thing in general, but this was pretty interesting: 00:02:59 http://www.sporcle.com/games/lukebradford/guessthelanguage 00:03:05 " And claiming Chinese people speak Chinese is a bit like claiming European people speak Latin." <-- isn't it more like claiming we speak european? 00:03:11 i got more than i thought i would 00:04:40 but I think we should rather fix the stigma associated with being ignorant about far-away places, we don't know shit about them and they probably don't know shit about us 00:04:50 -!- Taneb has joined. 00:04:51 olsner: Ish. Except that the Chinese languages largely derive from a single language that one *could* plausibly call "Chinese". 00:05:01 Wow, I think I may actually be drunk 00:05:18 well, i don't know enough about chinese to distinguish, say, mandarin 00:05:29 With Classical Chinese I *think* being the prestige form of said language? 00:05:35 well, the european languages are largely all indo-european too... not all latin, but latin/germanic 00:05:36 so i just said 'chinese' to refer to the language group in general 00:05:45 not to express that there was only one of them 00:05:46 (except the exceptions...) 00:05:54 olsner: explain HUngarian 00:05:57 ninja'd 00:06:01 olsner: It also bears the similar property that Latin was for ages the lingua franca. 00:06:04 There was a whole session (6 papers) of language identification in a recent conference I was. And NIST has a bi-yearly (well, 2003 .. 2009; I don't see results for 2011) competition about it. 00:06:11 Much like Classical Chinese was for ages the lingua franca. 00:06:26 myndzi: I couldn't reliably do that either. 00:06:52 Of course, the closest I can get to "speaking 'Chinese'" is some strange sort of pidgin if I'm really pressed. 00:08:26 the closest i can get to "speaking 'Chinese'" is ching chow 00:08:27 :P 00:09:22 who's the poorest chinese? tom peng pung 00:09:37 Apparently if you give them 30 seconds of conversational telephone speech, the best systems in 2009, if allowed a 2% "miss" (as in, "uh, I dunno") rate, get around 98% correct, for the NIST LRE "closed set" task, which is 12 languages. (And around 90% correct with 10% miss rate if you only give them three seconds to work with.) 00:09:46 (== empty money pouch in swedish, it's hilarious!) 00:10:03 myndzi: 33/36 in five minutes, with a couple of guesses that took most of the time 00:10:10 nice. 00:10:20 olsner: There's quite a number Finnish equally "hilarious" "jokes" too. 00:10:25 The first column went in less than a minute, I think :-P 00:10:33 yeah 00:10:36 first column was pretty easy 00:10:52 Yokohama Humahuta, the famous Japanese boxer. 00:11:14 -!- Taneb has quit (Quit: Page closed). 00:11:25 fizzie: there's also ranta runtiringen, the infamously bad finnish boxer :) 00:11:47 With that sort of surname, he's probably from Sweden originally. 00:12:21 And the Russian gynecologist, Nikolai Kopeloi. 00:12:27 the pun probably doesn't work as well if you *actually* know how finnish surnames sound 00:12:36 That's certainly not a Japanese surname; "hu" is an invalid mora in Japanese. 00:12:58 Yes, I don't think they strive for very much linguistic accuracy in these. 00:13:00 pikhq: found a map where fuji was called huzi once 00:13:02 Alas. 00:13:21 olsner: That's the result of a fairly pedantic romanisation. 00:14:25 what do you mean "hu" is an invalid mora? 00:14:29 or do you just mean it should be fu? :P 00:15:16 olsner: The kana for "fu" in the table is in the "h" row, but it's invariably pronounced as something rather close to "fu" rather than "hu". 00:15:22 myndzi: Just that it should be "fu". 00:15:48 heh 00:15:56 it's a VERY light f in many cases 00:15:58 olsner: Also, the kana for "shi" is in the "s" row, but pronounced as "shi", and the voiced version of that is pronounced "ji" instead of "zi". 00:16:13 the way we pronounce f involves the teeth touching the lip pretty much 00:16:46 but the way fu/hu is pronounced can often be the barest closing of the mouth from a fully open 'h' 00:17:06 pikhq: yeah, I know... but isn't that just a matter of romanization whether it's f or h (and z or j)? I'd be happy to say that it "is" an h but h is pronounced weirdly with some vowels 00:17:08 myndzi: There's a reason I said "close to". It's one of the phonemes in Japanese that doesn't really match anything in English. 00:17:28 yeah. but because of that i would certainly not call it invalid in either spelling 00:17:54 myndzi: Bah. 00:18:02 * myndzi shrugs 00:18:08 i was only curious if i was missing something ;) 00:18:18 i'm a self-confessed gringo when it comes to most languages 00:18:30 but i know more about japanese and spanish than "absolutely nothing" 00:20:26 saturn as wikipedia's featured article? i thought they'd have run out of planets long ago 00:20:40 Maybe they changed it a lot since then 00:21:29 The reason you write "hu" or "fu" is just whether you use grid romaji or sound romaji. 00:22:32 does grid romaji actually exist except as something you can make up according to how the grid looks? 00:23:04 hm indeed the talk page says it was featured four years ago 00:23:17 I'm guessing he's just using it as a way to describe the two differing approaches in Romanization of Japanese. 00:23:18 olsner: I don't know. I don't even know if "grid romaji" is a standard term for such things 00:23:41 i.e. the distinction between nihon-shiki and Hepburn. 00:30:13 -!- GreaseMonkey has joined. 00:36:27 -!- ais523 has quit (Remote host closed the connection). 00:37:49 kallisti, UPDOOT 00:38:20 List of lies about the computer game: * The sliders on the title screen are not real sliders. * Most of the levels have yellow borders. * There is no URL to download this game. * The scoring system is really bad. * In one level you have to go through a corridor of lava with a windy potion and then quickly retreat from danger. 00:39:08 * Half of the levels in this game are impossible to complete. * You have to go through the water in the wrong direction; but this is, of course, impossible. * Killing enemies potions are good for you. * This game is bad because Hitler played it. * This game is for DOS computers only. * Some of the puzzles do not work correctly except on the author's computer. 00:39:33 * Torches in Part I work correctly, while torches in Part II do not work correctly. * MagicGems are exactly like ZZT gems. * BIG_MONSTER is bad and you should kill them, please. * The award of completing this game is torture. 00:39:47 Invent another computer game and make up a list of lies about that computer game. 00:41:15 zzo38: hm. Do you mean that Japanese doesn't have "h" and "f" as separate phonemes; it's just that the "h" phoneme sounds like "f" when it comes before "u"? 00:42:05 tswett: Sort of. Actually, it is a letter "fu" belonging to the same consonant group as the one with "h". But the sound is similar to "hu" or "fu" but not quite either one. 00:43:28 tswett: Is this understandable to you? 00:44:18 I guess either we're sort of talking past each other, or I don't really understand what you said. 00:45:44 tswett: "h" and "f" are seperate phonemes, but morae with "f" and vowels other than "u" are only in loan words. 00:46:20 pikhq: *nod* And does "hu", distinct from "fu", occur in native words? 00:46:31 No. 00:46:51 Nor in loan words. 00:47:37 * tswett nods. 00:49:29 -!- oerjan has quit (Quit: Good night). 00:50:38 I had an idea; make chess variant game, your pieces has three your quarks, opponent pieces has three opponent quarks, and neutral pieces has one your quark and one opponent quark. Including swapping out quark and redrop captured pieces like shogi game does. 00:55:48 "Uh, is this move legal?" "I think so. The path integral converges." 00:56:05 * Phantom_Hoover → sleep 00:56:07 -!- Phantom_Hoover has quit (Quit: Leaving). 01:00:01 Also: perhaps the worst bit about Japanese romanisation is that, unless you diverge from the standard, you cannot entirely romanise Japanese. 01:00:09 s/standard/standards/ 01:00:39 Largely courtesy of them having no way of handling certain loan words. 01:10:48 I'm pretty sure the reason for that is the loan words that screw them up being newer than the romanisation schemes, which are invariably late 1800s inventions. 01:24:56 You could use the other forms of loan words 01:28:19 That presents some *incredible* oddities. 01:31:10 pikhq: solution: everyone speaks English instead. 01:32:38 That's a terrible solution, particularly for Japan. 01:32:52 Engrish is the direct result of their terrible English. 01:51:01 -!- Betawolf33 has joined. 01:51:58 -!- Vorpal has quit (Ping timeout: 255 seconds). 01:55:10 -!- shachaf_ has joined. 01:55:37 -!- Slereah_ has joined. 01:56:26 -!- Deewiant_ has joined. 01:57:07 -!- Betawolf has quit (Ping timeout: 245 seconds). 01:57:09 -!- shachaf has quit (Ping timeout: 245 seconds). 01:57:10 -!- Deewiant has quit (Ping timeout: 245 seconds). 01:59:16 -!- Slereah has quit (Ping timeout: 245 seconds). 02:05:28 "When you are stupid enough to lose to an eleven year old, is it okay 02:05:50 "When you are stupid enough to lose to an eleven year old, is it okay to claim that he can not claim the win because he was stupid too and said check instead of checkmate?" 02:06:20 I don't think that is how chess works..... 02:06:48 it's not okay 02:10:57 I know you are not supposed to claim that he cannot claim the win because he said check instead of checkmate. Sometimes in the chess variants people ask some of these kind of question in "FAQ of chess rules" and also in "How to contact us" (which is not for chess rules; it is for the site in general). 02:11:47 There are things like "WRONG! This connection does not have SMTP enabled. Already wrote to the chess federation in form..." and simply "i hate it" and "listen i cant get on the sight and i want my money back ive been trying since yesterday and its not my computer its the sight i wish someone would email me back melissa" (no email address was specified) 02:13:01 Aren't "check" and "checkmate" mere formalities? 02:13:29 With the actual status of check and checkmate being solely based (as far as the rules are concerned) on board state 02:13:42 pikhq: Yes, I think so. Actual status is board state. 02:15:01 There have been fun things that have happened in tournament games 02:15:02 But these people ask questions where these questions don't belong (there are other comment forms to send these questions) 02:15:08 Jafet: Describe example please? 02:15:27 Like someone castling twice (and neither player remembered that he'd already castled) 02:16:06 And I think there has been a game where both players missed a check 02:16:34 So the checked player didn't move out of check 02:16:45 And the checking player proceeded to do something else 02:17:10 The question about calling checkmate has been asked previously anyways, same site but wrong form: "When an opponent puts you in checkmate but does not realize it and calls check, is it still checkmate or does the fact that he did not call checkmate have some bearing?" 02:21:43 Do you know about Luzhanqi? It is Chinese game with some similar to Stratego. 02:23:33 -!- derdon has quit (Remote host closed the connection). 02:24:21 -!- copumpkin has quit (Quit: Computer has gone to sleep.). 02:52:00 -!- DCliche has joined. 02:55:25 -!- Klisz has quit (Ping timeout: 255 seconds). 02:56:18 -!- madbr has joined. 02:56:36 hey 02:58:15 I'm looking at weird sortof semi-non-deterministic languages to see if I can come up with something really nice but still turing complete :D 02:59:54 atm I'm looking at something where a program is essentially a math expression using logic operators (& | !) and math expressions with only + - variables and constants that evaluate to true if the result is 0 03:00:33 basically the whole logic operation must be true for any set of values for the variables 03:03:14 so for instance, you can make "a" equal to true by doing 03:03:19 uh 03:03:24 so for instance, you can make "a" equal to 5 by doing 03:03:26 a-5 03:03:54 if a is anything else than 5, the expression is obviously going to evaluate to non-0 and thus be false 03:06:13 This sounds like the prolog to something good 03:06:29 heh yeah 03:06:47 haven't used prolog much but it's probably similar yes 03:07:23 I'm fairly sure it's turing complete too 03:14:19 -!- madbr has quit (Read error: Connection reset by peer). 03:20:18 -!- madbr has joined. 03:28:25 yeah, hmm, a turing machine-like program would be defined as 03:28:26 (program definition involving ip val nip nval dptr) & ((initial state) | (transition rule)) 03:37:25 -!- madbr has quit (Read error: Connection reset by peer). 03:43:26 -!- madbr has joined. 03:45:41 -!- madbr has quit (Read error: Connection reset by peer). 03:46:58 -!- Nisstyre has quit (Ping timeout: 248 seconds). 03:48:06 -!- madbr has joined. 03:48:35 -!- Nisstyre has joined. 03:48:53 -!- variable has changed nick to const. 04:00:44 -!- copumpkin has joined. 04:03:50 -!- madbr has quit (Read error: Connection reset by peer). 04:08:59 -!- azaq23 has quit (Quit: Leaving.). 04:09:50 -!- madbr has joined. 04:14:16 -!- madbr has quit (Read error: Connection reset by peer). 04:14:32 -!- myndzi has quit (Read error: Connection reset by peer). 04:17:25 -!- GreaseMonkey has quit (Quit: The Other Game). 04:17:42 -!- myndzi has joined. 04:20:16 -!- madbr has joined. 04:33:13 -!- shachaf_ has changed nick to shachaf. 04:43:24 class Classical x => IsNatural x; instance IsNatural Zero; instance IsNatural x => IsNatural (Maybe x); 04:44:13 (program: use j v to give values to nv nj dp)& 04:44:13 ((i & tv & p & j)| 04:44:13 (i+1-ni & p+dp-np & (!tp-p | (v-tv & ntv-nv)) & (tp-p | (ntv-tv)) 04:44:13 & i+p-ni-np & i-p-ni+np & i+j-ni-nj & i-j-ni+nj 04:44:13 & i+tv+tp-ni-ntv-tp & i+tv-tp-ni-ntv+tp & i-tv+tp-ni+ntv-tp)) 04:47:22 turing machine using +, -, &(logical and), |(logical or), !(logical not), and nondeterministic evaluation :D 04:47:34 math expressions evaluate to true if =0, else false 04:48:15 -!- mtve has quit (Ping timeout: 244 seconds). 04:49:40 Then, subtraction makes equality as well 04:50:26 yep 04:52:14 program definition looks something like 04:54:37 (!j-0 | !v-0 | (nj-# & nv-# & dp-#)) & 04:54:43 (!j-1 | !v-0 | (nj-# & nv-# & dp-#)) & 04:54:47 (!j-2 | !v-0 | (nj-# & nv-# & dp-#)) & 04:54:49 .. 04:54:59 (!j-0 | !v-1 | (nj-# & nv-# & dp-#)) & 04:55:03 (!j-1 | !v-1 | (nj-# & nv-# & dp-#)) & 04:55:07 (!j-2 | !v-1 | (nj-# & nv-# & dp-#)) & 04:55:08 .. 04:55:10 What does the # mean? 04:55:10 etc 04:55:32 # has to be replaced by a numeric value depending on the program 04:55:37 OK 04:55:39 basically this means 04:56:18 OK I can understand it now. 04:57:56 for a given state(j) and value(v) on the infinite tape, new state(nj) is (first #), new value(nv) is (second #), tape moves (third #) values 04:58:06 (dp = tape movement) 04:58:45 OK. 05:02:40 the other major thing it does is define a new state from an old one 05:04:01 general structure is (program definition)&((first state value)|(new state value given previous state)) 05:04:18 so once a program is defined, that always stands 05:04:56 a valid state meanwhile is either the starting state, or a new state defined from a previous valid state (including the starting state) 05:05:13 here the starting state is (i & tv & p & j) 05:06:55 in other words, i=0 (iteration number), tv=0 for all values of tp (data array/infinite tape), p=0 (data pointer/tape position), j=0 (current state) 05:07:09 j is basically the instruction pointer 05:07:53 then it builds a new state from a preceding state 05:08:18 (i+1-ni & p+dp-np & (!tp-p | (v-tv & ntv-nv)) & (tp-p | (ntv-tv)) 05:08:55 uh 05:08:58 i+1-ni & p+dp-np & (!tp-p | (v-tv & ntv-nv)) & (tp-p | (ntv-tv)) 05:09:34 ni=i+1 (new iteration number is old one incremented of course) 05:10:15 np=p+dp (increase data pointer by dp, which is found from the program) 05:11:24 next statement basically means: if tp=p, v=tv and also ntv = nv 05:12:34 ie if the currently examined array index is the same as the data pointer, then v is the current array value (which it's going to use to figure out where to jump etc...) 05:13:12 and ntv (new value at currently examined index) is nv (from program) 05:13:48 then there's (tp-p | (ntv-tv)) which means: if tp!=p, then ntv = tv 05:14:08 ie otherwise new array value stays the same 05:15:12 the trick to those 2 parts is that they're a logical OR, so one part has to be true 05:15:49 if the part on the left (the condition) is false, then the part on the right has to be true 05:16:16 but if the condition is true, then the part on the right can be true or false or anything and has no effect 05:17:46 so from the old state (i tv tp p j) we have a new state (ni ntv ntp np nj) 05:19:05 so now we just have to "write" this new state back to the old variables 05:19:13 hence the lines 05:19:16 & i+p-ni-np & i-p-ni+np & i+j-ni-nj & i-j-ni+nj 05:19:27 & i+tv+tp-ni-ntv-tp & i+tv-tp-ni-ntv+tp & i-tv+tp-ni+ntv-tp 05:20:27 ie we have a i,p and a ni,np pair 05:20:45 what we're doing is 05:20:58 i+p=ni+np 05:21:00 and 05:21:05 i-p=ni-np 05:21:32 hmm 05:22:07 now I wonder if that's necessary 05:22:27 might be possible to just go 05:23:22 i-ni & p-np & j-nj & tv-ntv 05:23:56 hmm, yeah, a lot simpler and i think it should work 05:25:06 hmm 05:25:10 or maybe not 05:31:08 damn this is complicated :D 05:35:54 -!- zzo38 has quit (Remote host closed the connection). 05:40:05 -!- madbr has quit (Read error: Connection reset by peer). 05:44:00 -!- madbr has joined. 05:48:20 -!- madbr has quit (Read error: Connection reset by peer). 05:54:21 -!- madbr has joined. 05:58:47 -!- madbr has quit (Read error: Connection reset by peer). 06:04:34 -!- madbr has joined. 06:05:13 (program: use j v to give values to nv nj dp) & 06:05:13 ((i & tv & p & j) | 06:05:13 !(i+1-ni & p+dp-np & (!tp-p | (v-tv & ntv-nv)) & (tp-p | (ntv-tv))) | 06:05:13 (i-ni & p-np & j-nj & tv-ntv)) 06:05:19 there 06:06:47 hum 06:09:14 -!- madbr has quit (Read error: Connection reset by peer). 06:12:46 -!- madbr has joined. 06:14:58 madbr mad 06:40:11 my router doesnt like freenode :( 06:41:36 -!- calamari has joined. 06:45:35 -!- hagb4rd2 has joined. 06:48:18 -!- hagb4rd has quit (Ping timeout: 248 seconds). 06:50:41 I'd feel kind of bad running a bot on #esoteric that wasn't written in an esolang 06:50:45 unless you count perl as an esolang. 06:53:06 problem is, many esolangs don't have all the OS ties you'd need 06:53:07 -!- madbr has quit (Read error: Connection reset by peer). 06:56:25 calamari: not to mention I already have a working IRC bot in perl. :P 06:56:54 -!- DCliche has quit (Quit: You are now graced with my absence.). 06:56:56 -!- calamari has quit (Read error: Connection reset by peer). 06:57:46 -!- calamari has joined. 06:58:34 -!- mtve has joined. 06:59:12 -!- madbr has joined. 07:01:29 -!- madbr has quit (Read error: Connection reset by peer). 07:07:31 -!- madbr has joined. 07:09:44 -!- madbr has quit (Read error: Connection reset by peer). 07:15:41 -!- madbr has joined. 07:16:07 -!- madbr has quit (Client Quit). 07:17:43 PSOX can provide some OS ties 07:17:47 At least to networking stuff 07:31:04 -!- derrik has joined. 07:45:47 well connecting stdin to freenode is not an issue 07:46:00 but maintaining multiple connections would be. 07:49:30 -!- monqy has quit (Quit: hello). 07:54:39 -!- copumpkin has quit (Quit: Computer has gone to sleep.). 08:41:01 -!- calamari has quit (Quit: Leaving). 09:17:26 -!- sebbu2 has joined. 09:17:26 -!- sebbu2 has quit (Changing host). 09:17:26 -!- sebbu2 has joined. 09:18:28 -!- sebbu has quit (Ping timeout: 244 seconds). 09:44:24 -!- elliott has joined. 09:48:53 17:08:31: http://en.wikipedia.org/wiki/File:Christopher_Nolan_at_WonderCon_2010_1.JPG 09:48:53 17:08:33: Wait what. 09:48:53 17:08:35: No. 09:48:53 17:08:41: Nolan does not look like that. 09:48:53 elliott: You have 4 new messages. '/msg lambdabot @messages' to read them. 09:48:59 in my mind christopher nolan is leonardo dicaprio 09:52:11 17:58:22: I guess. But normally I suppose you'd just use whatever they call themselves; the Paratheo-Anametamystikhood Of Eris Esoteric or whatever. 09:52:16 fizzie: I thought that was parody until I googled "Paratheo-Anametamystikhood". 09:55:33 20:52:48: I find it annoying when they only have month/day but not year 09:55:38 Deewiant_: Twitter does this and it's infuriating 09:56:43 -!- Phantom_Hoover has joined. 09:57:13 22:57:25: i don't know about its type logic use, it's just the obvious way i'd try it 09:57:17 they're just dependent tuples 09:57:59 Hello lambdabot. 09:57:59 Phantom_Hoover: You have 2 new messages. '/msg lambdabot @messages' to read them. 10:10:25 -!- Phantom_Hoover has quit (Quit: Leaving). 10:10:35 -!- Phantom_Hoover has joined. 10:10:42 -!- Phantom_Hoover has quit (Changing host). 10:10:42 -!- Phantom_Hoover has joined. 10:14:34 -!- kallisti has changed nick to lambduhbot. 10:14:38 Phantom_Hoover: sup 10:14:59 -!- lambduhbot has changed nick to kallisti. 10:15:37 kallisti, still hurting from the breakup? 10:17:24 -!- Slereah has joined. 10:18:09 -!- Slereah_ has quit (Ping timeout: 244 seconds). 10:33:07 02:05:50: "When you are stupid enough to lose to an eleven year old, is it okay to claim that he can not claim the win because he was stupid too and said check instead of checkmate?" 10:33:07 02:06:20: I don't think that is how chess works..... 10:33:11 I can confirm that this is how chess works. 10:40:22 Phantom_Hoover: wat 10:40:24 which 10:41:14 with lambdabot. 10:41:55 yes. ;_; 10:48:11 why does the emacs window appear just a bit too low for me to see the minibuffer 10:48:14 so annoying. 10:48:23 I always have to drag it up or maximize 10:54:49 -!- Deewiant_ has changed nick to Deewiant. 10:59:39 -!- sebbu2 has changed nick to sebbu. 11:07:35 -!- derdon has joined. 11:14:06 -!- oerjan has joined. 11:17:02 hi oerjan 11:17:04 hoerjan 11:17:15 helliott 11:22:19 hmmm, I can't seem to find a package for Firefox 7 on Ubuntu 11:23:50 I don't think they bother including older-than-the-current-default versions. If you mean the official rebbository. 11:24:41 yess 11:25:03 kallisti: why do you want it 11:25:18 fizzie: so if i'm reading this log right you actually reached an agreement with myndzi??? or did you just give up 11:25:28 elliott: firefox 8 doesn't work with this other thing I'm using -secretive- 11:25:30 elliott: I think we reached an agreement, yes. 11:25:41 fizzie: help i can't believe? 11:25:45 kallisti: fix the thing 11:26:23 elliott: noep 11:26:54 kallisti: You could try dpkg-installing one of the 7.0 .debs from https://launchpad.net/ubuntu/precise/+package/firefox 11:27:18 wow why is the firefox homepage so shitty. 11:27:21 fizzie: Assuming he wants to uninstall his current Firefox. 11:27:27 "want an older firefox version? here's 3.6!" 11:27:27 elliott: Right, assuming that. 11:27:34 it's already uninstalled 11:27:52 what is "nobinonly" 11:28:00 fizzie: Is the next codename really "precise"? 11:28:08 That's terrible. 11:28:49 elliott: Precise Pangolin, yes. 11:29:12 fizzie: Well the Pangolin bit is fine, "precise" is just not a very... fun thing to have in source lists and the like. 11:29:25 Feels more like a setting or... advertising attribute than a name. 11:29:39 fizzie: (Although I have to wonder why they don't make the animal name the codename part.) 11:29:45 Uninspired Ubuntulike 11:29:45 Actually there seem to be some 7.0's also in https://launchpad.net/ubuntu/oneiric/+package/firefox 11:29:49 Those might be a better bet. 11:30:35 I just hit the 'precise' versions first when furiously clicking around in Launchpad. 11:31:00 I'm almost positive this is the same packge but... I'll try it anyway 11:31:11 fizzie: They should have gone with Pink Panther. :'( 11:31:27 Powerful Panda 11:31:57 Pink Panda 11:32:03 Precise Panda 11:34:04 Pugnacious Panda? 11:34:06 Putrid Panda? 11:34:10 * kallisti shouldn't name things 11:35:07 The suggestions page is not exactly better. Though Psychedelic Penguin would have been possibly interesting to explain in stuffy corporate situations. 11:35:23 `word 26 11:35:31 veinneilion combchiroxiviloadra caneraguftls zinaidnercycackingnat kerndra pontiul ziners relsocrutiona ce enlerd diintle surbramenolleybdon jyob an lux elienty unsa ging na ate worici ze he hibrardceifterufhamirp li ste 11:36:03 Pontiul Panda 11:36:20 I have no idea what "hunspell-en-ca" is but I'm going to remove it because this package wants me to 11:36:59 Probably the canadian-english data files for hunspell, which is what OOoOooOOo and Firefox use as their spellchecker eggine. 11:37:27 Then you can't spellcheck in Canadianese. :/ 11:37:31 noooooooo 11:37:36 well it says it's provided but something else 11:37:38 so... whatever 11:37:47 and now hunspel-en-us 11:37:49 FUCK YOU 11:38:50 Dependency is not satisfiable: libstdc++6 (>= 4.6) 11:38:52 fffffffffffffffffff 11:39:33 Are you actually running oneiric? 11:39:50 -!- derrik has quit (Quit: gone). 11:41:43 oh, right 11:41:44 no 11:41:44 natty 11:42:45 Out of luck, then, since https://launchpad.net/ubuntu/natty/+package/firefox just has 3.6 and 8.0. 11:43:00 Maybe some other place in their PPAs has a 7.0 build, who knows. 11:43:10 It's all so confuzzling. 11:47:23 ghdfgfyjdfhdj' 11:48:50 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds). 11:51:32 kallisti: You could just use the Mozilla binaries. 11:52:38 mozillas homepage is dumb 11:53:44 kallisti: you're dumb 11:54:33 also im cold 11:54:36 the only versions I see available from mozilla are 3.6 and 8 11:55:13 kallisti: http://releases.mozilla.org/pub/mozilla.org/firefox/releases/ 11:55:24 hmm that doesn't have 7 11:55:26 kallisti: just compile it yrself 11:55:34 if you really want it 11:55:44 http://www.mozilla.org/en-US/firefox/releases/0.8.html 11:55:59 fiiiine 11:56:09 kallisti: or 11:56:10 kallisti: http://www.mozilla.org/en-US/firefox/7.0.1/releasenotes/ 11:56:10 "3.0.19-real-real", the best directory name. 11:56:23 no download links 11:56:37 you're really not meant to downgrade firefox these days methinks 11:56:44 "release channel" and all that 11:56:47 It's not in the "channel" any more, right. 11:56:48 elliott: for some reason they only have binaries for 8 and 3.6 which is now ancient. 11:57:06 kallisti: does 3.6 not work for what you want to do 11:57:07 elliott: but I'll just compile from source for now 11:57:08 which will be 11:57:08 and MAYBE 11:57:09 3.6.x is still kept security-updated, it's not "ancient". 11:57:10 use something briefly 11:57:12 actually fix the problem eventually 11:57:13 for backwards compat reasons 11:57:15 elliott: it might 11:57:21 and then upgrade again 11:57:23 kallisti: dude 11:57:28 kallisti: do you have any idea how long compiling firefox takes 11:57:38 um..... 11:57:39 no 11:57:43 hours 11:57:48 It'd be faster to dist-upgrade to oneiric and use that deb. :p 11:57:52 elliott: my god 11:57:55 I'll have to like 11:57:58 SLEEP THROUGH IT 11:57:59 THE HORROR 11:58:09 kallisti: with the fans on full-blast because it uses all your CPU? 11:58:14 that's fine 11:58:22 I've got this awesome secondary cooling pad thing 11:58:36 oh hmmm this might be a binary actually 11:58:46 * elliott gives up. 11:59:20 yes the tarball comes with a precompiled binary 11:59:34 PERHAPS AN INSTALL SCRIPT AS WELL? HMMMMM 11:59:38 * kallisti searches. 11:59:40 it's called autoconf 11:59:59 kallisti: you're searching for something that you won't find because you're looking in the wrong place. 12:00:15 elliott: could you possibly be any more vague? 12:00:21 I need you to be more vague 12:00:21 it's called autoconf 12:00:23 or I won't understan 12:00:24 d 12:00:25 easily, considering i told you the answer 12:00:48 ...so you're saying there's no autoconf? okay. 12:01:18 kallisti: do you have to practice being this dense 12:01:25 no. 12:01:28 talent 12:01:36 you could just be direct and explain wtf you're getting at though. 12:01:43 because it's not clear. 12:02:13 PERHAPS AN INSTALL SCRIPT AS WELL? HMMMMM 12:02:13 * kallisti searches. 12:02:13 it's called autoconf 12:02:19 yes? 12:02:19 and? 12:02:32 you're really dumb 12:02:36 that doesn't convey at all what you're saying. other than: "use autoconf maybe" 12:02:39 which 12:02:43 I already gathered 12:02:47 from you saying 12:02:50 it's called autoconf 12:03:03 then what are you searching for 12:03:14 a .ac file? 12:03:16 or configure? 12:03:17 but 12:03:19 there isn't one 12:03:39 then probably you _are_ looking in the wrong place. 12:03:51 You might have a binary tarball there, if it actually does have a binary in it. 12:03:55 They do make those as well. 12:04:03 yes I see no source code. 12:04:06 -!- Phantom_Hoover has joined. 12:04:37 fizzie: All the modern OSS binary tarballs I see are installed with an autoconf/automake setup. 12:04:42 elliott: okay so you suggested something that you apparently knew wasn't going to be there. 12:04:45 thanks. 12:04:55 Yes, what a reasonable deduction to make. 12:05:59 tune in for tomorrow's installment of ellipott and kettlisti 12:06:43 oerjan: The fundamental unbalancing difference is that one of us isn't dense. 12:07:01 while the other one isn't vague. check. 12:07:12 (NB. Dense considered as action/state, not attribute.) 12:07:45 elliott: am I suppose to know everything you mean by "it's called autoconf" and "you're probably looking in the wrong place." neither of those two things are remotely helpful, especially when I'm being so "dense" 12:07:54 oerjan: Well, I could just answer every single silly question with an unbearably specific, paragraph-long answer on a silver platter, but I don't think it's worth my while to waste my time like that. 12:08:13 This thing is like the most confusing thing ever. Occasionally releases.mozilla.org/pub/mozilla.org/firefox/releases/7.0.1/ actually has all the stuffs. Most of the time it doesn't. Must be their load-balancing + non-identical servers. At least ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/7.0.1/ is stable. 12:08:29 fizzie: Nice. 12:11:30 fizzie: as far as I see the both the HTTP and the FTP tarball are the same for linux-x86_64/en-US/ 12:11:49 elliott: it just looks like you are maximizing the chance of being misunderstood while still having plausible deniability. 12:12:25 kallisti: Yes, most likely, but http://releases.mozilla.org/pub/mozilla.org/firefox/releases/7.0.1/ only has the update/ directory (no tarballs) for most of the time for me; sometimes it has what's in ftp.mozilla.org too, though. 12:12:40 oerjan: Yes, the thing I want most out of IRC is kallisti complaining about how vague I am. 12:12:51 oerjan: How did you discover my secret pleasure and the devious means by which I acquire it? 12:12:52 (The directory indexing also keeps flipping between lighttpd and Apache indexes. And so on. 12:13:28 fizzie: Apache at least shows the server domain at the bottom of the indices, so if you want COMPLETE CONFIRMATION that's what's happening... 12:13:33 fizzie: My server is stable on refresh, though. 12:13:34 elliott: vague impression, my secret weapon. 12:13:41 Oh, not on cache-flush. 12:13:48 Wow, one of these servers is using Cherokee. 12:14:09 All the apaches I've seen have said "at releases.mozilla.org", I think. 12:14:15 http://releases.mozilla.org/cherokee_themes/default/ftp.gif 12:15:04 http://p.zem.fi/9i13 -- since it has 'geo' in the name, it might also return different lists for different people. 12:15:55 releases.geo.mozilla.com has SOA record geo.mozilla.com. hostmaster.mozilla.com. 200309181 28800 7200 86400 28800 12:15:55 releases.geo.mozilla.com name server ns1.geo.mozilla.com. 12:15:55 releases.geo.mozilla.com name server ns0.geo.mozilla.com. 12:15:55 releases.geo.mozilla.com has address 204.152.184.113 12:15:55 releases.geo.mozilla.com has address 128.61.111.9 12:15:57 releases.geo.mozilla.com has address 64.50.236.214 12:15:59 releases.geo.mozilla.com has address 131.188.12.212 12:16:01 releases.geo.mozilla.com has address 216.165.129.141 12:16:03 releases.geo.mozilla.com has address 204.152.184.196 12:16:05 releases.geo.mozilla.com has address 202.177.202.154 12:16:07 releases.geo.mozilla.com has address 129.101.198.59 12:16:09 releases.geo.mozilla.com has address 204.246.0.136 12:16:11 releases.geo.mozilla.com has address 155.98.64.83 12:16:13 releases.geo.mozilla.com has address 156.56.247.196 12:16:15 releases.geo.mozilla.com has IPv6 address 2001:6b0:e:2018::1337 12:16:17 releases.geo.mozilla.com has IPv6 address 2001:4f8:4:b:230:48ff:fedf:7f3a 12:16:19 IPv6, impressive. 12:16:21 (That's with Google Public DNS.) 12:16:23 (Also that's more lines than it seemed to be.) 12:16:39 I'm just going to fuck it and make links to the binaries in /bin :P 12:16:56 In /bin? 12:17:05 Are you trying to pick the worst possible place to link the binaries? 12:17:14 /usr/local/bin? 12:17:14 Anyway, that probably won't work. 12:17:15 kallisti: Why don't you just run it from where you extracted it? I mean, I don't suppose you're planning to permanently stick with FF7. 12:17:21 Since there are auxiliary files it'll try and find. 12:17:40 I think the tarball is constructed to be a very self-contained directory. 12:17:40 fizzie: I'm pretty sure I need it to be as though it were installed normally 12:17:51 * kallisti secretive 12:19:55 bah stupid cross-device link error thing. 12:19:59 kallisti: Speaking of "vague", this looks like a huge X-Y problem to me. 12:20:10 elliott: that's because I'm being secretive 12:20:16 Unfortunately, nobody can help you, since you won't give any details, so you'll have to enjoy fucking it up by yourself. 12:20:21 Have you considered a chroot? 12:20:26 no, bad idea. 12:20:32 Not as bad as this idea. 12:20:39 Have fun breaking your system. 12:20:46 um... 12:20:52 I seriously doubt that will happen 12:21:10 Good for you. 12:23:22 unless soft links (and now, since that doesn't work, a simple shell script) CATASTROPHICALLY MALFUNCTION AND WIPE MY HARD DRIVE 12:29:26 Chrome has, for some reason, wiped my profile. 12:31:02 well, Firefox 7 doesn't seem to fix the problem either. 12:31:28 I believe that's the last version I was using that worked correctly. 12:31:48 kallisti: Have you considered that maybe whatever shit you're doing is more likely to be broken than Firefox. 12:31:58 elliott: you are correct 12:32:06 elliott: firefox is not broken at all 12:33:23 kallisti: You did not think of this first time around? 12:33:37 no, it's unrelated to what I'm trying to do. 12:33:58 Last time selenium worked I was using Firefox 7, so... I thought going back to Firefox 7 would fix the issue 12:34:05 but it either hasn't, or created a new issue. 12:35:54 -!- derdon has quit (Remote host closed the connection). 12:36:19 elliott: but I appreciate the continued and unyielding condescension for reasons I don't fully understand. 12:36:34 Me too. 12:56:54 http://www.fibers.com/shop/design/this-is-not-a-hipster-t-shirt.D46044/mens-fine-cotton-t-shirt.P1308?utm_source=google&utm_medium=product-search&utm_campaign=feed 12:56:57 SO IRONIC 12:57:39 "This American Apparel brand shirt, is our most popular premium t-shirt" 12:57:42 eh, too mainstream for me. 13:00:49 Home > Browse T-Shirts > Lifestyle & Identity > Subcultures > Hipster > This Is Not A Hipster T-shirt 13:01:04 Paintings > Pipes > The Treachery of Images 13:02:05 I can't seem to find those categories on the site. :P 13:03:03 the problem is that... 13:03:11 while it is indeed not a pipe, but merely an image of a pipe 13:03:18 that shirt is, in fact, a hipster shirt 13:05:08 well, actually, it could easily be a hipster poser shirt. 13:05:16 I'd need to consult a hipster to find out. 13:20:11 what's interesting about Google is they have a lot of software products that... don't really seem to generate any revenue for them. 13:21:33 kallisti: *in a way I can see 13:22:22 well, yes. but how does chrome produce revenue? 13:24:16 kallisti: Makes it really easy to use Google and thus view Google ads, for one 13:24:22 sure it gives me a browser, and pretty much any significant amount of time I spend on the web = revenue for google. 13:24:39 but, web browsers already existed for that. 13:25:15 kallisti: Chrome was the first web browser with one big bar advertised to just have you type what you want and get there (via Google) 13:25:41 kallisti: Oh, and Chrome was massively faster than Firefox, making it nicer to use Google's many profitable web applications 13:26:11 And allowing them to implement more complex web applications that would previously only be possible on the desktop, thus generating more revenue, etc. etc. etc. 13:26:49 hmmm, okay. 13:28:10 another interesting thing about Google: they've convinced everyone that their rapid expansion has benefited everyone. 13:28:14 I guess in some ways it has. 13:28:24 * kallisti convinced. 13:28:46 kallisti: Also, giving Google more leverage in standards organisation :P 13:29:04 And things like Native Client, SPDY, etc. etc. etc. 13:29:18 I suspect V8 might have originated as some 20% time thing though 13:30:12 oh I wasn't aware of native client. 13:30:15 that's pretty interesting. 13:31:10 NaCl's x86-32 sandboxing was really fancy. 13:31:16 Sadly it was very x86-32-only. 13:31:19 I suspect Native Client is how they intend to make Chrome OS capable of running native code apps. 13:31:40 (And by "fancy" I mean "freako".) 13:31:44 kallisti: NaCl is sort of dead these days. 13:32:01 kallisti: Mozilla were like "hahaha, NO" and everyone was like "oh". 13:32:51 Mozilla and HTML bffs forever. 13:32:54 (yes bffs forever) 13:33:03 bfff 13:33:13 Best friend forevers forever. 13:33:27 which will then later be used as: "bfffs forever" 13:33:28 etc 13:34:17 Sadly it was very x86-32-only. 13:34:23 fizzie: Because it used segmentation, right? 13:34:29 Right. 13:34:33 fizzie: I didn't know you could even do that in proteced mode. 13:34:46 But I <3 it still; segmentation is so underutilized and abandoned, you have to feel pity for it. 13:35:11 fizzie: I wonder why they didn't just use a hypervisor thing; I guess because not everyone had the CPU for it at the time. 13:35:25 But, uh, better future-ready than planned-obsolescent, surely? 13:35:35 fizzie: Ehm: "An ARM implementation was released in March 2010,[6] and x86-64 is also supported. However, As of March 2011, all three implementations can only use code compiled to the host's native instruction set." 13:35:40 elliott: why is Mozilla not implementing native code a big deal? 13:35:48 elliott: isn't Google like the internet tough guy? 13:35:52 kallisti: Because the people who don't use Chrome or IE use Firefox 13:36:03 Well, and Safari 13:36:05 well, yes.. 13:36:09 >_>? 13:36:11 okay I guess 13:36:13 that makes sense. 13:36:21 kallisti: People don't like websites that only work in one browser, dude. 13:36:23 not much of a standard if it isn't standard. 13:36:32 Especially a browser that was less widely-used than Firefox until recently. 13:36:41 elliott: Yes, they have x86-64 and ARM now; it's a different sandboxing mechanism though. 13:36:45 fizzie: Ah. 13:36:52 http://research.google.com/pubs/pub35649.html describes the new one. 13:37:07 fizzie: Apparently they're doing something with "portable LLVM", which sounds, uh, fun, since I gathered LLVM assembly was very platform-specific. 13:37:17 Because sizeof etc. is all done by then. 13:37:31 I suppose that's for the PNaCl thing? 13:37:36 Yes. 13:37:38 Pnackle. 13:37:41 Also, name my branch already. 13:38:37 I think the x86-64 NaCl sandbox actually makes 'long's and pointers 32-bit too, to aid in PNaCling things between ARM and x86-64. 13:39:09 Mozilla Firefox currently supports SPDY through an out-of-tree patch,[12][13] the target version for mainline inclusion is Firefox 11 13:39:14 should be out next year then. 13:39:21 fizzie: But it sounds like PNaCl is a separate thing entirely designed to eliminate the native code altogether. 13:39:35 fizzie: Or were you using the term FACETIOUSLY 13:39:57 kallisti: Firefox 9 is in beta, so probably early next year; Firefox 11 is in alpha. 13:40:08 That is, 11 will probably be early next year. 13:40:17 what happened to... 13:40:18 like 13:40:21 decimal numbers? 13:40:42 "Mozilla Firefox 7.0.1 was released a few days later, fixing a rare but serious issue with add-ons not being detected by the browser." 13:40:44 See, decimals. 13:41:03 elliott: I thought it worked so that you compiled your "native" code into that LLVM IR, and then on runtime they'd LLVMize it into actual native code, and run in the usual x86-32/x86-64/ARM NaCl sandbox. But I confess I haven't really looked at it very closely. 13:41:15 Apparently the single feature Firefox 8 introduced was to ask you whether you really want all your addons at install time. 13:41:22 (Because of third-party junkware.) 13:41:29 .. 13:41:30 see 13:41:32 that should be 13:41:35 fizzie: Oh, that would make sense. 13:41:36 7.2 13:41:43 not 8 13:41:54 kallisti: What happened to 7.1? 13:42:02 lost in time, I dunno. 13:42:16 I guess 7.1 is fine. 13:42:23 unless there was some other slightly minor thing. 13:42:29 but subversions like 7.2 is so complicated and technical looking for the people who just want a new browser 13:42:35 8 is more than 7, 7.2 is MATH 13:43:01 10 years from now: Firefox 53 13:44:31 kallisti: (It wasn't actually the single feature introduced.) 13:44:42 See http://www.mozilla.org/en-US/firefox/8.0/releasenotes/, "What's New in Firefox". 13:44:58 The load-tabs-on-demand thing is quite a major nicety. 13:45:01 kallisti: In ten years it should be around 95 or so; the release cycle is six weeks. 13:45:17 Firefox 95 "So Very Tired" 13:45:32 Followed by Son of Firefox 1 "RIP Dad". 13:46:29 kallisti: Really though, the versions don't /matter/, since it's all done through the automatic-update channels. 13:46:51 There's not much point having a major version number if you only increment it every "long while" without any fanfare. 13:47:00 -!- augur has quit (*.net *.split). 13:47:01 -!- olsner has quit (*.net *.split). 13:47:01 -!- oerjan has quit (*.net *.split). 13:47:04 -!- Phantom_Hoover has quit (*.net *.split). 13:47:05 -!- elliott has quit (*.net *.split). 13:47:06 -!- hagb4rd2 has quit (*.net *.split). 13:47:06 -!- Nisstyre has quit (*.net *.split). 13:47:07 -!- Deewiant has quit (*.net *.split). 13:47:08 -!- Betawolf33 has quit (*.net *.split). 13:47:10 -!- myndzi has quit (*.net *.split). 13:47:11 -!- itidus21 has quit (*.net *.split). 13:47:11 -!- TeruFSX has quit (*.net *.split). 13:47:14 -!- fizzie has quit (*.net *.split). 13:47:17 -!- twice11 has quit (*.net *.split). 13:47:24 -!- pikhq has quit (*.net *.split). 13:47:26 -!- lambdabot has quit (*.net *.split). 13:47:27 -!- quintopia has quit (*.net *.split). 13:47:28 -!- yorick has quit (*.net *.split). 13:47:28 -!- yiyus has quit (*.net *.split). 13:47:30 -!- Zwaarddi1k has quit (*.net *.split). 13:47:34 -!- Zuu has quit (*.net *.split). 13:47:35 -!- aloril has quit (*.net *.split). 13:47:39 -!- fungot has quit (*.net *.split). 13:47:40 -!- fizziew has quit (*.net *.split). 13:47:44 -!- coppro has quit (*.net *.split). 13:47:46 -!- kallisti has quit (*.net *.split). 13:47:53 -!- SimonRC has quit (*.net *.split). 13:47:54 -!- FireFly has quit (*.net *.split). 13:47:54 -!- oklopol has quit (*.net *.split). 13:47:55 -!- Jafet has quit (*.net *.split). 13:47:55 -!- mtve has quit (*.net *.split). 13:48:00 -!- ineiros has quit (*.net *.split). 13:48:09 -!- coppro has joined. 13:48:20 -!- yiyus has joined. 13:52:25 -!- Zwaarddijk has joined. 13:53:49 -!- FireFly has joined. 13:53:49 -!- oklopol has joined. 13:53:49 -!- SimonRC has joined. 13:53:49 -!- mtve has joined. 13:53:49 -!- quintopia has joined. 13:53:49 -!- pikhq has joined. 13:53:49 -!- kallisti has joined. 13:53:49 -!- olsner has joined. 13:53:49 -!- augur has joined. 13:53:49 -!- ineiros has joined. 13:53:49 -!- Jafet has joined. 13:53:49 -!- fizziew has joined. 13:53:49 -!- aloril has joined. 13:53:49 -!- twice11 has joined. 13:53:49 -!- fizzie has joined. 13:53:49 -!- TeruFSX has joined. 13:53:49 -!- itidus21 has joined. 13:53:49 -!- Betawolf33 has joined. 13:53:49 -!- Deewiant has joined. 13:53:49 -!- Nisstyre has joined. 13:53:49 -!- myndzi has joined. 13:53:49 -!- hagb4rd2 has joined. 13:53:49 -!- elliott has joined. 13:53:49 -!- Phantom_Hoover has joined. 13:53:49 -!- Zuu has joined. 13:57:21 hi gaiz 13:57:30 Not you again. 13:57:33 -!- itidus21 has quit (Quit: Leaving). 14:01:55 `addquote Dinner? At two? It's four here already. See, UTC+2. You need to add a couple of hours. Or was that subtract? I can never get those straight. 14:01:58 744) Dinner? At two? It's four here already. See, UTC+2. You need to add a couple of hours. Or was that subtract? I can never get those straight. 14:02:37 elliott, I think you need the myndzi context for that to work. 14:02:41 -!- Zuu has quit (Changing host). 14:02:41 -!- Zuu has joined. 14:02:43 -!- quintopia has changed nick to Guest12461. 14:02:44 It's in our collective consciousness now. 14:02:55 -!- yorick has joined. 14:16:42 -!- Phantom__Hoover has joined. 14:16:48 -!- Phantom__Hoover has quit (Changing host). 14:16:48 -!- Phantom__Hoover has joined. 14:18:50 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds). 14:20:51 I have no idea about the context, but I find the quote amusing enough. 14:57:08 -!- copumpkin has joined. 15:02:55 -!- itidus21 has joined. 15:04:50 -!- itidus21 has left. 15:06:35 -!- itidus21 has joined. 15:10:07 I've become such a sc2 junkie. 15:24:25 -!- itidus21 has quit (Read error: Connection timed out). 15:25:02 -!- itidus21 has joined. 15:25:31 kallisti, Star Control 2? 15:26:49 s/ Control/Craft/ 15:29:19 ^^ 15:30:01 -!- Vorpal has joined. 15:32:47 -!- itidus21 has quit (Read error: Operation timed out). 15:32:53 elliott: there are two elements of randomness in SC2 games that I've discovered (modulo lag). 1) your spawn location is random 2) you can select a random race, which prevents your opponent from knowing what your race is until they scout. 15:34:03 the first one is a bit more important. 15:34:12 It's also map-dependent. 15:34:12 as it makes when you discover enemies random 15:34:23 because you can "scout the wrong way" 15:34:28 -!- itidus21 has joined. 15:34:36 which wastes time. 15:34:51 -!- itidus21 has quit (Client Quit). 15:35:12 it also randomy determines which strategies are more effective, based on how close you spawn to your opponent. 15:35:15 +l 15:40:22 Deewiant: can you explain why the game clock is not sync'd to actual seconds? 15:40:25 it's "Blizzard seconds" 15:40:39 "Normal" speed is actual seconds 15:40:45 kallisti: it changes based on your speed setting? 15:40:54 oh okay. 15:40:56 But no, I don't know why the default speed isn't actual seconds 15:40:56 that's weird. 15:41:09 Almost nobody plays on normal 15:41:28 I guess it makes sense to change the clock speed for faster speed settings because it lets you time strategies 15:42:04 I'd say it's just because it's easiest to implement like that :-P 15:42:19 ...I think actual seconds are easier. 15:42:44 Well, if you're talking about the in-game timer, that's one thing 15:42:48 time() //lol 15:42:50 But I was thinking about e.g. APM calculation 15:42:56 ah right 15:43:02 it makes everything consistent, yes. 15:43:10 The in-game timer wasn't even in the original game, it appeared in a later patch. 15:43:15 s/game/release/ 15:43:17 and you can say "oh I should expand at the 6 minute mark" regardless of speed setting. 15:43:25 Deewiant: right 15:51:31 -!- derrik has joined. 15:56:09 -!- derrik has quit (Client Quit). 15:58:32 @hoogle (a -> b, c -> d) -> (a,c) -> (b,d) 15:58:38 It's going to be some arrow shit 15:58:45 lambdabot? 15:58:56 Deewiant: @hoogle (a -> b, c -> d) -> (a,c) -> (b,d) 15:59:28 Not easy IIRC 15:59:46 Deewiant: Sure it is: f (g,h) (a,b) = (g a, h b) :P 15:59:59 Deewiant: Wait, isn't that just bilift 16:00:01 Not easy to pointlessify 16:00:02 Or whatever it was called 16:00:47 It's (<<.>>) 16:01:17 uncurry (***) ? 16:01:22 Oh wait, that isn't even what I want... 16:01:23 I have 16:01:33 do { (f, fm') <- fm; (a, am') <- am; return (f a, fm' <*> am') } 16:01:37 And am trying to pointlessify it 16:01:57 So... liftA2 (uncurry ($) *** uncurry (<*>)) 16:02:00 Gross 16:02:22 @@ @pl @undo do { (a,m') <- m; return (f a, fmap f m') } 16:02:23 Deewiant: also some maps are asymmetric. like Delta Quadrant for example. 16:02:35 kallisti: AKA blizzard's shitty maps 16:02:41 Oh wait 16:02:44 lambdabot still isn't here :-) 16:02:47 you can be in a spawn where your natural expansion is toward your opponent, and your opponent's natural is away from you. 16:02:49 Or anywhere 16:02:51 m >>= \(a,m') -> (f a, fmap f m') 16:03:00 m >>= f *** fmap f 16:03:05 fucking arrows 16:05:33 elliott: what's wrong with arrows again? 16:05:43 remind me why I dislike them. 16:05:46 Satanism, etc. 16:06:41 m >>= ap (***) fmap f 16:09:21 Deewiant: Wow, you made it so that even I can't read it 16:09:32 Deewiant: OK, now embetter So... liftA2 (uncurry ($) *** uncurry (<*>)) :P 16:09:33 m >>= ((***) <*> fmap) f 16:10:27 Deewiant: Are you serious 16:10:32 Oh 16:10:41 That was for the last 16:10:52 elliott: Your liftA2 thing doesn't type 16:11:55 Deewiant: do { (f, fm') <- fm; (a, am') <- am; return (f a, fm' <*> am') } 16:12:23 Can't be bothered to mess with that without a @. pl undo or at least @undo pass first :-P 16:12:58 Deewiant: fm >>= \(f,x) -> am >>= \(a,y) -> return (f a, x <*> y) 16:13:19 Deewiant: fm >>= \(f,x) -> fmap (\(a,y) -> (f a, x <*> y)) am 16:13:29 That's as far as I can be bothered to go :P 16:15:29 fm >>= \(f,x) -> fmap (f *** (x <*>)) am 16:15:43 So pointy! 16:16:04 Can't think of a reduction for that offhand 16:16:33 elliott: there are programs that can help you with your pointless addiction. 16:16:36 Deewiant: Well, we need to get \(f,x) -> (f *** (x <*>)), then we just need to compose that with flip fmap am. 16:16:45 elliott: like... people programs, not computer programs. 16:17:01 \(f,x) -> (***) f (x <*>) 16:17:07 uncurry (\f x -> (***) f (x <*>)) 16:17:16 > f `ap` g 16:17:23 ...oh 16:17:24 right 16:17:31 uncurry (\f -> (***) f . (<*>)) 16:17:52 The next one involves more than one (.) so I'd probably get it wrong 16:18:00 Heh 16:18:07 Perhaps it should stay pointless 16:18:12 Erm 16:18:13 Pointful 16:18:43 -!- azaq23 has joined. 16:24:53 -!- Klisz has joined. 16:29:08 -!- derrik has joined. 16:30:06 fflip (((flip f :: Expr -> Expr -> Expr)) . g) x y 16:30:06 f x (g y) 16:30:11 *flip 16:30:29 -!- derrik has left. 16:30:42 elliott: ^^^ 16:31:47 what 16:31:55 oh 16:31:58 f = (***) g = (<*>) 16:32:20 flip (flip (***) . (<*>))? 16:32:20 unfortunately it uses flip 16:32:24 * kallisti doesn't like flip 16:32:31 believe so yes. 16:33:55 unless you want to rearrange your arguments. 16:33:59 but I doubt you do. 16:34:31 So it's... 16:35:08 fm >>= flip fmap am . flip (flip (***) . (<*>)) 16:35:11 "Lovely" 16:35:19 yes looks nice. 16:35:46 it would be nice to have more combinators 16:36:14 for example f ??? g x y = f (g x) y 16:37:24 or... 16:37:28 for example f !!! g x y = f y (g x) 16:37:33 er 16:37:37 for example f !!! g x y = f x (g y) 16:38:18 elliott: let's make a pointless library!!! :) :) :) :) 16:39:23 kallisti: You realise that's just (<*>)? 16:39:26 for example f !!! g x y = f x (g y) 16:39:27 That one. 16:39:30 Oh, no, wait. 16:39:36 <*> is x z (y z). 16:39:41 yep 16:39:49 I thought the same thing actually 16:39:57 when I was working out how to do that pointfreely 16:40:09 but then I remember it takes the same argument instead of two different ones. 16:40:13 flip . ((.) .) 16:46:01 why do I keep having these wtf moments 16:46:06 where I change some python code 16:46:14 and it continues to run on another version for some reason. 16:46:29 .pyc? 16:46:35 no I checked 16:46:56 and even if there were it would still recompile 16:48:28 surely I'm just stupid 16:48:49 but this happens often with no indication of why 16:54:25 [[ 16:54:26 Besides the following is absolutley equivalent: 16:54:26 mysql_query("LOCK TABLES mytable WRITE"); 16:54:26 try { 16:54:26 // ... do lots of queries here 16:54:27 } catch (Exception $e) { 16:54:29 // do nothing here 16:54:31 } 16:54:33 mysql_query("UNLOCK TABLES"); 16:54:35 The only difference is the second example does rethrow the exception. Though this is still possible (however much more to type) it is wrong design. Since obviously you are using the exceptions as control flow. 16:54:38 ]] -- php dev justifying noninclusion of "finally" 16:54:57 Occasionally I try and give PHP developers the benefit of the doubt because, hey, it's not easy to write a VM, they must have *some* modicum of intelligence, right? 16:55:01 nooooooooooooooope 16:55:15 -!- kallisti_ has joined. 16:55:48 "And that design looks like Java where it unlike with PHP makes somewhat sense." 16:55:52 * elliott cries. 16:56:55 -!- kallisti has quit (Ping timeout: 244 seconds). 16:57:50 elliott: wat 16:57:53 that sentence.... 16:57:55 kallisti_: http://codu.org/logs/log/_esoteric/2011-12-04#165425elliott 16:58:39 I like the part where 16:58:41 it's not equivalent 16:58:58 well, not in all situations. 16:59:21 It's equivalent in no situations. 16:59:46 "Method names are case insensitive, unless you're calling a forwarded method on a FilterIterator, in which case you must include at least one uppercase letter in the method name for it to work. Even if the name of the actual method you're calling does not have one." 16:59:53 php :') 17:00:03 wat 17:00:06 The fuck? :-D 17:00:09 perl is weird but like... 17:00:22 there's usually some kind of sense behind it, unless it's historically. 17:00:29 -ly 17:00:33 Deewiant: http://www.reddit.com/r/lolphp/comments/kmbpo/method_names_are_case_insensitive_unless_youre/ 17:00:37 http://codepad.org/c7ewg1yc 17:11:16 Oh no, Mathnerd314 is in #haskell. 17:13:27 for some reason, user names are hidden on that whole subreddit 17:15:37 olsner: yeah, it's irritating :P 17:16:10 for the benefit of everyone who tries to keep their php bashing secret 17:16:47 or maybe rasmus lehrdorf puts all this crap in so that he can post it anonymously on lolphp later 17:16:56 olsner: You can turn off the stylesheet for that subreddit or whatever. 17:17:01 Or just view the soure. 17:17:02 source. 17:17:07 Or use the element inspector in $browser. 17:24:41 wtf python... 17:27:57 hmm, no lolpython or wtfpython reddit :/ 17:35:32 Where's oerjan when you need him 17:35:36 olsner: Are you a suitable oerjan 17:42:09 http://www.qwantz.com/index.php?comic=1907 17:42:11 teehe 17:43:58 Slereah! 17:44:07 Yes! 17:44:58 WE MISS YOU 17:45:04 Also, that is a good Dinosaur Comic. 17:45:21 Well 17:45:24 See, the thing is 17:45:28 I am bad at programming 17:45:34 Yeah but you've always been that. 17:45:36 So I can't really read most discussions here 17:45:41 We just want you for the gay sex. 17:45:48 Like all our most cherished members. 17:46:27 Well I just go to furnet for that 17:49:03 I am currently reading up on TIME TRAVEL 17:49:06 Because it is awesome 17:49:18 So maybe instead, we should be talking about TWO DUCKS 17:49:24 Or any other time-travel related language 17:50:39 -!- monqy has joined. 17:52:55 elliott: I dunno, try me? 17:53:15 olsner: Don't need 'im any more 17:53:17 Well, probably 17:53:31 * kallisti_ can surprisingly understand like 50% of what is said. 17:53:35 Slereah: I have but one duck to offer. 17:53:38 -!- kallisti_ has changed nick to kallisti. 17:53:41 kallisti: We dumb it down just for you! 17:53:49 ok, back to watching julian and miles spelunking in sloan's mind then 17:54:32 It only works with a pair of ducks I'm afraid 17:54:41 elliott: even I'm not paranoid enough to believe that. 17:54:44 A time pair of ducks 18:14:27 what's the purpose of ^^ ? 18:14:30 :t (^^) 18:14:37 It makes anime eyes 18:14:38 just to restrict the type to Fractional instead of Num? 18:18:35 kallisti: (^) can only do integer exponents 18:18:40 or hm 18:18:45 i forget what (^^) is 18:18:53 but it probably does something more accurate than repeated multiplication, I reckon 18:18:58 elliott: it's the same but instead of a Num base it's fractional 18:19:05 right 18:19:06 see above then 18:19:20 but it's still an integral power... sooo 18:19:32 yes 18:19:33 and? 18:19:37 > 2 ^ (-4) 18:19:40 Bah 18:19:45 ah, right 18:19:47 > 2 ^ (-4) 18:19:47 *** Exception: Negative exponent 18:19:47 > 2 ^^ (-4) 18:19:47 6.25e-2 18:20:10 Deewiant: Hmm, doesn't (**) work for that though 18:20:23 I suppose ^^ is just for different types. 18:20:24 Yes, but (**) is for Floating 18:20:28 Ah 18:20:38 kallisti: no 18:20:39 (^^) is Fractional^Integral, (**) is Floating^Floating 18:20:45 > 2 ^ (-4) 18:20:45 *** Exception: Negative exponent 18:20:45 > 2 ^^ (-4) 18:20:45 6.25e-2 18:20:47 but yeah right what Deewiant said 18:20:59 Deewiant: Hmm, isn't Rational fractional 18:21:03 elliott: no what? 18:21:08 it's not for different types? 18:21:10 Oh, duh 18:21:17 kallisti: It's not "just" for different types 18:21:21 It has different behaviour to (^) 18:22:30 I was talking about ** vs ^^ (which also has different behavior.... as the result of different types) 18:22:55 Ah. 18:38:16 -!- DCliche has joined. 18:41:46 -!- Klisz has quit (Ping timeout: 255 seconds). 18:58:14 -!- Ngevd has joined. 19:00:14 Hello! 19:01:08 hele 19:04:00 -!- zzo38 has joined. 19:08:18 elliott: OH SNAP 19:08:27 I just got into a free will vs. determinism debate 19:08:29 on the internet 19:08:32 someone was /wrong/ 19:08:34 I had to do something 19:08:48 I... care deeply? 19:09:28 I dare creepily 19:10:25 :D 19:11:21 What mistake did someone made? 19:20:56 zzo38: they thought free will existed. 19:21:04 * kallisti puts a can of worms on the table. He opens it. 19:22:42 I hope no one likes worms. 19:23:14 kallisti: That can be the matter of opinion. If someone is /wrong/ it meant they must get some plain fact wrong, such as the premises of an argument leading to the conclusion that free will existed. 19:23:25 zzo38: oh they did that. 19:23:30 but yes, I agree. 19:23:40 determinism is not necessarily right, because we have not proven it. 19:23:43 It would be equally wrong if you used wrong premises of an argument that leads to a conclusion that free will is not exist. 19:24:49 -!- oerjan has joined. 19:28:11 My opinion is that the universe works by lazy I/O. 19:28:59 it's an interesting hypothesis. it means the universe does not have to simulate exactly the huge parts where there might not live anyone... 19:29:33 that's not really lazy IO is it, it's just plain laziness 19:29:39 nah probably a dynamically typed strict imperative functional language with syntax in the form of tokens seperated by whitespace and grouped in lists formed by balanced parentheses. 19:29:47 I guess it's kind of like Hashlife 19:29:56 but I don't think you could outright avoid simulating anywhere 19:29:56 I am not talking about lazy evaluation (which it probably makes no sense to say the universe has it or not), but about lazy I/O. 19:30:00 because everything depends on everything else :P 19:30:08 elliott: well "IO" only really applies if there's an outside the computation is communicating with, no? 19:30:25 oerjan: yes. so you are addressing the wrong person 19:30:31 and still may not apply if you expand to include the outside 19:30:33 oerjan: such a life-centric notion, that the universe cares that we're witnessing part of it. 19:31:57 kallisti: the opposite alternative is to assume that absolutely every particle in the universe is faithfully simulated. and that's _before_ we consider many-worlds. 19:32:42 I think many worlds is very... silly. 19:33:30 oerjan: also is it really "simulated" if you're the thing that simulations simulate? :P 19:33:57 yes, but no one has afaik found an interpretation of QM which _doesn't_ require the entire wavefunction to exist in some form. 19:34:28 this may of course just be a failure of imagination. 19:34:33 oerjan: yes what? 19:35:04 I think c sort of provides a mechanism for the universe to be lazy 19:35:12 it could just simulate events when we're able to observe them 19:35:16 and defer actually running them until then 19:35:22 and so on, recursively 19:35:24 that doesn't reduce work 19:35:25 oerjan: Yes I suppose it is possible we have forgotten about some things, but we probably cannot know for sure 19:35:28 but it lets it be delayed 19:35:31 elliott: yes to kallisti. many worlds isn't silly if no one has found an interpretation which is _less_ silly. 19:35:43 * elliott doesn't find Many Worlds silly at all. 19:35:51 * elliott finds Copenhagen pretty silly, though. 19:36:11 * elliott also doesn't think it matters. 19:36:20 elliott: it seems to lack parsimony. intuitively it uses an enormous amount of information to calculate a comparatively tiny result. 19:36:34 from our perspective. 19:36:40 oerjan: that's just anthropic bias 19:36:49 oerjan: assuming /this/ universe is the "result" 19:37:00 I suppose such things go well with supernatural beliefs, though >:) 19:37:02 I think some multiple interpretations might still be valid in case they can change into each other and in case each one makes calculations resulting in the same result; otherwise it might not be. 19:37:13 well i guess in a sense it's the _least_ silly in that sense that it actually assumes the other possible results also exist rather than are just thrown away. 19:37:25 there's also assumptions of "waste"... what is wasteful in the context of the entire universe (or multiple universes)? 19:37:40 oerjan: copenhagen is imperative programming. many worlds is functional! 19:37:48 oerjan: you see, we _are_ the result. the other universes get garbage-collected. 19:38:00 copenhagen is just mutating this universe rather than forking new ones off it 19:38:05 heh 19:38:07 god isn't that inelegant 19:39:36 I see nothing silly about many worlds at all. 19:40:10 the man reason I think it's silly is that there isn't really any evidence to make such a huge assumption about reality. 19:40:26 we have no observation of it taking place. 19:40:29 kallisti: um 19:40:35 kallisti: there's no evidence of _any_ interpretation of QM 19:40:38 that's kind of the point 19:40:44 there's no evidence for the Copenhagen interpretation, either 19:40:49 sure 19:40:58 I didn't say that many worlds is the only silly one. :P 19:40:59 kallisti: Um, nobody's saying it's absolutely true. We're merely claiming that many worlds seems more reasonable. 19:41:04 Which is the most that can be said. 19:42:24 If the only criterion you care about is "strong amounts of evidence in favor", then all you can say about quantum mechanics that's not 'silly' is "quantum mechanics exists". :P 19:43:22 I think it's much more reasonable to accept that we have at the moment (or possibly forever) hit a limit in what we can know about reality and to not invent notions, from scientific reuslts, that have no basis. 19:43:53 kallisti: STOP THINKING, EVERYONE!!! 19:43:55 IT'S UNREASONABLE! 19:44:01 YOU MIGHT _LEARN_ SOMETHING! 19:44:22 kallisti: I take it you despise hypothesis. 19:44:31 Hypotheses, even. 19:44:41 not at all. I'm not like a... knowlege fascist or whatever. 19:44:51 whatever this position you seem to think I take. 19:45:05 The one where you think it unreasonable to hypothesise. 19:46:08 it's about comparative reasonability. not inventing notions without basis is /more/ reasonable. Sure, you're free to imagine and hypothesize. 19:47:35 I strongly suspect you don't actually think like that, you just think it's more 'rational' to do so. 19:47:56 sure, that sounds like a better word. 19:47:58 Unless when you see the side of a house, you think "This side of the house is white" instead of "The house is white"? 19:48:24 * kallisti is not a reasonable person. 19:48:32 excuse me, rational. 19:49:06 And you're not even proposing rational methods of thought, you're proposing Hollywood rational methods of thought. :) 19:49:15 I am? 19:49:46 Yes, you're essentially excluding any form of reasonable inference from limited evidence. 19:50:27 Oh god, is kallisti trying to think. 19:50:28 It would, of course, be pointless and irrational to assert that such inferences are very *certain*, but it's perfectly reasonable to *draw* said inferences. 19:50:31 That never ends well. 19:50:34 Or starts well. 19:50:43 Or progresses between the two well. 19:51:18 but it's not... reasonable. It's reasonable to hypothesize and speculate, but I think it's unreasonable to go any further. 19:52:15 Um. It's not the case that you have to have 99.9999% certainty for something. You act like it is. 19:52:16 it's entirely meaningless, for example, to say that many-worlds holds any more merit than Copenhagen, because neither are certain. 19:52:49 So you think it's unreasonable to say "here's this system that's quite hard to wrap your mind around; why don't we analogise it with this equivalent system which is easier to comprehend"? 19:53:23 it could be that our universe is within a large super computer that calculates wavefunction collapse, and that is how it works. we wouldn't be any wiser to this. 19:53:26 Phantom__Hoover: no that's fine 19:53:42 kallisti, because that's all MWI and Copenhagen are. 19:53:42 analogies are good learning tools. 19:54:06 -!- ais523 has joined. 19:54:10 Phantom__Hoover: okay good. I was under the impression that people believed these things or put value into these interpretations as being true in some sense. 19:54:25 Many Worlds does hold more merit than Copenhagen. Many Worlds is significantly more consistent with other properties of how physics works as far as we know. 19:54:34 kallisti: you realise that we do not _know_ these are untestable? 19:54:44 elliott: sure. 19:54:46 we merely do not know that they are testable. 19:54:51 yes. 19:54:55 and we haven't tested them. 19:54:56 if nobody started with untestable hypotheses, we'd have no science 19:55:02 correct. 19:55:06 so 19:55:07 That said, I'd say that Many Worlds has something like 51% odds of being true, while Copenhagen has something like 40% odds. 19:55:08 you have no valid complaint 19:55:43 pikhq: are you sure that they contradict each other? 19:55:59 pikhq, ...define 'true'. 19:56:00 elliott: cool. 19:56:10 * kallisti is done. he has learned stuff. 19:56:15 Phantom__Hoover: "Actually how quantum mechanics works." 19:56:44 Phantom__Hoover: Or, if you want me to just rub your face in shit: "The sky is blue" is true if and only if the sky is blue. 19:56:48 pikhq, ...define "actually how quantum mechanics works". 19:57:04 Phantom__Hoover: Stop being a numbskull. 19:57:08 oh my god what is going on in here 19:57:21 pikhq is failing to understand modelling. 19:57:31 He is insulting me for not sharing his misconceptions. 19:57:51 Phantom__Hoover: You are certainly not aiding things. 19:58:07 pikhq: Phantom__Hoover is right. 19:58:14 perhaps, or perhaps he understands it so well he doesn't bother to mention that that's actually going on every time this is discussed, but is fine with the more intuitive way of stating it. 19:58:17 who gives a fuck 19:58:17 "Actually how quantum mechanics works" doesn't really make any sense, because QM never referencess an interpretation. 19:58:30 elliott: I phrased things poorly. 19:58:34 Yes, you did. 19:58:37 That's why Phantom__Hoover asked for a definition. 19:58:46 Phantom__Hoover: This is like going "define purple" if someone says "The sky is purple". It doesn't aid correcting a misunderstanding, it just pisses people off. 19:59:02 can we talk about something that has more to do with say algebra 19:59:13 wait i'm actually leaving, leave something juicy for the backlog 19:59:20 oklopol, QM is all group theory, maaaan. 19:59:24 (Note, lies.) 19:59:48 pikhq: it's like going "define 'really is'" if you say "The sky really is purple." 19:59:51 okay so umm 19:59:53 it's more charitable than "no" 19:59:55 i lost my underpants. 20:00:01 It's also all zeta function realisation or whatever it's called so elliott loves it. 20:00:06 i guess i'm going ninja turtle. 20:00:07 Phantom__Hoover: Regularisation. 20:00:10 Phantom__Hoover: Let's go with s/being true/being a more accurate model/ 20:00:28 Does Copenhagen suffer from floating-point roundoff errors? 20:01:16 elliott: remember when fax/what'sherface told me that the distance of two points in R^2 is *actually* sqrt(x^2 + y^2), and other metrics are not actually distances. 20:01:37 pikhq, MWI and Copenhagen /are not models/. 20:01:47 They're ways of /looking/ at a model. 20:01:58 oklopol: no :) 20:02:30 It's like asking whether Lagrangian or "standard" (I don't really know the proper term) mechanics are more accurate. 20:02:59 Aaah! 20:03:11 i wish she was here now so i could finally know what the actual distance of two points in S^Z is 20:03:14 Pandas arrive at Edinburgh Zoo! 20:03:20 I HATE PANDAS GOD 20:03:31 Pandas: nature's D student. 20:03:33 Poll setbacks for Putin's party! 20:03:37 THEY MUST BE CONNECTED 20:03:45 Phantom__Hoover: FUCK YOU 20:03:48 PANDAS ARE AWESOME 20:03:49 because we regularly use 4 and only two are uniformly equivalent 20:03:53 I hate pandas; god. 20:03:55 (or even topologically) 20:03:57 Phantom__Hoover: I dislike pandas also 20:04:05 kallisti: FUCK YOU 20:04:18 i wish she was here now so i could finally know what the actual distance of two points in S^Z is 20:04:19 elliott: NO EVERYONE MUST HAVE /MY/ OPINION, ASSHOLE. 20:04:21 Wait S? 20:04:28 Isn't that the sedenions? 20:04:30 elliott: Pandas are carnivores that prefer the least nutritionally dense food possible that they can't even digest well. 20:04:47 pikhq: Yeah, and that's the stupidest thing they do. 20:04:51 You're *human*. 20:04:58 Phantom__Hoover: here it's a finite set 20:05:00 elliott: And can only barely manage to fuck. 20:05:09 And they also regularly kill their children. 20:05:15 From *inattention*. 20:05:29 s/pandas/humans/ 20:05:44 Phantom__Hoover: Tell me you hate pandas for a good reason (there are no good reasons pandas are adorable). 20:05:44 i guess you could say that the Cantor topology is the actual one, since that's inherited from the finite set whose natural topology is discrete 20:05:48 They'd be PERFECT for Dwarf Fortress 20:05:48 but w/e have to go 20:05:59 kallisti: Pandas typically have twins and ignore one of them. 20:06:10 No reason. Just do. 20:06:13 Phantom__Hoover: Tell me you hate pandas for a good reason (there are no good reasons pandas are adorable). 20:06:22 I hate them just because they're useless? 20:06:26 pikhq: maybe it's part of their culture. don't be an insensitive prick. 20:06:29 They'll also roll over and crush their cubs. 20:06:34 pikhq: (but no really, I think pandas are stupid too.) 20:06:36 Unfortunately so does pikhq; he always ruins hating things for me. 20:06:46 Basically the only adaptation they've got is being cute. 20:07:26 Phantom__Hoover: Humans are pretty useless? 20:07:28 Nothing eats us. 20:07:38 I suppose we're decent at eating other things, but they're all things other things like too. 20:07:50 elliott, well yeah, but we don't go around asking other things to help us not die. 20:08:06 elliott: The only strictly necessary things for a life form is surviving and reproducing. 20:08:10 Pandas suck at both. 20:08:14 Phantom__Hoover: That's only because we were too fucking stupid to and only the dolphins took pity on us. 20:08:26 Ahh. 20:08:33 pikhq, s/surviving and // 20:08:40 They literally prefer to eat the worst possible food *for their own damned digestion*. 20:08:59 Phantom__Hoover: Surviving until you can reproduce is a prereq of reproduction. 20:09:02 Thus why it's listed. 20:09:54 you forgot "being born" and "the universe must exist" 20:09:59 I'm sure there are others. 20:10:05 other prereqs 20:10:07 Bah. 20:10:12 (looool) 20:10:17 as opposed to all that surviving things do without being born 20:10:34 indeed 20:10:35 elliott: Many things survive without being born. 20:10:37 pikhq, hence why surviving is an unnecessary addendum. 20:10:43 this conversation 20:10:45 Any life form that doesn't do live birth. :) 20:10:46 is hilarious 20:11:05 I don't think bacteria are born, for instance. 20:11:59 sh, semantics. 20:12:36 ALLT HINGS ARE BR0N AS THE UNIVRESE ONCWE AWS 20:12:52 thep lanets bron 20:13:00 the uns 20:13:04 the sarts 20:15:40 That is not dead which can eternal lie, And with strange aeons death may die. 20:15:41 ^style 20:15:48 Hey, where's the bot? 20:16:01 RAW >>> :leguin.freenode.net NOTICE fungot :Server Terminating. Received SIGTERM <<< 20:16:04 Well, that was impolite. 20:16:06 HackEgo: EgoBot: locate the missing brots 20:16:16 -!- fungot has joined. 20:16:24 ^style lovecraft 20:16:24 Selected style: lovecraft (H. P. Lovecraft's writings) 20:16:26 HackEgo: EgoBot: excellent work 20:16:35 fungot: So, do you think death may ever die? 20:16:36 fizzie: it was the fnord of m. fnord, gilman dragged himself forward along a course determined by the opportunities it gave for continuing the use of the principle of the small radiating arms was broken off and were missing. what of the fnord 20:16:49 Yes, what of the fnord. 20:16:51 What of the fnord! Indeed. 20:17:02 fizzie: fungot: I wonder if there are any transcripts of the dialogue in Starcraft I and Starcraft Brood Wars 20:17:03 kallisti: it is dark not the darkness that is part of the accursedly resculptured wall in a series of cartouches the continuous band arrangement being frequently interrupted in these late carvings depicting a constantly growing migration to the nearest fnord. once inside one of the most ancient one cease to flow forth. 20:18:01 fungot: You sound like a madman. 20:18:02 fizzie: so randolph carter thanked the zoogs, for one thing; and after its fnord in the form of titanic egyptian letters spelling terrible primal arcana of earth; and thereafter a still more elaborate theory, and believed he would try to keep track of his somnambulism. as he planned, he could not 20:18:56 fungot: In Ulthar, no man may kill a cat. True or false? 20:18:57 fizzie: the hill's summit by safer routes they saw that fnord the fnord hear strange murmurings and half-remembered notes. woods and fields, he had slipped out unseen and fnord boldly in past the men hired to guard him. that was in 1692 the fnord had gone mad and babbled of a small seaport. 20:20:46 it is dark not the darkness that is part of the accursedly resculptured wall in a series of cartouches the continuous band arrangement being frequently interrupted in these late carvings depicting a constantly growing migration to the nearest fnord. once inside one of the most ancient one cease to flow forth. -- Benjamin Franklin 20:31:06 Well, that was impolite. <-- there was a previous admin warning 20:33:18 oerjan, about the server? 20:34:30 yes 20:34:53 leguin and a couple of others were being updated 20:41:22 IOCCC submitteddddddddd 20:41:42 Gregor: more like 20:41:44 subCRAPPED 20:41:46 OH SNAP 20:42:04 MOAR LIKE SUBWHYSHOULDELLIOTTEVENBOTHERWHENGREGORSGONNAWIN 20:43:10 More like subTITLED. Wait, that made no sense. 20:43:35 More like the pain has now subSIDED. 20:44:11 Gregor: do you send your papers directly to journals or do you go to conferences first? (i'm wondering how likely it is that i'll see esolang people in a conference sometime, that'd be awesome, but ais seems pretty useless at least) 20:44:21 ais523: :'( 20:44:38 I made a class IsNatural and a type family Lesser. Now how would I encode number theory in the type system? Would I somehow encode the Poeano postulates? I don't know? 20:44:40 More like the subBAND STRUCTURE OF II-VI MODULATION-DOPED MAGNETIC QUANTUM WELLS. 20:44:48 oklopol: my papers have all been conference papers so far 20:44:53 fizzie: ilu 20:44:57 oklopol: Conferences. 20:44:58 zzo38: data Z; data S n 20:44:59 which conferences? 20:45:05 but I suspect I end up in different sorts of conferences to you 20:45:13 oklopol: ECOOP, OOPSLA, PLDI primarily. 20:45:16 oklopol just goes to pimping conferences. 20:45:19 yes but the big ones take all kinds of crap 20:45:21 so far, they've been to MFPS, POPL, and ICFP (in that order); I only went to the first of them 20:45:27 elliott: Well I already have data Zero and Maybe 20:45:47 zzo38: then you're done :) define addition with type families or typeclasses with functional dependencies 20:46:19 OK. 20:46:35 But can that work to make proof by functions? 20:46:51 yeah obviously none of those are general enough 20:46:53 Sure, with GADTs. 20:46:55 At first I thought of using bijective function type but Haskell doesn't have that, so I try a different way. 20:47:18 zzo38: data a :=: b where EqZZ :: Z :=: Z; EqSS :: a :=: b -> S a :=: S b 20:47:25 and i assume fizzie's are even stupider, fizzie: can i have a list? 20:47:28 or you could just go all the way 20:47:34 data a :=: b where Refl :: a :=: a 20:47:42 foo :: a :=: b -> t a :=: t b 20:47:43 foo Refl = Refl 20:48:02 O, that is how it works. 20:48:15 oh, wait, you actually need 20:48:15 newtype Lift f a b = Lift { unlift :: f a := f b } 20:48:16 -- | You can lift equality into any type constructor 20:48:16 lift :: a := b -> f a := f b 20:48:16 lift a = unlift (subst a (Lift id)) 20:48:17 for that 20:48:18 oklopol: Possibly a majority of our speech-related conference papers go to Interspeech, ICASSP and EUSIPCO; there's quite a lot more, but I think they're mostly quite specific too. 20:48:27 oh no wait 20:48:29 that's leibnizian equality 20:48:34 yeah my foo definition should work fine 20:49:18 ASRU, too. 20:50:14 maybe i should write something up for mfps, that almost sounds like a real conference 20:50:59 of course we need to do some syncing with ais, perhaps not in a few years though 20:53:21 Many Fake Proceedings Scam 20:53:42 real? i think not! 20:55:56 Massively Fraudulent, Positively Shady. Sure, that's the best conference. 20:57:12 Do I need to add constructors for addition and multiplication? 20:57:28 no 20:59:15 Mafia Facade Pretending Science 21:00:04 And exponent? 21:00:10 Manifested Fructose Protagonist Society 21:00:39 Mishandled Facts Proudly Submitted. 21:01:02 My Friends Presenting Shit 21:01:07 -!- copumpkin has quit (Quit: Computer has gone to sleep.). 21:02:03 zzo38: I don't know about that one. 21:02:30 _<0 21:03:05 ),} 21:07:08 zzo38: no 21:08:02 kkkkkkkkkkkk 21:08:06 kallisti: ((t<<1)^((t<<1)+(t>>7)&t>>12))|t>>(4-(1^7&(t>>19)))|t>>7 21:08:06 http://canonical.org/~kragen/bytebeat/crowd.ogg 21:09:11 those bitshifts are sexy. 21:09:25 * kallisti changes pants. 21:10:46 I like how it uses + - << >> & ^ and | 21:12:18 but it's actually kind of rhythmically boring. 21:12:45 * kallisti is a snobby 8-bit C music critic. 21:18:40 -!- Jafet has quit (Quit: Leaving.). 21:20:35 mmkay, so the war on the dominion is over and everone's happy but there are 30 more minutes left of the series 21:20:40 plenty of time to fuck it up then 21:21:18 :D 21:22:55 hypothetical roleplaying scenario: you're in a Hilbert space, there are ket-vectors everywhere. What do you do? 21:23:46 take of your bra and just go with the flow. 21:23:48 *off 21:26:06 -!- zzo38 has left. 21:26:11 -!- zzo38 has joined. 21:32:17 Vorpal: do you have the fix patch for Dungeons of Dredmor? the forum wants me to create an account to download it 21:32:36 -!- derdon has joined. 21:32:44 I couldn't get the patch to work 21:33:12 hmm, 21:33:24 I'm getting crashes occasionally on dlevel 2 and consistently on dlevel 3 21:33:52 I got them often on level 1 21:37:23 elliott: I see that you're back in #haskell. 21:37:58 shachaf: Tell that vrook guy that CPP is only used for cabal version constraints and other uses can be replaced by TH. 21:37:59 Or don't. 21:38:03 But I promised I wouldn't say anything more! 21:38:29 Being in #haskell is so much *fun*. 21:38:32 elliott: That doesn't stop you from... What's the word? 21:38:33 Fun in the derogatory sense. 21:38:45 Oh, yes. It doesn't stop you from mad. 21:38:45 shachaf: Killing fishes? 21:38:50 Ah. 21:38:51 * elliott mad 21:38:54 `? shachaf 21:38:56 shachaf mad 21:39:01 `rm wisdom/shachaf 21:39:04 No output. 21:39:15 `? shachaf 21:39:17 shachaf mad 21:39:48 `ls wisdom 21:39:51 ​? \ ais523 \ augur \ banach-tarski \ c \ cakeprophet \ category \ elliott \ everyone \ finland \ finns \ fizzie \ flower \ friendship \ functor \ fungot \ gregor \ hackego \ haskell \ ievan \ intercal \ itidus20 \ kallisti \ mad \ monad \ monads \ monoid \ monqy \ nooga \ oerjan \ oklopol \ phantom__hoover \ phantom_hoover \ php \ qdb \ qdbformat \ quine \ sgeo \ shachaf \ u \ vorpal \ welcome \ wiki \ you 21:39:53 `rm wisdom/shachaf 21:39:54 `? shachaf 21:39:56 No output. 21:39:56 shachaf mad 21:40:16 `run rm wisdom/shachaf; \? shachaf 21:40:18 shachaf? ¯\(°_o)/¯ 21:40:25 `? shachaf 21:40:27 shachaf mad 21:40:51 "Mad call I it; for, to define true madness, what is't but to be nothing else but mad?" 21:40:55 But let that go. 21:41:57 Let what go? 21:42:02 It only remains because you remain mad. 21:42:07 `? mad 21:42:09 ​"But I don't want to go among mad people," Alice remarked. "Oh, you can't help that," said the Cat: "we're all mad here. I'm mad. You're mad." "How do you know I'm mad?" said Alice. "You must be," said the Cat, "or you wouldn't have come here." 21:42:09 Eliminate the madness and you eliminate the mad. 21:42:34 Eliminate the mad and you eliminate the mad. 21:42:45 * shachaf ain't even mad 21:42:59 * Gregor steals your cake. 21:43:22 shachaf: that's in flagrant violation of all the evidence 21:43:36 oerjan: What, do I seem mad? 21:44:08 you seem to be _here_. note above quote. 21:44:40 If you let it go you are nothing at all. 21:44:57 "That he is mad, 'tis true: 'tis true 'tis pity; And pity 'tis 'tis true" 21:45:13 `? elliott 21:45:15 elliott wrote this learn DB, and wrote or improved many of the other commands in this bot. He probably has done other things? 21:45:33 `cat wisdom/shachaf 21:45:35 shachaf mad 21:45:41 `run echo elliott mad > wisdom/elliott 21:45:43 No output. 21:45:48 `? elliott 21:45:49 NOOOOOOOOOOOOOOOO 21:45:51 elliott mad 21:45:56 `? oerjan 21:45:58 Your future evil overlord oerjan is an expert in lazy computation. 21:46:04 `run echo oerjan mad > wisdom/oerjan 21:46:06 No output. 21:46:09 it was a genuine zzo38 production! 21:46:24 i'll ban you for that. eventually. 21:46:24 Wait, what was? 21:46:34 the `? elliott one 21:46:42 elliott: You're saying more words, aren't you. 21:46:47 `revert 1199 21:46:48 Done. 21:46:51 `revert 1 21:46:53 Done. 21:46:53 shachaf is awfully mad about this whole thing. 21:46:54 `ls 21:46:54 well, or it looks like one, anyhow. 21:46:55 bin \ canary \ karma \ lib \ paste \ quotes \ share \ wisdom 21:46:58 `revert 1199 21:46:59 `ls wisdom 21:47:00 Done. 21:47:10 `? Gregor 21:47:13 Gregor took forty cakes. He took 40 cakes. That's as many as four tens. And that's terrible. 21:47:14 ls: cannot access wisdom: No such file or directory 21:47:29 elliott: Transactions done yet :P 21:47:47 Gregor: Yeah, they just don't happen to work. 21:48:11 `? ? 21:48:13 ​? is wisdom 21:48:20 `? oerjan 21:48:22 Your future evil overlord oerjan is an expert in lazy computation. 21:49:13 `run echo 'Your evil overlord oerjan is a lazy expert in future computation.' > wisdom/oerjan 21:49:15 No output. 21:49:36 close enough. 21:50:07 * shachaf doesn't get the 40 cakes thing. 21:50:15 "What's the most efficient way to compute this?" "Eh, I'll do it later." 21:50:41 shachaf: That's terrible. 21:51:22 `run spot run 21:51:24 bash: spot: command not found 21:52:52 shachaf: http://knowyourmeme.com/memes/lex-luthor-took-forty-cakes 21:56:52 -!- lambdabot has joined. 21:56:59 `? oklopol 21:57:01 oklopol "so i hear these blogs are getting popular, people like writing about their lives and shit. on this thing called the internet which is like a neural network only really stupid." 21:57:35 Curious now 21:57:40 And narcissistic 21:57:45 `? Taneb 21:57:46 Taneb? ¯\(°_o)/¯ 21:57:51 `? Ngevd 21:57:53 Ngevd? ¯\(°_o)/¯ 21:57:56 Aww 21:58:37 `run ln -s /dev/urandom wisdom/ngevd 21:58:39 No output. 21:58:53 Today in Good Ideas 101... 21:59:02 well it _is_ your bot 21:59:03 `? Ngevd 21:59:04 ​.>N.vlx4Zw.ozuT..j.+x..})eV^a.} D$gK.4G&ro4o.. ".O1.Ӊ>&d2Vl3 21:59:18 `? Ngevd 21:59:19 That's me, all right 21:59:19 ​S4n5W.3,p+ޓ6t.s憏..+@t.ig:..K圷G.>t..ND[Ml'y?.f`'H=K'Cd..}* 21:59:22 It's hard to argue with that. 21:59:22 Yes. 21:59:50 `ln -sf /dev/null wisdom/shachaf 21:59:52 ln: invalid option -- ' ' \ Try `ln --help' for more information. 21:59:53 Ngevd, dammit, why did you get the Best Wisdom. 22:00:00 `run ln -sf /dev/null wisdom/shachaf 22:00:01 `? shachaf 22:00:02 No output. 22:00:03 shachaf mad 22:00:12 `cat bin/\? 22:00:14 cat: bin/\?: No such file or directory 22:00:24 `cat bin/? 22:00:26 ​#!/bin/sh \ topic=$(echo "$1" | tr A-Z a-z) \ [ -e "wisdom/$topic" ] || { echo "$1? ¯\(°_o)/¯"; exit 1; } \ cat "wisdom/$topic" \ 22:00:36 `? P 22:00:39 P? ¯\(°_o)/¯ 22:00:39 `? Phantom__Hoover 22:00:41 Phantom__Hoover can't decide what an appropriate number of underscores is. 22:00:56 Oh, of course. 22:00:58 `? Phantom_Hoover 22:01:00 Phantom_Hoover is a true Scotsman and hatheist. 22:01:19 Wait how can I *be* a hatheist? 22:01:52 a true scotsman can be anything. 22:02:12 Except an Englishman. 22:02:14 I like how elliott is still talking in #haskell. 22:02:23 `? ../bin/quote 22:02:25 ​#!/bin/sh \ allquotes | if [ "$1" ]; then \ if expr "$1" + 0 >/dev/null 2>&1; then \ sed "$1q;d" \ else \ egrep -i -- "$1" \ fi \ else shuf -n 1; fi 22:02:26 Arguing with vrook, no less. 22:02:27 lol 22:02:33 shachaf: Shhhhhhh. 22:02:37 well ok a true scotsman can be anything except an englishman. 22:02:54 `learn ../bin/quote was the way to access the quote database until Gregor broke it. 22:02:56 I knew that. 22:03:04 >_> 22:03:05 <_< 22:03:13 `quote 22:03:16 ​/hackenv/bin/quote: line 1: ../bin/quote: No such file or directory 22:03:30 O KAY 22:03:37 `run cd wisdom; quote 22:04:06 ​../bin/quote: fork: retry: Resource temporarily unavailable \ ../bin/quote: fork: retry: Resource temporarily unavailable \ ../bin/quote: fork: retry: Resource temporarily unavailable \ ../bin/quote: fork: retry: Resource temporarily unavailable \ ../bin/quote: fork: Resource temporarily unavailable 22:04:11 lol 22:04:17 `revert 1207 22:04:19 Done. 22:04:43 `? Phantom___Hoover 22:04:44 Phantom___Hoover? ¯\(°_o)/¯ 22:04:45 `? shachaf 22:05:00 No output. 22:05:40 `? Ngevd 22:05:42 ​שH.w|C*!.ë`D.Q0V..a.!AN.vu.Ѥ=xӋ2.XPt.j.4Vf*ҶpcG.(~M".S5%>..GcՄHY@>....w̓N.W4JO&.5QX..#:T..O.. \ ވ/#Zٙ....5/z}q.fկi)(.X`v/ܟE...Pea%]Ԑf.FO".. 22:06:53 I gotta say. 22:06:56 That's the best wisdom entry. 22:07:01 Can't deny that. 22:07:19 Ngevd: Whence "Ngevd"? 22:07:32 And also, how is it pronounced? 22:07:33 It's my initails 22:07:54 it starts with "ing" without the i 22:08:08 Then "revved" without the r 22:08:08 Ngevd: With plosive? 22:08:56 Hmm 22:08:59 I don't think so 22:09:06 Good :P 22:09:31 I had a momenteray lapse of knowledge of phonetics 22:10:06 I think the ng may be aspirated, though 22:10:28 Strictly speaking, my initials are NGvD 22:10:51 the e is just for elliott clone 22:10:54 -!- lambdabot has quit (Remote host closed the connection). 22:10:56 The G comes from my great-grandfather, George Elliott Moscrop 22:11:01 Hence the E 22:11:05 oerjan: lol, you were right. 22:11:23 He was named after his father, George Elliott Moscrop Senior 22:11:28 Who was named after his mother 22:11:32 ... 22:12:39 I was named after my grandfather, Dodifer Chauncy Wertheimer. 22:12:44 Luckily I inherited none of his names. 22:13:14 Jane Elliott 22:13:22 it would have been awkward if you were named _before_ him. 22:13:36 It's an idiom, dammit 22:13:53 :( 22:14:02 Ngevd: Gregor broke it first 22:14:34 -!- lambdabot has joined. 22:14:57 PS people whose nicks are their real names are the best kind of people. 22:15:07 yeah 22:15:16 Yeah, like FireFly 22:15:32 * oerjan swats FireFly -----### 22:15:36 And Coppro "Pooppy" Sophicles 22:19:27 `? coppro 22:19:29 coppro? ¯\(°_o)/¯ 22:19:39 `learn coppro prefers his nickname, Pooppy. 22:19:41 I knew that. 22:19:50 `? coppro 22:19:52 coppro prefers his nickname, Pooppy. 22:21:40 pooppy the sailor 22:24:41 How would I include the rule of induction into the Haskell code I have? 22:25:44 -!- augur has quit (Remote host closed the connection). 22:30:38 `? zzo38 22:30:40 zzo38? ¯\(°_o)/¯ 22:32:16 `learn zzo38 is not actually the next version of fungot, much as it may seem. 22:32:17 Phantom__Hoover: it is impossible for me to endure again. and the king bade him put away his tattered purple, crowned with fnord vine-leaves and gazing ahead as if upon the golden domes of gigantic cities glittering on the infinitely distant horizon. 22:32:18 I knew that. 22:33:41 fnord vine-leaves, the best kind. 22:36:21 `? fungot 22:36:21 Phantom__Hoover: just when my fancy merged into real sight i cannot tell; but there came a recollection of those ancient ways and shadow forth the fnord of that life, and of helping him explain the situation to the proper fnord authorities. to this end he employs endless notes, records, mnemonic objects, and 22:36:23 fungot cannot be stopped by that sword alone. 22:48:35 `? HackEgo 22:48:37 HackEgo, also known as HackBot, is a bot that runs arbitrary commands on Unix. See `help for info on using it. You should totally try to hax0r it! Make sure you imagine it's running as root with no sandboxing. 22:48:57 `? EgoBot 22:48:59 EgoBot? ¯\(°_o)/¯ 22:49:22 `? oerjan 22:49:25 Your evil overlord oerjan is a lazy expert in future computation. 22:49:42 I should probably stop now. 22:57:21 -!- Guest12461 has changed nick to quintopia. 22:57:35 -!- quintopia has quit (Changing host). 22:57:36 -!- quintopia has joined. 22:57:51 how did i become not quintopia? 23:01:54 By lack of AUTHENTICATION. 23:06:05 -!- Ik4ru5 has joined. 23:06:27 Yowsa. 23:06:36 -!- Ik4ru5 has left. 23:06:55 lol 23:08:08 -!- S2GUARD has joined. 23:08:08 -!- S2GUARD has quit (Excess Flood). 23:08:22 -!- S2GUARD has joined. 23:08:22 -!- S2GUARD has quit (Excess Flood). 23:08:32 Promising. 23:08:40 i'd say 23:08:44 * Phantom__Hoover → sleep 23:08:47 -!- Phantom__Hoover has quit (Quit: Leaving). 23:08:50 Are these names names? 23:08:59 which names? 23:09:10 Ik4ru5 and S2GUARD 23:09:36 well the first is pretty clearly icarus in 1337 23:09:49 So it does 23:10:26 And the other one guards stoo'. 23:10:46 Or lives in Stutgart? 23:10:47 Gregor: probably a colleague of pooppy, then. 23:10:53 oerjan: Quite possible. 23:11:33 unless it's pooppy's parole officer 23:16:50 Is this OK? class Classical x => IsNatural x where { selfEqual :: x :=: x; induction :: (forall y. IsNatural y => f y -> f (Maybe y)) -> f Zero -> f x; }; 23:17:18 zzo38: x :=: x is true for all x 23:17:23 well, depends what your (:=:) is 23:17:48 I certainly could make a constructor for :=: making that unnecessary, I suppose. 23:18:00 the constructor is called Refl :P 23:18:03 But is the type signature for induction correct? 23:18:30 sure. it forces x to be either Zero or Maybe n, so you don't even need selfEqual with an (:=:) that only works on nats 23:18:35 you can _prove_ it with induction 23:19:43 define f x = (x :=: x). then it becomes (forall y. IsNatural y => y := y -> Maybe y :=: Maybe y) -> Zero :=: Zero -> x :=: x 23:19:47 easy 23:23:18 Yes, I can see how that works. 23:28:35 How do you define the induction for instance IsNatural x => IsNatural (Maybe x) 23:30:05 zzo38: instance (IsNatural a) => IsNatural (Maybe a) where induction s = s . induction s 23:30:42 OK, thanks that works 23:52:42 -!- pikhq_ has joined. 23:52:50 -!- pikhq has quit (Ping timeout: 244 seconds). 23:54:06 O, now I need a Classical instance for :=: as well 23:54:18 shouldn't be hard 23:54:24 i forget what Classical is though 23:54:30 Yes. 23:54:38 Classical is class for the law of excluded middle 23:55:14 i mean, the contents 23:55:43 lem :: Classical x => Either x (Not x); 23:57:21 I probably would need to add the rule that zero is not the successor of any number, at first 23:57:51 i suspect it may be impossible to derive Classical for quantified propositions 23:58:48 Hang on, are you doing number theory in Haskell? 23:58:54 That means it is time for me to go to sleep 23:58:57 oerjan: Yes, that seems the problem too 23:58:58 Goodnight 23:59:03 -!- Ngevd has quit (Quit: Goodbye). 23:59:32 because if a proposition is undecidable, then obviously you cannot derive either p or Not p